用于事件管理的icloud api
apple-calendar-integration的Python项目详细描述
关于
用于事件管理的iCloud API
工具
- Python3
如何使用pip安装
运行此命令:
pip install apple-calendar-integration
如何创建事件
fromdatetimeimportdatetime,timedeltafromapple_calendar_integrationimportICloudCalendarAPIapi=ICloudCalendarAPI(username,password)start_date=int(datetime.now().timestamp())end_date=start_date+timedelta(hours=2)etag,ctag,guid=api.create_event('Your title',start_date,end_date)
从现在起,这个python脚本将创建一个两小时的事件。etag
、ctag
和guid
将用于编辑或删除事件。
如何删除事件
fromapple_calendar_integrationimportICloudCalendarAPIapi=ICloudCalendarAPI(username,password)api.delete_event(new_etag,ctag,guid)
如果一切正常,应该返回True
。
如何使用repeat编辑事件
如何在某些频率下添加重复次数
{"count":5,"freq":"daily"}
这意味着每天重复5次(天)。
freq
有这样的选项:
- 每日
- 每周
- 每月
- 每年
如何以一定的频率添加repeat until date
另外,您可以使用end date参数指定,而不是num of times。
{"until":1536910206,"freq":"monthly"}
所有代码放在一起
fromapple_calendar_integrationimportICloudCalendarAPIapi=ICloudCalendarAPI(username,password)repeat={"until":1536910206,"freq":"monthly"}new_etag=api.edit_event(etag,ctag,guid,repeat=repeat)
应该返回新的etag
如果一切都是OK
如何使用报警编辑事件
如果要在事件发生时创建报警
{"before":false}
如果在事件发生之前
{"before":false,"hours":3,"minutes":2,"seconds":1}
这将在事件开始日期前3小时2分1秒发送有关事件的通知
有这样的选项:
- 周
- 天
- 小时
- 分钟
- 秒
所有代码放在一起
fromapple_calendar_integrationimportICloudCalendarAPIapi=ICloudCalendarAPI(username,password)alarm={"before":False,"hours":3,"minutes":2,"seconds":1}new_etag=api.edit_event(etag,ctag,guid,alarm=alarm)
应该返回新的etag
如果一切都是OK
如何使用邀请编辑活动
如何将新人员添加到活动中
fromapple_calendar_integrationimportICloudCalendarAPIapi=ICloudCalendarAPI(username,password)invites=["email_1@gmail.com","email_2@gmail.com"]new_etag=api.edit_event(etag,ctag,guid,add_invites=invites)
如何从邀请中删除某人
fromapple_calendar_integrationimportICloudCalendarAPIapi=ICloudCalendarAPI(username,password)invites=["email_1@gmail.com"]new_etag=api.edit_event(new_etag,ctag,guid,remove_invites=invites)
应该返回新的etag
如果一切都是OK
如何编辑note
、url
、title
或event date
fromapple_calendar_integrationimportICloudCalendarAPIimporttimeapi=ICloudCalendarAPI(username,password)new_etag=api.edit_event(etag,ctag,guid,note='New notw',url='https://my_url.com',title='New title',start_date_timestamp=int(time.time()),end_date_timestamp=int(time.time())+1000)
应该返回新的etag
如果一切都是OK