微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 GmailApp 从 Google App 脚本创建 HTML 草稿 使用 htmlBody:更新:添加签名:

如何解决使用 GmailApp 从 Google App 脚本创建 HTML 草稿 使用 htmlBody:更新:添加签名:

我想创建一个 Google App 脚本,通过从 Google 电子表格收集数据来获取带有签名的 Gmail 草稿。认情况下,

function Loop_Email_Drafts() {

var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var index = 2;
var lastRow = sheet.getLastRow();

for (;index <= lastRow; index++){
var emailAddress = sheet.getRange(index,1,1).getValue();
var ccmail = sheet.getRange(index,2,1).getValue();
var subject = sheet.getRange(index,3,1).getValue();
var message = sheet.getRange(index,4,1).getValue();


GmailApp.createDraft(emailAddress,subject,message,{cc: ccmail});


}// End of For Loop
}// End of Function

google 应用脚本正在创建一个纯文本草稿,我无法从中添加我的签名(我的签名还包含一个图像)。

目前,我使用以下代码生成草稿,但没有签名是毫无价值的。

解决方法

使用 htmlBody:

如果你只是想在草稿中添加一个 HTML 正文,可以使用以下方法:

其中options是指一个可以包含一系列高级参数的对象,包括:

  • htmlBody:如果设置,能够呈现 HTML 的设备将使用它而不是所需的 body 参数;如果您的电子邮件有内联图像,则可以在 HTML 正文中添加可选的 inlineImages 字段
  • inlineImages:一个 JavaScript 对象,包含从图像键 (String) 到图像数据 (BlobSource) 的映射;这假设使用了 htmlBody 参数并包含对这些图像的引用,格式为

也就是说,您可以在 inlineImages 中定义您想要的图像,并使用相应的 imageKey 将它们添加到您的 HTML 中。以下是如何做到这一点的示例:

const html = "<p>Whatever</p><img src=\"cid:yourImageKey\" />";
const options = {
  htmlBody: html,inlineImages: {
    yourImageKey: YOUR_IMAGE_BLOBSOURCE
  }
}
GmailApp.createDraft(recipient,'',options);

更新:添加签名:

您实际上可以通过 Gmail API manage signatures,因此可以使用 Apps 脚本(使用 Advanced Gmail Service)。

为了将您的实际签名添加到草稿中,您可以执行以下操作:

const signature = Gmail.Users.Settings.SendAs
                      .get("me","email_address_or_alias")
                      .signature;
const html = "<div>YOUR_HTML_BODY</div><br>" + signature;
const options = {
  htmlBody: html,cc: ccmail
}
GmailApp.createDraft(recipient,options);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。