2010-11-21 30 views
4

Je vois en utilisant this calendar library in C# que je peux générer par programme un fichier ics avec un tas d'événements de calendrier.est là de toute façon pour fournir un fichier Calendrier ics qui sera automatiquement synchronisé avec les mises à jour

mais je veux une solution si une personne veut s'abonner à un calendrier, donc quand des événements futurs seront ajoutés ou supprimés, cette personne sera mise à jour. Lorsque vous vous abonnez à un fichier ics sur un serveur à partir de Outlook, il semble que Outlook obtienne un instantané basé sur le fichier d'aide Outlook: = (je suppose que c'est le même comportement que j'ai envoyé un calendrier par e-mail Envoyer un calendrier par e-mail Vous pouvez envoyer un calendrier à une autre personne dans un message électronique. C'est un type de calendrier Internet appelé Instantané du calendrier. Le calendrier apparaît dans le corps d'un message électronique. Toutefois, un utilisateur Office Outlook 2007 qui reçoit l'instantané du calendrier peut choisir d'ouvrir le calendrier en tant que calendrier Outlook. Cela permet d'afficher l'instantané du calendrier et le calendrier actuel en mode côte à côte ou en mode calendrier. Y at-il une solution programmatique pour permettre à une personne de s'abonner à un fichier iCalendar (ou un autre format) qui resterait toujours à jour avec les dernières modifications au fil du temps?

+0

Si Outlook ne rafraîchit jamais ce qu'il lit depuis une URL, c'est vraiment difficile. A propos de chaque client que je connais va recharger les calendriers distants à certains intervalles, quelque chose comme 30 minutes par défaut. –

+0

@Ulrich Schwarz - Donc, fondamentalement, vous dites qu'il est de la responsabilité de l'application client de simplement interroger les données à distance ics et re sync – leora

+0

C'est la façon dont je sais. (Au moins Mozilla Sunbird/Lightning et KDE whatsitsname font comme ça.) –

Répondre

8

Outlook sera mise à jour basée sur un fichier .ics serveur. Stockez le fichier sur un serveur Web quelque part (j'ai utilisé une page Wiki avec succès), puis utilisez une adresse webcal: // au lieu de l'adresse http: //. Outlook devrait le ramasser automatiquement.

Ceci sera généralement actualisé dans le cadre de la fonction "Envoyer/Recevoir" mais peut également être configuré via "Paramètres de compte ... Calendriers Internet".

J'ai fait exactement ce que vous cherchez à faire, la même bibliothèque et tout. La mise à jour a fonctionné un traitement au sein d'une grande organisation avec beaucoup de gens s'abonnant aux fichiers de calendrier.

Cela pourrait aider aussi: http://blogs.msdn.com/b/michael_affronti/archive/2006/05/10/594986.aspx

0

il semble que les perspectives devient juste un instantané sur ce à partir du fichier d'aide Outlook: = (je suppose que son même comportement comme j'ai envoyé un calendrier par e-mail)

Je ne pense que c'est une hypothèse valide. Le pare-feu de mon entreprise semble bloquer les choses, donc je ne peux pas le tester complètement, mais les options d'abonnement dans Outlook parlent de mises à jour.

0

Vous cherchez des notifications push ou quelque chose le long de ces lignes?

La plupart des calendriers basés sur iCal .ics sur le Web s'attendent à être utilisés dans un mode d'interrogation similaire à RSS ou ATOM dans lequel un client vérifie périodiquement si des modifications ont été apportées et le cas échéant, télécharge le nouveau contenu . Ma compréhension est également que les serveurs compatibles WebDAV peuvent permettre à certains clients de modifier directement ces fichiers .ics, mais il est toujours de la responsabilité des clients d'interroger et de mettre à jour leur instantané local d'un calendrier lorsqu'ils sont abonnés à un. Je n'ai pas beaucoup d'expérience avec le support du calendrier Outlook pour iCal, mais j'utilise Google Calendar de manière extensive, l'application Calendar Calendar intégrée, et j'ai également utilisé l'application Sunbird Calendar dans le passé et tous d'entre eux travaillent assez sûrement en me montrant des mises à jour quand je les vérifie.