Est-ce que vous savez si le calendrier de Google a des services de "push"? Est-il possible d'obtenir toutes les modifications pour le calendrier d'un utilisateur depuis un horodatage particulier?Synchroniser avec Google Agenda des deux côtés
Répondre
si u utiliser la mise à jour min = lastsynctime vous obtiendrez la bonne nouvelle, mises à jour, les événements dleeted ASLO ..
string formatedDate = "";
EventQuery query = new EventQuery();
DateTime? time;
if (!string.IsNullOrEmpty(startDate))
{
time = Convert.ToDateTime(startDate);
formatedDate = string.Format("{0:s}", time);
// Create the query object:
query.Uri = new Uri("http://www.google.com/calendar/feeds/" + service.Credentials.Username + "/private/full?updated-min=" + formatedDate);
}
else
{
query.Uri = new Uri("http://www.google.com/calendar/feeds/" + service.Credentials.Username + "/private/full");
}
// Tell the service to query:
EventFeed calFeed = service.Query(query);
return calFeed.Entries.Cast<EventEntry>();
Cette page: http://code.google.com/apis/calendar/data/2.0/developers_guide_dotnet.html Contient toutes les informations dont vous avez besoin, y compris des exemples.
Il vous montrera comment récupérer et pousser des objets, et comment interroger des objets comme vous l'avez suggéré.
Espérons que ça aide.
Merci pour la réponse, mais j'étais en fait sur ce document avant de poster cette question. Peut-être que je manque quelque chose, mais je ne vois pas de notification de Google (e-mail ou SMS), ni de récupération de calendrier depuis un horodatage. – badallen
Par exemple: si aujourd'hui un utilisateur met à jour son entrée d'hier, comment saurai-je que cet utilisateur a fait la modification des entrées des dates passées? par conséquent, il sera bon de connaître tous les changements depuis un horodatage particulier. J'espère que ça a du sens. – badallen
Je ne suis pas sûr si c'est beaucoup d'aide, mais dans le passé, j'avais l'habitude de synchroniser Google Agenda avec Outlook. Dans Outlook, j'ai ajouté des données supplémentaires à tous les éléments afin que je puisse les comparer avec les éléments en ligne et détecter les changements/mises à jour comme ça. Je vous donnerais le code, mais malheureusement il est parti depuis longtemps ... il y a 2 ans, pour synchroniser plusieurs gcalendars avec Outlook. – TimothyP
que
var service = new CalendarService(domainName);
service.setUserCredentials(email, pwd);
// Create the query object:
EventQuery query = new EventQuery();
query.Uri = new Uri(string.Format("https://www.google.com/calendar/feeds/{0}/private/full", email));
// Tell the service to query:
EventFeed calFeed = service.Query(query);
return calFeed.Entries.AsEnumerable().Cast<EventEntry>().Where(entry => ???);
dans l'objet 'de requête' u peut ajouter la condition u want tels que 'query.StartDate'
Merci pour la réponse, mais je pense que cela me donne toutes les entrées après ce startDate, mais ce que je veux, c'est toutes les entrées (passées, présentes et futures) ajoutées/mises à jour après un horodatage particulier. – badallen
question a été posée à partir de 2010, mais sur 2013 i google a publié un service de notification push qui permet informer sur votre URL de service chaque fois qu'il ya un homme changement uel aux événements
Vérifier documentatoin de google
https://developers.google.com/google-apps/calendar/v3/push?hl=en
J'ai un doute sur la synchronisation, j'ai des événements google et des événements Outlook ... Mais sur quelle base puis-je synchroniser les deux événements .. puisque les deux ont des EventId différents – Mahantesh