Ureader.com  
Microsoft software help and Community
   home   |   control panel login   |   archive   |  
 
Exchange
2000.active.directory
2000.admin
2000.announcements
2000.app.conversion
2000.applications
2000.clients
2000.clustering
2000.connectivity
2000.development
2000.documentation
2000.general
2000.information.store
2000.interop
2000.kms
2000.misc
2000.protocols
2000.realtime.collabo.
2000.setup
2000.transport
2000.win2000
admin
application.conversion
applications
clients
clustering
connectivity
design
development
misc
mobility
setup
tools
  
 
date: Mon, 28 Apr 2008 09:17:01 -0700,    group: microsoft.public.exchange.applications        back       


Responding to Meeting Requests via C++   
Greetings fellow developers,

I am in the process of adding a feature to a service that already processes 
messages using MAPI in C++ with exchange 2003 to allow it to properly respond 
to meeting requests. Unfortunately I've reached a bit of a stumbling block in 
my response email. As far as I can tell everything is almost entirely set up 
correctly. However it would seem that two bits of information required are 
missing and I am not having any luck doing net and msdn searches to find 
them. I am hoping someone here can shed some light on the situation. If for 
some reason this question is inappropriate to this forum, please let me know 
and I will move it elsewhere.

Part One:
In the organizer's inbox, if you open up the response Email from the 
attendee in Outlook, you see 3 fields in the GUI. Accepted, Tentative, 
Declined. Each of which hold the names of the attendee who responded to the 
message under the appropriate heading. If the user accepted the meeting 
through Outlook for example his name will appear under 'Accepted' and so 
forth, appearing like this:

Accepted: George Washington; Thomas Jefferson
Tentative: Benjamin Franklin
Declined: John Adams

In my response email, this fields always say: 

Accepted: No attendees have accepted.
Tentative: No attendees have tentatively accepted.
Declined: No attendees have declined.

Part Two:
In the Organizer's calendar, if you open the meeting request there and flip 
to the 'tracking' tab. You see a list view of each person invited to the 
meeting, their attendance requirement level and their response. If you accept 
an appointment through outlook the Response field for the specified attendee 
will have a value of none, declined, tentative or accepted such as:

Name.........................Attendance................Response
George Washington............Required Attendee.........Accepted
Benjamin Franklin............Required Attendee.........Tentative
John Adams...................Required Attendee.........Declined

In my calendar after the email arrives the only thing I ever see is 'None' 
like this:

Name.........................Attendance................Response
George Washington............Required Attendee.........None
Benjamin Franklin............Required Attendee.........None
John Adams...................Required Attendee.........None

I have noticed that each of the attendees are recipients in the recipients 
table of the calendar object and that if you change the Response status for a 
user, then save the calendar item and read the properties of the IMessage 
Object, the PR_RECIPIENT_TRACKSTATUS for the attendee changes to match the 
value you specified when you saved the calendar item. 

Presumably, the response email is the only communication between the 
attendee and the originator of the meeting and there is no logical reason why 
the attendee's outlook client should have any special access over the 
originators. Indeed giving it such would be a dangerous hazard. Therefore we 
can assume that these issues are caused by some malformation of my response 
email. Either a property ( or properties ) not set, or not populated 
correctly. Therefore I guess there is a property, that is associated with the 
PR_RECIPIENT_TRACKSTATUS flag that appears in the attendee response email and 
tells the originator's calendar the details needed to properly populate the 
calendar item.

So that brings me to my questions:

Question 1: How do I appropriately populate the attendee response email so 
that the Accepted:, Tentative: and Declined: fields on the email appear as 
normal.

Question 2: How do I appropriately populate the attendee response email so 
that the calendar items' PR_RECIPIENT_TRACKSTATUS property in for the 
attendee in the recipient's table is properly populated.
date: Mon, 28 Apr 2008 09:17:01 -0700   author:   Ed Kramer

Re: Responding to Meeting Requests via C++   
=?Utf-8?B?RWQgS3JhbWVy?=  wrote in
news:F62B2147-CA32-4058-94D8-8DAB763219E0@microsoft.com: 
> I am in the process of adding a feature to a service that already
> processes messages using MAPI in C++ with exchange 2003 to allow it to
> properly respond to meeting requests. Unfortunately I've reached a bit
> of a stumbling block in my response email. As far as I can tell
> everything is almost entirely set up correctly.

 MS recently released the docs on this stuff:

http://msdn2.microsoft.com/en-us/library/cc425490(EXCHG.80).aspx

 is for calendaring. I'd guess you're missing one of the properties 
somewhere along the way, but that should let you find out which one it is.

 -- dan
date: Mon, 28 Apr 2008 09:55:49 -0700   author:   Dan Mitchell

Re: Responding to Meeting Requests via C++   
I have actually downloaded that and have gone over the relevant sections ( 
2.2.3 Meeting Object, 2.2.6 Meeting Response Object, 3.1.4.7.1 Accepting a 
Meeting, 3.1.4.7.4 Sending a Meeting Respone ). I've actually used it as a 
guide. I've gone through and made a bullet list so I can check off on what 
I've put in, hopefully that'll help. However I'm noticing some things that 
don't match up to what I'm seeing using Outlookspy in the property store. 
Differing version of exchange perhaps?

What I've been doing to help me test is I create and respond to a meeting 
request in outlook entirely and create one in outlook and then respond to it 
via code so i can see what the differences are and can compare to the list in 
the document on pages 102-106. Looking at this property lists, I opened up 
the outlook responded item and I'm noticing that a lot of properties they 
describe in the doc aren't there.

Example:
document........................................Property Store
2.2.3.1 PidLidAppointmentSequence 0x82E7........0x82E7 Not found
2.2.3.2 PidLidAppointmentLastSequence 0x81AF....0x81AF Not found
2.2.3.3 PidLidAppointmetnReplyTime 0x8139.......0x8139 Not Found
2.2.3.4 PidLidFInvited 0x81DA...................0x81DA Not Found
2.2.3.5 PidLidAppointmentReplyName 0x81AE.......0x81AE Not Found

Then in 4.2.1.2.4 'Accepting the Meeting Request' it mentions 
PidLidAppointmentMessageClass 0x8311 should contain a value of 
IPM.Appointment. But in outlookspy on the message I can see the 
IPM.Appointment value under 0x8255001E and PR_MESSAGE_CLASS ( 0x001A001E ).




"Dan Mitchell" wrote:

> =?Utf-8?B?RWQgS3JhbWVy?=  wrote in
> news:F62B2147-CA32-4058-94D8-8DAB763219E0@microsoft.com: 
> > I am in the process of adding a feature to a service that already
> > processes messages using MAPI in C++ with exchange 2003 to allow it to
> > properly respond to meeting requests. Unfortunately I've reached a bit
> > of a stumbling block in my response email. As far as I can tell
> > everything is almost entirely set up correctly.
> 
>  MS recently released the docs on this stuff:
> 
> http://msdn2.microsoft.com/en-us/library/cc425490(EXCHG.80).aspx
> 
>  is for calendaring. I'd guess you're missing one of the properties 
> somewhere along the way, but that should let you find out which one it is.
> 
>  -- dan
> 
>
date: Mon, 28 Apr 2008 12:23:01 -0700   author:   Ed Kramer

Re: Responding to Meeting Requests via C++   
I think I've figured out what my problem was as far as finding the properties 
the doc is talking about. I was looking at the property tag number rather 
than the ID. I still can't seem to locate the 
PidLidAppointmentProposedStartWhole and EndWhole though.

"Ed Kramer" wrote:

> I have actually downloaded that and have gone over the relevant sections ( 
> 2.2.3 Meeting Object, 2.2.6 Meeting Response Object, 3.1.4.7.1 Accepting a 
> Meeting, 3.1.4.7.4 Sending a Meeting Respone ). I've actually used it as a 
> guide. I've gone through and made a bullet list so I can check off on what 
> I've put in, hopefully that'll help. However I'm noticing some things that 
> don't match up to what I'm seeing using Outlookspy in the property store. 
> Differing version of exchange perhaps?
> 
> What I've been doing to help me test is I create and respond to a meeting 
> request in outlook entirely and create one in outlook and then respond to it 
> via code so i can see what the differences are and can compare to the list in 
> the document on pages 102-106. Looking at this property lists, I opened up 
> the outlook responded item and I'm noticing that a lot of properties they 
> describe in the doc aren't there.
> 
> Example:
> document........................................Property Store
> 2.2.3.1 PidLidAppointmentSequence 0x82E7........0x82E7 Not found
> 2.2.3.2 PidLidAppointmentLastSequence 0x81AF....0x81AF Not found
> 2.2.3.3 PidLidAppointmetnReplyTime 0x8139.......0x8139 Not Found
> 2.2.3.4 PidLidFInvited 0x81DA...................0x81DA Not Found
> 2.2.3.5 PidLidAppointmentReplyName 0x81AE.......0x81AE Not Found
> 
> Then in 4.2.1.2.4 'Accepting the Meeting Request' it mentions 
> PidLidAppointmentMessageClass 0x8311 should contain a value of 
> IPM.Appointment. But in outlookspy on the message I can see the 
> IPM.Appointment value under 0x8255001E and PR_MESSAGE_CLASS ( 0x001A001E ).
> 
> 
> 
> 
> "Dan Mitchell" wrote:
> 
> > =?Utf-8?B?RWQgS3JhbWVy?=  wrote in
> > news:F62B2147-CA32-4058-94D8-8DAB763219E0@microsoft.com: 
> > > I am in the process of adding a feature to a service that already
> > > processes messages using MAPI in C++ with exchange 2003 to allow it to
> > > properly respond to meeting requests. Unfortunately I've reached a bit
> > > of a stumbling block in my response email. As far as I can tell
> > > everything is almost entirely set up correctly.
> > 
> >  MS recently released the docs on this stuff:
> > 
> > http://msdn2.microsoft.com/en-us/library/cc425490(EXCHG.80).aspx
> > 
> >  is for calendaring. I'd guess you're missing one of the properties 
> > somewhere along the way, but that should let you find out which one it is.
> > 
> >  -- dan
> > 
> >
date: Tue, 29 Apr 2008 06:34:02 -0700   author:   Ed Kramer

Google
 
Web ureader.com


    COPYRIGHT 2007, YARDI TECHNOLOGY LIMITED, ALL RIGHT RESERVE  |   contact us