通过 Zapier 的 Phabricator 任务和分配

Posted

技术标签:

【中文标题】通过 Zapier 的 Phabricator 任务和分配【英文标题】:Phabricator tasks and assignments via Zapier 【发布时间】:2021-02-11 22:01:04 【问题描述】:

这似乎非常小众,但我有一个工作系统,我想简单地添加。

目前,我编写的游戏中有一个命令称为简单的 Zapier 网址。可以说,https://zapier.com/xxxxxxxx?name=me&message=hello%20there&location=location

当被调用时,它会将姓名、位置和消息发布到不和谐频道。我想扩展一下。

理想情况下,我需要弄清楚 Zapier 如何在 Phabricator 清单中创建一个名为“Bug 231”的新任务,其上下文包括名称、位置和消息,并将其放在项目工作板上一个特定的类别并将用户分配给它。

我觉得这是可能的,但无法弄清楚正确的语法。

【问题讨论】:

【参考方案1】:

Zapier 本身可以通过“多步 zaps”执行开箱即用的额外操作。您可以在 Discord 步骤之后添加一个操作来创建 Phabricator 任务。

但是,Zapier 上似乎没有 Phabricator 集成。如果 Phabricator 有一个允许创建任务的 Web API,您可以通过以下任一方式将其插入 Zapier:

发出请求的“Webhooks by Zapier”步骤 如果需要额外处理,请执行“Zapier 代码”步骤 如果您预计需要比“创建任务”更多的操作,则可以使用带有 Phabricator 的自定义 Zapier 集成

【讨论】:

例如,我将如何向 phabricator 发送 json 有效负载? 上述所有三个选项都可以让您将 JSON 发送到 Phabricator。它们的排名从最简单 -> 最复杂,所以我会尝试“Zapier 的 Webhooks”开始 - 有一个键/值条目的位置。 知道了,谢谢!我不得不在这种情况下使用 python,因为 Phabricator 对我来说并不容易。 :)【参考方案2】:

对于那些寻求类似的人,我找到了一种对我有用的方法:

1- 我使用 https://www.freeformatter.com/json-formatter.html#ad-output 来帮助我解决 Phabricator 的有趣要求。

2- 我进入了管道/maniphest.edit 并在第一个字段中使用了这个 JSON 来获得我想要的 curl 输出:["type":"title", "value":"test title", "type":"description", "value":"这是描述。","type":"projects.set", "value":["PHID-PROJ-4dufje6oug3liomahstg"]]

    我把它给我的卷曲放在这里:https://curl.trillworks.com 把它变成 python。

    我把 python 放到 Zapier python 模块中,用 Zapier 提供的变量替换了几个地方的文本。

【讨论】:

以上是关于通过 Zapier 的 Phabricator 任务和分配的主要内容,如果未能解决你的问题,请参考以下文章

通过 API 修改数据

phabricator + gitlab 强制 code review

Phabricator 不发送电子邮件

如何将 AWS RDS 安全组中的 Zapier IP 地址列入白名单

通过 Zapier 的 API POST

“JSON 中的意外令牌”(通过 Zapier 连接的 Firestore)