Jos*_*mbs 2 gmail google-apps google-apps-script
在过去 24 小时内,我运行的一个以前工作的GMail 插件开始失败。
我一直将其剥离,只尝试从文档中获取示例:
var action = CardService.newAction().setFunctionName('composeEmailCallback');
CardService.newTextButton()
.setText('Compose Email')
.setComposeAction(action, CardService.ComposedEmailType.REPLY_AS_DRAFT);
// ...
function composeEmailCallback() {
var thread = GmailApp.getThreadById(e.threadId);
var draft = thread.createDraftReply('This is a reply');
return CardService.newComposeActionResponseBuilder()
.setGmailDraft(draft)
.build();
}
Run Code Online (Sandbox Code Playgroud)
在 BUILD 上(不是按下按钮),以前工作的 GMail Addon 显示错误消息:
The value returned from Apps Script has a type that cannot be used by the add-ons platform. Also make sure to call build on any builder before returning it. Value: values {
proto_value {
type_url: "type.googleapis.com/caribou.api.proto.addons.templates.publicapi.ContextualAddOnMarkup.Card"
value: "...(omitted)"
}
}
Run Code Online (Sandbox Code Playgroud)
这是一个新的已知问题吗?有没有人有一些故障排除步骤可以分享?
小智 7
对我来说,错误是由未将打开的链接列入白名单引起的。例如,如果您有这样的代码:
CardService.newOpenLink().setUrl(url)
Run Code Online (Sandbox Code Playgroud)
然后 'url' 返回的链接必须在 appscript 清单的openLinkUrlPrefixes列表中列入白名单,如下所示:
"openLinkUrlPrefixes": [
"https://*.example.com"
]
Run Code Online (Sandbox Code Playgroud)