问题标签 [rfc5545]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
485 浏览

outlook - 取消 Lotus Notes 日历中已发布的事件 (icalendar)

我正在尝试在 Lotus Notes 日历中创建、更改和取消已发布的事件。我已经成功创建了在 Outlook 中创建、更改和取消事件的 ics 文件。但是,用于取消事件的 ics 会在 Lotus Notes 中爆炸。其次,我从 rfc 5546 中提取了一些示例 ics 文件。我选择了最简单的。我使用了来自 rfc 的 4.1.1、4.1.2 和 4.1.3 中的 iCalendar 示例。4.1.3 的 Cancel Event ics 文件再次失败。我查看了 rfc 2446,示例看起来相同。下面是我在 Lotus Notes 中尝试过的 ics 文件。 有谁知道如何使用 Lotus Notes 日历中的 ics 文件取消活动?

这是我的 ics 文件:

来自 RFC 2446/5546 的示例:

create.ics

更新.ics

删除.ics

适用于 Outlook 2013 的示例

create.ics

更新.ics

删除.ics

0 投票
1 回答
465 浏览

calendar - 设置管理器时无法发送日历事件

我在 VBScript 中以编程方式创建了一个 .ics 文件,它成功地创建了会议请求 - 这里没有问题。(RFC 5545)

当我尝试将组织者添加到文件时出现问题。例如,我正在尝试将组织者设置为我们的发布日历,以便我们所有的发布管理人员都可以管理事件。

如果我取出 ORGANIZER,它可以正常工作,尽管该事件不会发布到正确的发布管理日历。当我设置 ORGANIZER 时,会议请求看起来就像您打开其他人发送给您的请求时一样 - 没有发送按钮,只能保存并关闭。保存和关闭不会将活动放在组织者的日历或任何与会者的日历上。

这是代码:

BEGIN:VCALENDAR PRODID: -//Microsoft Corporation//Outlook 12.0 MIMEDIR//EN VERSION:2.0 METHOD:PUBLISH BEGIN:VEVENT ORGANIZER:mailto:ReleaseCalendar@mailserver.com DTSTAMP:20140620T094745 UID:20140620T094745 DTSTART:20140625T110000 DTEND:20140625T120000 LOCATION:QA BEGIN:VALARM TRIGGER:-PT15M ACTION:DISPLAY DESCRIPTION:Test - Test Release for Testing END:VALARM CATEGORIES:QA Site ATTENDEE;RSVP=TRUE;CN='Me':mailto:me@mailserver.com ATTENDEE;RSVP=TRUE;CN='Programmer':mailto:Programmer@mailserver.com SUMMARY:REL QA - Test - Test Release for Testing - Wednesday, June 25, 2014 at 11:00 AM DESCRIPTION:Test - Test Release for Testing X-ALT-DESC;FMTTYPE=text/html:<Here's a bunch of HTML that correctly displays> END:VEVENT END:VCALENDAR

有没有办法做我需要做的事情,或者这是一个绝望的原因?

清晰度编辑:我需要做的是能够设置组织者 - 并且 - 仍然可以发送邀请。设置了 ORGANIZER 后,没有发送按钮。

编辑:我已经通读了 RFC 5545 和 RFC 6047 并且无法绕过这个限制。

0 投票
2 回答
314 浏览

php - 摆脱/处理 ical 文件中的时区的好方法?

我正在尝试从使用 php 解析的组件服务器(ics 文件)中获取我的日历。到目前为止一切顺利,除了可以为每个事件条目定义额外的时区:

另一个事件是

问题是在网上找到的常见解析器类只是去掉那些 TZID 参数,这会导致将事件移动到字符串末尾的时间戳。

是否有任何用于 php 的解析器来处理该问题?

0 投票
1 回答
706 浏览

icalendar - ICalendar ICS 文件可以在 VEVENT 中包含 VTODO 吗?

我对此进行了广泛搜索,但找不到答案,也许你们可以提供帮助。

http://www.ietf.org/rfc/rfc5545.txt

http://www.kanzaki.com/docs/ical/vevent.html

http://msdn.microsoft.com/en-us/library/ee219935(v=exchg.80).aspx

(仅举几个我访问过的网站)

我想要达到的目标:

我正在创建一个允许用户创建会议和内容的 Web 应用程序。(PHP、HTML、Javascript/JQuery 等)。我发现 ics (ICalendars) 非常高效且结构良好,并希望在我的应用程序中实现 ics 标准的变体。但我希望我的会议有自己的待办事项。

问题:

.ics 是否可以VEVENT包含VTODO? 或者这不在ics标准中?

像这样的东西:

0 投票
1 回答
145 浏览

icalendar - icalander 2.0 每周从 x 到 x 举办一次活动

我在 iphone 上有一个 ICS 文件,我试图在以下情况下发生事件,

1 - 活动于 X 日的 X 时间开始,活动于同一天 X 的 X 时间结束(1 小时后)

2 - 事件在 X 日的时间 X 重复开始,每周在该日持续 1 小时,直到 Y 日

所以换句话说,我想在 5 号举办一个持续 1 小时的活动。然后我想在 10 号星期三举行一个活动,每周持续 1 小时,直到我给它的结束日期。

0 投票
3 回答
1991 浏览

python - python icalendar正确设置dtstart

我正在设置一个脚本,使用 python 和 python 包iCalendar将一堆曲棍球时间表格式化为 .ics 文件。

当我设置:

我在生成的 .ics 文件中得到以下信息:

显然不理想;它似乎是在传递对象而不是值。因此,当我尝试使用 strftime() 进行设置时,如下所示:

我收到以下错误:

很明显我应该使用 datetime 对象,但显然我没有正确使用它?

0 投票
1 回答
14889 浏览

java - ICS (iCalendar) UID 用途和用途

我正在为 Java 中的 ICS 文件创建一个同步适配器,但在识别动态创建的远程文件的新更新中的相同事件时遇到问题。

所以我想,太好了,我可以只使用 UID,事实证明它是每次下载 ICS 文件时随机生成的。那么,如果 UID 属性每次都是随机生成的,那么它的意义何在?为什么不假设宇宙中存在的每个 ICS 事件都是独一无二的呢?是否是 ICS 文件生成器的错误,因为它没有为相同的事件使用相同的 UID(我已经看到 2 个 ICS 文件提供者这样做,2 个学校)?

那么在 ICS 文件更新中识别同一事件的标准方法是什么,而不是擦除整个日历并重新导入?

0 投票
1 回答
1222 浏览

c# - 使用 RFC 5545 重复规则安排每月事件“每个 Nth Weekday”

我正在尝试使用 RFC5545 重复规则在 C# 中复制 Google 日历中的一些计划功能。

使用 Google 日历每月安排两个选项,可以是每月第 N 天,即:每个月的第 10 天,每 1 个月,无论工作日如何,这显然都会发生。

我的重复规则是:FREQ=MONTHLY;BYMONTHDAY=10

另一种选择是在每个第 N 个工作日重复该事件,即:“每个月的第二个星期日,这是我在编写规则时遇到问题的那个。

对于第二条规则,我的规则应该是什么?我试过FREQ=MONTHLY;BYDAY=SU了,但我不确定如何/使用哪些参数来指定仅在每月的第二个星期日执行此操作。

我正在使用DDay iCal C# 库来生成我的重复规则,但我很高兴看到规则字符串应该是什么样子才能实现所需的行为。

我正在使用RFC 5545 重复规则

0 投票
2 回答
1089 浏览

ios - iCalendar:重复事件未在 IOS 中正确显示

简单的介绍

我的 PHP 生成的 iCalendar 文件中的重复事件不会在 IOS 应用程序中正确重复。它们确实在 Outlook 2010 和 Google 日历中正确重现,但在 IOS 8.1(iPhone 5S 和 iPad 2)中不正确。

细节

以下文件生成适合从 MS Outlook 和 Google 日历等应用程序订阅的日历文件。该文件包含一个 VTIMEZONE 和一个 VEVENT,意味着在 2014 年 11 月 7 日至 28 日的每个星期五重复出现,总共重复四次。

iCalendar 文件:http ://www.elitesystemer.no/mycal_stack_example.php (完整代码如下)

在我的两个 iDevices(IOS 8.1)上,这个事件只发生一次;2014 年 11 月 7 日。这种奇怪的行为适用于本机日历应用程序以及周历应用程序(网站:http ://weekcal.com )。

该文件与 MS Outlook 2010 和 Google 日历完美配合,但不适用于 IOS。不幸的是,我无法在 Apple 论坛上找到任何类似的问题。我既无法使用具有以前操作系统版本的 iDevice 进行测试,也无法使用其他智能手机进行测试。

我已经在http://icalvalid.cloudapp.net/http://severinghaus.org/projects/icv/等在线 iCalendar 验证器上测试了该文件- 完美的结果没有警告/错误。

从 PHP 生成的日历代码

0 投票
2 回答
2534 浏览

google-calendar-api - UID 问题:仅提交最后一个事件

好吧,伙计们,这是令人讨厌的事情:我制作了一个批处理文件,该文件制作了一个.ics我应该每天在我的 Google 日历中“上传”的文件。现在,批处理工作得很好,问题是我对结果的行为。

长话短说,如果我碰巧只有最后一个事件被提交到日历UIDVEVENT

例子:

这只会提交一个名为SUMMARY211 月 12 日的事件......

我知道UID提交事件不是必需的,但如果我想稍后删除事件,这是必须的[而且我需要它,所以我不能只删除那行“代码”]。

我可以删除事件,创建.ics文件和所有内容,只是,我只是不明白为什么UID只会提交最后一个事件!

我尝试添加/替换各种东西,甚至是无意义的东西,比如事件的评论......

我做错了什么?任何提示?