yoke0526
投稿
コメント
ご確認ありがとうございます。 今も動作しません。 サンプルの勤怠管理BotのPythonプログラムを変更して使っています。 <pythonコード> def make_icalendar_data(uid, summary, current, end, begin, account_id, create_flag=False): cal = Calendar() cal.add('PRODID', 'Works sample bot Calendar') cal.add('VERSION', '2.0') standard = TimezoneStandard() standard.add('DTSTART', datetime(1970, 1, 1, 0, 0, 0, tzinfo=pytz.timezone(TZone))) standard.add('TZOFFSETFROM', current.utcoffset()) standard.add('TZOFFSETTO', current.utcoffset()) standard.add('TZNAME', current.tzname()) tz = Timezone() tz.add_component(standard) tz.add('TZID', tz) event = Event() event.add('UID', uid) if create_flag: event.add('CREATED', current) event.add('DESCRIPTION', account_id) event.add('SUMMARY', summary) event.add('DTSTART', begin) event.add('DTEND', end) event.add('LAST-MODIFIED', current) event.add('DTSTAMP', current) cal.add_component(event) cal.add_component(tz) schedule_local_string = bytes.decode(cal.to_ical()) LOGGING.info("schedule:%s", schedule_local_string) return schedule_local_string <ログ出力>(アカウントIDの部分は{account_id}に置き換えています) BEGIN:VCALENDAR VERSION:2.0 PRODID:Works sample bot Calendar BEGIN:VEVENT SUMMARY:6月03日 金曜日の出勤時間 DTSTART;TZID=Asia/Tokyo;VALUE=DATE-TIME:20220603T070211 DTEND;TZID=Asia/Tokyo;VALUE=DATE-TIME:20220603T070311 DTSTAMP;VALUE=DATE-TIME:20220602T220212Z UID:1fdce4ef-6d6e-4ee8-9eb2-50a2c7e3f59a{account_id} CREATED;VALUE=DATE-TIME:20220602T220212Z DESCRIPTION:{account_id} LAST-MODIFIED;VALUE=DATE-TIME:20220602T220212Z END:VEVENT BEGIN:VTIMEZONE TZID:VTIMEZONE({}\, STANDARD({'DTSTART': <icalendar.prop.vDDDTypes object at 0x0000003CEA731A30>\, 'TZOFFSETFROM': <icalendar.prop.vUTCOffset object at 0x0000003CEA731F10>\, 'TZOFFSETTO': <icalendar.prop.vUTCOffset object at 0x0000003CEA7318B0>\, 'TZNAME': vText('b'JST'')})) BEGIN:STANDARD DTSTART;TZID=Asia/Tokyo;VALUE=DATE-TIME:19700101T000000 TZNAME:JST TZOFFSETFROM:+0900 TZOFFSETTO:+0900 END:STANDARD END:VTIMEZONE END:VCALENDAR カレンダーの定義で何か違うのでしょうか・・・
Calendar 2022.06.03