将 Gmail 邮件转换为文件并通过网络服务发送

Convert Gmail mail into file and send over a webservice

是否可以创建一个可以将电子邮件内容发送到网络服务的插件?我看到很多关于附加组件与外部网络服务交互的文档,并且已经能够遵循一个简单的演示,但是我找不到太多关于与电子邮件本身交互的信息。

我在 Outlook 中有一个插件可以抓取电子邮件并将其发送到网络服务,但我想以某种方式在 Gmail 中复制它。

接下来,我还想知道是否可以根据用户使用不同的网络服务。例如,如果我要为同事部署相同的附加组件,但他们需要将电子邮件发送到不同的服务。有没有配置文件控制这个?

最后,我还对 Gmail 加载项如何存储个性化信息感兴趣,因为我觉得这有助于解决问题。例如。任务插件如何为当前登录的用户获取正确的任务以及它们的存储位置。

我愿意接受任何其他解决此问题的方法。

正在与 Web 服务通信

如果可以通过 HTTP 请求访问,您可以使用 UrlFetchApp class 连接到任何目标 Web 服务。如果您需要为不同的用户访问不同的 Web 服务,您可以通过存储 "user:url" 属性(见下文)或根据有效用户有条件地更改 URL 来实现。

确定用户

您可以通过对结果用户使用 Session class 方法 getEffectiveUser()getEmail() 来确定附加组件 运行 在谁的授权下.

存储个性化信息

至于存储和获取个性化信息,您可以使用 PropertiesService class。由于您想存储与最终用户相关的信息,因此您需要获得一个 Properties class 实例,该实例可以通过 getUserProperties() 方法访问特定于用户的属性。

有用链接

  1. Gmail 插件 reference;
  2. PropertiesService class reference;
  3. Guide PropertiesService 用法;
  4. UrlFetchApp class reference;