iCalendar营业时间

时间:2019-10-16 12:54:16

标签: frequency icalendar caldav

对于商店的营业时间,您如何以FREQ数据格式编写iCalendar规则?

假设商店在每个工作日(周一至周五)营业:

  1. 从8:00 AM到5:00 PM
  2. (或带午餐时间)从8:00 AM到11:00 AM和12:00 PM到5:00 PM

这可以解决以下日子:FREQ=WEEKLY;WKST=MO;BYDAY=MO,TU,WE,TH,FR,但是小时数如何?

编辑: 我可以这样吗?

DTSTART;TZID=America/New_York:19970902T080000
RRULE:FREQ=WEEKLY;WKST=MO;BYDAY=MO,TU,WE,TH,FR
DURATION=PT9H

这意味着从星期一到星期五,每天从8:00 AM到5:00 PM(感谢持续时间)吗?

1 个答案:

答案 0 :(得分:0)

我想我是用DTSTARTDTEND这样解决的:

BEGIN:VEVENT
...
DTSTAMP:20191016T133700Z
DTSTART;TZID=Europe/Bratislava:20191007T080000
DTEND;TZID=Europe/Bratislava:20191007T170000
RRULE:FREQ=WEEKLY;INTERVAL=1;BYDAY=MO,TU,WE,TH,FR
SUMMARY:Opening hours without lunch break
...
END:VEVENT

我想,如果我想在午休时间开放,我必须创建两个单独的活动。

我相信使用DURATION(如问题中所述)也是一种选择:

BEGIN:VEVENT
...
DTSTAMP:20191016T133700Z
DTSTART;TZID=Europe/Bratislava:20191007T080000
DURATION:PT9H
RRULE:FREQ=WEEKLY;INTERVAL=1;BYDAY=MO,TU,WE,TH,FR
SUMMARY:Opening hours without lunch break
...
END:VEVENT

编辑:

但这在日历中标记了一个事件,我希望这次可以标记为free时间。也许与FREEBUSY在一起?

设置TRANSP:TRANSPARENT将此活动标记为空闲时间吗?