问题标签 [google-workspace-add-ons]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
43 浏览

javascript - GAS Add on 菜单未在 Auth 模式下显示 NONE

我一直在经历 Google Workplace Marketplace 插件发布过程,但我的 onOpen 函数和身份验证模式遇到了问题。我以为我已经纠正了它,但是当我使用已安装但未启用的旧版编辑器(auth mode NONE)将其作为附加组件进行测试时,没有菜单显示,并且我在控制台中收到以下消息:

Google Apps 脚本:例外:您无权执行该操作。

当我在编辑器中运行 onOpen 函数同时将其作为附加组件进行测试时,我不断收到一条错误消息,指出第 6 行的以下内容(onOpen 中菜单变量的声明)

无法从此上下文中调用 SpreadsheetApp.getUi()。

我的代码如下。我一直在查看 StackOverflow 上的其他答案,但找不到任何解决方案。我没有使用在其他地方提到的作为问题的团队驱动器。我还经历并删除了任何全局变量声明,但没有运气。所以我有点难过。

0 投票
1 回答
75 浏览

google-apps-script - 无法访问 Google Docs Add-on 中的 .docx 文件

我正在使用 Appsscript 开发一个 Google Docs 插件,它读取 Google Docs 的正文并将其显示在插件 UI 中。

要访问 Google 文档,我使用以下代码:

该代码是 Google Docs 文件的工作文件。

然后,我尝试阅读 .docx 文件的文本或正文,但出现以下异常:

例外:文档不可访问。请稍后再试。 异常图片

我查看了 StackOverflow 上给出的各种解决方案,但无法获得解决方案。StackOverflow 上的答案说要将 .docx 文件转换为 doc 文件。但是,我不能这样做,因为我无法获得打开文档的“ID”。

如果有人建议我如何获取打开的文档的 ID 或如何从浏览器 URL 获取文档的 ID 或如何解决此异常,我将不胜感激。

提前致谢。

0 投票
1 回答
79 浏览

google-apps-script - How to use UrlFetchApp.fetchAll with Calendar API in google workspace addon

Our Google Workspace Addon synchronises calendar events from Google Calendar to an external database.

As part of this process we update multiple Calendar Events using the patch command

The problem we have is that we need to perform this operation multiple times within a limited amount of time (app script will time-out)

We could achieve this with the UrlFetchApp.fetchAll function but unfortunately to call this we would need to call the calendar api directly. Although this is easily done - we do not have the AccessToken as this is not available and is handled by the API.

Does anybody know how to get the accessToken (without pushing the user through a separate OAuth approval process) that is being used by the Calendar API so that we can utilise it to call UrlFetchApp.fetchAll

0 投票
2 回答
74 浏览

google-apps-script - Google Workspace 插件中的动态点菜单

我正在构建一个 Google Workspace 插件,并希望在用户登录后使用点菜单动态显示“退出”选项。

我发现菜单选项在附加组件(也称为清单)的部署资源中定义为一个名为“universalActions”的数组。例如像这样:

但是我找不到在部署后更改“universalActions”的方法。

在下面的示例中,您会在登录前和登录后看到 Evernote 插件。

登录前的印象笔记 登录后的印象笔记

在第二张图片上,登录后,您会看到额外的菜单选项“Einstellungen”(意思是设置)和“Abmelden”(意思是注销)。如何实现仅在登录后显示这些选项?

0 投票
0 回答
19 浏览

google-chrome - 在谷歌编辑器上打开文档,但不是从谷歌驱动器

如何在谷歌编辑器上打开/编辑文档而不在谷歌驱动器上创建副本。是否有任何机制可以从不同的存储打开文档。

G-suite 集成如 box、salesforce 已经在实现它。有没有标准的方法来做到这一点。

0 投票
1 回答
71 浏览

google-apps-script - 如何存储谷歌应用脚​​本安装用户的电子邮件

我在 Google Workspace Marketplace 中有 Google Sheets 插件。我想存储安装插件的用户的电子邮件。我正在考虑三种可能的方法。

  1. 写入插件帐户下的私人电子表格(与用户不同)。插件在用户下运行,所以问题是,这是否可能 - 从用户谷歌帐户上下文中访问插件帐户(特别是写入电子表格)?

  2. 使用 PropertiesService - 使用类将用户写入脚本属性PropertiesService。这个问题的一个问题是谷歌服务配额中解释的限制。对我来说,至少现在,这已经足够了。然而,问题是如何以编程方式访问这些脚本属性。当然,我可以从脚本编辑器访问数据,但如果我想例如向所有用户发送邮件,这是不切实际的。

  3. 将代码添加到仅适用于特定用户(管理员)的插件中。在这种情况下,因为我可以从脚本属性中读取用户,并且可能将它们写入电子表格以供以后使用。这看起来很丑,我承认。

我不是在要求代码解决方案,而是对正确或最佳方法的建议。

0 投票
0 回答
31 浏览

google-workspace-add-ons - 指定我的 google 工作区插件在市场上可用的日期?

我正在创建一个谷歌工作区插件。我可以指定我的插件将在 Google 工作区市场中发布的日期吗?在 GCP 上发布插件的管理控制台没有发布日期的条目。

0 投票
0 回答
21 浏览

google-apps-script - 我们如何在委派的 gmail 帐户中访问 Google Work Space Add on

我已将一个 gmail 帐户 (Ac-1) 委托给另一个 gmail 帐户 (Ac-2)。我在 Ac-1 中创建了一个 Google Workspace 插件。我的问题是:我们如何在从 Ac-2 访问委托帐户窗口时访问该工作区插件。我试图在网上搜索它,但找不到任何信息。已经开始怀疑这是否可能?在这个方向上的任何指示都会有很大的帮助。谢谢!

0 投票
0 回答
25 浏览

google-workspace-add-ons - 从移动 Gmail Compose 调用时从函数返回 ActionResponseBuilder

我最近开始收到一些来自用户的报告,这些报告最近停止工作,但仅限于移动设备。通过将 onGmailInsertCat 更改为

在桌面上显示一条通知,但在移动设备上没有任何反应。当我退回一张新卡时,我看到了类似的结果。是否还有办法在移动/iOS gmail 上退回新卡?

0 投票
0 回答
42 浏览

google-workspace-add-ons - Google Workspace Add-ons Quickstart Cats 停止在 iOS gmail 上工作

我已经开始收到报告说我们使用了一段时间的插件停止在 iOS 移动设备上运行。我能够确认这一点并开始深入研究这些问题。我已经能够使用多个 Google 帐户(gmail 和工作区)通过“快速入门:Cats Google Workspace Add-on”重现该错误。从卡片中的按钮调用的函数返回的卡片、导航和通知似乎不会在 iOS Gmail 上呈现。该代码似乎可以在桌面上运行。我可以使用快速入门教程对此进行演示。我使用以下显示当前时间而不是猫图片的 createCatCard 消除了移动设备上对白名单 url 的需求。该项目适用于桌面,但不适用于 iOS Gmail。

我已经通过他们的问题跟踪器(https://issuetracker.google.com/issues/210484310)向谷歌报告了这一点,但他们声明“问题跟踪器旨在报告问题并要求与谷歌/在谷歌上的开发相关的功能产品,因此它不是在这个问题上寻求支持的最佳场所。”

有谁知道是否仍然支持 iOS Gmail 插件以及是否有解决此问题的方法?