问题标签 [microsoft-graph-calendar]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 使用 Microsoft Graph Delta 查询进行事件同步的问题
我正在开发一个内部应用程序。这将用于在本地备份和同步我们的 Office 365 日历和事件数据。要按照 Graph API 文档实现差异同步,Delta Query 是最好的选择。在为“/CalendarView”实现此增量查询时,两个参数是必需的(startDateTime、endDateTime)。这两个参数实际上设置了事件的范围以跟踪任何更改。我检查了这个最大范围,发现范围可以是 100 年。我们的应用程序确实有比这更长的范围,因为我们维护了历史日历。
我已经考虑过以下解决方案:
Sol #1: /events 使用 lastModifiedDateTime gt 'last backup' 时间进行 $filter 查询。
此解决方案不返回已删除的事件数据
溶胶 #2:/calendarView/delta?startDateTime = ''&endDateTime =''
该解决方案的有限范围为 100 年。
试过
https://graph.microsoft.com/v1.0/users/ {{user_id}}/events?$filter=lastModifiedDateTime gt '2019-06-26T02:56:41.828Z'
试过
https://graph.microsoft.com/v1.0/users/ {{user_id}}/calendar/calendarView/delta?startDateTime=1989-06-20T02:56:41.828Z&endDateTime=2088-06-26T02:56: 41.828Z
找出一种解决方案来实现没有这样的范围的差分同步或针对上述问题采用不同的方法。
azure-active-directory - 无法使用 Microsoft Graph API 获得管理员同意和访问令牌
我想构建一个示例应用程序,它可以使用 Microsoft 图形 API 读取实时或 office365 的 Outlook 帐户日历。
我尝试实施的案例是Microsoft Graph:无需用户即可访问
- 我在 Outlook Live 上创建了一个个人帐户。
- 在 Azure 门户上注册了一个应用程序。
- 下一步是获得管理员同意。
为了获得管理员同意,我尝试点击:
https://login.microsoftonline.com/common/adminconsent ?client_id=clientId &state=state &redirect_uri=redirect-uri
得到错误:
我们无法从此 API 版本为 Microsoft 帐户颁发令牌。请联系应用程序供应商,因为他们需要使用 2.0 版协议来支持此功能。
microsoft-graph-api - SingleValueExtendedProperty 仅在房间接受事件时传播
我正在编写一些代码来预订与 Outlook Office 365 集成的会议室。我正在使用 Microsoft Graph 来执行此操作,并且我的解决方案需要一些用于许多功能的扩展属性。
我的问题是: 当我更新所有者日历中某个事件的扩展属性时,更改不会传播到该事件的房间副本。扩展属性仅在房间需要再次接受事件时传播(例如开始日期更改)。
我用来更新事件的一段代码:
这有点奇怪,因为当我在所有者的日历中创建事件时,它会通过房间正确传播,但是当我更新扩展属性时,它适用于原始事件但不会影响房间的副本(除非房间需要再次接受该事件)。
也许 Graph 缺少 EWS 的旧功能,它通知更新方法以强制再次发送邀请,SendInvitationsOrCancellationsMode.SendToAllAndSaveCopy。
microsoft-graph-api - 如何创建传播到与会者副本的 openType 扩展?
我正在做一个预订房间的项目,我们需要使用一些扩展属性。
我们一直在使用 singleValueLegacyExtendedProperty,但正如我在另一个问题中报告的那样,microsoft graph 无法正确更新值(SingleValueExtendedProperty 仅在房间接受事件时传播)
我尝试使用图形资源管理器在某些特定事件中创建扩展:
当我检索房间事件时,扩展属性不存在(由于凭据,我必须使用邮递员,虽然我的用户有权访问这个房间,但我无法在图形资源管理器中使用我的凭据扩展扩展)
microsoft-graph-api - 无法订阅 Microsoft Graph API 日历是用户名称中有撇号
我们在 Office 365 中设置了一个应用程序。客户已同意管理员Calendar.ReadWrite
访问租户中所有用户的日历。
我们的 Web 应用程序能够为更改通知设置订阅,但电子邮件地址中带有撇号的用户除外(即John.O’Neil@nonwhere.com
)
订阅请求导致以下错误:
同一应用程序的多个租户中的用户会出现此问题。我们能够在我们的测试租户中重现这一点。
在我们的测试中,使用应用程序持有者令牌的授权无法订阅那些电子邮件地址中带有撇号的用户的日历。应用程序能够正确订阅电子邮件地址中没有撇号的其他用户的日历。
此外,相同的 EXACT 请求使用用户自己的授权标头令牌成功。因此,看起来应用程序处理具有不同的代码路径,对于电子邮件地址中带有撇号的用户会出错。
microsoft-graph-api - 订阅一个用户的所有日历,只获取一个更新
当我按照官方文档中的此处所述为用户事件注册 webhook ,然后在该帐户的非默认日历中插入一个事件(我在注册 webhook 之前创建)时,我没有收到关于 webhook url 的通知。
只有“主日历”(刚刚命名为“日历”)似乎附上了钩子。
我的问题是:
- 如何同步到所有日历事件,或者如果这不可能
- 如何同步到特定的日历事件
microsoft-graph-api - Microsoft graph API - 订阅任何日历时出现未经授权的错误
我通过了具有权限的经典 oAuth 流程Calendars.ReadWrite
和offline_access
,这应该足以创建订阅。
现在我得到了用户的日历列表(通过 api),当我尝试从这些日历中的任何一个请求订阅事件时,如下所示:
(甚至"resource": ,"/me/events"
)
我得到回应:
我在这里做错了什么?
microsoft-graph-api - 创建 Outlook 事件并阻止转发
我想通过 microsoft graph api 创建日历(outlook)事件并设置一些特定的响应选项。在(Windows)Outlook 客户端中,我可以启用/禁用
- 请求响应
- 允许新的时间建议
- 允许转发
在文档中,我只能找到启用/禁用“请求响应”的属性https://docs.microsoft.com/en-us/graph/api/user-post-events?但不是后来的。
问题是如何启用/禁用时间建议和转发?
我尝试将敏感度设置为“个人”、“私人”和“机密”,但没有帮助。
python-3.x - 身份验证时未收到刷新令牌
我正在使用 Office 365 图形 API,而身份验证(使用邮递员)我没有获得刷新令牌。access_token 在 1 小时后过期,我必须再次生成身份验证代码,然后要求新的 access_token。我没有选择刷新以前的令牌。
我遵循获取 access_token 的过程:
发送一个获取请求到 - https://login.microsoftonline.com/common/oauth2/v2.0/authorize 参数:client_id:xxxxxxxxxxxxxxxxxxxxx,client_secret:xxxxxxxxxxxxxxxxxxxxx,response_type:code,redirect_uri:http://localhost:8069,范围:Calendars.Read,response_mode:查询,状态:成功,这里我将在提供的 redirect_uri 中获取响应代码
然后我将发送一个 post 请求到 - https://login.microsoftonline.com/common/oauth2/v2.0/token 并带有表单数据:grant_type:authorization_code,代码:xxxxxxxxxxxxxxxxxxxxxxx,client_secret:xxxxxxxxxxxxxxxxxxxxxxx,client_id:xxxxxxxxxxxxxxxxxxxxxxx,范围:Calendars.Read,redirect_uri:http://localhost:8069,
作为回应,我应该得到-{“token_type”:“Bearer”,“scope”:“Calendars.Read”,“expires_in”:3600,“access_token”:“xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx”,“refresh_token”:“xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx”}
但我得到{“token_type”:“Bearer”,“scope”:“Calendars.Read”,“expires_in”:3600,“ext_expires_in”:3600,“access_token”:“xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx”,}
请帮忙