#gmail #gmail-api
#gmail #gmail-api
Вопрос:
Я импортирую / создаю черновики в Gmail с помощью API Gmail. После создания я хотел бы перенаправить пользователя в пользовательский интерфейс Gmail с открытым черновиком в окне composer.
Я заставил его работать должным образом для https://mail.google.com/mail/#drafts?compose =[ИДЕНТИФИКАТОР СООБЩЕНИЯ]. Другие URL-адреса, которые я нашел здесь, также работали хорошо. Gmail выполняет некоторые перенаправления, и в конечном итоге открывается окно composer с черновиком.
Теперь моя проблема:
Если пользователь не включил «Просмотр беседы», это вообще не будет работать. Перенаправление приведет к https://mail.google.com/mail/u/0/#drafts?compose=new и отображается только пустое новое окно composer, а пользовательский интерфейс создает новый черновик.
Если я открою черновик напрямую, формат идентификатора будет другим. https://mail.google.com/mail/u/0/#drafts?compose=hJzgZpSqgLQcCWgZqnlNRzRBfMbjZVnZklzvcFxhQCdwT … и я понятия не имею, можно ли как-то сгенерировать этот формат.
У кого-нибудь есть идея или опыт, чтобы также заставить его работать с этой настройкой пользовательского интерфейса. Как я могу заставить Gmail загрузить черновик в окно composer?
Заранее спасибо.
Ответ №1:
Если у вас включена потоковая передача электронной почты > Просмотр переписки
Используйте следующий URL-адрес
https://mail.google.com/mail/u/0/#inbox?compose=DRAFT_MESSAGE_ID
Если вы отключили потоковую передачу электронной почты> Просмотр беседы
Используйте следующий URL-адрес
https://mail.google.com/mail/u/0/#inbox/DRAFT_MESSAGE_ID
Дополнительная информация
- Основное различие между ними заключается в том, что первый рассматривается как разговор, а второй пример — нет.
- Вы можете использовать #черновики вместо #входящие в URL.
- Номер после …/mail/u/ — это сеанс, который вы открыли
- Вы можете получить DRAFT_MESSAGE_ID, выполнив запрос к API
- Вы можете примерно сгенерировать идентификатор композиции самостоятельно, есть несколько примеров (не рекомендуется). Я настоятельно рекомендую вам использовать вместо этого DRAFT_MESSAGE_ID .
Комментарии:
1. Спасибо Хосе за исчерпывающий ответ. К сожалению, второй URL-адрес даже не открывает окно composer в моем случае. Он просто открывает список (входящие или черновики) после выполнения некоторых перенаправлений. Под DRAFT_MESSAGE_ID вы подразумеваете идентификатор сообщения внутри объекта черновика? Используется ли идентификатор черновика?
2. Под идентификатором черновика сообщения я подразумеваю идентификатор сообщения. Если вы не можете открыть черновик сообщения, я рекомендую вам обратиться за помощью, открыв Gmail и перейдя в раздел Справка> Отправить отзыв . При этом объясните, что вы не можете открыть черновик сообщения, используя оба указанных выше URL-адреса.
Ответ №2:
Похоже, это все еще остается проблемой. единственное решение, которое я нашел, заключалось в том, что вы можете найти свой черновик напрямую (даже если это будет последний черновик) и пройти через несколько учетных записей, перенаправив на
https://accounts.google.com/AccountChooser ?authuser={учетная запись пользователя} и Электронная почта ={электронная почта account}amp;continue=https://mail.google.com/mail/#search/rfc822msgid:CAMU-31NcJCVHyGNsAycRKfuS0nMonoaZ6wFMD90Sej996qjuPQ@mail.gmail.com
Вам нужно получить идентификатор вашего сообщения, чтобы заменить область из <> из вашего черновика. Итак, сначала вам нужно будет создать черновик. Получите идентификатор сообщения Google, затем используйте его с messages / get, чтобы получить глобальный идентификатор сообщения (также называемый идентификатором сообщения), а затем используйте его при поиске. На этом этапе вы откроете страницу с поиском по одному черновику, но он не будет открыт. Ваши пользователи должны будут нажать на одно сообщение. К сожалению, похоже, что нет способа заставить хороший способ работать для просмотра беседы, и этот способ работает для non.
Я пробовал много разных URL-адресов, и ничего не получалось. Как отмечалось в исходном вопросе, может сработать, если вы можете ссылаться на полный URL-адрес, но я не вижу способа получить это. Если вы потратите достаточно времени на работу с электронной почтой, вы даже обнаружите, что ID меняется, поэтому они даже не стабильны в течение одного дня.
Другое решение, которое может сработать, как описано:
https://mail.google.com/mail/u/0/#inbox/DRAFT_MESSAGE_ID
Но, как уже отмечалось, это не открывает черновик при первом посещении. Кажется, вам нужно перейти по этой ссылке 2 раза подряд, чтобы сообщение появилось. Я думаю, вы могли бы перейти на страницу, возможно, ввести какой-нибудь javascript, чтобы снова перейти на страницу, но я не знаю, как это сделать.