Web日历中的ics事件更新失败 [英] ics event update failed in web calendar

查看:50
本文介绍了Web日历中的ics事件更新失败的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试创建一个供用户通过webcal订阅的ics feed.该提要的内容来自数据库,如下所示.

I am trying to create a ics feed for users to subscribe via webcal. The feed's content comes from database and looks like the following.

更新数据库后,提要将更改并更新订户的日历.它与Google日历和某些日历应用程序配合正常使用.但是,我从未在Outlook.com(网络日历)或Yahoo日历中观察到更新.提要中有什么问题,所以更新失败了吗?

When the database is updated, the feed changes and updates the subscribers' calendars. It works fine with google calendar and some calendar apps. However, I never observe updates in outlook.com (the web calendar) or Yahoo calendar. Is there something wrong in the feed so update fail?

提要是通过webcal://example.com/subscribe.php提供的然后我放 header('Content-Type:text/calendar; charset = UTF-8'); 作为第一行PHP

The feed is provided through webcal://example.com/subscribe.php and I put header('Content-Type: text/calendar; charset=UTF-8'); as the first PHP line

ics:

BEGIN:VCALENDAR
PRODID:-//Organisation//Roster//EN
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:PUBLISH
X-WR-CALNAME:Duty Arrangement
X-WR-CALDESC:Duty Arrangement
X-WR-TIMEZONE:Asia/Hong_Kong
REFRESH-INTERVAL;VALUE=DURATION:PT6H
X-PUBLISHED-TTL:PT6H
BEGIN:VEVENT
DTSTART:20180218T020000Z
DTEND:20180218T033000Z
DTSTAMP:20180602T144036Z
UID:228Mip5LyZ5JqY5@organisation.com
DESCRIPTION:Task A
LOCATION:Office
SUMMARY:On Duty
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART:20180304T020000Z
DTEND:20180304T033000Z
DTSTAMP:20180602T144036Z
UID:230Mip5LyZ5JqY5@organisation.com
DESCRIPTION:Task B
LOCATION:Office
SUMMARY:On Duty
TRANSP:OPAQUE
END:VEVENT
END:VCALENDAR

推荐答案

您具有UID,但ICS文件事件需要一个SEQUENCE号,以指示该事件的最新更新/版本是最新的.
请参见规范 https://tools.ietf.org/html/rfc5545#section-3.8.7.4

You have the UID but ICS file events need a SEQUENCE number to indicate which update/version of the event is the latest.
See the specification https://tools.ietf.org/html/rfc5545#section-3.8.7.4

对于重复发生的事件实例,它们还需要被修改实例的RECURRENCE-ID.

For recurring event instances, they also need a RECURRENCE-ID of the instance being modified.

这篇关于Web日历中的ics事件更新失败的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆