我目前正在努力添加功能,以允许用户通过其 REST API 响应 Office 365 活动邀请(接受/可能/拒绝)。然而,我并不完全确定开发人员应该如何通过 API 使用此功能。
例如,Google 有一个
attendeesOmitted
标志,您可以将其设置为 true
,然后在其正常事件更新端点上传递更新的受邀者。
不过,我在 Office 365 的 API 上没有看到任何此功能。我已尝试使用以下代码来更新邀请,但它对用户的状态没有影响(尽管它确实返回
200
成功消息):
NSMutableDictionary *params = [ActivityCommon parametersFromEvent:event type:service dateOnly:TRUE]; //Don't need all params
[params setObject:@[@{@"EmailAddress": @{@"Name": invitee[@"Name"],
@"Address": invitee[@"Email"]},
@"Status": @{@"Response": @"Accepted"},
@"Type": @"Required"}] forKey:@"Attendees"];
[networkMgr PATCH:[NSString stringWithFormat:@"events/%@", identifier] parameters:params success:nil failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"%@", operation.responseObject);
}];
有人有这方面的经验吗?任何见解将不胜感激!
会议邀请将在用户的收件箱中显示为
Message
。您可以使用 Mail API 来访问它。在大多数情况下,它看起来像普通电子邮件,但它有一些额外的属性。
"MeetingMessageType": "MeetingRequest",
"[email protected]": "https://outlook.office365.com/api/v1.0/Users('[email protected]')/Events('AAMkADRm...')"
通过使用
[email protected]
属性的值,您可以使用 Calendar API 访问用户日历上的相应事件。
在活动中,您可以使用
Accept
、Decline
或 TentativelyAccept
操作。 (请参阅 https://outlook.office365.com/api/v1.0/$metadata 了解完整声明)。
例如,如果您想接受会议邀请,您可以执行以下操作:
POST /Me/Events('AAMkADRm...')/Accept
{
"Comment": "I will be there!",
"SendResponse": true
}
组织者收到带有文字“我会在那里!”的接受消息。