วิธีรับ iCalendar (.ics หรือ .ical) คำเชิญเข้าร่วมการประชุมจาก outlook.office365.com เพื่อให้สามารถแยกวิเคราะห์และเพิ่มลงในปฏิทิน (เช่นเตือน + wyrd)
ฉันค้นหาคำตอบที่ยาวและหนักหน่วง แต่ไม่พบอะไรเลยฉันจึงสงสัยว่าฉันขาดอะไรไปซักนิด
ฉันใช้ Mutt 1.5.22 กับ OfflineIMAP 6.5.5 บน Fedora 20 (Heisenbug)
มีสคริปต์มากมายสำหรับการวิเคราะห์ข้อความ iCalendar ในรูปแบบที่สามารถนำเข้าสู่ปฏิทิน นี่ไม่ใช่ปัญหาของฉัน ปัญหาของฉันคือฉันไม่ได้รับข้อความ iCalendar ดังนั้นฉันไม่มีอะไรจะแยกวิเคราะห์
คำเชิญเข้าร่วมประชุมมาถึงกล่องจดหมายเข้าของฉันในรูปแบบข้อความเข้ารหัส / ข้อความ HTML แบบพื้นฐาน มันเป็นไม่ได้ข้อความหลายส่วนและมีสิ่งที่แนบมาไม่มี เนื้อความของข้อความประกอบด้วยลิงค์ไปยัง Microsoft Outlook Web Access (OWA) การติดตามลิงก์ดูเหมือนจะไม่ทำอะไรเลยยกเว้นพาฉันไปที่เว็บเมล เนื้อหาอีเมลที่เหลือประกอบด้วยคำอธิบายของคำเชิญการประชุม
ฉันพยายามส่งต่อคำเชิญและส่งต่อคำเชิญเป็นสิ่งที่แนบมา แต่สิ่งเหล่านี้ไม่ส่งผลกระทบต่อรูปแบบของข้อความ
ฉันตรวจสอบส่วนหัวของข้อความ แต่ไม่มีสิ่งใดโดดเด่นเท่าที่สำคัญ ฉันได้คัดลอกมาที่นี่ในกรณีที่มีความหมายบางอย่างกับทุกคน:
Received: from [...] by [...] with Microsoft SMTP Server (TLS) id
[...] via Mailbox Transport; [timestamp]
Received: from [...] by [...] with Microsoft SMTP Server (TLS) id
[...]; [timestamp]
Received: from [...] by [...] with Microsoft SMTP Server (TLS) id
[...]; [timestamp]
Received: from [...] by [...] with mapi id [...]; [timestamp]
From: [meeting organiser]
To: [meeting attendees]
Subject: [meeting subject]
Thread-Topic: [meeting subject]
Thread-Index: [...]
Sender: [sender on behalf of meeting organiser]
Date: [timestamp]
Message-ID: <[...]>
Accept-Language: en-US
Content-Language: en-US
X-MS-Exchange-Organization-AuthAs: Internal
X-MS-Exchange-Organization-AuthMechanism: 03
X-MS-Exchange-Organization-AuthSource: [...]
X-MS-Has-Attach:
X-MS-Exchange-Organization-SCL: -1
X-MS-TNEF-Correlator:
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
ฉันตรวจสอบส่วนหัวของข้อความในเว็บเมล์ด้วย มีส่วนหัวเพิ่มเติม (บางส่วนเกี่ยวข้องกับ tnef) แต่อีกครั้งดูเหมือนจะไม่มีอะไรเกี่ยวข้องกับปฏิทินหรือคำเชิญ
ฉันเปรียบเทียบส่วนหัวของ "คำเชิญเข้าร่วมการประชุม" กับส่วนหัวของอีเมลปกติ ข้อแตกต่างเพียงอย่างเดียวคืออีเมลปกติมีส่วนหัวเพิ่มเติม: "X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply"
โฟลเดอร์ตัวกรองของฉัน. offlineimaprc ของฉันถูกตั้งค่าให้ไม่ซิงค์โฟลเดอร์ปฏิทิน นี่เป็นเพราะทุกครั้งที่ OfflineIMAP พยายามทำการซิงค์มันจะทำงานมากกว่าหนึ่งร้อยครั้งของข้อผิดพลาดเดียวกันเมื่อทำการซิงค์โฟลเดอร์ปฏิทิน: "ข้อผิดพลาด: เซิร์ฟเวอร์ IMAP 'ระยะไกล' ไม่มีข้อความด้วย UID '[... ]' ."
ใช้ imaplib ของไพ ธ อนเพื่อตรวจสอบโฟลเดอร์ปฏิทิน:
>>> import imaplib
>>> i = imaplib.IMAP4_SSL("outlook.office365.com", 993)
>>> i.login("NAME@COMPANY.com", "PASSWORD")
('OK', ['LOGIN completed.'])
>>> i.select("Calendar")
('OK', ['159'])
>>> i.fetch(159, "(RFC822)")
('OK', [None])
>>> i.fetch(159, "(RFC822)")
ครั้งที่สองที่ฉันเรียกการดึงข้อมูลจะส่งคืนข้อความ: "เซิร์ฟเวอร์ไม่สามารถดึงข้อความต่อไปนี้ได้ข้อความยังไม่ถูกลบคุณอาจสามารถดูได้โดยใช้ Outlook หรือ Outlook Web App นอกจากนี้คุณยังสามารถติดต่อได้ ผู้ส่งเพื่อค้นหาสิ่งที่ข้อความพูด "
ในเว็บเมล์ผมเห็นว่าโฟลเดอร์ปฏิทิน (เข้าถึงได้ผ่านทางแท็บปฏิทิน) มีสิทธิ์สำหรับการแสดงผลภายนอกองค์กร ขณะนี้ตั้งค่าเป็น "ไม่แชร์" ตัวเลือกอื่น ๆ คือ "ความพร้อมใช้งานเท่านั้น", "รายละเอียดที่ จำกัด " หรือ "รายละเอียดแบบเต็ม" การตั้งค่าสิทธิ์เป็น "รายละเอียดทั้งหมด" จากนั้นส่งคำเชิญเข้าร่วมประชุมให้กับตัวเองไม่มีผลต่อรูปแบบของคำเชิญเข้าร่วมประชุม
เพื่อเป็นการหลีกเลี่ยงปัญหาที่ไม่ได้รับข้อความ iCalendar ฉันเปิด Thunderbird พร้อมกับโปรแกรมเสริม Lightning อย่างใดส่วนเสริม Lightning รู้วิธีรับการเชิญเข้าร่วมประชุม ข้อความยังคงปรากฏเป็น text / html แต่มีลิงก์ในแถบสถานะของธันเดอร์เบิร์ด การคลิกจะเป็นการเปิดพรอมต์ถามว่าจะปฏิเสธหรือยอมรับคำเชิญ
ทุกคนมีแนวคิดใดบ้างที่ทำให้การเชิญเข้าประชุมจาก Outlook 365 มาถึงเป็นข้อความ / ข้อความ html แบบง่าย ๆ แทนที่จะเป็นข้อความ iCalendar มีอะไรที่ฉันพอจะทำได้บ้าง? หาก Add-on Lightning สามารถทำงานกับคำเชิญได้ต้องมีวิธีแก้ไขเช่นใช้ Microsoft Exchange Web Services (EWS) หากการแก้ปัญหาจะต้องให้ฉันใช้รหัสเครื่องมือขึ้นมา แรงผลักดันในทิศทางที่ถูกต้องจะได้รับการชื่นชมอย่างมาก