Я много читал, чтобы найти ответ самостоятельно, прежде чем публиковать здесь, но я не знаю, что мне не хватает, я пытаюсь сопоставить идентификатор сообщения электронной почты со значением в электронной таблице Google, У меня есть это 2 функции:
function getExpenseDescription(message) {
var id = message.getId();
return id;
}
function getReceivedDate(message){
var app = SpreadsheetApp;
// seleccionamos el id de la tabla que se desea utilizar
var ss = app.openById("google sheet id");
// seleccionamos la hoja con la que deseamos trabajar
var sheet = ss.getSheetByName("Respuestas de formulario 1");
// seleccionamos todos los datos de la tabla
var data = sheet.getDataRange().getValues();
// var id = "1620cc3997025bf5";
var id = message.getId();
Logger.log(id);
for(var i = 0; i < data.length;i++){
if(data[i][73] == id){
Logger.log((i+1))
return id = i+1;
}
}
первая функция возвращает идентификатор сообщения, но когда я использую тот же message.getId () во втором говорит, что не может получить идентификатор неопределенного
вот другой код, где вы получаете токен для доступа к Gmail
function getContextualAddOn(event) {
var message = getCurrentMessage(event);
var prefills = [getReceivedDate(message),
getLargestAmount(message),
getExpenseDescription(message),
getSheetUrl()];
var card = createExpensesCard(prefills);
return [card.build()];
}
/**
* Retrieves the current message given an action event object.
* @param {Event} event Action event object
* @return {Message}
*/
function getCurrentMessage(event) {
var accessToken = event.messageMetadata.accessToken;
var messageId = event.messageMetadata.messageId;
GmailApp.setCurrentMessageAccessToken(accessToken);
return GmailApp.getMessageById(messageId);
}