我在下面有这个python代码,它适用于在Outlook日历中创建一个事件。以下示例的开始和结束时间为下午3点至下午4点(我认为是UTC时区)
我们有来自不同地区(太平洋,山区,中部......时间)的用户。我试图完成的是时间总是当地时间。无论用户帐户在哪里,也应默认为Outlook中的下午3点到4点。
提前致谢,如果我需要澄清其中任何一项,请告诉我。
# Set the request parameters
url = 'https://outlook.office365.com/api/v1.0/me/events?$Select=Start,End'
user = 'user1@domain.com'
pwd = getpass.getpass('Please enter your AD password: ')
# Create JSON payload
data = {
"Subject": "Testing Outlock Event",
"Body": {
"ContentType": "HTML",
"Content": "Test Content"
},
"Start": "2016-05-23T15:00:00.000Z",
"End": "2016-05-23T16:00:00.000Z",
"Attendees": [
{
"EmailAddress": {
"Address": "user1@domain.com",
"Name": "User1"
},
"Type": "Required" },
{
"EmailAddress": {
"Address": "user2@domain.com",
"Name": "User2"
},
"Type": "Optional" }
]
}
json_payload = json.dumps(data)
# Build the HTTP request
opener = urllib2.build_opener(urllib2.HTTPHandler)
request = urllib2.Request(url, data=json_payload)
auth = base64.encodestring('%s:%s' % (user, pwd)).replace('\n', '')
request.add_header('Authorization', 'Basic %s' % auth)
request.add_header('Content-Type', 'application/json')
request.add_header('Accept', 'application/json')
request.get_method = lambda: 'POST'
# Perform the request
result = opener.open(request)
答案 0 :(得分:0)
首先,没有必要在不同的时区同时创建会议。
如果你真的想这样做,你需要按照与会者的时区创建单独的会议请求,JSON格式如下所示,
config.MapHttpAttributeRoutes();
请注意,您需要移除首都' Z'从那时起,它将以" TimeZone"指定的当地时间音调显示。属性。
上面的解决方法需要知道所有与会者的时区,我不确定这是否可以实际完成。如果没有,那么如果你有参与者的声音,那可能没什么意义。
"理想"实现您的要求的方法是给出时间而不指定时区,以便它可以在不同的时区同时显示。
但是,它尚不支持,但您可以在此投票https://officespdev.uservoice.com/forums/224641-general/suggestions/12866364-microsoft-graph-o365-unified-api-create-events-w