Saya ingin membuat Google App Script untuk mendapatkan Gmail Draft dengan tanda tangan, dengan mengumpulkan data dari google spreadsheet. secara default,

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

Skrip aplikasi google membuat draf teks biasa dari mana saya tidak dapat menambahkan tanda tangan saya (tanda tangan saya juga berisi gambar).

Saat ini, saya menggunakan kode di bawah ini untuk menghasilkan konsep tetapi tanpa tanda tangan tidak ada gunanya.

1
Mehdi Abbas 8 April 2021, 08:33

1 menjawab

Jawaban Terbaik

Gunakan htmlBody:

Jika Anda hanya ingin menambahkan badan HTML ke draf, Anda dapat menggunakan metode berikut:

Di mana options merujuk ke objek yang dapat berisi serangkaian parameter lanjutan, termasuk:

  • htmlBody: jika disetel, perangkat yang mampu merender HTML akan menggunakannya sebagai ganti argumen body yang diperlukan; Anda dapat menambahkan bidang inlineImages opsional di badan HTML jika Anda memiliki gambar sebaris untuk email Anda
  • inlineImages: objek JavaScript yang berisi pemetaan dari kunci gambar (String) ke data gambar (BlobSource); ini mengasumsikan bahwa parameter htmlBody digunakan dan berisi referensi ke gambar ini dalam format

Artinya, Anda menentukan gambar yang Anda inginkan di inlineImages dan menambahkannya ke HTML Anda menggunakan imageKey yang sesuai. Berikut adalah contoh bagaimana hal ini dapat dilakukan:

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

Pembaruan: tambahkan tanda tangan:

Anda sebenarnya dapat mengelola tanda tangan melalui API Gmail, dan karenanya dengan Apps Script (menggunakan Layanan Gmail Lanjutan).

Untuk menambahkan tanda tangan Anda yang sebenarnya ke draf, Anda dapat melakukan hal berikut:

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);
1
Iamblichus 9 April 2021, 07:01