忽略EXDATE重复设置

时间:2018-01-28 00:28:25

标签: php google-calendar-api

使用PHP客户端库,我尝试创建每周定期活动,该活动将在我们关闭业务的日子跳过。

我传递这些参数以制作一个新的Google_Service_Calendar_Event对象,该对象会传递给Google_Service_Calendar :: events-> update()。

$params = array(
    'summary' => 'Event Title',
    'location' => 'Event Location',
    'start' => array(
        'dateTime' => $slot['startDate'].'T'.$slot['startTime'],
        'timeZone' => 'America/New_York',
    ),
    'end' => array(
        'dateTime' => $slot['startDate'].'T'.$slot['endTime'],
        'timeZone' => 'America/New_York',
    ),
    'recurrence' => $arrRecurrence,
    'attendees' => $arrAttendees,
);

$arrRecurrence规定该事件应每周重复一次,直到2月底,跳过总统和#39;天:

Array
(
    [0] => EXDATE;VALUE=DATE:20180219
    [1] => RRULE:FREQ=WEEKLY;UNTIL=20180224;BYDAY=MO
)

RRULE正在正确应用,但EXDATE被忽略,我似乎无法找出原因。

1 个答案:

答案 0 :(得分:0)

EXDATE必须与start和end的值格式相同。在这种情况下,这意味着EXDATE需要一个额外的时间组件和一个时区。

EXDATE;TZID=America/New_York;VALUE=DATE:20180219T000000Z