大家好!我是船长团队的AJ阿军🙏 由于上篇文章的篇幅原因,使得需要分两次讲解,看这篇前建议先看上一篇文章: 请点击: 扣子(coze)又又又更新啦! 舰长带你用扣子搭建自媒体人的微信小程序,快来瞧瞧 开始的Coze更新公告以及主题,本文章就不继续重复说明,那直接开始我们的(第四点变量聚合,第五点最新触发器的使用) 一.应用支持搭建小程序、H5 二.应用支持发布小程序、社交渠道、ChatSDK 三.工作流新增-对话流、会话管理上线 四.工作流新增节点-变量聚合 五.工作流支持触发器 四.工作流新增节点-变量聚合 因为要给大家解释“变量聚合”这个新节点的用法和作用,所以我们得重新改造一下上述已经搭建好的对话流。 我们可以让这个智能新闻助手更全面一些,分别再加上知乎热榜、哔哩哔哩热榜两个插件,让这个应用能根据用户的新闻类型喜好需求,查询次最靠前的前5条资讯。 1.在开始节点后添加一个意图识别节点,用来识别用户对话时,是想要知乎、哔哩哔哩还是头条新闻的热榜内容。 2.然在意图识别后面再加上知乎、哔哩哔哩插件节点,分别连接到对应的意图识别分支上 3.之后分别对各自插件产生的新闻资讯内容进行文本字符处理,分别添加对应的文本处理节点,用字符串拼接的方法,将资讯标题内容的前5条拼接起来,供后面的词语插件生成相应的新闻词云。 4.然后再接入相同的文本处理节点,用来展示对应资讯前5条的内容的标题和连接地址URL,也是通过字符串拼接的方法加上 5.最后连接上这里的重点节点“变量聚合”节点,它的主要作用是将多个分支节点产生的数据进行整合判断输出(只输出分支中有数据的内容)。 这个节点对不会用代码的朋友来说是非常友好的,以前都是靠代码节点来进行整合处理的,有了它你就不再需要代码节点了! 而在本案例中,变量聚合节点的作用是将处理词语拼接的字符串分支内容和处理标题和连接的字符串分支内容进行了分组聚合输出。 简单的讲就是用户如果查询的是知乎的新闻,通过这个变量聚合节点,就可以在第一组返回的内容中拿到知乎前5条标题拼接的词云字符串,以及第二组返回的内容中拿到知乎前5条内容标题和url拼接的字符串。 6.最后把变量聚合节点输出的第一组内容给到词语插件,生成新闻词语图片,将第二组内容给到结束节点,同时将词云生成后到链接绑定到结束节点。这样整个会话流就搭建完毕了 五.工作流支持触发器 应用到触发器就是一个定时器,目前不支持事件触发!跟bot里面的触发器功能大体一样的!目前应用分为“预设触发器”和“用户触发器”两类,其实主要区别就是一个只能是开发者提前固定设计好的定时任务。 而另一个则是不通用户都可以在工作流中设置自己的定时任务,自由度更高(但是相对也要复杂一些),由于篇幅原因,就先落地实践相对复杂的“用户触发器”,“预设触发器”大家去官网自行查看! 搭建用户自定义触发器流程:
用户触发器的设置工作流: 这里需要创建新的工作流,而不是对话流 获取用户uuid需要提前设置好变量 主要是4个节点: 开始节点(接收用户设置的新闻类型变量) 变量节点(获取当前用户的uuid) 设置定时触发器节点(设置用户要触发的工作流或者会话流以及对应的入参) 结束节点(返回成果后的消息) 变量获取用户的uuid节点: 其中设置定时触发器节点的配置如下: 包括用户的uuid 触发器的名称 时区设置 绑定的工作流等内容 用户触发器的查询工作流: 主要也是4个节点: 开始节点(不做任何处理) 变量节点(获取当前用户的uuid) 查询定时触发器节点(根据用户uuid查询已经设置了的触发器) 结束节点(返回查询出来的消息列表数组,如果没设置则返回null) 用户触发器的删除工作流: 主要是5个节点:开始节点(输入用户需要删除的任务ID) 变量节点(获取当前用户的uuid) 查询定时触发器节点(根据用户uuid查询已经设置了的触发器) 删除定时触发器节点(根据用户的uuid和任务ID删除对应的触发器) 结束节点(返回删除结果信息) 以上就是《AJ阿军新闻助手》整个应用的业务逻辑面板涉及到的会话流、工作流 接下来就是把UI界面再完善一下就可以了! 新闻助手UI界面设计搭建完善: 总体分为三个页面(主界面、会话页面、任务设置页面) 主界面: 1.UI用到的是2个按钮组件、一个图片组件、一个容器组件进行布局的 2.在事件交互里面设置了2个按钮对应页面的跳转功能 会话界面: 1.主要用到AI对话组件(其它组件不能和AI对话组件共存,所以目前UI界面不能调整,而且在小程序中只能是企业认证的才能使用) 2.在属性设置里面绑定好自己开发的会话流、设置好头像名称、开场白及预设内容即可 任务设置界面: 1.主要用到容器、文本、单行输入、按钮组件进行布局 2.在属性设置里: 设置按钮点击事件绑定了设置任务工作流,用来触发设置定时任务 在查询任务按钮点击事件上绑定了查询任务的工作流,用来查询设置了哪些定时任务 最后在删除任务按钮点击事件上绑定了删除任务工作流,用来根据具体任务ID删除对应的定时任务的 这样整个应用的界面和交互逻辑都搭建完毕啦! 这次除了发布小程序之外的新功能点,其它的基本都覆盖解析了一遍,大家学“费”了吗? [ 船长团队自研的'词云插件'和资料舰长都已经打包好,评论“需要 |
|