我向Outlook发送了一条vCalendar消息,导致Outlook日历中出现了一个新事件。 如何设置“显示为”字段? (忙/闲/暂定/不在办公室)
答案 0 :(得分:5)
我在Outlook 2010创建的.ics文件中看到了这一行
X-MICROSOFT-CDO-BUSYSTATUS:FREE
所以看起来微软已经“扩展”了vcal规范以适应他们的目的。我可以确认,当在Outlook中查看供稿时添加该行确实有用,并且在iPhone的日历应用程序使用时似乎不会造成任何伤害。
答案 1 :(得分:3)
事实证明,在标准中,Sean错过了这个地方:
4.2.9忙/闲时间类型
参数名称:FBTYPE
目的:指定免费或 忙碌时间。
格式定义:属性 参数由以下定义 符号:
fbtypeparam = "FBTYPE" "=" ("FREE" / "BUSY" / "BUSY-UNAVAILABLE" / "BUSY-TENTATIVE" / x-name ; Some experimental iCalendar data type. / iana-token) ; Some other IANA registered iCalendar data type.
描述:参数 指定空闲或忙碌时间类型。 值FREE表示 时间间隔可供调度。 值BUSY表示时间 间隔很忙,因为一个或 已安排更多活动 那个间隔。值
BUSY-UNAVAILABLE表示 时间间隔很忙而且那个 间隔不能安排。该 值BUSY-TENTATIVE表示 时间间隔很忙,因为一个 或更多事件已经发生 暂定于此 间隔。如果没有在中指定 允许此参数的属性, 默认为BUSY。示例:以下是 a上此参数的示例 FREEBUSY财产。
FREEBUSY;FBTYPE=BUSY:19980415T133000Z/19980415T170000Z
答案 2 :(得分:2)
您指的是哪个状态字段?您是在回复会议请求还是发送会议信息时?
无论哪种方式,答案都在vCalendar标准文档中。我认为你的意思是STATUS字段。维基百科有一个这个领域的例子:
BEGIN:VCALENDAR
VERSION:1.0
BEGIN:VEVENT
CATEGORIES:MEETING
STATUS:TENTATIVE
DTSTART:19960401T033000Z
DTEND:19960401T043000Z
SUMMARY:Your Proposal Review
DESCRIPTION:Steve and John to review newest proposal material
CLASS:PRIVATE
END:VEVENT
END:VCALENDAR
http://en.wikipedia.org/wiki/VCalendar#vCalendar_1.0
格式的标准文件是:http://www.ietf.org/rfc/rfc2445.txt
您也可以尝试在Outlook中创建一个事件,将其保存为vCard,然后在记事本中打开vCard。这将向您展示outlook如何保存信息。
该文档使我相信您只能设置忙碌或暂定状态:
4.8.1.11状态
物业名称:STATUS
目的:此属性定义 总体状态或确认 日历组件。
值类型:TEXT
属性参数:非标准 属性参数可以是 在此属性上指定。
一致性:此属性可以 在“VEVENT”,“VTODO”或
中指定 “VJOURNAL”日历组件。描述:在预定的组中 日历组件,属性为
用于“组织者”提供的 对事件的确认 “与会者”。例如在“VEVENT”中 日历组件,“组织者” 可以表明会议是 暂定,确认或取消。 在“VTODO”日历组件中, “组织者”可以表明一个 行动项目需要采取行动,是 已完成,正在进行中或正在进行中 工作,或已被取消。在一个 “VJOURNAL”日历组件, “组织者”可以表明a 期刊报名是草稿,决赛或 已被取消或删除。格式定义:属性是 由以下符号定义:
status = "STATUS" statparam] ":" statvalue CRLF statparam = *(";" xparam) statvalue = "TENTATIVE" ;Indicates event is ;tentative. / "CONFIRMED" ;Indicates event is ;definite. / "CANCELLED" ;Indicates event was ;cancelled. ;Status values for a "VEVENT"
答案 3 :(得分:1)
X-MICROSOFT-CDO-BUSYSTATUS:OOF
将“不在办公室”的日历标记为展望
答案 4 :(得分:0)
由于RFC 2445和5545都不支持状态OOO和暂定,您可以使用属性X-MICROSOFT-CDO-INTENDEDSTATUS:https://msdn.microsoft.com/en-us/library/ee203636(v=exchg.80).aspx
答案 5 :(得分:0)
不确定这些年来情况是否发生了变化,但是我能够使用它自动将内容设置为暂定:
X-MICROSOFT-CDO-BUSYSTATUS:TENTATIVE
答案 6 :(得分:0)
我使用python导入win32, 因为这是一个称为BUSYSTATUS的属性, 该值可以定义节目的状态 FREE = 0,1 = TENTIVE,2 = BUSY
import win32com.client as win32
outlook = win32.Dispatch('outlook.application')
myItem = outlook.CreateItem(1)
myItem.MeetingStatus =(1) ## this means it is an appointment
myItem.BUSYSTATUS=0 ## SHOW AS 0=FREE,1=TENTIVE,2=BUSY