Redmine Work Wechat & Dingtalk是一个redmine的插件,集成了企业微信和钉钉的消息推送,不过因为钉钉的第三方登录和消息推送流程已经作了较大修改,最新的插件版本已经是两年前了,所以已经不能用了,联系了作者,作者表示没有时间再处理了,没办法只好自己上了,经过不懈的努力终于成功了,现在把它分享出来,目前支持:
1.钉钉扫码登录
2.钉钉app内免登录
3.工作消息推送
说明:
钉钉扫码登录并授权登录,此时登录界面会判断是否有用户绑定了该钉钉的ID,如果存在,则自动登录,无需输入用户名和密码,如没有绑定,此时可以输入用户名和密码登录,成功登陆后自动绑定。
钉钉app内免登录需要登录redmine,在我的账号中配置钉钉UserID,管理员登录钉钉管理后台,在通讯录中可以查看UserID。
工作消息推送消息主体格式:"跟踪 #问题ID: 问题名称 状态 完成百分比% 已被XXX创建
下面是钉钉中看到的消息示例
其他配置按照要求填写,两项都要求填写。
1.创建企业内部开发--H5微应用,获取相关参数,CorpId在钉钉开放平台的首页
2.创建移动应用--登录,获取相关参数
插件的安装很简单:
1、下载源码压缩包,展开到redmine的plugins目录下,保证有redmine_work_wechat目录,直接git clone 到plugins目录也可以。
2、安装必要的gem类库,如果是生产环境,则建议带--without参数:
bundle install --without development test
3、执行数据迁移:
rake redmine:plugins:migrate NAME=redmine_work_wechat RAILS_ENV=production
4、重启redmine,进入管理菜单的企业微信与钉钉配置即可。
注意:
1.不支持windows平台下Bitnami Redmine
2.钉钉唯一id获取比较麻烦,所以最好是打开redmine登录页面,钉钉扫码,然后再输入账号密码会自动绑定,后面就可以直接扫描登录了
3.注意维护好H5微应用中的服务器出口IP,这里需要一个公网IP,支持一位的通配符,我们公司没有固定的公网IP,每次重启路由器会获取一个新的IP,但是基本上只改最后一位,所以就使用xxx.xxx.xxx.
其他可以参考原插件的说明。
重点强调一下,钉钉登录应用回调地址一定是http://xxx.com/login,之前和其他人碰到过没有加/login,怎么不都成功的问题,要注意了。
另外也在考虑对接钉钉的群机器人,不过最近钉钉的群机器人在维护,无法创建机器人,所有后面有时间了再做吧。
钉钉可用的最新插件github地址是 redmine_work_wechat
后续会跟原作者商量下,把这个版本的合并过去,如果遇到任何的问题,欢迎提问。