Google Calendar API - 创建事件 PHP

Posted

技术标签:

【中文标题】Google Calendar API - 创建事件 PHP【英文标题】:Google Calendar API - create event PHP 【发布时间】:2022-01-09 13:19:58 【问题描述】:

我想使用 Google Calendar API 将新活动插入 Google Calendar。 问题是我想根据输入的日期时间数据将事件状态设置为“空闲”或“忙碌”。

如何将活动状态更改为“免费”?当我创建一个新事件时,它会自动设置为“忙碌”。我不知道如何设置为“空闲”或“忙碌”。

如何使用 Google Calendar API 插入新活动。

$googleClient = new GoogleClient();
$slotCalendarService = GoogleClientCalendar::getSlotCalendar($googleClient->getClient());

$googleEvent = new Event();

$googleEventStart = new EventDateTime();
$googleEventStart->setTimeZone($attrs['timezone']);
$googleEventStart->setDateTime("2021-12-02T10:00:00");
$googleEvent->setStart($googleEventStart);

$googleEventEnd = new EventDateTime();
$googleEventEnd->setTimeZone($attrs['timezone']);
$googleEventEnd->setDateTime("2021-12-02T10:50:00");
$googleEvent->setEnd($googleEventEnd);

$googleEventAttendee = new EventAttendee();
$googleEventAttendee->email = empty($attrs['attendee']) ? '' : $attrs['attendee'];
$googleEvent->description = $description;
$googleEvent->summary = $remark;
$googleEvent->setAttendees($googleEventAttendee);
$slotCalendarService->getCalendarService()->events->insert($slotCalendarService->getCurrentCalendarId(), $googleEvent);

根据上面的代码,没有参数可以将事件状态设置为“空闲”或“忙碌”。 我也关注文档FreeBusy Google Calendar API,它没有关于如何将事件状态设置为“空闲”或“忙碌”的信息。

【问题讨论】:

【参考方案1】:

当您想设置为“免费”时,请进行如下修改。

发件人:

$googleEvent->setAttendees($googleEventAttendee);
$slotCalendarService->getCalendarService()->events->insert($slotCalendarService->getCurrentCalendarId(), $googleEvent);

收件人:

$googleEvent->setAttendees($googleEventAttendee);
$googleEvent->transparency = "transparent"; // Added
$slotCalendarService->getCalendarService()->events->insert($slotCalendarService->getCurrentCalendarId(), $googleEvent);
当您不使用$googleEvent->transparency = "transparent"; 或使用$googleEvent->transparency = "opaque"; 时,表示“忙”。

参考:

Events: insert

【讨论】:

以上是关于Google Calendar API - 创建事件 PHP的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Google Calendar API iOS Swift 创建事件

将会议添加到活动 Google Calendar API

Google Calendar API - 禁止 - 服务帐户错误

Google Calendar API 日历 ID 和事件 ID

使用 Google 协作平台中的 Google Calendar API

.Net Google Calendar API - 新活动始终处于激活状态