访问后端消息(不是事件中的消息)

时间:2017-12-11 13:51:24

标签: gmail-addons

当我删除对GMail小部件的支持时,我曾写过一个我必须转换为Chrome插件的GMail小部件,而我现在正尝试将其转换为Gmail插件。

我的问题是我的附加组件通过标签下的一系列消息循环并尝试回复它们,但是我尝试访问它们时出错:

  

错误:异常:拒绝访问::缺少每个邮件范围授权的访问令牌。

所以我的问题是,如何访问这些消息?我拥有的唯一访问令牌是触发附加组件的那个,但不会这样做。

或者从不同的角度提问,除了打开邮件之外,还有更多可以触发加载项的事件吗?

提前致谢。

BTW,我尝试转换为Gmail插件的Chrome扩展程序可以在这里看到:

https://sites.google.com/site/replytomany/home

https://chrome.google.com/webstore/detail/reply-to-many/gpmpcjkhfjflmjpjjmdegpkgginijbin?hl=en

[编辑]这是我的appsscript.json的样子:

{
  "timeZone": "Europe/Dublin",
  "dependencies": {
    "enabledAdvancedServices": [{
      "userSymbol": "Gmail",
      "serviceId": "gmail",
      "version": "v1"
    }]
  },
  "oauthScopes": [
            "https://www.googleapis.com/auth/gmail.addons.execute", 
            "https://www.googleapis.com/auth/gmail.readonly",
            "https://www.googleapis.com/auth/gmail.send"
         ],
  "gmail": {
    "name": "Reply To Many",
    "logoUrl": "https://www.gstatic.com/images/icons/material/system/1x/receipt_black_24dp.png",
    "contextualTriggers": [{
      "unconditional": {
      },
      "onTriggerFunction": "getContextualAddOn"
    }],
    "primaryColor": "#41f470",
    "secondaryColor": "#94f441",
    "version": "TRUSTED_TESTER_V2"
  }
}

2 个答案:

答案 0 :(得分:1)

您是否尝试过实施访问令牌?我打算让你首先尝试,因为我相信如果你没有它,那就是你的问题。 //激活临时Gmail访问令牌。其中'e'是函数参数 var accessToken = e.messageMetadata.accessToken; GmailApp.setCurrentMessageAccessToken(的accessToken); 如果您有“mail.google.com/”,那么您没有范围问题,因为这可以让您获得完全访问权限。唯一的其他安全问题是访问令牌。

答案 1 :(得分:0)

尝试此范围: https://www.googleapis.com/auth/userinfo.email 我相信如果你正在调用Session对象'getActiveUser'

,那就是你需要的那个

如果这不能解决您的问题,我认为如果不了解您的目的,我就无法提供帮助。