javascript - 使用 Google Calendar API,有没有办法获取和存储与会者的响应?
问题描述
我正在尝试将聊天网络应用与 Google Calendar API 集成。聊天应用程序由许多用户订阅的流/频道组成。
如果管理员在流中创建共享事件(可能是会议或讨论),它会通知该流的所有订阅者。
是否有可能,如果可以,如何将订阅者的反馈响应返回给活动组织者,指示订阅者的“参加/感兴趣”状态?这可能类似于 Facebook 活动,用户可以点击“感兴趣”并被计算在内。
解决方案
查看文档后,Calendar API 提供了不同风格的事件资源,更多信息可以在About events中找到。
从资源表示:
{ "kind": "calendar#event", "etag": etag, "id": string, "status": string, "htmlLink": string, "created": datetime, "updated": datetime, "summary": string, "description": string, "location": string, "colorId": string, "creator": { "id": string, "email": string, "displayName": string, "self": boolean }, "organizer": { "id": string, "email": string, "displayName": string, "self": boolean }, "start": { "date": date, "dateTime": datetime, "timeZone": string }, "end": { "date": date, "dateTime": datetime, "timeZone": string }, "endTimeUnspecified": boolean, "recurrence": [ string ], "recurringEventId": string, "originalStartTime": { "date": date, "dateTime": datetime, "timeZone": string }, "transparency": string, "visibility": string, "iCalUID": string, "sequence": integer, "attendees": [ { "id": string, "email": string, "displayName": string, "organizer": boolean, "self": boolean, "resource": boolean, "optional": boolean, "responseStatus": string, "comment": string, "additionalGuests": integer } ], "attendeesOmitted": boolean, "extendedProperties": { "private": { (key): string }, "shared": { (key): string } }, "hangoutLink": string, "conferenceData": { "createRequest": { "requestId": string, "conferenceSolutionKey": { "type": string }, "status": { "statusCode": string } }, "entryPoints": [ { "entryPointType": string, "uri": string, "label": string, "pin": string, "accessCode": string, "meetingCode": string, "passcode": string, "password": string } ], "conferenceSolution": { "key": { "type": string }, "name": string, "iconUri": string }, "conferenceId": string, "signature": string, "notes": string, "gadget": { "type": string, "title": string, "link": string, "iconLink": string, "width": integer, "height": integer, "display": string, "preferences": { (key): string } }, "anyoneCanAddSelf": boolean, "guestsCanInviteOthers": boolean, "guestsCanModify": boolean, "guestsCanSeeOtherGuests": boolean, "privateCopy": boolean, "locked": boolean, "reminders": { "useDefault": boolean, "overrides": [ { "method": string, "minutes": integer } ] }, "source": { "url": string, "title": string }, "attachments": [ { "fileUrl": string, "title": string, "mimeType": string, "iconLink": string, "fileId": string } ] }
你会发现 writable field responseStatus
,它可能有以下值:
- “needsAction” - 与会者没有响应邀请。
- "declined" - 与会者拒绝了邀请。
- "tentative" - 与会者暂时接受了邀请。
- "accepted" - 与会者已接受邀请。
推荐阅读
- excel - Excel 单元格中的值
- php - laravel 队列主管工作人员给出异常
- algorithm - 我对这个算法的时间复杂度的解释正确吗?
- azure - 子管道是否可以由 azure 管道中不同 repo 中的不同分支的父管道触发?
- c++ - Srand() 和 rand() 仍然生成相同的随机数
- sql - 如何在 Oracle SQL 中计算总共 6 个月?
- c++ - 编译器对模板的无效实例化给出错误
- reactjs - TypeError:使用“useRef”时无法读取未定义的属性“onMonthSelect”
- linux - Mac 无法访问端口 22
- oracle - VarChar可以由什么组成?