Python 2.7 在python中创建ICS文件会以纯文本电子邮件的形式发送到外部客户端

Python 2.7 在python中创建ICS文件会以纯文本电子邮件的形式发送到外部客户端,python-2.7,icalendar,smtplib,Python 2.7,Icalendar,Smtplib,我正在用python中的SMTPLib和电子邮件库创建一个ICS以附加到电子邮件。当我发送会议请求时,它显示为会议请求,通常应该在我们组织内部。当我向组织外的人发送会议请求时,它会向这些人显示为一封纯文本电子邮件,没有接受、拒绝等选项 下面粘贴的是正在接收的电子邮件标题的输出,其中包括icalendar格式。我发现的许多可能的解决方案是,这是用户端的一个错误,但当我发送在outlook中创建的会议请求并将其发送到外部电子邮件地址时,它将正常工作 我的icalendar格式不正确吗 Content

我正在用python中的SMTPLib和电子邮件库创建一个ICS以附加到电子邮件。当我发送会议请求时,它显示为会议请求,通常应该在我们组织内部。当我向组织外的人发送会议请求时,它会向这些人显示为一封纯文本电子邮件,没有接受、拒绝等选项

下面粘贴的是正在接收的电子邮件标题的输出,其中包括icalendar格式。我发现的许多可能的解决方案是,这是用户端的一个错误,但当我发送在outlook中创建的会议请求并将其发送到外部电子邮件地址时,它将正常工作

我的icalendar格式不正确吗

Content-Type: multipart/mixed; boundary
MIME-Version: 1.0
Reply-To: test@test.com
Date: Fri, 15 Jun 2018 10:55:17 -0400
Subject: test
From: test <SchedulerApp@test.com>
To: test@test.com,another.test@gmail.com

Content-Type: multipart/alternative; boundary="

MIME-Version: 1.0


Content-Type: text/html; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

<h1>Test Email Body</h1>

MIME-Version: 1.0
Content-Type: text/calendar; method="PUBLISH"; charset="us-ascii"
Content-Transfer-Encoding: 7bit

BEGIN:VCALENDAR
PRODID://SchedulerApp//test company//en
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:REQUEST
BEGIN:VEVENT
DTSTART:20180616T074500
DTEND:20180616T084500
DTSTAMP:20180615T105517Z
ORGANIZER;CN=SchedulerApp:mailto:test@test.com
UID:FIXMEUID20180615T105517Z
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-    PARTICIPANT;PARTSTAT=ACCEPTED;RSVP=TRUE
 ;CN=test@test.com;X-NUM-GUESTS=0:
 mailto:test@test.com
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-    PARTICIPANT;PARTSTAT=ACCEPTED;RSVP=TRUE
 ;CN=another.test@gmail.com;X-NUM-GUESTS=0:
 mailto:another.test@gmail.com
CREATED:20180615T105517Z
<h1>Test Email Body</h1>
SEQUENCE:0
SUMMARY:test
LOCATION:test location
TRANSP:OPAQUE
END:VEVENT
END:VCALENDAR
内容类型:多部分/混合;边界
MIME版本:1.0
答复:test@test.com
日期:2018年6月15日星期五10:55:17-0400
主题:测试
发件人:test
致:test@test.com另一个test@gmail.com
内容类型:多部分/备选;边界=”
MIME版本:1.0
内容类型:text/html;charset=“us ascii”
MIME版本:1.0
内容传输编码:7bit
测试电子邮件正文
MIME版本:1.0
内容类型:文本/日历;method=“PUBLISH”;charset=“us ascii”
内容传输编码:7bit
开始:VCALENDAR
PRODID://SchedulerApp//test company//en
版本:2.0
CALSCALE:格里高利
方法:请求
开始:VEVENT
DTSTART:20180616T074500
数据端:20180616T084500
DTSTAMP:20180615T105517Z
组织者;CN=SchedulerApp:mailto:test@test.com
UID:FIXMEUID20180615T105517Z
与会者;CUTYPE=INDIVIDUAL;ROLE=REQ-参与者;PARTSTAT=ACCEPTED;RSVP=TRUE
;中国=test@test.com;X-NUM-GUESTS=0:
邮寄地址:test@test.com
与会者;CUTYPE=INDIVIDUAL;ROLE=REQ-参与者;PARTSTAT=ACCEPTED;RSVP=TRUE
;CN=另一个。test@gmail.com;X-NUM-GUESTS=0:
梅托:另一个。test@gmail.com
创建日期:20180615T105517Z
测试电子邮件正文
序列:0
小结:测试
地点:测试地点
运输:不透明
完:维文特
完:VCALENDAR

对于任何可能看到这个问题的人,我查看了我从outlook约会中保存的ICS文件,并使其看起来更像我在python中输出的内容。这解决了我的大部分问题