在回复活动邀请后,Google日历API未在网络日历中显示应用响应

时间:2016-10-11 04:10:56

标签: php ios google-calendar-api

我们正在构建一个与谷歌日历集成的iOS日历应用程序。我们已经在后端同步谷歌日历,到目前为止一切正常,但我们有一个小问题。当用户回复活动邀请时,是","否","可能"在iOS应用中,用户的响应无法在Google日历网页上看到,被邀请者也没有收到任何回复。我们没有收到任何错误。

编程语言是php。以下是代码。

    require_once __DIR__ . '/vendor/autoload.php';
    require_once __DIR__ . '/vendor/google/apiclient/src/Google/Client.php';
    require_once __DIR__ . '/vendor/google/apiclient/src/Google/Service.php';

    /* setup google client object */
    $client = new Google_Client();
    $client->setClientId('303546570344-ttv0ingquts4thesu9ub93l2473f6ras.apps.googleusercontent.com');

    /* refresh access token */
    $google_refresh_token = 'ya29.Ci92A7X95zK0U0CQptu3HU5x0P0jJptcTLZYtG5U2xU2EO3lgOJvdFa9oHYYT6pfDA';

    $client->refreshToken($google_refresh_token);
    $newToken = $client->getAccessToken();
    $newToken = 'ya29.Ci92A7X95zK0U0CQptu3HU5x0P0jJptcTLZYtG5U2xU2EO3lgOJvdFa9oHYYT6pfDA';
    $client->setAccessToken($newToken);

    $service = new Google_Service_Calendar($client);
    $event = $service->events->get('primary', 'm2k54p8hcas6iup1ken7o5g5ac');
    $attendee1 = new Google_Service_Calendar_EventAttendee();
    $attendee1->setEmail('admin@frejun.com');
    $attendee1->setResponseStatus('accepted');
    $attedess = $event->getAttendees();
    $attedess[0] = $attendee1;
    $event->setAttendees($attedess);
    $updatedEvent = $service->events->update('primary', $event->getId(), $event);
    echo $updatedEvent->getUpdated();

非常感谢任何帮助,并提前感谢您。

1 个答案:

答案 0 :(得分:0)

您创建的事件可能将属性sendNotifications设置为false(默认情况下),这就是您没有收到用户的任何响应的原因。

您可能想要查看事件在updateinsert文档中的行为方式。

  

<强> sendNotifications

     
      
  • 是否发送有关事件更新的通知(例如,与会者的回复,标题更改等)。可选的。默认值为False
  •   

同样基于此 - Reminders and Notifications

  

要向与会者发送通过API插入或更新的事件的电子邮件通知,请将插入/更新请求中的 sendNotifications 参数设置为true。

enter image description here

如果发生任何与事件相关的更新(例如与会者的回复,标题更改等),则上述实施可能会帮助您收到通知。

希望这有帮助。