SMTP Event sink not firing on MAPI Message

SMTP Event sink not firing on MAPI Message

Post by Adam Wynn » Sat, 24 Feb 2001 00:37:36



Hi All,

I have been trying to implement a CDO SMTP event sink and have done it in
ATL in C++.

I have got the thing to fire for all direct SMTP connections (e.g. from
Outlook Express) but it does not work with MAPI mails being sent from my
Outlook 2000 client. The Outlook client has the "Exchange server" service
installed and when I send a mail from it, the event does not fire. I have
removed the rule from the sink, but still cannot get it to fire. The
Microsoft Seminar on Protocol and Transport event sinks says that *all*
e-mails going through Exchange2000 go through the SMTP service (even MAPI
ones). That means that all mails should fire the CDO "OnArrival" event (that
wraps the SMTP Transport "OnSubmission" event).

Does anyone have any ideas on how to do this?

Also, how inefficient is using CDO for 2000 for the event sinks if the sink
is cacheable?

Thanks
Adam

 
 
 

SMTP Event sink not firing on MAPI Message

Post by Jan R. Cirpk » Sat, 24 Feb 2001 04:45:03


MAPI clients are a  known issue. Though the event should fire, you cannot
get hold of most properties or attachments. Consequently oyu can't do much
with the sink. This all has to do with the TNIF encoding of MAPI messages -
that first would have to be cracked to let the event sink fire correctly.
Microsoft is aware of this issue, but it's probably a tough one to solve. I
always heard MS say - use the Transport Events just for incoming mail - and
of course, that's just half the fun (or even less :-) ).

Jan Cirpka
Compaq Global Services


> Hi All,

> I have been trying to implement a CDO SMTP event sink and have done it in
> ATL in C++.

> I have got the thing to fire for all direct SMTP connections (e.g. from
> Outlook Express) but it does not work with MAPI mails being sent from my
> Outlook 2000 client. The Outlook client has the "Exchange server" service
> installed and when I send a mail from it, the event does not fire. I have
> removed the rule from the sink, but still cannot get it to fire. The
> Microsoft Seminar on Protocol and Transport event sinks says that *all*
> e-mails going through Exchange2000 go through the SMTP service (even MAPI
> ones). That means that all mails should fire the CDO "OnArrival" event
(that
> wraps the SMTP Transport "OnSubmission" event).

> Does anyone have any ideas on how to do this?

> Also, how inefficient is using CDO for 2000 for the event sinks if the
sink
> is cacheable?

> Thanks
> Adam



 
 
 

SMTP Event sink not firing on MAPI Message

Post by Nicolas Quenti » Wed, 28 Feb 2001 01:30:38


There is maybe a way to get most properties in an SMTP Event sink if you have
defined a "content-class" in the Exchange schema and do the mapping beetwen the
PR_MESSAGE_CLASS ant the content class of the message. Have a look at the MSDN
and at the www.wsD2D.com server (a good reference).

"Jan R. Cirpka" a crit :

> MAPI clients are a  known issue. Though the event should fire, you cannot
> get hold of most properties or attachments. Consequently oyu can't do much
> with the sink. This all has to do with the TNIF encoding of MAPI messages -
> that first would have to be cracked to let the event sink fire correctly.
> Microsoft is aware of this issue, but it's probably a tough one to solve. I
> always heard MS say - use the Transport Events just for incoming mail - and
> of course, that's just half the fun (or even less :-) ).

> Jan Cirpka
> Compaq Global Services



> > Hi All,

> > I have been trying to implement a CDO SMTP event sink and have done it in
> > ATL in C++.

> > I have got the thing to fire for all direct SMTP connections (e.g. from
> > Outlook Express) but it does not work with MAPI mails being sent from my
> > Outlook 2000 client. The Outlook client has the "Exchange server" service
> > installed and when I send a mail from it, the event does not fire. I have
> > removed the rule from the sink, but still cannot get it to fire. The
> > Microsoft Seminar on Protocol and Transport event sinks says that *all*
> > e-mails going through Exchange2000 go through the SMTP service (even MAPI
> > ones). That means that all mails should fire the CDO "OnArrival" event
> (that
> > wraps the SMTP Transport "OnSubmission" event).

> > Does anyone have any ideas on how to do this?

> > Also, how inefficient is using CDO for 2000 for the event sinks if the
> sink
> > is cacheable?

> > Thanks
> > Adam


 
 
 

SMTP Event sink not firing on MAPI Message

Post by Vina » Wed, 28 Feb 2001 08:42:46


I am seeing the same problem. A message sent by OutlookExpress does showup in the
SMTP transport event sink but the ones sent by Outlook2000 don't. It should be
possible to have a Tnef parser/converter but the first thing is to get hold of
the message in the event sink.

Any definitive answer from someone at Microsoft !

-Vinay

-----Original Message-----

MAPI clients are a  known issue. Though the event should fire, you cannot
get hold of most properties or attachments. Consequently oyu can't do much
with the sink. This all has to do with the TNIF encoding of MAPI messages -
that first would have to be cracked to let the event sink fire correctly.
Microsoft is aware of this issue, but it's probably a tough one to solve. I
always heard MS say - use the Transport Events just for incoming mail - and
of course, that's just half the fun (or even less :-) ).

Jan Cirpka
Compaq Global Services



> Hi All,

> I have been trying to implement a CDO SMTP event sink and have done it in
> ATL in C++.

> I have got the thing to fire for all direct SMTP connections (e.g. from
> Outlook Express) but it does not work with MAPI mails being sent from my
> Outlook 2000 client. The Outlook client has the "Exchange server" service
> installed and when I send a mail from it, the event does not fire. I have
> removed the rule from the sink, but still cannot get it to fire. The
> Microsoft Seminar on Protocol and Transport event sinks says that *all*
> e-mails going through Exchange2000 go through the SMTP service (even MAPI
> ones). That means that all mails should fire the CDO "OnArrival" event
(that
> wraps the SMTP Transport "OnSubmission" event).

> Does anyone have any ideas on how to do this?

> Also, how inefficient is using CDO for 2000 for the event sinks if the
sink
> is cacheable?

> Thanks
> Adam

.

 
 
 

SMTP Event sink not firing on MAPI Message

Post by Andy Web » Wed, 28 Feb 2001 17:38:40


Typically this is caused by setting a filter of "mail from=*".  MAPI
messages don't have a "mail from" field at all, so the filter doesn't match.
Reinstall the sink without the filter and try it again (a couple times).


I am seeing the same problem. A message sent by OutlookExpress does showup
in the
SMTP transport event sink but the ones sent by Outlook2000 don't. It should
be
possible to have a Tnef parser/converter but the first thing is to get hold
of
the message in the event sink.

Any definitive answer from someone at Microsoft !

-Vinay

-----Original Message-----

MAPI clients are a  known issue. Though the event should fire, you cannot
get hold of most properties or attachments. Consequently oyu can't do much
with the sink. This all has to do with the TNIF encoding of MAPI messages -
that first would have to be cracked to let the event sink fire correctly.
Microsoft is aware of this issue, but it's probably a tough one to solve. I
always heard MS say - use the Transport Events just for incoming mail - and
of course, that's just half the fun (or even less :-) ).

Jan Cirpka
Compaq Global Services



> Hi All,

> I have been trying to implement a CDO SMTP event sink and have done it in
> ATL in C++.

> I have got the thing to fire for all direct SMTP connections (e.g. from
> Outlook Express) but it does not work with MAPI mails being sent from my
> Outlook 2000 client. The Outlook client has the "Exchange server" service
> installed and when I send a mail from it, the event does not fire. I have
> removed the rule from the sink, but still cannot get it to fire. The
> Microsoft Seminar on Protocol and Transport event sinks says that *all*
> e-mails going through Exchange2000 go through the SMTP service (even MAPI
> ones). That means that all mails should fire the CDO "OnArrival" event
(that
> wraps the SMTP Transport "OnSubmission" event).

> Does anyone have any ideas on how to do this?

> Also, how inefficient is using CDO for 2000 for the event sinks if the
sink
> is cacheable?

> Thanks
> Adam

.

 
 
 

SMTP Event sink not firing on MAPI Message

Post by Vina » Sat, 03 Mar 2001 09:06:04


Thanks Andy.
After removing the filter rule, the event sink does get fired when a MAPI msg
arrives at the SMTP transport.
So, the next thing is how does one get hold of the MAPI message from  
IMailMsgProperties interface ?

Thanks.
-Vinay

-----Original Message-----

Typically this is caused by setting a filter of "mail from=*".  MAPI
messages don't have a "mail from" field at all, so the filter doesn't match.
Reinstall the sink without the filter and try it again (a couple times).



I am seeing the same problem. A message sent by OutlookExpress does showup
in the
SMTP transport event sink but the ones sent by Outlook2000 don't. It should
be
possible to have a Tnef parser/converter but the first thing is to get hold
of
the message in the event sink.

Any definitive answer from someone at Microsoft !

-Vinay

-----Original Message-----
MAPI clients are a  known issue. Though the event should fire, you cannot
get hold of most properties or attachments. Consequently oyu can't do much
with the sink. This all has to do with the TNIF encoding of MAPI messages -
that first would have to be cracked to let the event sink fire correctly.
Microsoft is aware of this issue, but it's probably a tough one to solve. I
always heard MS say - use the Transport Events just for incoming mail - and
of course, that's just half the fun (or even less :-) ).

Jan Cirpka
Compaq Global Services



> Hi All,

> I have been trying to implement a CDO SMTP event sink and have done it in
> ATL in C++.

> I have got the thing to fire for all direct SMTP connections (e.g. from
> Outlook Express) but it does not work with MAPI mails being sent from my
> Outlook 2000 client. The Outlook client has the "Exchange server" service
> installed and when I send a mail from it, the event does not fire. I have
> removed the rule from the sink, but still cannot get it to fire. The
> Microsoft Seminar on Protocol and Transport event sinks says that *all*
> e-mails going through Exchange2000 go through the SMTP service (even MAPI
> ones). That means that all mails should fire the CDO "OnArrival" event
(that
> wraps the SMTP Transport "OnSubmission" event).

> Does anyone have any ideas on how to do this?

> Also, how inefficient is using CDO for 2000 for the event sinks if the
sink
> is cacheable?

> Thanks
> Adam

..

.

 
 
 

1. Event sink not firing

I've created an OnSave event sink which sends an email to
a users 2nd email account informing them that they have
received an email.

It works fine on my system but when I install it on
another system it doesn't work.  The dll registers ok and
the event also registers ok on the users Inbox.

Does anyone know how to track whether an event has fired
or if they've come across this type of problem before?

Thanks
Simon

2. Organization Name in Exchange Server 2K

3. OnSave event sink not firing properly when Importing

4. Convert with BinHex 4.0

5. Information store event sink does not fire,help plz

6. Exchangecode Autoaccept problem

7. OnSave event sink not firing properly when Importing

8. store.exe using a lot of processor

9. Problem With SMTP OnArrival Event ( It Does Not Fire)

10. Event Sink - how to fire only for new mail

11. Event Sinks Stopped Firing

12. Location of event sink fired.

13. Event sinks always firing regardless of Criteria