php – Google Contacts Api – >删除了哪些联系人?

我正在解析Gmail中的联系人,并为我的产品创建同步功能.

但在我的脚本上,我很难确定哪些联系人从gmail中被“删除”.

例:
如果我的应用程序中有John Doe,还有Gmail …(并且它们与gmailId同步).稍后,如果用户删除联系人John Doe,并运行我的SYNC,如何确定联系人已被删除?

我需要知道在哪里抛出触发器来删除我的数据库中的同一个联系人.我目前有这个来获取通过发送的每个联系人的信息.

$xml = simplexml_load_string($entry->getXML());
$obj = new stdClass;

//    EDIT LINK
$obj->gmailUrl   = rawurlencode($entry->id);                
$obj->delete     =  (string) $xml->groupMembershipInfo['deleted'];

//    FIRST Name
$obj->firstName  = (string) $xml->name->givenName;

以前在我的代码中我也用这些额外的参数查询谷歌.

$query->setParam('updated-min', $updatedMin);
$query->setParam('showdeleted', 'true');
$query->setParam('requirealldeleted', 'true');

任何帮助,将不胜感激!

最佳答案 我不确定任何特定的钩子,也不能看到明显的删除字段,但这是另一种解决问题的方法……

当您执行完全同步或单项更新时,如果不再返回特定联系人,则可以将其标记为已删除.请注意,这仅在您将showdeleted保持为false时才有效.

例…

$local = array(1, 3, 5, 7, 9);

你运行完全同步…

$remote = array(, 1, 3, 5, 9);

比较两个数组将显示已删除7.同样,如果您正在同步单个项目,如果它没有返回任何内容,您可以认为它已被删除.

点赞