Используя источник сообщений Gmail, создайте прямую ссылку
Таким образом, используя источник сообщений gmail, можно ли создать ссылку на сообщение / ветку в собственном интерфейсе GMail?
на http://productforums.google.com/forum/ они используют следующее
https://mail.google.com/mail/#all/<HexEncodeMessageID>
Связано ли это с заголовком Message=ID, найденным в источнике письма?
Message-ID: <SomeID@SomeID.mail>
Обсуждение " Поиск URL-адресов Gmail через IMAP", похоже, дает только решения на основе IMAP.
2 ответа
Я решил сделать букмарклет, чтобы помочь автоматизировать это.
javascript:window.location="https://gmail.com/#search/rfc822msgid:"+encodeURIComponent(window.document.body.innerHTML.match(/Message-ID: <(.*)>/i)[1])+"/"+encodeURIComponent(window.location.search.toString().slice(1).split('&').filter(function(x){return x.slice(0,3) == "th="})[0].slice(3));
Сохраните эту ссылку на панели закладок. Чтобы получить прямую ссылку на сообщение, выберите "Показать оригинал" в раскрывающемся списке для этого сообщения, а затем щелкните букмарклет на новой открывшейся странице.
Если у кого-то есть предложения по чистому способу сделать это, не нажимая кнопку "Показать оригинал", я весь в ушах.
"HexEncodeMessageID", на который вы ссылаетесь (и который встречается в ссылках, таких как https://mail.google.com/mail/), к сожалению, отличается от идентификатора сообщения RFC822 (который возникает в источнике электронной почты).
Я не знаю ни одного способа получить прямую ссылку на электронное письмо с использованием идентификатора сообщения RFC822, но можно найти конкретный идентификатор сообщения RFC822 в Gmail (см. Документ GMail):
in:anywhere rfc822msgid:SomeID@SomeID.mail
Вы можете превратить это в ссылку:
https://mail.google.com/mail/#search/in%3Aanywhere+rfc822msgid%3ASomeID@SomeID.mail
(Не забывайте, что идентификатор сообщения должен быть в кодировке URL. Вы также можете просто ввести поиск в свой GMail и впоследствии скопировать полученный URL.)
Проблема с этой ссылкой заключается в том, что она отправляет вас не на почту напрямую, а на страницу результатов поиска одним нажатием. Но это может быть достаточно для некоторых приложений.
Преимущество: RFC822 одинаков в вашей учетной записи и в учетной записи отправителя. Поэтому, если вы хотите сослаться на определенное письмо в электронном письме или чате, вы можете предоставить эту поисковую ссылку (при условии, что получатель также использует GMail). С "HexEncodeMessageID" это не сработает, потому что оно отличается в каждой учетной записи (согласно моим собственным экспериментам).
И последнее: ссылка работает только тогда, когда вы уже вошли в систему.
Вот обновленный букмарклет, предложенный Бенджамином Ципертом. В основном с удаленной частью /u/0, чтобы сделать его немного более независимым от аккаунта.
javascript:window.open("https://mail.google.com/mail/#search/rfc822msgid%3A" + encodeURIComponent(document.getElementsByClassName('message_id')[0].innerHTML.slice(4, -4)), "_self");
Использование: Сохраните эту ссылку на панели закладок. Чтобы получить прямую ссылку на сообщение, выберите "Показать оригинал" в раскрывающемся списке для этого сообщения, а затем щелкните букмарклет на новой открывшейся странице.