Сценарии Google Apps - извлечение данных из Gmail в электронную таблицу
это первый скрипт, который я пытаюсь написать с нуля. Это было плохо до сих пор, поэтому я собираюсь попросить о помощи.
Случай: Я получаю электронные письма с подтверждением электронной коммерции с сайтов электронной коммерции без ответа. В теле письма они отправляют адрес электронной почты от покупателей. Я хочу отправить автоматическое письмо на адрес электронной почты тела.
Как я планирую это сделать (любые предложения по устранению шагов будут благодарны).
Используйте правило, чтобы пометить входящие письма уникальным тегом.
Используйте этот тег для идентификации писем в gmail с помощью скрипта, переходите по одному и извлекайте необходимую мне информацию. Используйте regex с содержимым тела письма, чтобы извлечь адрес электронной почты, который мне нужен для отправки автоматических писем. План состоит в том, чтобы получить: тему, дату, электронную почту от тела.
Запишите всю эту информацию в электронную таблицу.
Избавьтесь от уникальной информации о тегах, чтобы избежать повторных запусков.
Затем используйте форму mule addon для отправки электронных писем из электронной таблицы.
До сих пор я имел дело с шагами 1 (легко) и мучился с шагами 2 и 3 (я не кодер, я умею читать, понимать и взламывать. Писать с нуля - это совсем другое). Я имел дело с 4, прежде чем я думаю, что это лучший способ справиться с этим.
С помощью скрипта я извлекаю информацию в электронную таблицу, а с помощью надстройки я использую информацию из электронной таблицы для отправки электронных писем.
Это код, который я написал до сих пор. Я оставил часть регулярных выражений для дальнейшего использования, потому что я еще ничего не могу написать в электронную таблицу. как только я получу эту работу, я начну работать в регулярном выражении и "снимаю метку" в аспектах сценария.
function myFunction() {
function getemails() {
var label = GmailApp.getUserLabelByName("Main tag/subtag");
var threads = label.getThreads();
for (var i = 0; i < threads.length; i++) {
var messages=threads[i].getMessages();
for (var j = 0; j < messages.length; j++) {
var message=messages[j];
var subject=message.getSubject();
tosp(message);
}
}
}
function tosp(message){
var body=message.getBody()
var date=message.getDate();
var subject=message.getSubject();
var id= "my spreasheet id";
var ss = SpreadsheetApp.openById(id);
var sheet = ss.getActiveSheet();
sheet.appendRow(subject,date,body);
}
}
Любая помощь будет оценена.
Спасибо Себастьян