配置禅道

集成webhook 分享链接 /book/zentaopms/webhook-288.html?releaseID=17

作者:刚哥 最后编辑:刘振华 于 2024-11-08 16:25:38 浏览量:109231
摘要:禅道集成Webhook:配置和示例。从9.6版本开始,内置了Webhook功能,方便消息集成。在后台设置Webhook,填写名称、地址等信息。示例包括钉钉和企业微信,添加机器人并配置相应的Webhook地址。通过集成,禅道操作和消息可发送到钉钉或企业微信,实现便捷管理。

禅道从9.6版本开始内置了集成webhook功能,可以在禅道内进行操作时发送 JSON 格式的数据到第三方hook地址,方便进行消息集成。下面介绍如何配置该功能。

一、配置

用超级管理员用户登录禅道,进入后台 => 通知 => webhook,点击【添加webhook】新增一个 webhook,如图:

18系列及以上版本在 在  后台--通知设置--Webhook 页面中操作

名称hook 地址为必填项,其余为选填项,hook 地址从第三方获取。

发送方式为同步时,在禅道内进行操作之后立刻发送消息给 hook 地址。发送方式为异步时则需要打开 后台-计划任务 来定时发送。

关联产品关联项目为空时,对禅道内的所有操作都会发送给 hook 地址,否则只发送所选择的产品和项目相关的操作。

参数类型指发送的数据的属性,包括以下内容:


{
    "objectType": "",  //对象类型,可以为空
    "objectID": "",    //对象ID,可以为空
    "product": "",     //关联产品ID,可以为空
    "project": "",     //关联项目ID,可以为空
    "action": "",      //动作,可以为空
    "actor": "",       //操作者,可以为空
    "date": "",        //操作时间,可以为空
    "comment": "",     //备注,可以为空
    "text": ""         //操作内容,包含操作对象的url,必选。
}
触发动作指进行何种操作时,向设定的 hook 地址发送消息,如果全部为空则不会发送任何消息。对禅道二次开发有一定了解的同学可以通过扩展 zentao/module/webhook/config.php 文件来修改此项内容。

二、示例

1、钉钉

在钉钉中通过下图两种方式添加机器人,选择【自定义机器人】,按照提示操作。机器人添加完成后,在禅道中添加一个类型为【钉钉】的webhook,填入从钉钉机器人获取的 webhook 地址,即可发送消息到钉钉。钉钉的消息发送方式默认为同步发送,不能修改。目前钉钉对自定义机器人发送消息的频率做了限制,每分钟最多发送20条消息。




禅道11.7版本,把类型为 钉钉 改为 钉钉群通知机器人。为了适应钉钉群机器人的安全设置,在添加页面增加了密钥。

需要钉钉群主到钉钉里做设置。
下面我们具体介绍如何获取到钉钉群通知机器人的密钥。

1.1 钉钉群主登录钉钉桌面客户端,到群设置里,找到群机器人。




1.2  添加群机器人

点击添加群机器人,选择自定义类型。


目前钉钉群机器人支持自定义关键词、加签和IP地址(段)的安全设置。

禅道集成时,目前仅支持加签的方式,也就是把加签的安全设置的密钥复制,粘贴到禅道后台--通知--webhook的 钉钉群通知机器人类型的webhook的密钥栏里。


已添加的群机器人,在点击群机器人列表右侧的设置按钮,可以进如群机器人详情页面。

这样可以获取到webhook地址和加签安全设置的密钥。



2、企业微信

禅道11.7版本开始,webhook新增了企业微信类型。

可以和企业微信集成,禅道里的操作和消息可以发送到企业微信里。

2.1 添加“企业微信”类型的webhook

到禅道后台--通知--webhook里添加webhook,类型选择“企业微信”。

接下来,我们需要注册登录企业微信,获取webhook的地址。

获取“企业微信”的webhook地址,需要先登录企业微信官网

注册企业微信,请按照要求填写企业基本信息和管理员信息。

注册登录成功后,可以到 我的企业 -- 权限管理 里根据使用需要设置其他的管理员信息。

因为webhook地址的获取,只能企业微信的管理员才能获取和查看到。

手机下载企业微信APP, 企业微信的管理员登录,到企业微信的基本信息里,通过点击“群机器人”,来查看到webhook地址。

把这个webhook地址复制,填写到禅道后台--通知--webhook,添加“企业微信”类型的webhook的地址栏,点击保存即可。

添加成功的“企业微信”类型的webhook。

18系列及以上版本在 在 后台--通知设置--Webhook 页面中

2.2 “企业微信”类型webhook的使用

可以根据禅道后台--通知--设置里,webhook通知的设置,集成了企业微信后,可以在企业微信里查看到禅道里相关的操作信息。

18系列及以上版本在 在 后台--通知设置--设置 页面中

登录企业微信时,会收到禅道里设置动作的消息通知。

可以查看到详细的操作信息。


评论列表
🍻
温柔的毛豆 2024-08-29 10:17:09 回复
怎么实现钉钉那边新增一个BUG或者审批时,禅道中自动同步出一个BUG或审批呢。我看文档中都是反过来的。
回复
目前不支持,需要二次开发在钉钉中调用禅道的对应接口实现。
📷
温柔的麻辣香锅 2024-07-30 17:34:35 回复
请问,Webhook,绑定用户,点击操作之后,下拉框无内容。是什么原因
回复
可以先看下日志,有特殊的提示吗?查看日志的方式:zentao/config/my.php 中debug的值改成true 重新操作一下 看日志文件 zentao/tmp/log/php、saas开头的今天的文件有什么报错。注:不要找sql开头的文件。
另外,也可以联系官网联系我们的客户经理QQ,邀请加入技术交流群,我们一起看下这个问题。
回复
Trying to get property 'expires_in' of non-object in /opt/zbox/app/zentao/lib/wechatapi/wechatapi.class.php on line 44 when visiting webhook-bind-7
回复
saas开头的日志有什么信息吗?另外,方便的话可以添加下页面上的QQ,邀请进群后下截图咨询下具体问题
📒
紧张的课本 2024-04-22 10:57:57 回复

您好!我配置webhook之后,在禅道进行指派的时候,有一个问题:就是指派时,点【保存】按钮后,指派框一直不消失,一直是卡着不动。【保存】按钮是变灰色了,实际上也指派成功了,并且钉钉机器人群也能收到消息。
如果取消通知,那么指派时,就不存在卡住的问题。
回复
看看webhook 功能的日志信息,如果可以的话消息通知改为异步方式。
如果没有异步的话,升级版本到18.12版本看看
🍰
禅道0050 2024-03-08 15:38:05 回复
Webhook配置了企业微信机器人,机器人通知里只有某某指派了、某某确认了,后面跟的内容只有标题。如何让机器人可以通知全部内容或者自定义内容,至少谁指派给谁需要在机器通知里提示出来
回复
您好,目前不支持自定义通知内容,这个需要二次开发修改代码。您也可以配置企业微信应用消息通知,这个是单独通知给被指派的人的。https://www.zentao.net/book/zentaopms/996.html
🎪
禅道0041 2024-02-29 17:32:47 回复
配置了Webhook,项目和产品的状态更新都有消息;但是更新执行就不会触发Webhook,我该怎么办?企业版,咨询过线下客服也没有解决办法。
回复
目前执行是还不支持webhook进行通知的,这里我们有记录过需求,需要产品经理评审通过后排期进行开发的。
如果咱们这个需求比较紧急的话可以联系商务同事进行定制开发实现下呢。
🎠
阿漫 2024-02-08 10:11:28 回复
企微群机器人,如果添加定时任务(如日志填报提醒),输入webhook后如何设置呢?
回复
目前企微通知暂时不支持日志填报提醒,可以在后台-通知设置-设置中查看webhook支持发信的动作。
禅道初学者 2022-12-05 11:39:45 回复
请问设置Webhook后,设置了关联的产品,但没设置关联的迭代,请问是会该产品下的所有迭代的动作变化都会消息提醒,还是禅道里面所有迭代的动作变化都会提醒,谢谢
回复
这里的逻辑是单独计算的,限制了产品,那么就只有对应的产品会进行通知,而执行还是禅道系统中所有的执行:)
Jack 2022-11-23 16:43:59 回复
为什么webhook的配置入口找不到了?之前配置过。后来看不到了。只能看到邮件和浏览器
回复
使用admin 账号,排除权限问题看下,如果还是不可见的话,可以添加官网的商务qq,我们截图沟通看下
2022-11-16 16:07:04 回复
您好,企业微信设置了webhook,消息通知设置了bug创建解决关闭,一个群里不提示,一个群提示。
回复
您好,检查下是否webhook设置了关联产品和关联执行。如果有设置,只有设置的产品和执行才会触发通知。
target 2022-10-31 10:23:01 回复
企业微信群消息通知怎么@某人?
回复
目前这块需要先调整代码实现了,我们也反馈下这个需求,不过短期可能安排不上计划。
刘金莲
高级客户经理
17685742391
3784249187
统一服务热线 4006-8899-23
我要提问提问有任何问题,您都可以在这里提问。 问题反馈反馈点击这里,让我们聆听您的建议与反馈。