|
| Vise html-mails med billeder med JMail Fra : Torben Brandt |
Dato : 16-01-02 17:41 |
|
Nu har der været flere indlæg om hvordan man sender html-mails
med JMail, men mit problem går den anden vej.
Jeg skal modtage og vise en html-mail, som indeholder medsendte
billeder. Men hvordan kan jeg finde ud af hvilket de vedhæftede
billeder, der passer til 'content id'erne i html-koden.
Jeg kan kun se at et Attachment-objekt kan svare på om det er
InLine eller ej, men ikke hvilket content id, det i bekræftende
fald har.
Håber nogle kan hjælpe
Torben
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Torben Brandt (20-01-2002)
| Kommentar Fra : Torben Brandt |
Dato : 20-01-02 00:17 |
|
Torben Brandt wrote in dk.edb.internet.webdesign.serverside.asp:
> Jeg skal modtage og vise en html-mail, som indeholder medsendte
> billeder. Men hvordan kan jeg finde ud af hvilket de vedhæftede
> billeder, der passer til 'content id'erne i html-koden.
>
> Jeg kan kun se at et Attachment-objekt kan svare på om det er
> InLine eller ej, men ikke hvilket content id, det i bekræftende
> fald har.
Hej, nu har jeg fundet en løsning. Det er lidt svært at forklare,
men hvis nogle er interesseret i løsningen, så sig lige til, så
skal jeg nok skrive det.
Torben
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Jesper Stocholm (20-01-2002)
| Kommentar Fra : Jesper Stocholm |
Dato : 20-01-02 00:54 |
|
Torben Brandt wrote in news:a2cup7$cqb$1@sunsite.dk:
> Torben Brandt wrote in dk.edb.internet.webdesign.serverside.asp:
>> Jeg skal modtage og vise en html-mail, som indeholder medsendte
>> billeder. Men hvordan kan jeg finde ud af hvilket de vedhæftede
>> billeder, der passer til 'content id'erne i html-koden.
>>
>> Jeg kan kun se at et Attachment-objekt kan svare på om det er
>> InLine eller ej, men ikke hvilket content id, det i bekræftende
>> fald har.
>
> Hej, nu har jeg fundet en løsning. Det er lidt svært at forklare,
> men hvis nogle er interesseret i løsningen, så sig lige til, så
> skal jeg nok skrive det.
>
den vil jeg da gerne have ... :)
--
Jesper Stocholm - http://stocholm.dk
Synes du også, at Britney trods alt er meget lækker - men dog
på grænsen til det kvalmende ? http://stocholm.dk/britney.txt
| |
Torben Brandt (20-01-2002)
| Kommentar Fra : Torben Brandt |
Dato : 20-01-02 01:00 |
|
Jesper Stocholm wrote in dk.edb.internet.webdesign.serverside.asp:
> Torben Brandt wrote in news:a2cup7$cqb$1@sunsite.dk:
>
> > Torben Brandt wrote in dk.edb.internet.webdesign.serverside.asp:
> >> Jeg skal modtage og vise en html-mail, som indeholder medsendte
> >> billeder. Men hvordan kan jeg finde ud af hvilket de vedhæftede
> >> billeder, der passer til 'content id'erne i html-koden.
> >>
> >> Jeg kan kun se at et Attachment-objekt kan svare på om det er
> >> InLine eller ej, men ikke hvilket content id, det i bekræftende
> >> fald har.
> >
> > Hej, nu har jeg fundet en løsning. Det er lidt svært at forklare,
> > men hvis nogle er interesseret i løsningen, så sig lige til, så
> > skal jeg nok skrive det.
> >
>
> den vil jeg da gerne have ... :)
>
Jeg vil så sige at jeg ikke er nået meget længere end hvad du også
lige har skrevet i dk.edb.webdesign.html - "dagens banale spørgsmål",
men jeg skal nok få bakset noget brugbart sammen her en af
dagene.[Det er jo også eksamenstid ]
/Torben
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Jesper Stocholm (20-01-2002)
| Kommentar Fra : Jesper Stocholm |
Dato : 20-01-02 02:37 |
|
Torben Brandt wrote in news:a2d1ap$j0b$1@sunsite.dk:
> Jesper Stocholm wrote in dk.edb.internet.webdesign.serverside.asp:
>> Torben Brandt wrote in news:a2cup7$cqb$1@sunsite.dk:
>>
>> >
>> > Hej, nu har jeg fundet en løsning. Det er lidt svært at forklare,
>> > men hvis nogle er interesseret i løsningen, så sig lige til, så
>> > skal jeg nok skrive det.
>>
>> den vil jeg da gerne have ... :)
>>
> Jeg vil så sige at jeg ikke er nået meget længere end hvad du også
> lige har skrevet i dk.edb.webdesign.html - "dagens banale spørgsmål",
> men jeg skal nok få bakset noget brugbart sammen her en af
> dagene.[Det er jo også eksamenstid ]
>
men har du fundet ud af, hvordan du enten selv giver JMail et content-ID
eller hvordan man hiver content-ID ud igen ?
--
Jesper Stocholm - http://stocholm.dk
Synes du også, at Britney trods alt er meget lækker - men dog
på grænsen til det kvalmende ? http://stocholm.dk/britney.txt
| |
Torben Brandt (20-01-2002)
| Kommentar Fra : Torben Brandt |
Dato : 20-01-02 12:44 |
|
Jesper Stocholm wrote in dk.edb.internet.webdesign.serverside.asp:
> men har du fundet ud af, hvordan du enten selv giver JMail et content-ID
> eller hvordan man hiver content-ID ud igen ?
Ikke på nogen pæn måde i hvert fald. Men som man kan se på dette
------_=_NextPart_001_01C19F41.7936FD34
Content-Type: image/jpeg;
name="image001.jpg"
Content-Transfer-Encoding: base64
Content-ID: <image001.jpg@01C19F47.D3D04260>
Content-Description: image001.jpg
Content-Location: image001.jpg
Dette er et "afsnit" i msg.Text. Det er afgrænset af to vbCrLf både over
og under.
(Bemærk: Content-Id vil ikke altid starte med filnavnet)
Min taktik vil så være at gå igennem alle mailens attachments og finde
navnene på de inline-attachments, som vi skal finde content id på. Det vil
jeg bruge attachment.isInLine til.
Så vil jeg kigge msg.Text igennem et afsnit af gangen og bruge RegExp til
at matche name og content-id. (her er antaget at der er 3 inlinefiler med
navnene gemt i navn1, navn2 og navn3)
Jeg forestiller mig et RegExp-Pattern i retning af:
"^[\s\S]*name=""(" & navn1 & "|" & navn2 & "|" & navn3 &
")""[\s\S]*content-id: <([^>]*)>[\s\S]*$"
Så vil jeg så kigger match'erne igennem og skulle gerne have 3 matches,
hvor navn og cid så ligger i match.submatches(0) og ...(1)
Problemet hvis dette skal virke er hvis headeren ikke ser sådan ud hver
gang. Dvs. hvis der ikke står "name="""&navn1&"""" og _derefter_
"content-id: <"&cid%">", men det må man jo undersøge...
Det ville også være et problem hvis RegExp-pattern'et matchede fx noget af
selve teksten i mailen, men det er nok ikke så sandsynligt.
Så må man jo også gøre op med sig selv om hvor vigtigt det er at det
virker _hver_ gang.
I øvrigt så var den header jeg skrev herover en Jesper har postet. Hvor
mailen var sendt fra Outlook 2002, jeg her prøvet med nogle, der var sendt
fra Outlook 2000, og her så den lidt anderledes ud, men RegExp.Pattern'et
ville passe på dem begge.
Jeg kan også prøve at se om det ville passe med mails sendt via JMail.
Torben
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Jesper Stocholm (24-01-2002)
| Kommentar Fra : Jesper Stocholm |
Dato : 24-01-02 08:39 |
|
Torben Brandt wrote in news:a2eaij$g0$1@sunsite.dk:
> Jesper Stocholm wrote in dk.edb.internet.webdesign.serverside.asp:
>
>> men har du fundet ud af, hvordan du enten selv giver JMail et
>> content-ID eller hvordan man hiver content-ID ud igen ?
>
> Ikke på nogen pæn måde i hvert fald. Men som man kan se på dette
>
> ------_=_NextPart_001_01C19F41.7936FD34
> Content-Type: image/jpeg;
> name="image001.jpg"
> Content-Transfer-Encoding: base64
> Content-ID: <image001.jpg@01C19F47.D3D04260>
> Content-Description: image001.jpg
> Content-Location: image001.jpg
>
Jeg kunne ikke lige lade problemet ligge ... så jeg har gået og moslet med det i de
sidste par dage :)
Hvis du bruger JMail 4.3, så har du løst problemet. Her kan du bruge metoden
"AddCustomAttachment()" til at give dig Content-ID ved indsættelse af et billede
eller lignende. Det eneste problem er, at du er nødt til at give metoden en binær
streng som input (2. parameter), hvilket nok betyder, at du skal læse din fil ind i
ADO.stream-objectet ... men jeg har ikke prøvet det selv. Hvis du husker at sætte
3. parameter til true, så returnerer metoden det ønskede content-ID.
Hvis du bruger JMail 3.7, så er du lidt på herrens mark. Så vidt jeg kan se, så er
der kun to argumenter til AddCustomAttachment(), så det kan ganske givet ikke lade
sig gøre. Jeg har også prøvet at presse JMail til at angive de specifikke headers
jeg ønsker - men det har været stort set umuligt. Den eneste løsning udover din
egen - som imo (no offense :) ikke er særlig pæn - er at anvende komponenten W3
Sockets (også fra Dimac) til at kommunikere med en SMTP-server og så selv generere
HELE emailen.
Fordelen ved at anvende denne komponent kunne være:
* Det er faktisk interessant at lære hvordan man snakker med
en server på Internet [1].
* Det er ikke særligt svært at opbygge den selv. Jeg har stillet et
par spørgsmål i dk.edb.internet ... og det skulle ikke være noget
stort problem.
msgid: <Xns91A03DEFFF1Espamstocholmdk@192.38.208.81>
[1] Det kan godt være, at det bare er mig, der er en teknologi-
liderlig nørd, men går læste jeg mails via en telnet-forbindelse
til en pop3-server på port 110 ... og det er nok ikke sidste
gang :)
--
Jesper Stocholm - http://stocholm.dk
Synes du også, at Britney trods alt er meget lækker - men dog
på grænsen til det kvalmende ? http://stocholm.dk/britney.txt
| |
Jakob Andersen (24-01-2002)
| Kommentar Fra : Jakob Andersen |
Dato : 24-01-02 09:01 |
|
"Jesper Stocholm" <spam200201@stocholm.dk> wrote in message
news:Xns91A0580408D7Dspamstocholmdk@192.38.208.81...
> [1] Det kan godt være, at det bare er mig, der er en teknologi-
> liderlig nørd, men går læste jeg mails via en telnet-forbindelse
> til en pop3-server på port 110 ... og det er nok ikke sidste
> gang :)
Det er ikke kun dig, jeg læser tit new vha. telnet til en news server på
port 119
Dette skyldes også at jeg i sin tid brugte w3 sockets til at lave en online
newsreader, da jeg syntes ASPnntp var for latterligt.
--
Jakob Andersen
| |
Jesper Stocholm (24-01-2002)
| Kommentar Fra : Jesper Stocholm |
Dato : 24-01-02 09:06 |
|
Jakob Andersen wrote in news:a2of4s$b4h$1@sunsite.dk:
> "Jesper Stocholm" <spam200201@stocholm.dk> wrote in message
> news:Xns91A0580408D7Dspamstocholmdk@192.38.208.81...
>> [1] Det kan godt være, at det bare er mig, der er en teknologi-
>> liderlig nørd, men går læste jeg mails via en telnet-forbindelse
>> til en pop3-server på port 110 ... og det er nok ikke sidste
>> gang :)
>
> Det er ikke kun dig, jeg læser tit new vha. telnet til en news server
> på port 119
>
> Dette skyldes også at jeg i sin tid brugte w3 sockets til at lave en
> online newsreader, da jeg syntes ASPnntp var for latterligt.
>
enig ... :) som du måske kan huske, så har vi/jeg tidligere talt om ASPNNTP
.... og det er ganske givet ikke det bedstet stykke software verden endu har
set.
--
Jesper Stocholm - http://stocholm.dk
Synes du også, at Britney trods alt er meget lækker - men dog
på grænsen til det kvalmende ? http://stocholm.dk/britney.txt
| |
Torben Brandt (24-01-2002)
| Kommentar Fra : Torben Brandt |
Dato : 24-01-02 10:53 |
|
Jesper Stocholm wrote in dk.edb.internet.webdesign.serverside.asp:
> Hvis du bruger JMail 4.3, så har du løst problemet. Her kan du bruge metoden
> "AddCustomAttachment()" til at give dig Content-ID ved indsættelse af et billede
> eller lignende. Det eneste problem er, at du er nødt til at give metoden en binær
> streng som input (2. parameter), hvilket nok betyder, at du skal læse din fil ind i
> ADO.stream-objectet ... men jeg har ikke prøvet det selv. Hvis du husker at sætte
> 3. parameter til true, så returnerer metoden det ønskede content-ID.
Det er rigtigt, men jeg skal ikke sende en mail, jeg skal modtage den. Og desværre er
det ikke sådan at man kan hente filerne fra en modtagen mail og attache dem til en ny
og på den måde få Content ID (som du skriver). For det giver ikke samme Content ID.
Torben
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Jesper Stocholm (24-01-2002)
| Kommentar Fra : Jesper Stocholm |
Dato : 24-01-02 15:25 |
|
Torben Brandt wrote in news:a2olil$t32$1@sunsite.dk:
> Jesper Stocholm wrote in dk.edb.internet.webdesign.serverside.asp:
>> Hvis du bruger JMail 4.3, så har du løst problemet. Her kan du bruge
>> metoden "AddCustomAttachment()" til at give dig Content-ID ved
>> indsættelse af et billede eller lignende. Det eneste problem er, at
>> du er nødt til at give metoden en binær streng som input (2.
>> parameter), hvilket nok betyder, at du skal læse din fil ind i
>> ADO.stream-objectet ... men jeg har ikke prøvet det selv. Hvis du
>> husker at sætte 3. parameter til true, så returnerer metoden det
>> ønskede content-ID.
>
> Det er rigtigt, men jeg skal ikke sende en mail, jeg skal modtage
> den.
> Og desværre er det ikke sådan at man kan hente filerne fra en
> modtagen
> mail og attache dem til en ny og på den måde få Content ID (som du
> skriver). For det giver ikke samme Content ID.
>
men så kan du jo overveje at bruge W3 sockets. Hermed kan du oprette en
forbindelse til din pop3-server og hente emails derigennem. Det bør i
hvert fald ikke være raketvidenskab at lave :)
--
Jesper Stocholm - http://stocholm.dk
Synes du også, at Britney trods alt er meget lækker - men dog
på grænsen til det kvalmende ? http://stocholm.dk/britney.txt
| |
Torben Brandt (24-01-2002)
| Kommentar Fra : Torben Brandt |
Dato : 24-01-02 16:12 |
|
Jesper Stocholm wrote in dk.edb.internet.webdesign.serverside.asp:
> men så kan du jo overveje at bruge W3 sockets. Hermed kan du oprette en
> forbindelse til din pop3-server og hente emails derigennem. Det bør i
> hvert fald ikke være raketvidenskab at lave :)
W3 Sockets - Det var lidt af et fy-ord, - for mig i hvert fald.
Jeg ved praktisk talt ikke hvordan serverne snakker sammen, så det er nok
lidt svært at skulle igang med det.
[hvis du kender nogle pædagogiske sider på nettet, hvor man slipper for at
læse RFC o.lign, så kunne jeg måske kigge lidt]
Men selv om jeg spurgte pop3-serveren direkte, kunne den så oplyse mig om
andet end headerne og body og attachments, der så er kodet i base64 eller
sådan noget. (Som JMail også kan give)
Mao Kan man spørge serveren om Content-ID direkte?
Torben
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Jesper Stocholm (24-01-2002)
| Kommentar Fra : Jesper Stocholm |
Dato : 24-01-02 16:34 |
|
Torben Brandt wrote in news:a2p87v$ce1$1@sunsite.dk:
> Jesper Stocholm wrote in dk.edb.internet.webdesign.serverside.asp:
>> men så kan du jo overveje at bruge W3 sockets. Hermed kan du oprette
>> en forbindelse til din pop3-server og hente emails derigennem. Det
>> bør i hvert fald ikke være raketvidenskab at lave :)
>
> W3 Sockets - Det var lidt af et fy-ord, - for mig i hvert fald.
> Jeg ved praktisk talt ikke hvordan serverne snakker sammen, så det er
> nok lidt svært at skulle igang med det.
det er blot nogle ganske enkelte kommandoer du skal kunne bruge. Jeg
kender dem ikke selv med 100% nøjagtighed ... men mon ikke en anden i
gruppen kan dem - sådan uden videre (læs: Jakob) :)
> [hvis du kender nogle pædagogiske sider på nettet, hvor man slipper
> for at læse RFC o.lign, så kunne jeg måske kigge lidt]
>
> Men selv om jeg spurgte pop3-serveren direkte, kunne den så oplyse
mig
> om andet end headerne og body og attachments, der så er kodet i
base64
> eller sådan noget. (Som JMail også kan give)
> Mao Kan man spørge serveren om Content-ID direkte?
>
jeg tror det ikke. Det var blot for at undgå at bruge for meget tid på
at tweake JMail til at gøre det du gerne vil. Jeg oplevede fx da jeg
forsøgte at bruge den tidligere, at det ikke var muligt helt at sætte
egne headers etc ... og så var min tanke, at man så ligesågodt kunne
bruge den "rigtige" måde - nemlig ved direkte kommunikation med
serveren.
--
Jesper Stocholm - http://stocholm.dk
Synes du også, at Britney trods alt er meget lækker - men dog
på grænsen til det kvalmende ? http://stocholm.dk/britney.txt
| |
Jakob Andersen (24-01-2002)
| Kommentar Fra : Jakob Andersen |
Dato : 24-01-02 16:53 |
|
"Jesper Stocholm" <spam200201@stocholm.dk> wrote in message
news:Xns91A0A8939FF5Espamstocholmdk@192.38.208.81...
> det er blot nogle ganske enkelte kommandoer du skal kunne bruge. Jeg
> kender dem ikke selv med 100% nøjagtighed ... men mon ikke en anden i
> gruppen kan dem - sådan uden videre (læs: Jakob) :)
telnet mail.domaene.dk 110
USER [brugernavn]
PASS [password]
For at liste alle beskeder på kontoen bruger du så
LIST
Og får at hente beskederne bruger du:
RETR [msgid]
Med en split funktion hist og pist kan man nemt hente alle beskeder.
> jeg tror det ikke. Det var blot for at undgå at bruge for meget tid på
> at tweake JMail til at gøre det du gerne vil. Jeg oplevede fx da jeg
> forsøgte at bruge den tidligere, at det ikke var muligt helt at sætte
> egne headers etc ... og så var min tanke, at man så ligesågodt kunne
> bruge den "rigtige" måde - nemlig ved direkte kommunikation med
> serveren.
Enig, det er sjovt og man lærer en masse af at kende protokollerne.
Men hvis du vil kæmpe videre med JMail så værsgo, jeg tror bare det er
nemmere at styre hvad der sker hvis man selv har lidt kontrol
--
Jakob Andersen
| |
FH (20-01-2002)
| Kommentar Fra : FH |
Dato : 20-01-02 01:15 |
|
On Sat, 19 Jan 2002 23:16:55 +0000 (UTC), Torben Brandt
<torben@actuar.dk> wrote:
>Torben Brandt wrote in dk.edb.internet.webdesign.serverside.asp:
>> Jeg skal modtage og vise en html-mail, som indeholder medsendte
>> billeder. Men hvordan kan jeg finde ud af hvilket de vedhæftede
>> billeder, der passer til 'content id'erne i html-koden.
>>
>> Jeg kan kun se at et Attachment-objekt kan svare på om det er
>> InLine eller ej, men ikke hvilket content id, det i bekræftende
>> fald har.
>
>Hej, nu har jeg fundet en løsning. Det er lidt svært at forklare,
>men hvis nogle er interesseret i løsningen, så sig lige til, så
>skal jeg nok skrive det.
Den kunne jeg godt være MEGET interesseret i
På forhånd tak!
--
Flemming H.
Remove 2 spaces in mailadress
| |
|
|