Как получить идентификатор сообщения до или после отправки электронной почты в gmail?

Я работаю над расширением Chrome для Gmail. Я хочу получить «идентификатор сообщения» в моем расширении до отправки электронного письма или сразу после его отправки. Как я могу достичь этого?

Как создается идентификатор сообщения в Gmail?

Он генерируется перед отправкой электронного письма или позже?

Примечание. Я не переопределяю функциональность электронной почты. Мне просто нужен уникальный идентификатор электронной почты, когда электронная почта отправляется в Gmail.

Я хочу передать этот идентификатор электронной почты в запросе к Gmail API, чтобы я мог получить данные электронной почты в качестве ответа.


person Pallavi Goyal    schedule 07.09.2017    source источник


Ответы (1)


Исходя из моего опыта, он создается после отправки электронного письма. Вы можете заметить, что если есть черновик сообщения, есть идентификатор, но после его отправки этот идентификатор преобразуется в его идентификатор сообщения (другое значение), который вы можете использовать для поиска в папке «Входящие». Вы можете проверить этот соответствующий пост SO, в котором говорится о разнице между messageID и draftID. Например, фрагмент кода Mogzdad в скрипте приложений с использованием Дополнительная служба Gmail API возвращает идентификатор после отправки электронного письма.

/**
 * Send a raw RFC 2822 formatted and base64url encoded email
 * using the Advanced Gmail service.
 *
 * From http://stackoverflow.com/a/35073785/1677912
 *
 * @param {String}  raw  RFC 2822 formatted and base64url encoded message
 *
 * @returns {String}     Message ID of the message (now in Sent Messages).
 */
function sendRawMessage( raw ) {
  var message = Gmail.newMessage();
  message.raw = raw;
  var sentMsg = Gmail.Users.Messages.send(message, 'me');
  return sentMsg.id;
}

Надеюсь это поможет.

person Mr.Rebot    schedule 08.09.2017
comment
Спасибо за ответ. Могу ли я получить идентификатор сообщения после отправки электронного письма? И я не хочу переопределять службу gmail. Письмо отправляется как обычно, единственное, что мне нужно, это идентификатор сообщения. - person Pallavi Goyal; 09.09.2017
comment
Да, вы можете протестировать код с помощью консоли сценариев приложений. - person Mr.Rebot; 09.09.2017