仅当新邮件到达时接收Gmail推送通知

仅当新邮件到达时接收Gmail推送通知,gmail,gmail-api,Gmail,Gmail Api,我正在尝试制作一个应用程序,该应用程序将发现收件人是否已经使用GMAIL推送通知回复了我的电子邮件。 它工作得很好,但问题是,我收到了gmail上任何更改的通知 这是我使用的代码 request = { 'labelIds': ['UNREAD'], 'topicName': topic, 'labelFilterAction': 'include' } service.users().watch(userId=user.google_id

我正在尝试制作一个应用程序,该应用程序将发现收件人是否已经使用GMAIL推送通知回复了我的电子邮件。 它工作得很好,但问题是,我收到了gmail上任何更改的通知

这是我使用的代码

request = {
        'labelIds': ['UNREAD'],
        'topicName': topic,
        'labelFilterAction': 'include'
    }
service.users().watch(userId=user.google_id, body=request).execute()
然后我尝试使用'labelFilterAction':'exclude'

system_labels = ['CATEGORY_UPDATES', 'UNREAD', 'DRAFT', 'CATEGORY_PROMOTIONS', 'INBOX', 'CATEGORY_SOCIAL', 'CATEGORY_PERSONAL', 'CATEGORY_FORUMS', 'TRASH', 'CHAT', 'IMPORTANT', 'SENT', 'STARRED', 'SPAM']
system_labels.remove('UNREAD')
request = {
        'labelIds': system_labels,
        'topicName': topic,
        'labelFilterAction': 'exclude'
    }
service.users().watch(userId=user.google_id, body=request).execute()
这一次,我根本没有收到任何通知。 有什么建议吗?

正在运行的python代码

credentials = get_credentials(email)
http = credentials.authorize(httplib2.Http())
service = discovery.build('gmail', 'v1', http=http)

    request = {
        'labelIds': ['CATEGORY_PERSONAL'],
        'topicName': 'projects/myproject/topics/getNotification',
        'labelFilterAction': 'exclude'
    }
service.users().watch(userId='me',body=request).execute()

新的未读邮件也有
收件箱
-标签,因此我认为所有新邮件都将被排除在外。尝试
system\u标签。同时删除(“收件箱”)
,您至少会过滤掉很多邮件,但可能不是全部。我尝试过,但仍然没有收到任何通知。嗯。。。尝试
system\u标签。删除('INBOX')
system\u标签。删除('UNREAD')
system\u标签。删除('CATEGORY\u PERSONAL')
。我想就是这样!:)@khulas15您是否只收到了
未读
中更改的通知?