Вы хотите отправить электронное письмо с текстом HTML, включая смайлики.Если мое понимание правильное, как насчет этой модификации?
О GmailApp и MailApp:
К сожалению, GmailApp
не может использовать последние символы эмодзи.При GmailApp
- смайлики ниже Unicode 5.2 могут использоваться для этой ситуации.
- смайлики больше Unicode 6.0 НЕ могут использоваться для этой ситуации.
MailApp
может использовать все версии эмодзи.
"⭐" - это Unicode 5.1.Но «?» - это Unicode 6.0.Таким образом, в вашем скрипте, использующем GmailApp, вы можете видеть первое, но вы не можете видеть второе.В примере сценария Микеле Пизани последний отправляется с использованием MailApp.Так что персонаж не сломлен.«?» - это Unicode 8.0.
Точки модификации:
Так что в случае вашего скрипта точки модификации следующие:
- Использование
MailApp
вместо GmailApp
.
ИЛИ
- Используйте Gmail API.
- Из ваших комментариев к Микеле Пизани я беспокоюсь о том, что
MailApp
может не сработать в вашей ситуации.Поэтому я хотел бы также предложить метод с использованием Gmail API.
1.Изменен ваш скрипт
Пожалуйста, измените его следующим образом.
С:
GmailApp.sendEmail(email, emailSubject, body, {
Кому:
MailApp.sendEmail(email, emailSubject, body, {
2.Использование Gmail API
Чтобы использовать это, включите Gmail API в Advanced Services и консоли API следующим образом.
Включите Gmail API v1 в Advanced Google Services
- В редакторе сценариев
- Ресурсы -> Расширенные службы Google
- Включить Gmail API v1
- В редакторе сценариев
- Ресурсы -> Проект Cloud Platform
- Просмотр консоли API
- В начале работы нажмите ВключитьAPI и получить учетные данные, такие как ключи.
- С левой стороны нажмите Библиотека.
- В поле Поиск API и служб введите "Gmail".И нажмите Gmail API.
- Нажмите кнопку Включить.
- Если API уже включен, не выключайте его.
Если сейчас вы открываете редактор сценариев со сценарием для использования Gmail API, вы можете включить Gmail API для проекта, открыв этот URL-адрес https://console.cloud.google.com/apis/api/gmail.googleapis.com/overview
Пример сценария:
function convert(email, aliase, emailSubject, body) {
body = Utilities.base64Encode(body, Utilities.Charset.UTF_8);
var boundary = "boundaryboundary";
var mailData = [
"MIME-Version: 1.0",
"To: " + email,
"From: CPES Bot <" + aliase + ">",
"Subject: " + emailSubject,
"Content-Type: multipart/alternative; boundary=" + boundary,
"",
"--" + boundary,
"Content-Type: text/plain; charset=UTF-8",
"",
body,
"",
"--" + boundary,
"Content-Type: text/html; charset=UTF-8",
"Content-Transfer-Encoding: base64",
"",
body,
"",
"--" + boundary,
].join("\r\n");
return Utilities.base64EncodeWebSafe(mailData);
}
function myFunction() {
// Please declare email and firstName.
var title = rowData.publicationTitle;
var journal = rowData.journalTitle;
var url = rowData.publicationUrl;
//Emoji goes here in the body:
var body = "Hi " + firstName + "!<br><br>I noticed your article <a href='" + url + "'>“" + title + "”</a> was recently published in <i>" + journal + "</i>. Congratulations! This is just a friendly reminder to please upload your original document and a PDF version to our publications app when you have time.<br><br>To upload your publication, you can <a href='http://support.cpes.vt.edu/publishing'>click here</a>.<br><br>Thanks!<br><br>? CB<br><br><hr style='background-color: #d8d8d8; border: 0 none; color: #d8d8d8; height: 1px;'><span style='font-size:12px'><b>CPES Publications Reminders</b> | <a href='mailto:leshutt@vt.edu' style='text-decoration:none'>Feedback</a> | <a href='http://support.cpes.vt.edu/publishing' style='text-decoration:none;'>Publication uploads</a></span>";
var emailSubject = "Just a reminder to upload your article!";
var me = Session.getActiveUser().getEmail();
var aliases = GmailApp.getAliases();
if (emailStatus == "Pending" && emailData !== "No emails found"){
// Added script
var raw = convert(email, aliases[2], emailSubject, body);
Gmail.Users.Messages.send({raw: raw}, "me");
}
}
Примечание:
- Когда вы используете этот образец, укажите
email
и firstName
. - Пожалуйста, запустите
myFunction()
.
Ссылки:
Если я неправильно понимаюваш вопрос, извините.