【发布时间】:2015-08-15 23:07:28
【问题描述】:
我正在将 Gmail 推送通知与 Google PubSub 一起使用,并且有一个我想要监控任何更改的自定义标签。我使用以下代码为标签注册手表(标签的Id为Label_1)
WatchRequest wr = new WatchRequest();
wr.TopicName = "projects/" + primaryLink.ggProjectId + "/topics/iLink" + segmentId;
if (labels != null && labels.Count > 0)
{
wr.LabelIds = new List<string>();
wr.LabelIds.Add("Label_1");
wr.LabelFilterAction = "include";
}
WatchResponse wrr = gs.Users.Watch(wr, emailAccount).Execute();
return "HistoryId " + wrr.HistoryId.ToString();
}
手表注册正常。问题是我会收到任何 Gmail 更改的推送通知,而不仅仅是标签下的更改。
是否支持自定义标签?
【问题讨论】:
-
用户标签也应该可以正常工作。您确定不是对也有Label_1的消息进行了不同的标签更改吗? (例如,Label_1 消息被标记为未读,但该消息上的 Label_1 未更改。)
-
例如在发送电子邮件时不会发生 - 这与标签无关。最初有一个未指定标签的用户手表。新的监视命令(带有标签过滤器)是否会覆盖以前的监视?我还尝试在新命令之前调用 Stop()?
-
一个 watch() 应该覆盖前一个。您可以调用 stop() 并将其保留一段时间以确保旧的已消失(在这种情况下,新的 watch() 不会覆盖旧的将是一个错误)。
-
我可以确认这仍然在 v1 中发生。
-
@PNC 此错误有一个谷歌问题跟踪器条目。您能否通过引用issuetracker.google.com/issues/36759803 来更新您的帖子,并附上注释来为该问题加注星标?为它加注星标的人越多,它就越早得到修复。
标签: gmail-api