Je crée un site Web PHP qui utilise l'API Google Calendar. Cela fonctionne bien avec Créer, mettre à jour et supprimer: tout événement du site Web PHP passe dans mes événements de calendrier Google après la connexion. P>
Les événements créés sur mon site sont créés dans Google Calendar. P>
Ce que je veux maintenant, c'est-à-dire: lorsque je crée un événement à partir de ma page de test, il passe dans Google Calendar après la connexion, puis si je mettez à jour ou supprimez cet événement à partir de Google Calendar, il doit automatiquement mettre à jour ou supprimer l'événement de site Web PHP. p>
Fondamentalement: la synchronisation à 1 voie fonctionne bien, mais maintenant je veux une synchronisation à deux voies. P>
Si quelqu'un a des idées, alors partagez-moi, cela sera très apprécié. P>
3 Réponses :
Il n'y a pas de crochets d'application dans Google Calendar (GCAL) qui vous permettent de déclencher une action lorsqu'un événement est supprimé. Au lieu de cela, vous devez soit interrogez sur des intervalles (cela pourrait être un travail cron toutes les quelques minutes / heures) et mettez à jour votre calendrier en conséquence, ou à tout moment, vous effectuez une action à partir de votre calendrier. p>
Cela implique que vous utilisez le GCAL comme source définitive et que vous reflète ces modifications à votre application locale. P>
Je suis d'accord avec Andy ici, qu'il n'y a pas de moyen dans l'API de faire cela
ne serait-ce pas une option pour votre système de générer une sortie icale à une URL spéciale, spécifique à l'utilisateur, puis que l'utilisateur vous abonnez-vous à ce calendrier dans Google Calendrars (ou leur calendrier de lecture de la lecture icale)? < / p>
De cette façon, votre système tiendrait toujours le calendrier autorisant et Google Calendar refléterait les modifications que vous effectuez automatiquement. P>
alternativement, si vous souhaitez que les modifications du calendrier de Google se reflètent dans votre application, vous pourrez peut-être vous abonner à ICALS pour le calendrier de l'utilisateur, puis les interrogez à un intervalle régulier afin de refléter les modifications de l'utilisateur. fait à cette fin. p>
Je me pencherais vers la première option (votre iCe souscrit via Google Calendar), car il s'agit d'une solution plus simple et plus facile. P>
Eh bien, après avoir suivi ces réponses et construire un processus de synchronisation à 2 voies Trou, J'ai réalisé qu'il y a une notification push pour le calendrier depuis 2013. Vous aurez toujours besoin d'un processus de synchronisation complète car la notification push ne présente qu'une modification, mais aucune donnée sur le changement. J'espère que cela vous évitera du temps. p>
Si vous secouez la tête dans l'incrédulité [comme moi] que la poussée de l'API notifie qu'un calendrier a changé i> mais pas Qu'est-ce qui a changé i>, Ce message -Unheureusement, confirme la mauvaise nouvelle.
Ce que je veux, si je supprime un "événement Google" déjà synchronisé de mon "Calendrier de Google", il convient également de supprimer de mon application PHP déjà synchronisée. Quelqu'un a-t-il une idée pour cela?