exchangelib:将电子邮件作为分发列表发送

exchangelib: Sending an email as a distribution list

我正在使用 exchangelib python EWS 库发送电子邮件。从我的邮箱发送按预期工作,但我如何从通讯组列表发送电子邮件我已经应用了“发送为”权限(已在 Outlook 中测试更改发件人地址)?

下面的代码片段将发送电子邮件,但“me@domain.com”帐户显示为发件人。如果我将“access_type=DELEGATE”更改为“access_type=IMPERSONATION”,我会收到错误“ErrorNonExistentMailbox:SMTP 地址没有与之关联的邮箱。”。

credentials = Credentials("me@domain.com", password)
config = Configuration(server=server, credentials=credentials)
account = Account(primary_smtp_address="distlist@domain.com", config=config, autodiscover=False, access_type=DELEGATE)

message = Message(account=account,subject="subject",folder=None)
message.sender = "distlist@domain.com"
message.to_recipients = "me@domain.com"
message.body = "test"
message.send(save_copy=False, copy_to_folder=False)

非常感谢任何帮助或指导

通讯组列表在 Exchange 中通常没有自己的邮箱,因此您不能将其电子邮件地址用作帐户的 primary_smtp_address

消息有一个 sender 和一个 author 字段。您可以尝试在 author 字段中设置通讯组列表电子邮件。然后电子邮件可能会显示为来自该电子邮件地址。