[英]Create HTML Draft from Google App script using GmailApp
我想創建一個谷歌應用程序腳本,通過從谷歌電子表格收集數據來獲取帶有簽名的 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, 1).getValue(); var ccmail = sheet.getRange(index, 2, 1, 1).getValue(); var subject = sheet.getRange(index, 3, 1, 1).getValue(); var message = sheet.getRange(index, 4, 1, 1).getValue(); GmailApp.createDraft(emailAddress, subject, message, {cc: ccmail}); }// End of For Loop }// End of Function
谷歌應用程序腳本正在創建一個純文本草稿,我無法從中添加我的簽名(我的簽名還包含圖像)。
目前,我正在使用以下代碼生成草稿,但沒有簽名是毫無價值的。
如果只想在草稿中添加一個 HTML 主體,可以使用以下方法:
其中options
是指一個 object 可以包含一系列高級參數,包括:
- htmlBody :如果設置,能夠呈現 HTML 的設備將使用它而不是所需的 body 參數; 如果您的 email 有內聯圖像,您可以在 HTML 正文中添加一個可選的 inlineImages 字段
- inlineImages :一個 JavaScript object 包含從圖像鍵(
String
)到圖像數據( BlobSource )的映射; 這假定使用了htmlBody
參數並包含對這些圖像的引用,格式為<img src="cid:imageKey" />
也就是說,您在inlineImages
中定義所需的圖像,並使用相應的 imageKey 將它們添加到imageKey
中。 這是一個如何做到這一點的示例:
const html = "<p>Whatever</p><img src=\"cid:yourImageKey\" />";
const options = {
htmlBody: html,
inlineImages: {
yourImageKey: YOUR_IMAGE_BLOBSOURCE
}
}
GmailApp.createDraft(recipient, subject, '', options);
您實際上可以通過 Gmail API 管理簽名,因此可以使用 Apps 腳本(使用高級 Gmail 服務)。
為了將您的實際簽名添加到草稿中,您可以執行以下操作:
htmlBody
。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, subject, '', options);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.