سؤال

لدي ملف .ics الذي قمت بإنصائه من قاعدة البيانات الخاصة بنا يعمل بشكل صحيح في iCal، ولكنه صعب في تقويم Google. في بعض الأحيان سيؤمل تقويم Google الملف، لكنه لا يلتقط جميع الأحداث.

هل لدى أي شخص أي نصائح حول الحقول المطلوبة التي تحتاجها Google؟ أنا في حيرة هنا لماذا لن يستورد في بعض الأحيان، أو لماذا لا يحب بعض الأحداث. في بعض الأيام لدينا 3 أحداث، ولكن جوجل تظهر فقط 1.

البحث في أماكن أخرى على الإنترنت لا يساعد حقا، كما يبدو أن معظم الأشخاص الآخرين يواجهون هذه المشكلة نفسها.

هنا عينة من تنسيقي:

BEGIN:VCALENDAR
METHOD:PUBLISH
X-WR-TIMEZONE:America/Los_Angeles
CALSCALE:GREGORIAN
VERSION:2.0
PRODID:-//PUC Calendar// v2.0//EN
BEGIN:VEVENT
UID:31754826317
TZID:America/Los_Angeles
DTSTART:20091001T100000
URL;VALUE=URI:http://www.puc.edu/news/calendar/events/dates/colloquy-dr-knight
DTSTAMP:20091001T100000
SUMMARY:Colloquy: Heather Knight
DTEND:20091001T100000
LOCATION:Sanctuary
END:VEVENT
END:VCALENDAR

عنوان URL الخاص بك .ics هو: http://www.puc.edu/news/calendar/puc.ics.

هل كانت مفيدة؟

المحلول

tzid الخاص بك تبدو وضعت بشكل غير صحيح. يجب أن تضمينها في خطوط DTStart و DTEND مثل هذا:

DTSTART;TZID=Pacific/Honolulu:20110628T140000
DTEND;TZID=Pacific/Honolulu:20110628T140000

(كن على علم: اترك "Z" خارج نهاية الطوابع الزمنية إلا إذا كان وقتك هو Zulu Time = GMT)

يجب عليك إضافة تسلسل: XXX حيث XXX هو رقم يزداد في كل مرة يتم فيها تحديث ICS. على سبيل المثال

SEQUENCE:0

لقد تمكنت من الحصول على هذا للعمل (إنه مضطرب) وكان له نفس المشكلة مع الأحداث الفردية فقط من ملف ICS متعدد الأحداث التي يتم استيرادها. أفضل خدعة (معلقة إلى مكان آخر) هي الحصول على ملف ICS المصدر من جوجل ثم استنساخه.

انتهى بي الأمر بإنشاء اثنين من مولدات الملفات ICS منفصلة - واحدة ل ICal (سهلة!) وواحدة ل Google (من الصعب). ربما هناك حاجة ثالث للتوقعات.

قريبا يجب أن تضغط على المشكلة التالية التي تتطلب جوجل أن تحدد timezone لملف ICS وكل حدث يجعل ترميز تطبيقك أكثر تعقيدا. يتيح Apple iCal بالمقارنة تطبيقك نشر "الأوقات العائمة" التي يفترض أنها محلية.

هناك مجموعة من أدوات التحقق من صحة الملفات ICS قد تحاول مثل هذا واحد يمكن أن يكون مفيدا حقا ...

http://icalvalid.cloudapp.net/

التحذير: لا تزال الملفات التي تمر هذه الأداة التحقق من الصحة تفشل مع Google. يجب أن تقوم Google بإنشاء أداة التحقق من صحة ICS الخاصة بها.

في انتظار أن نرى كم من reps السهم لأسفل أحصل على هذا المنصب!

نصائح أخرى

كنت مجرد مشاكل مماثلة.

يبدو أن حذف العدد أو تغيير الرقم يعمل بالنسبة لي. (تم ترقيم بلدي Veavents بالتتابع 1،2، ...)

لدي مشكلة مماثلة ،

إذا كنت تريد استيراد ملف ICS في تقويم Google،

يجب أن يكون لديك مختلف UID في حدث متعددة

احتوى ملفي VFREEBUSY كتلة قبل الأول VEVENT. وبعد إزالة هذه الكتلة سمحت لي لتحميله.

لا أعرف ما إذا كانت هناك مشكلة داخل هذه الكتلة أو إذا لم يتم دعم الكتلة بأكملها، ولكن الملف كان يمر في التحقق من الصحة icalendar.org..

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top