客户端消息回复方案
大约 2 分钟
客户端消息回复方案
当Client产生一条消息后或产生一个交互,Discord GateWay将拦截到该消息或者交互,并将该消息通知到后端服务器
当后端接收到一个交互时
- 交互为command时,后端查询缓存的command,如果有该command,则执行该command,没有则丢弃该消息
- 交互为其他时,将根据交互内容进行reply。
当后端收到消息时
将根据消息类型判断
如果是机器人产生的消息,丢弃
如果是@机器人的,将进行强制回复,将进行以下逻辑
判断是否包含头级关键词,如果不包含,将调用seeDaoAi接口回复
包含头级关键词则进行二级关键词判断,如果不包含二级关键词,将调用seeDaoAi接口回复
包含二级关键词,则进行三级关键词判断,如果不包含三级关键词,将调用seeDaoAi接口回复
包含三级关键词,则根据关键词寻找数据库内容进行结果返回。
如果是正常的消息,则进行以下的逻辑
判断是否为问句,如果不是问句,则不进行回复
判断是否包含头级关键词,如果不包含,则不进行回复
判断是否包含二级关键词,如果不包含,则不进行回复
判断是否包含三级关键词,如果不包含,则调用seeDaoAi接口回复
如果包含三级关键是,则数据库定位进行回复。
具体的流程图如下所示: