 |
|
|
|
| Author |
Message |
Melbin
Joined: 05 Aug 2007 Posts: 7
|
Posted: Tue Aug 23, 2005 3:43 am Post subject: Notification(message read/deleted) |
|
|
I want to develop an application for getting the notifications when
some particular messages are read/deleted for about 40,000 mailboxes.
I am using Exchange server 2000. i am using that as the email
server also.
I tried to use the Advisesink using MAPI but then i came across the problem
of the limitation of 255 mailboxes in a single process. For 40,000 mailboxes
if i am using seperate processes it will come upto 200 processes which is not
feasible. So i wanted to know which way i can do this.
I did "Exchange store events: synchronous events, asynchronous events,
and system events" . But from here i will be getting only the delete event
not read event.
So for that will i be able to us the auditing? (issue a PROPPATCH on the
folder on which you want to enable the auditing
(http://msdn.microsoft.com/library/en-us/e2k3/e2k3/_exch2k_accessing_item_descriptors.asp),
and pass along a security descriptor containing a SACL). If it can be used
then how is it done?
Or is there aome other way to do this?
Thanks a lotz in advance
Archived from group: microsoft>public>exchange2000>applications |
|
| Back to top |
|
 |
Michael
Joined: 05 Aug 2007 Posts: 5
|
Posted: Tue Aug 23, 2005 4:53 pm Post subject: Re: Notification(message read/deleted) |
|
|
Do you want to set security descriptor property?
You can use WebDAV to set security descriptor.
Also you can use WebDAV for notification but I am not sure if this is good
solution for 40000 mailboxes.
Have you tried WebDAV notification?
Michael
-------------------------------
If you need WebDAV API for Exchange server,
use our component WebDAV .NET for Exchange.
Check out http://www.independentsoft.com
"Melbin" wrote in message@microsoft.com...
> I want to develop an application for getting the notifications
when
> some particular messages are read/deleted for about 40,000 mailboxes.
> I am using Exchange server 2000. i am using that as the email
> server also.
> I tried to use the Advisesink using MAPI but then i came across the
problem
> of the limitation of 255 mailboxes in a single process. For 40,000
mailboxes
> if i am using seperate processes it will come upto 200 processes which is
not
> feasible. So i wanted to know which way i can do this.
> I did "Exchange store events: synchronous events, asynchronous
events,
> and system events" . But from here i will be getting only the delete event
> not read event.
> So for that will i be able to us the auditing? (issue a PROPPATCH on
the
> folder on which you want to enable the auditing
>
(http://msdn.microsoft.com/library/en-us/e2k3/e2k3/_exch2k_accessing_item_de
scriptors.asp),
> and pass along a security descriptor containing a SACL). If it can be used
> then how is it done?
> Or is there aome other way to do this?
> Thanks a lotz in advance
>
>
>
>
>
> |
|
| Back to top |
|
 |
Melbin
Joined: 05 Aug 2007 Posts: 7
|
Posted: Tue Aug 23, 2005 8:39 am Post subject: Re: Notification(message read/deleted) |
|
|
I did something like this for setting the SACL. Is this correct? will it give
me the notification when a message is read/deleted for that particular
folder? But where am i specifying the log file? Am i using the security log
file? Or will i be able to use the cutom registered log file?
CoInitialize(NULL);
bstr_t yourServerName = "ICOPE-LDAP";
bstr_t sUrl = "http:/" + yourServerName +
"/exchange/sampleuser1/inbox";
bstr_t sMethod = "PROPPATCH";
_variant_t vUser = L"ICOPE-LDAP\\Administrator"; //sampleuser1
_variant_t vPassword = L"mks"; //sampleuser1
MSXML::IXMLHttpRequest* pXMLHttpReq=NULL;
HRESULT hr = ::CoCreateInstance(__uuidof(XMLHTTPRequest),
NULL,
CLSCTX_INPROC_SERVER,
__uuidof(IXMLHttpRequest),
(LPVOID*)&pXMLHttpReq);
if (S_OK != hr)
{
printf("XML Http Request pointer creation failed\n");
return 0;
}
_variant_t vAsync = (bool)FALSE;
pXMLHttpReq->open(sMethod,
sUrl,
vAsync,
vUser,
vPassword);
pXMLHttpReq->setRequestHeader((bstr_t)"Content-Type",
(bstr_t)"text/xml");
bstr_t sReq;
bstr_t sNewVal="audit_on_success:audit_on_failure";
sReq = "";
sReq = sReq + "" + "xmlns:f=
'http://schemas.microsoft.com/security/'>";
sReq = sReq + "";
sReq = sReq + "";
sReq = sReq + "" + sNewVal + "";
sReq = sReq + "";
sReq = sReq + "";
// Send the request to set the search criteria.
pXMLHttpReq->send(sReq);
********************************************************
"Michael" wrote:
> Do you want to set security descriptor property?
> You can use WebDAV to set security descriptor.
>
> Also you can use WebDAV for notification but I am not sure if this is good
> solution for 40000 mailboxes.
> Have you tried WebDAV notification?
>
> Michael
> -------------------------------
> If you need WebDAV API for Exchange server,
> use our component WebDAV .NET for Exchange.
> Check out http://www.independentsoft.com
>
>
> "Melbin" wrote in message
> @microsoft.com...
> > I want to develop an application for getting the notifications
> when
> > some particular messages are read/deleted for about 40,000 mailboxes.
> > I am using Exchange server 2000. i am using that as the email
> > server also.
> > I tried to use the Advisesink using MAPI but then i came across the
> problem
> > of the limitation of 255 mailboxes in a single process. For 40,000
> mailboxes
> > if i am using seperate processes it will come upto 200 processes which is
> not
> > feasible. So i wanted to know which way i can do this.
> > I did "Exchange store events: synchronous events, asynchronous
> events,
> > and system events" . But from here i will be getting only the delete event
> > not read event.
> > So for that will i be able to us the auditing? (issue a PROPPATCH on
> the
> > folder on which you want to enable the auditing
> >
> (http://msdn.microsoft.com/library/en-us/e2k3/e2k3/_exch2k_accessing_item_de
> scriptors.asp),
> > and pass along a security descriptor containing a SACL). If it can be used
> > then how is it done?
> > Or is there aome other way to do this?
> > Thanks a lotz in advance
> >
> >
> >
> >
> >
> >
>
>
> |
|
| Back to top |
|
 |
Michael
Joined: 05 Aug 2007 Posts: 5
|
Posted: Tue Aug 23, 2005 6:22 pm Post subject: Re: Notification(message read/deleted) |
|
|
Do you plan to set this property to all 40 000 mailboxes?
Michael
-------------------------------
If you need WebDAV API for Exchange server,
use our component WebDAV .NET for Exchange.
Check out http://www.independentsoft.com
"Melbin" wrote in message@microsoft.com...
> I did something like this for setting the SACL. Is this correct? will it
give
> me the notification when a message is read/deleted for that particular
> folder? But where am i specifying the log file? Am i using the security
log
> file? Or will i be able to use the cutom registered log file?
>
> CoInitialize(NULL);
> bstr_t yourServerName = "ICOPE-LDAP";
> bstr_t sUrl = "http:/" + yourServerName +
> "/exchange/sampleuser1/inbox";
> bstr_t sMethod = "PROPPATCH";
>
> _variant_t vUser = L"ICOPE-LDAP\\Administrator"; //sampleuser1
> _variant_t vPassword = L"mks"; //sampleuser1
>
> MSXML::IXMLHttpRequest* pXMLHttpReq=NULL;
> HRESULT hr = ::CoCreateInstance(__uuidof(XMLHTTPRequest),
> NULL,
> CLSCTX_INPROC_SERVER,
> __uuidof(IXMLHttpRequest),
> (LPVOID*)&pXMLHttpReq);
>
> if (S_OK != hr)
> {
> printf("XML Http Request pointer creation failed\n");
> return 0;
> }
> _variant_t vAsync = (bool)FALSE;
> pXMLHttpReq->open(sMethod,
> sUrl,
> vAsync,
> vUser,
> vPassword);
>
> pXMLHttpReq->setRequestHeader((bstr_t)"Content-Type",
> (bstr_t)"text/xml");
>
> bstr_t sReq;
> bstr_t sNewVal="audit_on_success:audit_on_failure";
>
>
> sReq = "";
> sReq = sReq + "" + "xmlns:f=
> 'http://schemas.microsoft.com/security/'>";
> sReq = sReq + "";
> sReq = sReq + "";
> sReq = sReq + "" + sNewVal + "";
> sReq = sReq + "";
> sReq = sReq + "";
> // Send the request to set the search criteria.
> pXMLHttpReq->send(sReq);
> ********************************************************
>
> "Michael" wrote:
>
> > Do you want to set security descriptor property?
> > You can use WebDAV to set security descriptor.
> >
> > Also you can use WebDAV for notification but I am not sure if this is
good
> > solution for 40000 mailboxes.
> > Have you tried WebDAV notification?
> >
> > Michael
> > -------------------------------
> > If you need WebDAV API for Exchange server,
> > use our component WebDAV .NET for Exchange.
> > Check out http://www.independentsoft.com
> >
> >
> > "Melbin" wrote in message
> > @microsoft.com...
> > > I want to develop an application for getting the notifications
> > when
> > > some particular messages are read/deleted for about 40,000 mailboxes.
> > > I am using Exchange server 2000. i am using that as the email
> > > server also.
> > > I tried to use the Advisesink using MAPI but then i came across the
> > problem
> > > of the limitation of 255 mailboxes in a single process. For 40,000
> > mailboxes
> > > if i am using seperate processes it will come upto 200 processes which
is
> > not
> > > feasible. So i wanted to know which way i can do this.
> > > I did "Exchange store events: synchronous events, asynchronous
> > events,
> > > and system events" . But from here i will be getting only the delete
event
> > > not read event.
> > > So for that will i be able to us the auditing? (issue a PROPPATCH
on
> > the
> > > folder on which you want to enable the auditing
> > >
> >
(http://msdn.microsoft.com/library/en-us/e2k3/e2k3/_exch2k_accessing_item_de
> > scriptors.asp),
> > > and pass along a security descriptor containing a SACL). If it can be
used
> > > then how is it done?
> > > Or is there aome other way to do this?
> > > Thanks a lotz in advance
> > >
> > >
> > >
> > >
> > >
> > >
> >
> >
> > |
|
| Back to top |
|
 |
Melbin
Joined: 05 Aug 2007 Posts: 7
|
Posted: Tue Aug 23, 2005 9:30 am Post subject: Re: Notification(message read/deleted) |
|
|
Yes. Otherwise how will i get notified for all those mailboxes. Will this
work? Is this idea correct?
"Michael" wrote:
> Do you plan to set this property to all 40 000 mailboxes?
>
> Michael
> -------------------------------
> If you need WebDAV API for Exchange server,
> use our component WebDAV .NET for Exchange.
> Check out http://www.independentsoft.com
>
>
> "Melbin" wrote in message
> @microsoft.com...
> > I did something like this for setting the SACL. Is this correct? will it
> give
> > me the notification when a message is read/deleted for that particular
> > folder? But where am i specifying the log file? Am i using the security
> log
> > file? Or will i be able to use the cutom registered log file?
> >
> > CoInitialize(NULL);
> > bstr_t yourServerName = "ICOPE-LDAP";
> > bstr_t sUrl = "http:/" + yourServerName +
> > "/exchange/sampleuser1/inbox";
> > bstr_t sMethod = "PROPPATCH";
> >
> > _variant_t vUser = L"ICOPE-LDAP\\Administrator"; //sampleuser1
> > _variant_t vPassword = L"mks"; //sampleuser1
> >
> > MSXML::IXMLHttpRequest* pXMLHttpReq=NULL;
> > HRESULT hr = ::CoCreateInstance(__uuidof(XMLHTTPRequest),
> > NULL,
> > CLSCTX_INPROC_SERVER,
> > __uuidof(IXMLHttpRequest),
> > (LPVOID*)&pXMLHttpReq);
> >
> > if (S_OK != hr)
> > {
> > printf("XML Http Request pointer creation failed\n");
> > return 0;
> > }
> > _variant_t vAsync = (bool)FALSE;
> > pXMLHttpReq->open(sMethod,
> > sUrl,
> > vAsync,
> > vUser,
> > vPassword);
> >
> > pXMLHttpReq->setRequestHeader((bstr_t)"Content-Type",
> > (bstr_t)"text/xml");
> >
> > bstr_t sReq;
> > bstr_t sNewVal="audit_on_success:audit_on_failure";
> >
> >
> > sReq = "";
> > sReq = sReq + "" + "xmlns:f=
> > 'http://schemas.microsoft.com/security/'>";
> > sReq = sReq + "";
> > sReq = sReq + "";
> > sReq = sReq + "" + sNewVal + "";
> > sReq = sReq + "";
> > sReq = sReq + "";
> > // Send the request to set the search criteria.
> > pXMLHttpReq->send(sReq);
> > ********************************************************
> >
> > "Michael" wrote:
> >
> > > Do you want to set security descriptor property?
> > > You can use WebDAV to set security descriptor.
> > >
> > > Also you can use WebDAV for notification but I am not sure if this is
> good
> > > solution for 40000 mailboxes.
> > > Have you tried WebDAV notification?
> > >
> > > Michael
> > > -------------------------------
> > > If you need WebDAV API for Exchange server,
> > > use our component WebDAV .NET for Exchange.
> > > Check out http://www.independentsoft.com
> > >
> > >
> > > "Melbin" wrote in message
> > > @microsoft.com...
> > > > I want to develop an application for getting the notifications
> > > when
> > > > some particular messages are read/deleted for about 40,000 mailboxes.
> > > > I am using Exchange server 2000. i am using that as the email
> > > > server also.
> > > > I tried to use the Advisesink using MAPI but then i came across the
> > > problem
> > > > of the limitation of 255 mailboxes in a single process. For 40,000
> > > mailboxes
> > > > if i am using seperate processes it will come upto 200 processes which
> is
> > > not
> > > > feasible. So i wanted to know which way i can do this.
> > > > I did "Exchange store events: synchronous events, asynchronous
> > > events,
> > > > and system events" . But from here i will be getting only the delete
> event
> > > > not read event.
> > > > So for that will i be able to us the auditing? (issue a PROPPATCH
> on
> > > the
> > > > folder on which you want to enable the auditing
> > > >
> > >
> (http://msdn.microsoft.com/library/en-us/e2k3/e2k3/_exch2k_accessing_item_de
> > > scriptors.asp),
> > > > and pass along a security descriptor containing a SACL). If it can be
> used
> > > > then how is it done?
> > > > Or is there aome other way to do this?
> > > > Thanks a lotz in advance
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > >
> > >
> > >
>
>
> |
|
| Back to top |
|
 |
Melbin
Joined: 05 Aug 2007 Posts: 7
|
Posted: Tue Aug 23, 2005 10:02 am Post subject: Re: Notification(message read/deleted) |
|
|
Yes. Otherwise how will i get notified when a message is read/deleted in any
of those mailboxes. Is this way correct?
"Michael" wrote:
> Do you plan to set this property to all 40 000 mailboxes?
>
> Michael
> -------------------------------
> If you need WebDAV API for Exchange server,
> use our component WebDAV .NET for Exchange.
> Check out http://www.independentsoft.com
>
>
> "Melbin" wrote in message
> @microsoft.com...
> > I did something like this for setting the SACL. Is this correct? will it
> give
> > me the notification when a message is read/deleted for that particular
> > folder? But where am i specifying the log file? Am i using the security
> log
> > file? Or will i be able to use the cutom registered log file?
> >
> > CoInitialize(NULL);
> > bstr_t yourServerName = "ICOPE-LDAP";
> > bstr_t sUrl = "http:/" + yourServerName +
> > "/exchange/sampleuser1/inbox";
> > bstr_t sMethod = "PROPPATCH";
> >
> > _variant_t vUser = L"ICOPE-LDAP\\Administrator"; //sampleuser1
> > _variant_t vPassword = L"mks"; //sampleuser1
> >
> > MSXML::IXMLHttpRequest* pXMLHttpReq=NULL;
> > HRESULT hr = ::CoCreateInstance(__uuidof(XMLHTTPRequest),
> > NULL,
> > CLSCTX_INPROC_SERVER,
> > __uuidof(IXMLHttpRequest),
> > (LPVOID*)&pXMLHttpReq);
> >
> > if (S_OK != hr)
> > {
> > printf("XML Http Request pointer creation failed\n");
> > return 0;
> > }
> > _variant_t vAsync = (bool)FALSE;
> > pXMLHttpReq->open(sMethod,
> > sUrl,
> > vAsync,
> > vUser,
> > vPassword);
> >
> > pXMLHttpReq->setRequestHeader((bstr_t)"Content-Type",
> > (bstr_t)"text/xml");
> >
> > bstr_t sReq;
> > bstr_t sNewVal="audit_on_success:audit_on_failure";
> >
> >
> > sReq = "";
> > sReq = sReq + "" + "xmlns:f=
> > 'http://schemas.microsoft.com/security/'>";
> > sReq = sReq + "";
> > sReq = sReq + "";
> > sReq = sReq + "" + sNewVal + "";
> > sReq = sReq + "";
> > sReq = sReq + "";
> > // Send the request to set the search criteria.
> > pXMLHttpReq->send(sReq);
> > ********************************************************
> >
> > "Michael" wrote:
> >
> > > Do you want to set security descriptor property?
> > > You can use WebDAV to set security descriptor.
> > >
> > > Also you can use WebDAV for notification but I am not sure if this is
> good
> > > solution for 40000 mailboxes.
> > > Have you tried WebDAV notification?
> > >
> > > Michael
> > > -------------------------------
> > > If you need WebDAV API for Exchange server,
> > > use our component WebDAV .NET for Exchange.
> > > Check out http://www.independentsoft.com
> > >
> > >
> > > "Melbin" wrote in message
> > > @microsoft.com...
> > > > I want to develop an application for getting the notifications
> > > when
> > > > some particular messages are read/deleted for about 40,000 mailboxes.
> > > > I am using Exchange server 2000. i am using that as the email
> > > > server also.
> > > > I tried to use the Advisesink using MAPI but then i came across the
> > > problem
> > > > of the limitation of 255 mailboxes in a single process. For 40,000
> > > mailboxes
> > > > if i am using seperate processes it will come upto 200 processes which
> is
> > > not
> > > > feasible. So i wanted to know which way i can do this.
> > > > I did "Exchange store events: synchronous events, asynchronous
> > > events,
> > > > and system events" . But from here i will be getting only the delete
> event
> > > > not read event.
> > > > So for that will i be able to us the auditing? (issue a PROPPATCH
> on
> > > the
> > > > folder on which you want to enable the auditing
> > > >
> > >
> (http://msdn.microsoft.com/library/en-us/e2k3/e2k3/_exch2k_accessing_item_de
> > > scriptors.asp),
> > > > and pass along a security descriptor containing a SACL). If it can be
> used
> > > > then how is it done?
> > > > Or is there aome other way to do this?
> > > > Thanks a lotz in advance
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > >
> > >
> > >
>
>
> |
|
| Back to top |
|
 |
Michael
Joined: 05 Aug 2007 Posts: 5
|
Posted: Tue Aug 23, 2005 10:01 pm Post subject: Re: Notification(message read/deleted) |
|
|
I know about WebDAV notification.
With WebDAV you can use one account (Admin) and subscribe for events in all
40 000 mailboxes.
We have not tested with large number of mailboxes like you have, but this
means that you must send 40 000 requests to your server to subscribe in all
mailboxes.
With WebDAV there is no limit of 256 open mailboxes because to subscribe for
event with WebDAV you do not need to "open mailbox"
Because you have such large number of mailboxes you can try to use WebDAV
SUBSCRIBE method (see documentation in Exchange SDK) and subscribe for
events with callback.
Problem with WebDAV is that maximun subscription lifetime is 1 hour (3600
seconds) and after that you must renew your subscription.
Michael
-------------------------------
If you need WebDAV API for Exchange server,
use our component WebDAV .NET for Exchange.
Check out http://www.independentsoft.com
"Melbin" wrote in message@microsoft.com...
> Yes. Otherwise how will i get notified for all those mailboxes. Will this
> work? Is this idea correct?
>
> "Michael" wrote:
>
> > Do you plan to set this property to all 40 000 mailboxes?
> >
> > Michael
> > -------------------------------
> > If you need WebDAV API for Exchange server,
> > use our component WebDAV .NET for Exchange.
> > Check out http://www.independentsoft.com
> >
> >
> > "Melbin" wrote in message
> > @microsoft.com...
> > > I did something like this for setting the SACL. Is this correct? will
it
> > give
> > > me the notification when a message is read/deleted for that particular
> > > folder? But where am i specifying the log file? Am i using the
security
> > log
> > > file? Or will i be able to use the cutom registered log file?
> > >
> > > CoInitialize(NULL);
> > > bstr_t yourServerName = "ICOPE-LDAP";
> > > bstr_t sUrl = "http:/" + yourServerName +
> > > "/exchange/sampleuser1/inbox";
> > > bstr_t sMethod = "PROPPATCH";
> > >
> > > _variant_t vUser = L"ICOPE-LDAP\\Administrator"; //sampleuser1
> > > _variant_t vPassword = L"mks"; //sampleuser1
> > >
> > > MSXML::IXMLHttpRequest* pXMLHttpReq=NULL;
> > > HRESULT hr = ::CoCreateInstance(__uuidof(XMLHTTPRequest),
> > > NULL,
> > > CLSCTX_INPROC_SERVER,
> > > __uuidof(IXMLHttpRequest),
> > > (LPVOID*)&pXMLHttpReq);
> > >
> > > if (S_OK != hr)
> > > {
> > > printf("XML Http Request pointer creation failed\n");
> > > return 0;
> > > }
> > > _variant_t vAsync = (bool)FALSE;
> > > pXMLHttpReq->open(sMethod,
> > > sUrl,
> > > vAsync,
> > > vUser,
> > > vPassword);
> > >
> > > pXMLHttpReq->setRequestHeader((bstr_t)"Content-Type",
> > > (bstr_t)"text/xml");
> > >
> > > bstr_t sReq;
> > > bstr_t sNewVal="audit_on_success:audit_on_failure";
> > >
> > >
> > > sReq = "";
> > > sReq = sReq + "" + "xmlns:f=
> > > 'http://schemas.microsoft.com/security/'>";
> > > sReq = sReq + "";
> > > sReq = sReq + "";
> > > sReq = sReq + "" + sNewVal + "";
> > > sReq = sReq + "";
> > > sReq = sReq + "";
> > > // Send the request to set the search criteria.
> > > pXMLHttpReq->send(sReq);
> > > ********************************************************
> > >
> > > "Michael" wrote:
> > >
> > > > Do you want to set security descriptor property?
> > > > You can use WebDAV to set security descriptor.
> > > >
> > > > Also you can use WebDAV for notification but I am not sure if this
is
> > good
> > > > solution for 40000 mailboxes.
> > > > Have you tried WebDAV notification?
> > > >
> > > > Michael
> > > > -------------------------------
> > > > If you need WebDAV API for Exchange server,
> > > > use our component WebDAV .NET for Exchange.
> > > > Check out http://www.independentsoft.com
> > > >
> > > >
> > > > "Melbin" wrote in message
> > > > @microsoft.com...
> > > > > I want to develop an application for getting the
notifications
> > > > when
> > > > > some particular messages are read/deleted for about 40,000
mailboxes.
> > > > > I am using Exchange server 2000. i am using that as the
email
> > > > > server also.
> > > > > I tried to use the Advisesink using MAPI but then i came across
the
> > > > problem
> > > > > of the limitation of 255 mailboxes in a single process. For 40,000
> > > > mailboxes
> > > > > if i am using seperate processes it will come upto 200 processes
which
> > is
> > > > not
> > > > > feasible. So i wanted to know which way i can do this.
> > > > > I did "Exchange store events: synchronous events,
asynchronous
> > > > events,
> > > > > and system events" . But from here i will be getting only the
delete
> > event
> > > > > not read event.
> > > > > So for that will i be able to us the auditing? (issue a
PROPPATCH
> > on
> > > > the
> > > > > folder on which you want to enable the auditing
> > > > >
> > > >
> >
(http://msdn.microsoft.com/library/en-us/e2k3/e2k3/_exch2k_accessing_item_de
> > > > scriptors.asp),
> > > > > and pass along a security descriptor containing a SACL). If it can
be
> > used
> > > > > then how is it done?
> > > > > Or is there aome other way to do this?
> > > > > Thanks a lotz in advance
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > >
> > > >
> > > >
> >
> >
> > |
|
| Back to top |
|
 |
Henning Krause [MVP - Exc
Joined: 05 Aug 2007 Posts: 1
|
Posted: Tue Aug 23, 2005 11:04 pm Post subject: Re: Notification(message read/deleted) |
|
|
Hello,
the WebDAV notify will not solve the problem, because no notifications are
send when elements are being read.
AFAIK, the 256 mailbox limit was with Exchange 2000, where a hotfix exist.
Exchange 2003 should not exhibit this behavior.
Greetings,
Henning Krause
MVP - Exchange
http://www.infinitec.de
"Michael" wrote in message $pFHA.3980@TK2MSFTNGP15.phx.gbl...
>I know about WebDAV notification.
> With WebDAV you can use one account (Admin) and subscribe for events in
> all
> 40 000 mailboxes.
> We have not tested with large number of mailboxes like you have, but this
> means that you must send 40 000 requests to your server to subscribe in
> all
> mailboxes.
> With WebDAV there is no limit of 256 open mailboxes because to subscribe
> for
> event with WebDAV you do not need to "open mailbox"
>
> Because you have such large number of mailboxes you can try to use WebDAV
> SUBSCRIBE method (see documentation in Exchange SDK) and subscribe for
> events with callback.
> Problem with WebDAV is that maximun subscription lifetime is 1 hour (3600
> seconds) and after that you must renew your subscription.
>
> Michael
> -------------------------------
> If you need WebDAV API for Exchange server,
> use our component WebDAV .NET for Exchange.
> Check out http://www.independentsoft.com
>
>
> "Melbin" wrote in message
> @microsoft.com...
>> Yes. Otherwise how will i get notified for all those mailboxes. Will this
>> work? Is this idea correct?
>>
>> "Michael" wrote:
>>
>> > Do you plan to set this property to all 40 000 mailboxes?
>> >
>> > Michael
>> > -------------------------------
>> > If you need WebDAV API for Exchange server,
>> > use our component WebDAV .NET for Exchange.
>> > Check out http://www.independentsoft.com
>> >
>> >
>> > "Melbin" wrote in message
>> > @microsoft.com...
>> > > I did something like this for setting the SACL. Is this correct? will
> it
>> > give
>> > > me the notification when a message is read/deleted for that
>> > > particular
>> > > folder? But where am i specifying the log file? Am i using the
> security
>> > log
>> > > file? Or will i be able to use the cutom registered log file?
>> > >
>> > > CoInitialize(NULL);
>> > > bstr_t yourServerName = "ICOPE-LDAP";
>> > > bstr_t sUrl = "http:/" + yourServerName +
>> > > "/exchange/sampleuser1/inbox";
>> > > bstr_t sMethod = "PROPPATCH";
>> > >
>> > > _variant_t vUser = L"ICOPE-LDAP\\Administrator"; //sampleuser1
>> > > _variant_t vPassword = L"mks"; //sampleuser1
>> > >
>> > > MSXML::IXMLHttpRequest* pXMLHttpReq=NULL;
>> > > HRESULT hr = ::CoCreateInstance(__uuidof(XMLHTTPRequest),
>> > > NULL,
>> > > CLSCTX_INPROC_SERVER,
>> > > __uuidof(IXMLHttpRequest),
>> > > (LPVOID*)&pXMLHttpReq);
>> > >
>> > > if (S_OK != hr)
>> > > {
>> > > printf("XML Http Request pointer creation failed\n");
>> > > return 0;
>> > > }
>> > > _variant_t vAsync = (bool)FALSE;
>> > > pXMLHttpReq->open(sMethod,
>> > > sUrl,
>> > > vAsync,
>> > > vUser,
>> > > vPassword);
>> > >
>> > > pXMLHttpReq->setRequestHeader((bstr_t)"Content-Type",
>> > > (bstr_t)"text/xml");
>> > >
>> > > bstr_t sReq;
>> > > bstr_t sNewVal="audit_on_success:audit_on_failure";
>> > >
>> > >
>> > > sReq = "";
>> > > sReq = sReq + "" + "xmlns:f=
>> > > 'http://schemas.microsoft.com/security/'>";
>> > > sReq = sReq + "";
>> > > sReq = sReq + "";
>> > > sReq = sReq + "" + sNewVal + "";
>> > > sReq = sReq + "";
>> > > sReq = sReq + "";
>> > > // Send the request to set the search criteria.
>> > > pXMLHttpReq->send(sReq);
>> > > ********************************************************
>> > >
>> > > "Michael" wrote:
>> > >
>> > > > Do you want to set security descriptor property?
>> > > > You can use WebDAV to set security descriptor.
>> > > >
>> > > > Also you can use WebDAV for notification but I am not sure if this
> is
>> > good
>> > > > solution for 40000 mailboxes.
>> > > > Have you tried WebDAV notification?
>> > > >
>> > > > Michael
>> > > > -------------------------------
>> > > > If you need WebDAV API for Exchange server,
>> > > > use our component WebDAV .NET for Exchange.
>> > > > Check out http://www.independentsoft.com
>> > > >
>> > > >
>> > > > "Melbin" wrote in message
>> > > > @microsoft.com...
>> > > > > I want to develop an application for getting the
> notifications
>> > > > when
>> > > > > some particular messages are read/deleted for about 40,000
> mailboxes.
>> > > > > I am using Exchange server 2000. i am using that as the
> email
>> > > > > server also.
>> > > > > I tried to use the Advisesink using MAPI but then i came across
> the
>> > > > problem
>> > > > > of the limitation of 255 mailboxes in a single process. For
>> > > > > 40,000
>> > > > mailboxes
>> > > > > if i am using seperate processes it will come upto 200 processes
> which
>> > is
>> > > > not
>> > > > > feasible. So i wanted to know which way i can do this.
>> > > > > I did "Exchange store events: synchronous events,
> asynchronous
>> > > > events,
>> > > > > and system events" . But from here i will be getting only the
> delete
>> > event
>> > > > > not read event.
>> > > > > So for that will i be able to us the auditing? (issue a
> PROPPATCH
>> > on
>> > > > the
>> > > > > folder on which you want to enable the auditing
>> > > > >
>> > > >
>> >
> (http://msdn.microsoft.com/library/en-us/e2k3/e2k3/_exch2k_accessing_item_de
>> > > > scriptors.asp),
>> > > > > and pass along a security descriptor containing a SACL). If it
>> > > > > can
> be
>> > used
>> > > > > then how is it done?
>> > > > > Or is there aome other way to do this?
>> > > > > Thanks a lotz in advance
>> > > > >
>> > > > >
>> > > > >
>> > > > >
>> > > > >
>> > > > >
>> > > >
>> > > >
>> > > >
>> >
>> >
>> >
>
> |
|
| Back to top |
|
 |
Melbin
Joined: 05 Aug 2007 Posts: 7
|
Posted: Wed Aug 24, 2005 1:09 am Post subject: Re: Notification(message read/deleted) |
|
|
Sorry Henning. I thought you are busy and that is why you are not replying.
Any way thanks to Henning and Micheal for replying.
So i can't use webdav notifications also. Now the only way is
Auditing. But how am i telling that i need the success and failure of
messages in a folder? The code i did is as follows,
CoInitialize(NULL);
bstr_t yourServerName = "SERVERI";
bstr_t sUrl = "http:/" + yourServerName +
"/exchange/sampleuser1/inbox";
bstr_t sMethod = "PROPPATCH";
_variant_t vUser = L"SERVERI\\Administrator"; //sampleuser1
_variant_t vPassword = L"mks"; //sampleuser1
MSXML::IXMLHttpRequest* pXMLHttpReq=NULL;
HRESULT hr = ::CoCreateInstance(__uuidof(XMLHTTPRequest),
NULL,
CLSCTX_INPROC_SERVER,
__uuidof(IXMLHttpRequest),
(LPVOID*)&pXMLHttpReq);
if (S_OK != hr)
{
printf("XML Http Request pointer creation failed\n");
return 0;
}
_variant_t vAsync = (bool)FALSE;
pXMLHttpReq->open(sMethod,
sUrl,
vAsync,
vUser,
vPassword);
pXMLHttpReq->setRequestHeader((bstr_t)"Content-Type",
(bstr_t)"text/xml");
bstr_t sReq;
bstr_t sNewVal="audit_on_success:audit_on_failure";
sReq = "";
sReq = sReq + "" + "xmlns:f=
'http://schemas.microsoft.com/security/'>";
sReq = sReq + "";
sReq = sReq + "";
sReq = sReq + "" + sNewVal + "";
sReq = sReq + "";
sReq = sReq + "";
// Send the request to set the search criteria.
pXMLHttpReq->send(sReq);
********************************************************
"Melbin" wrote:
> Yes. Otherwise how will i get notified when a message is read/deleted in any
> of those mailboxes. Is this way correct?
>
> "Michael" wrote:
>
> > Do you plan to set this property to all 40 000 mailboxes?
> >
> > Michael
> > -------------------------------
> > If you need WebDAV API for Exchange server,
> > use our component WebDAV .NET for Exchange.
> > Check out http://www.independentsoft.com
> >
> >
> > "Melbin" wrote in message
> > @microsoft.com...
> > > I did something like this for setting the SACL. Is this correct? will it
> > give
> > > me the notification when a message is read/deleted for that particular
> > > folder? But where am i specifying the log file? Am i using the security
> > log
> > > file? Or will i be able to use the cutom registered log file?
> > >
> > > CoInitialize(NULL);
> > > bstr_t yourServerName = "ICOPE-LDAP";
> > > bstr_t sUrl = "http:/" + yourServerName +
> > > "/exchange/sampleuser1/inbox";
> > > bstr_t sMethod = "PROPPATCH";
> > >
> > > _variant_t vUser = L"ICOPE-LDAP\\Administrator"; //sampleuser1
> > > _variant_t vPassword = L"mks"; //sampleuser1
> > >
> > > MSXML::IXMLHttpRequest* pXMLHttpReq=NULL;
> > > HRESULT hr = ::CoCreateInstance(__uuidof(XMLHTTPRequest),
> > > NULL,
> > > CLSCTX_INPROC_SERVER,
> > > __uuidof(IXMLHttpRequest),
> > > (LPVOID*)&pXMLHttpReq);
> > >
> > > if (S_OK != hr)
> > > {
> > > printf("XML Http Request pointer creation failed\n");
> > > return 0;
> > > }
> > > _variant_t vAsync = (bool)FALSE;
> > > pXMLHttpReq->open(sMethod,
> > > sUrl,
> > > vAsync,
> > > vUser,
> > > vPassword);
> > >
> > > pXMLHttpReq->setRequestHeader((bstr_t)"Content-Type",
> > > (bstr_t)"text/xml");
> > >
> > > bstr_t sReq;
> > > bstr_t sNewVal="audit_on_success:audit_on_failure";
> > >
> > >
> > > sReq = "";
> > > sReq = sReq + "" + "xmlns:f=
> > > 'http://schemas.microsoft.com/security/'>";
> > > sReq = sReq + "";
> > > sReq = sReq + "";
> > > sReq = sReq + "" + sNewVal + "";
> > > sReq = sReq + "";
> > > sReq = sReq + "";
> > > // Send the request to set the search criteria.
> > > pXMLHttpReq->send(sReq);
> > > ********************************************************
> > >
> > > "Michael" wrote:
> > >
> > > > Do you want to set security descriptor property?
> > > > You can use WebDAV to set security descriptor.
> > > >
> > > > Also you can use WebDAV for notification but I am not sure if this is
> > good
> > > > solution for 40000 mailboxes.
> > > > Have you tried WebDAV notification?
> > > >
> > > > Michael
> > > > -------------------------------
> > > > If you need WebDAV API for Exchange server,
> > > > use our component WebDAV .NET for Exchange.
> > > > Check out http://www.independentsoft.com
> > > >
> > > >
> > > > "Melbin" wrote in message
> > > > @microsoft.com...
> > > > > I want to develop an application for getting the notifications
> > > > when
> > > > > some particular messages are read/deleted for about 40,000 mailboxes.
> > > > > I am using Exchange server 2000. i am using that as the email
> > > > > server also.
> > > > > I tried to use the Advisesink using MAPI but then i came across the
> > > > problem
> > > > > of the limitation of 255 mailboxes in a single process. For 40,000
> > > > mailboxes
> > > > > if i am using seperate processes it will come upto 200 processes which
> > is
> > > > not
> > > > > feasible. So i wanted to know which way i can do this.
> > > > > I did "Exchange store events: synchronous events, asynchronous
> > > > events,
> > > > > and system events" . But from here i will be getting only the delete
> > event
> > > > > not read event.
> > > > > So for that will i be able to us the auditing? (issue a PROPPATCH
> > on
> > > > the
> > > > > folder on which you want to enable the auditing
> > > > >
> > > >
> > (http://msdn.microsoft.com/library/en-us/e2k3/e2k3/_exch2k_accessing_item_de
> > > > scriptors.asp),
> > > > > and pass along a security descriptor containing a SACL). If it can be
> > used
> > > > > then how is it done?
> > > > > Or is there aome other way to do this?
> > > > > Thanks a lotz in advance
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > >
> > > >
> > > >
> >
> >
> > |
|
| Back to top |
|
 |
Melbin
Joined: 05 Aug 2007 Posts: 7
|
Posted: Wed Aug 24, 2005 7:00 am Post subject: Re: Notification(message read/deleted) |
|
|
Sorry Henning. I thought you are busy and that is why you are not replying.
Any way thanks to Henning and Micheal for replying.
So i can't use webdav notifications also. Now the only way is
Auditing. But how am i telling that i need the success and failure of
messages in a folder? I saw something like "urn:schemas:httpmail:read ". Is
this the one for read? then for delete what?
The code i did is as follows. This code is giving OK response but not
getting any read/delete events.
CoInitialize(NULL);
bstr_t yourServerName = "SERVERI";
bstr_t sUrl = "http:/" + yourServerName +
"/exchange/sampleuser1/inbox";
bstr_t sMethod = "PROPPATCH";
_variant_t vUser = L"SERVERI\\Administrator"; //sampleuser1
_variant_t vPassword = L"mks"; //sampleuser1
MSXML::IXMLHttpRequest* pXMLHttpReq=NULL;
HRESULT hr = ::CoCreateInstance(__uuidof(XMLHTTPRequest),
NULL,
CLSCTX_INPROC_SERVER,
__uuidof(IXMLHttpRequest),
(LPVOID*)&pXMLHttpReq);
if (S_OK != hr)
{
printf("XML Http Request pointer creation failed\n");
return 0;
}
_variant_t vAsync = (bool)FALSE;
pXMLHttpReq->open(sMethod,
sUrl,
vAsync,
vUser,
vPassword);
pXMLHttpReq->setRequestHeader((bstr_t)"Content-Type",
(bstr_t)"text/xml");
bstr_t sReq;
bstr_t sNewVal="audit_on_success:audit_on_failure";
sReq = "";
sReq = sReq + "
xmlns:o='urn:schemas:httpmail:inbox'>";
sReq = sReq + "";
sReq = sReq + "
'http://schemas.microsoft.com/security/'>";
sReq = sReq + "" + sNewVal + "";
sReq = sReq + "";
sReq = sReq + "";
pXMLHttpReq->send(sReq);
********************************************************
"Melbin" wrote:
> Sorry Henning. I thought you are busy and that is why you are not replying.
> Any way thanks to Henning and Micheal for replying.
> So i can't use webdav notifications also. Now the only way is
> Auditing. But how am i telling that i need the success and failure of
> messages in a folder? The code i did is as follows,
> CoInitialize(NULL);
> bstr_t yourServerName = "SERVERI";
> bstr_t sUrl = "http:/" + yourServerName +
> "/exchange/sampleuser1/inbox";
> bstr_t sMethod = "PROPPATCH";
>
> _variant_t vUser = L"SERVERI\\Administrator"; //sampleuser1
> _variant_t vPassword = L"mks"; //sampleuser1
>
> MSXML::IXMLHttpRequest* pXMLHttpReq=NULL;
> HRESULT hr = ::CoCreateInstance(__uuidof(XMLHTTPRequest),
> NULL,
> CLSCTX_INPROC_SERVER,
> __uuidof(IXMLHttpRequest),
> (LPVOID*)&pXMLHttpReq);
>
> if (S_OK != hr)
> {
> printf("XML Http Request pointer creation failed\n");
> return 0;
> }
> _variant_t vAsync = (bool)FALSE;
> pXMLHttpReq->open(sMethod,
> sUrl,
> vAsync,
> vUser,
> vPassword);
>
> pXMLHttpReq->setRequestHeader((bstr_t)"Content-Type",
> (bstr_t)"text/xml");
>
> bstr_t sReq;
> bstr_t sNewVal="audit_on_success:audit_on_failure";
>
>
> sReq = "";
> sReq = sReq + "" + "xmlns:f=
> 'http://schemas.microsoft.com/security/'>";
> sReq = sReq + "";
> sReq = sReq + "";
> sReq = sReq + "" + sNewVal + "";
> sReq = sReq + "";
> sReq = sReq + "";
> // Send the request to set the search criteria.
> pXMLHttpReq->send(sReq);
> ********************************************************
>
>
> "Melbin" wrote:
>
> > Yes. Otherwise how will i get notified when a message is read/deleted in any
> > of those mailboxes. Is this way correct?
> >
> > "Michael" wrote:
> >
> > > Do you plan to set this property to all 40 000 mailboxes?
> > >
> > > Michael
> > > -------------------------------
> > > If you need WebDAV API for Exchange server,
> > > use our component WebDAV .NET for Exchange.
> > > Check out http://www.independentsoft.com
> > >
> > >
> > > "Melbin" wrote in message
> > > @microsoft.com...
> > > > I did something like this for setting the SACL. Is this correct? will it
> > > give
> > > > me the notification when a message is read/deleted for that particular
> > > > folder? But where am i specifying the log file? Am i using the security
> > > log
> > > > file? Or will i be able to use the cutom registered log file?
> > > >
> > > > CoInitialize(NULL);
> > > > bstr_t yourServerName = "ICOPE-LDAP";
> > > > bstr_t sUrl = "http:/" + yourServerName +
> > > > "/exchange/sampleuser1/inbox";
> > > > bstr_t sMethod = "PROPPATCH";
> > > >
> > > > _variant_t vUser = L"ICOPE-LDAP\\Administrator"; //sampleuser1
> > > > _variant_t vPassword = L"mks"; //sampleuser1
> > > >
> > > > MSXML::IXMLHttpRequest* pXMLHttpReq=NULL;
> > > > HRESULT hr = ::CoCreateInstance(__uuidof(XMLHTTPRequest),
> > > > NULL,
> > > > CLSCTX_INPROC_SERVER,
> > > > __uuidof(IXMLHttpRequest),
> > > > (LPVOID*)&pXMLHttpReq);
> > > >
> > > > if (S_OK != hr)
> > > > {
> > > > printf("XML Http Request pointer creation failed\n");
> > > > return 0;
> > > > }
> > > > _variant_t vAsync = (bool)FALSE;
> > > > pXMLHttpReq->open(sMethod,
> > > > sUrl,
> > > > vAsync,
> > > > vUser,
> > > > vPassword);
> > > >
> > > > pXMLHttpReq->setRequestHeader((bstr_t)"Content-Type",
> > > > (bstr_t)"text/xml");
> > > >
> > > > bstr_t sReq;
> > > > bstr_t sNewVal="audit_on_success:audit_on_failure";
> > > >
> > > >
> > > > sReq = "";
> > > > sReq = sReq + "" + "xmlns:f=
> > > > 'http://schemas.microsoft.com/security/'>";
> > > > sReq = sReq + "";
> > > > sReq = sReq + "";
> > > > sReq = sReq + "" + sNewVal + "";
> > > > sReq = sReq + "";
> > > > sReq = sReq + "";
> > > > // Send the request to set the search criteria.
> > > > pXMLHttpReq->send(sReq);
> > > > ********************************************************
> > > >
> > > > "Michael" wrote:
> > > >
> > > > > Do you want to set security descriptor property?
> > > > > You can use WebDAV to set security descriptor.
> > > > >
> > > > > Also you can use WebDAV for notification but I am not sure if this is
> > > good
> > > > > solution for 40000 mailboxes.
> > > > > Have you tried WebDAV notification?
> > > > >
> > > > > Michael
> > > > > -------------------------------
> > > > > If you need WebDAV API for Exchange server,
> > > > > use our component WebDAV .NET for Exchange.
> > > > > Check out http://www.independentsoft.com
> > > > >
> > > > >
> > > > > "Melbin" wrote in message
> > > > > @microsoft.com...
> > > > > > I want to develop an application for getting the notifications
> > > > > when
> > > > > > some particular messages are read/deleted for about 40,000 mailboxes.
> > > > > > I am using Exchange server 2000. i am using that as the email
> > > > > > server also.
> > > > > > I tried to use the Advisesink using MAPI but then i came across the
> > > > > problem
> > > > > > of the limitation of 255 mailboxes in a single process. For 40,000
> > > > > mailboxes
> > > > > > if i am using seperate processes it will come upto 200 processes which
> > > is
> > > > > not
> > > > > > feasible. So i wanted to know which way i can do this.
> > > > > > I did "Exchange store events: synchronous events, asynchronous
> > > > > events,
> > > > > > and system events" . But from here i will be getting only the delete
> > > event
> > > > > > not read event.
> > > > > > So for that will i be able to us the auditing? (issue a PROPPATCH
> > > on
> > > > > the
> > > > > > folder on which you want to enable the auditing
> > > > > >
> > > > >
> > > (http://msdn.microsoft.com/library/en-us/e2k3/e2k3/_exch2k_accessing_item_de
> > > > > scriptors.asp),
> > > > > > and pass along a security descriptor containing a SACL). If it can be
> > > used
> > > > > > then how is it done?
> > > > > > Or is there aome other way to do this?
> > > > > > Thanks a lotz in advance
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > > >
> > >
> > >
> > >
|
|
| Back to top |
|
 |
|
|
| Related Topics: | Scheduled Resource showing Item Deleted can it be removed au | I am using Outlook 2000 to setup mailboxes for use as Resource Rooms | | I have set the Resource Scheduling options to automatically process | meeting requests and | | It is now accepting meeting requests. However, if a user deletes a |
CDO message with hyperlink Hi All I'm having difficulty sending a message via CDO that contains a hyperlink. The messages send without any problems - but do not always reach their destination. Can anyone see anything wrong with my code below? Or can anyone suggest a way of debuging
intelligent message filter events The app event log on our Exchange 2003 server is registering event 9661, with the following description: The Unsolicited Commercial Email default filter level has been updated. The new value is 8. The problem that we have with this is that we haven't inst
Sybari Antigen"Exceeded Internet Timeout virus" message Can anyone provide a for the message: "Antigen Exceeded Internet Timeout virus"?? We're running Antigen for Exchange V8 SR3 Sorry to post "off topic" but there is no newsgroup yet. Many thanks
Your Message was deleted without being read Exchange 2003/Outlook 2003 I have a user with strange occurrence today. She received 601 messages that referenced "your message was deleted without being read." They came in all at once and were from Feb 2006 to present July 2007. Looks like the standa |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|