Фильтрация сообщений в gmail API для получения всех сообщений в папке входящих с пользовательской меткой - PullRequest
0 голосов
/ 28 ноября 2018

Я разрабатываю приложение, использующее API Gmail, чтобы дать пользователям возможность отправлять / просматривать электронную почту через Gmail.Чтобы отличить эти сообщения приложения от других сообщений в их учетной записи, идея заключалась в том, чтобы пометить сообщения, которые мы отправляем из приложения, знаком MyAppLabel.Затем, когда мы представляем пользователю его входящие, мы фильтруем, как in:inbox AND label:MyAppLabel, поэтому мы показываем только соответствующие им письма.

Проблема в том, что мы отправляем сообщение в приложение через API Gmail и помечаемэто сообщение с MyAppLabel, но когда получатель отвечает через своего внешнего клиента, входящее сообщение в потоке, очевидно, не имеет нашей метки.В итоге: исходное исходящее сообщение имеет метки «SENT, MyAppLabel», а ответ имеет метки «INBOX».Если я сейчас использую фильтр in:inbox AND label:MyAppLabel, то результаты не будут возвращены, поскольку ни одно сообщение в этой теме не имеет ни входящей почты, ни пользовательской метки.Если бы я просто использовал in:inbox, я бы получил другие сообщения, не связанные с приложением.Если бы я просто использовал label:MyAppLabel, то я бы также получил сообщения, не входящие в почтовые ящики в целом (например, отправленные сообщения о событиях без ответов, которые естественно не живут в папке входящих)

Что я действительно хочу, так это некоторыезапрос, который дает мне все потоки, которые имеют по крайней мере одно сообщение, помеченное "INBOX" и по крайней мере одно сообщение, помеченное "MyAppLabel", даже если обе эти метки не найдены в одном и том же сообщении, но разные сообщения в потоке.

Возможно ли это?Или есть другая стратегия, которую я мог бы использовать для решения этой проблемы?

...