1
  
2
  
3
  
4
  
5
  
6
  
7
  
8
  
9
  
10
  
11
  
12
  
13
  
14
  
15
  
16
  
17
  
18
  
19
  
20
  
21
  
22
  
23
  
24
  
25
  
26
  
27
  
28
  
29
  
30
  
31
  
32
  
33
  
34
  
35
  
36
  
37
  
38
  
39
  
40
  
41
  
42
  
43
  
44
  
45
  
46
  
47
  
48
  
49
  
50
  
51
  
52
  
53
  
54
  
55
  
56
  
57
  
58
  
59
  
60
  
61
  
62
  
63
  
64
  
65
  
66
  
67
  
68
  
69
  
70
  
71
  
72
  
73
  
74
  
75
  
76
  
77
  
78
  
79
  
80
  
81
  
82
  
83
  
84
  
85
  
86
  
87
  
88
  
89
  
90
  
91
  
92
  
93
  
94
  
95
  
96
  
97
  
98
  
99
  
100
  
101
  
102
  
103
  
104
  
105
  
106
  
107
  
108
  
109
  
110
  
111
  
112
  
113
  
114
  
115
  
116
  
117
  
118
  
119
  
120
  
121
  
122
  
123
  
124
  
125
  
126
  
127
  
128
  
129
  
130
  
131
  
132
  
133
  
134
  
135
  
136
  
137
  
138
  
139
  
140
  
141
  
142
  
143
  
144
  
145
  
146
  
147
  
148
  
149
  
150
  
151
  
152
  
153
  
154
  
155
  
156
  
157
  
158
  
159
  
160
  
161
  
162
  
163
  
164
  
165
  
166
  
167
  
168
  
169
  
170
  
171
  
172
  
173
  
174
  
175
  
176
  
177
  
178
  
179
  
180
  
181
  
182
  
183
  
184
  
185
  
186
  
187
  
188
  
189
  
190
  
191
  
192
  
193
  
194
  
195
  
196
  
197
  
198
  
199
  
200
  
201
  
202
  
203
  
204
  
205
  
206
  
207
  
208
  
209
  
210
  
211
  
212
  
213
  
214
  
215
  
216
  
217
  
218
  
219
  
220
  
221
  
222
  
223
  
224
  
225
  
226
  
227
  
228
  
229
  
230
  
231
  
232
  
233
  
234
  
235
  
236
  
237
  
238
  
239
  
240
  
241
  
242
  
243
  
244
  
245
  
Att koda: 
 
Något verkar snett med in-reply-to för den sätts inte? 
 
Hm, den sätts nog inte om man kommenterar ett importerat inlägg.  
 
Hur ska jag göra med in-reply-to för inlägg jag exporterar? Om jag 
exporterar ett inlägg till så vill jag ju att rätt in-reply-to sätts 
på det. Det är lätt om det är ett importerat inlägg som någon 
kommenterar för då adderar jag bara mx-message-id från den 
kommenterade texten, men annars måste jag ha det lagrat... 
 
Hm, när ett inlägg exporteras så skulle det kunna få ett 
mx-message-id... Nej, det är ingen bra idé och jag vet inte hur jag 
ska sätta mx-message-id heller (om det ens går!).  
 
Exporterade inlägg skulle kunna lagras i blabla.exported_ids Fast det 
blir en stor fil så småningom... Bätte med en databas, men det blir så 
fippligt! I och för sig så är inläggen sorterade i ordning så det 
borde gå fint att söka i trots allt. 
 
 s->Text(8387276)->aux_items["mx-message-id"][0]->data;   
Result: "<87d6wdb0ls.fsf@j218.ryd.student.liu.se>" 
 
 
Skiss: 
 
 Man ska kunna skriva brev till exportören. Format: 
 Möte emailadress 
 
 Exportören svarar då: 
 ok, möte x exporteras till emailadressen bar. 
 eller 
 Det är ingen email-adress i ditt brev. 
 eller 
 Jag kan inte hitta mötet "foo". 
  
 
 
När den läser ett inlägg så ska den: 
 
1) Är det i exportörens brevlåda? 
   2) Är det skrivet av exportören själv? -> ignorera 
   3) Försök att parsa 
      4) Skicka svar. 
2) Ska inlägget exporteras? 
 
Det finns en mapping som talar om vilka möten som ska exporteras: 
 mötesnummer: \n-separerad lista av email-adresser. 
 
När programmet avslutas så lagras datat i 
 $HOME/.lyskom_multiexport.data 
 
När inlägg exporteras så lagras deras IDn i 
 $HOME/.lyskom_multiexport.exported_ids 
 
4711 
bill@microsoft.com 
bg@microsoft.com 
 
4712 
bill@microsoft.com 
bg@microsoft.com 
 
 
I $HOME/.lyskom_multiexport.conf lagras  
Name:     Example: 
server    kom.lysator.liu.se 
user      Exportuser for Bill 
password  GLPsucks 
lastread  4711 
 This is the text number where lyskom_export should start reading.  
 
 
Användarbeskrivning: 
 
Exportören exporterar inlägg från Lyskom till en email-adress eller 
till ett annat Lyskom-möte.  
 
För att ge Exportören order så skicka ett brev till denna 
KOM-person. Exportören tolkar varje rad, inklusive ärenderaden, som 
ett kommando.  
 
Vem som helst kan ge exportören order om vad som helst så dina 
exporteringar av möten kan tas bort av andra.  
 
Exportören läser bara inläggen en gång och tar därför inte hänsyn till 
adderingar i efterhand om den redan hunnit läsa inlägget. Inläggen 
läses i textnummerordning och exportören prioriterar inte sin egen 
brevlåda. 
 
Exportören körs en gång var femte minut. 
 
Exportören begriper inte stora bokstäver i kommandon. Argument som är 
listor är kommaseparerade listor, utan mellanslag i. Exportören 
förstår följande kommandon: 
 
(mnr = mötesnummer, fnr = författarnummer) 
 
export 
Syntax: 
  export mötesnummer email-adress [lista med fnr som ska filtreras] [uttryck]  
 
Allt som skrivs i mötet kommer att exporteras till mail-adressen när 
Exportören körs. Avsändare på mailet blir mail-adressen till mötet. 
 
I stället för email-adress kan man skriva ett mötesnummer och exporten 
sker då dit. 
 
"fnr" står för "filtrerade Lyskom-personnummer". 
 
Skriver man ett Lyskom-personnummer så kommer detta och alla tidigare 
filtreringar att gälla. Om man inte skriver något användarnummer så 
kommer alla filtreringar att tas bort för mötet. Brevbäraren tas dock 
aldrig bort! Detta för att minska risken för mailbombning. För att ta 
bort Brevbäraren måste exporteringen helt tas bort först och sedan 
skapas igen. 
 
Om uttryck finns så exporteras bara inlägg som uppfyller uttrycket. 
Uttryck är mellanslagslösa kombinationer av ord och tecknen & (och),  
| (eller) och ! (inte). Även parenteser kan användas. 
 
Exempel på uttryck: 
Sparvmesar          ; Exporterar alla inlägg som innehåller ordet  
                      "sparvmesar" 
sparv|mesar         ; exporterar alla inlägg som innehåller sparv eller  
                      mesar.  
sparv&!mesar        ; exporterar alla inlägg som innehåller sparv och   
                      inte innehåller mesar.  
!sparv&mesar        ; exporterar alla inlägg som innehåller mesar och   
                      inte innehåller sparv.  
sparv&(mesar|trutar)&!skitsnack   ; tja... 
 
Orden kan bestå av alla tecken utom \n, \t, ,, :, ;, ., ?, !  
", #, /,{, }, [,], (, ), +, =, *, -, \ och mellanslag.  
 
 
listexport 
Syntax: 
  listexport mötesnummer email-adress [användarnummer som ska filtreras] 
             [uttryck] 
Samma sak som export, men Brevbäraren filtreras automagiskt. Detta gör 
att man kan exportera ett email-liste-importmöte till dess emaillista. 
 
När inlägg exporteras så läggs ingen information om hur man tar bort 
listan från Lyskom-exportering eftersom detta skulle göra det möjligt 
för förvirrade list-medlemmar att skriva av listan från exportering i 
stället för att skriva av sig från mailinglistan.  
 
När Brevbäraren sedan importerar mail till det här Lyskom-mötet så 
kommer den aldrig att importera exporterade inlägg, så det är OK om 
ditt möte är med på mailinglistan. 
 
 
lyskomexport 
Syntax: 
  listexport mötesnummer email-adress [användarnummer som ska filtreras] 
             [uttryck] 
Samma sak som listexport, men utmatningen är anpassad för att passa i 
för att importeras i ett annat Lyskom. Detta innebär att föregående  
inlägg inte adderas om det finns i samma möte och annars så skrivs 
mer Lyskom-information ut. 
 
 
query 
Syntax: 
  query [mötesnummer/email-adress] 
Listar alla exporteringar. Om mötesnummer eller email-adress anges så 
visas bara exporteringar som har med mötet eller email-adressen att  
göra. Formatet är lagomt kryptiskt. 
 
 
remove 
Syntax 1: 
  remove mötesnummer email-adress 
Får Exportören att sluta exportera det mötet till email-adressen. 
Syntax 2: 
  remove email-adress 
Tar bort email-adressen från alla exporteringar. 
 
 
sendto 
Syntax: 
  sendto email-adress 
Skickar det kommenterade inlägget till 
email-adressen. Avsändaradressen till emailet blir mail-adressen till 
den som skrivit brevet till Exportören. 
 
 
 
Andra funktioner: 
 
Om det står mailto i en ärenderad i Exportörens brevlåda så skickas 
resten av inlägget till email-adressen efteråt. 
Syntax på ärenderaden: 
  mailto email-adress Ärende för mailet 
I resten av inlägger pladdrar du på om vad du nu vill säga. Avsändare 
blir mailadressen till kombrevlådan till den som författat inlägget. 
 
 
Export av slutna eller hemliga möten: 
 
Addera först Exportören till ditt slutna/hemliga möte. Sedan sätter du 
en exportering som vanligt. Nu kan ingen ta bort denna exportering 
eller lägga till en ny exportering förrän Exportören blivit utesluten 
ur mötet. Så om du ska ändra exporterings-email-adress så måste du 
utesluta Exportören, göra 'remove mötesnr emailadress', addera 
Exportören och sedan starta en ny export igen. 
 
Om du vill att Brevbäraren ska importera med korrekt trådning så måste 
Brevbäraren också adderas till det hemliga mötet. 
 
*********************************************************************** 
Felsökning 
 
I mötet Exportörens studsande mail importeras mail som studsar. Mail 
som inte ens kan skickas pga att det är en okänd host (t ex 
hedda@gurka.tomat) kastar Exportören glatt ner i bithinken. 
 
*********************************************************************** 
Teknisk dokumentation 
 
Exportören sätter Message-ID till  
inläggsnummer..exportoeren.time()+random@kom.lysator.liu.se 
 
 
*********************************************************************** 
Buggar: 
 
Om email-adressen inte finns så hamnar mailet i min skräpmail-låda och 
användaren får inte reda på det. 
 
Att addera sig via email till Exportören är inte så bra testat. 
 
*********************************************************************** 
Användningsområden för Exportören: 
 
1) Skicka vidare enstaka inlägg med sendto 
2) Skriva enstaka mail med mailto 
3) Skicka vidare inlägg med visst innehåll från ett högtrafikmöte. 
4) Skapa import- och exportmöten som sammankopplas med mailinglistor. 
 
Just nu är det ett tiotal möten som exporteras.