我在参与极狐GitLab创作营 JIHULAB 101活动的时候,发现极狐GitLab官方启用了一个机器人,会在issue哪里进行服务,我就突发奇想,很多地方都有自动回复的客服机器人,那在极狐GitLab能不能造个机器人玩?
我发现极狐GitLab官方的机器人并不能做到客服回复的水平:
我觉得我可以造一个玩玩,所以,出现了如下的画风:
首先,本文只讨论在极狐GitLab实现机器人的思路,并不包含NLP自然语言处理和人工智能部分,这部分可以有现成的云服务进行集成,我就不多说了。
一个用户被@以后有没有什么事件或接口呢?找遍API文档,并没有专门的API接口来提供,那我就开始想办法了,怎么才能知道有人@我了呢?
当有人@我以后在我的待办列表里会出现一条数据,这个待办列表是有API接口的,接口地址是:https://jihulab.com/api/v4/todos?state=pending&per_page=100
然后获得待办列表,里面有项目ID、issue的ID、类型等信息,这样我就知道有人@我了,并且知道项目ID、issue的ID、内容,这就好办了。
然后去发生事件的ISSUE接口:https://jihulab.com/api/v4/projects/:id/issues/:issue_iid,就可以进行回复和查看详情了。
回复完以后在待办事件里标记为已完成:https://jihulab.com/api/v4/todos/:id/mark_as_done,这样就算处理完了。
在极狐GitLab拥有自己的客服机器人不是一件很酷的事情吗?
商业用途请联系作者获得授权。
版权声明:本文为博主「任霏」原创文章,遵循 CC BY-NC-SA 4.0 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://www.renfei.net/posts/1003529
本站有缓存策略,时间约2小时后能看到您的评论。本站使用自动审核机制,如果您的内容包含广告/谩骂/恐怖/暴力/涉政等不和谐内容将无法展示!
本站有缓存策略,时间约2小时后能看到您的评论。本站使用自动审核机制,如果您的内容包含广告/谩骂/恐怖/暴力/涉政等不和谐内容将无法展示!