问题标签 [google-apps-for-education]

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 投票
1 回答
628 浏览

google-apps-marketplace - 无法使 Gmail 上下文小工具工作 - 2015 API 版本

我目前正在为一家非营利组织开发 Gmail 上下文小工具。我们遵循https://developers.google.com/gmail/contextual_gadgets上的官方 Google 教程,目的是构建一个 Hello World 应用程序。

我们做了以下事情:

  1. 在https://console.developers.google.com/上创建应用程序
  2. 激活 Google Marketplace SDK
  3. 使用适当的提取器和小工具 URL 激活 GMail 上下文小工具。
  4. 为非营利组织用户部署应用程序。
  5. 向我们发送包含“Hello World”的电子邮件。

但是,我们无法使其工作(它应该在电子邮件下方打印 Hello World)。我们检查了托管 XM 的服务器,Google 肯定会点击我们的 gadget_helloworld.xml 文件。

以下是文件内容。有人可以帮忙解决这个问题吗?

很难找到有关此主题的最新文档,因为 Google API 发生了很多变化。我认为社区提供一个在 2015 年更新的开源代码工作示例会很有帮助。

最好的,

提取器的内容 - manifest_helloworld.xml

小工具的内容 - gadget_helloworld.xml

0 投票
1 回答
77 浏览

mobile - 如何在使用 Google Directory API 创建新用户后禁用移动验证

要创建新用户,我在我的 .net Web 应用程序中使用 Google Directory API。它在创建时工作正常。但是在创建新用户后,当我使用新用户登录邮件时,它会要求验证您的身份

在该窗口中,它要求通过短信或语音通话验证手机号码。如何跳过此验证?我已经取消选中管理控制台中的两步验证复选框。在实时场景中,所有学生可能没有手机号码。

0 投票
1 回答
71 浏览

javascript - 我的“包含”如何破坏独立 Google Apps 脚本中的表单提交?

我一直在使用这个脚本来创建这个网络应用程序。它应该接受表单提交并将数据传输到谷歌表格。完成后,它应该清除字段并重新开始。这个工作(大部分)。

我试图通过在 Code.gs 文件中添加包含来清理脚本。一旦我将脚本更改为这个以创建相同的 Web 应用程序,我就会得到这个结果(你必须实际提交一些东西才能看到它)。单击提交后,没有任何运行,页面切换到某个疯狂的网址。

我很确定问题出在这之间的区别(原始 Code.gs):

还有这个(新的 Code.gs):

我只是不太了解问题。

0 投票
3 回答
3193 浏览

javascript - 如何将 HTML 表单提交中的值传递到 Google 表格并返回到 Google Apps Script Web App 中的 HTML

我正在尝试创建一个基本的时钟网络应用程序。

到目前为止,我正在使用这个脚本来创建这个 Web 应用程序,它接受输入值并将它们放在这个电子表格中作为时间戳部分。

我需要它使用表单中的一个值并在此工作表中执行查找(获取 longId 并找到我的名称)并将(名称)值返回到 html 页面作为最终用户的验证他们是正确识别。不幸的是,我不知道自己做错了什么。如果我需要提供更多信息,请告诉我。

编辑 1

我在想我说的不够清楚。我不需要条目中的用户信息,我需要查找中的用户。用户将匿名输入他们的 ID,我需要将 ID 与他们的信息相匹配,然后将信息带回以供他们验证。

编辑 2

使用 Br 提供的链接。Sayan,我已经使用上面的电子表格创建了这个脚本测试其中的一部分。这里的网络应用程序吐出:未定义。它应该吐出“学生3”仍然不确定我做错了什么。

0 投票
1 回答
446 浏览

google-chrome-extension - Google Doc onopen 为特定用户显示菜单

是否可以使用 Google Apps 脚本

A. 是否只为特定用户显示自定义菜单?或 B. 仅允许特定用户单击菜单项。

我想使用 get active user 命令并尝试将其从另一个 Google 表格中的特定单元格中弹出,我们的秘书在其中维护了大约 5 个管理员。从工作表中提取电子邮件地址,使其成为名为 principal 或 directorOfTechnology 等的变量,并具有某种 if 语句,以便菜单仅显示该人或 if 语句,以便如果他们是正确的人,它会做什么我有,如果没有,他们会收到消息或说您无法单击此按钮等。

如果这是可能的,我将如何编写这段代码?我仍处于学习阶段,不确定如何开始以及是否可能。

0 投票
1 回答
324 浏览

google-apps-script - Google Drive - 通过用户电子邮件获取 rootFolder ID

我们希望将我们学校材料的副本推送到学生自己的“我的云端硬盘”文件夹中。

下面的脚本运行良好,并且很好地将源文件夹的链接放在学生“与我共享”文件夹中。

但是,这些是大约 8 或 9 岁的年轻学生,我们希望我们制作的项目文件夹最终位于他们的“我的驱动器”位置,而无需从学生方面进一步点击。

我知道我们可以使用addFolder()将文件夹放入学生的 Google Drive 根文件夹中。

但是,这意味着知道学生的根文件夹 ID。

有谁知道我如何通过遍历他们的电子邮件地址来获取学生的根文件夹 ID?

谷歌关于如何获取当前用户 rood 文件夹的文档,但我想获取班级中所有学生的根文件夹 ID。

还是我以错误的方式处理这个问题?

0 投票
2 回答
2692 浏览

google-apps-script - 在 Google 中为授权 API 客户端设置客户端名称

我开发了一些连接到我们的谷歌域的小应用程序。但是,每次我必须授权其中一个应用程序时,我都需要使用它的“客户端名称”添加不同的授权 API 客户端。有没有办法将此客户名称设置为我选择的名称?稍后可以更轻松地快速了解哪些应用程序可以从列表中删除。

谢谢!

...编辑...

我可能不够具体,这是我想要更改值的图像。这是来自谷歌应用程序的谷歌管理控制台安全 -> 显示更多 -> 高级设置 -> 管理 API 客户端访问

客户名称字段

对于我迄今为止开发的所有应用程序,我的客户端名称(我从谷歌开发者控制台中提取)要么是看似随机的仅数字字符串,要么是随机的数字和字母字符串,后跟“apps.googleusercontent.com”。然而,我已经看到其他应用程序以某种方式列出了他们的公司名称。我怎样才能像在其他应用程序中看到的那样选择自己的客户名称?

0 投票
2 回答
516 浏览

google-apps-script - 使用 OAuth2 授权非管理员用户使用 AdminDirectory

我想授权非管理员用户使用 AdminDirectory(谷歌应用管理 SDK 的一部分)作为谷歌应用脚​​本的一部分。基本上我希望用户根据他们的用户名获取其他用户的全名列表。

我知道我可以使用 OAuth2 执行此操作,但我找不到 Admin SDK-AdminDirectory 的 Google 应用脚本代码示例。

我创建了一个服务帐户,并且拥有并拥有我的客户 ID 和密钥 ID。接下来我需要做什么?我找到了这个https://developers.google.com/api-client-library/javascript/features/authentication但我不知道如何获得授权工作。

这是我的脚本的最小版本:(它将为授权用户生成用户 edutett0707@edu.kristinehamn.se 的全名)

0 投票
1 回答
473 浏览

google-apps-script - Google Drive (GSuite) 中文件夹和文件的不同角色

我有一个带有用户组的 G Suite,每个组都是组织中的一个部门。我现在获得了以下权限:

  • 每个部门都可以编辑自己的文件夹
  • 每个部门都可以查看其他部门的文件夹

只是我希望每个可以查看某些内容的部门也可以评论 GDoc 文件和电子表格文件。我知道我可以在每个文件上单独更改它,但是我们的 Drive 有超过 1000 个 GDoc 文件。我不会每次都通过每个旧(和新)文件来更改此权限。

我试图用脚本解决这个问题并尝试了

  • file.addCommenter(电子邮件);-> 无效参数:permission.value
  • file.setSharing(DriveApp.Access.PRIVATE, DriveApp.Permission.COMMENT) -> 没有错误,但也没有结果。

有人知道解决方案吗?

0 投票
1 回答
1003 浏览

google-forms - 用于课程选择的 Google 表单中的自定义进度条

由于种种原因,我的学校想尝试使用谷歌表格让学生注册下一学年的课程。我们有我们想要尝试和使用的格式,但学生应该只能选择一定数量的课程(所有这些都适合他们的日程安排)。我想知道是否有一种方法可以为学生创建一个自定义进度条,当学生填写他们的日程表时,该进度条会填充(可能是在旁边)块。

即使我必须制作一个中间有表格和侧面栏的网站,我也想知道以前是否有人做过任何事情。我的第一个想法是一个更新图表,链接到特定的学生,但我不知道如何在不提交表格的情况下让它工作。

谢谢!