在 我的编程故事 文章的最后,我说准备尝试写一个 Mixin 机器人的教程,这是第一篇。
在教程正式开始之前,我想先说明几点。
不要把这系列的教程当作一个完整的编程教程。
这个教程是为那些脑子里总是有挥之不去的 #做个Mixin机器人 的想法、热爱折腾、总是跃跃欲试,但又无从下手的朋友准备的。本教程并不假定你有太多的编程知识,但是如果对计算机的一些稍微进阶的操作也不了解的话,可能会遇到比较大的困难。
当然,持久的热情胜过一切。
我并非计算机科班出身,只是半路出家的开发者,基础一点儿都不扎实,确实没能力系统性地将计算机的方方面面掰扯清楚。但是,我是一名工程师,我擅长把事情做出来。我独立做过不少互联网产品,特别是在 Mixin 生态上,已经深耕 2 年多(目前是全职在做 Mixin 的项目),上线了不少受欢迎的机器人。
所以这是一个注重“如何做”的教程,至于背后原理性的知识,相对于“把你脑子里的那个产品做出来”这件事情来说,并不着急,做多了自然就能理解了。在 我的编程故事 中我也说过,对于新手来说,学习编程其实主要就是学习使用一款制作软件的软件。一开始的时候,不要尝试去理解背后的每一个原理,先把东西做出来更重要。
在教程中, 我会尽可能把重要的步骤写清楚。但是每个人的计算机使用环境非常不一样,同样的操作步骤,极有可能出现千奇百怪的结果。如果不幸得到怪异的结果,don’t panic,不要崩溃,这是常有的事情。
碰到这种情况的时候,可以留言寻求帮助,当然更好的是善用搜索引擎。问题一定会得到解决。一旦问题解决了,最好是把问题的解决办法记录下来,发表出来,或许可以拯救另一位濒临崩溃的朋友。
教程是一系列的文章组成,每一篇文章我都会打上相同的 tag : #做个Mixin机器人 ,如果你对本教程有任何补充,或者要发表任何与本教程相关的文章,记得也打上这个 tag,好让我们找到彼此。
本系列的其他文章:
- Mixin 机器人开发的基本知识
- 做个 Mixin 机器人:flomo 机器人
- 做个 Mixin 机器人:用机器人转账
- 做个 Mixin 机器人:定投机器人
- 做个 Mixin 机器人:在 Swap 上挂单
好了,下面正式开始。
在做之前,我们先了解一下 Mixin 机器人。
Mixin 机器人是 Mixin Messenger 上的一种特殊账号。只要你是 Mixin 用户,肯定见过了不少 Mixin 机器人。
在对话列表页里,如果对方是机器人,在头像旁边会有一个蓝色的小机器人 ICON。打开机器人的对话,在输入框的右边也能看见一个白色的机器人 ICON(经常被戏称“猪鼻子”),点击这个小机器人 ICON 就会打开这个机器人的主页。点击右上角的机器人头像,能打开机器人的详细信息。与其他一般用户不同,机器人的 Mixin ID 都是以 7000 开头的 10 位数。在详情里,还能找到机器人的开发者。
以上这些都是辨别一个 Mixin 账号是否机器人的特征。
在使用中不难总结到,在 Mixin Messenger 中我们跟一个机器人的交互,无非两种
- 通过对话框收发消息、收款转账
- 打开机器人的主页(其实就是一个普通的网页)。
从开发者的角度来重新思考,如果我们要做一个 Mixin 机器人,机器人的主要功能一般都通过这两种交互来完成: 对话框 或者 主页 。
下面我以常见的大群机器人的实现来讲解一下,一个 Mixin 机器人如何利用这两种交互来实现功能。
在 Mixin Messenger 里随处可见一种不限人数的大群,稍微细心一点你就会发现,那其实是一个机器人。
比如 PRSDigg 的中文社区 就是一个大群机器人。假设 3 个用户 A、B 和 C 加入了群聊,我们来看看群聊的背后究竟发生了什么。
A 向机器人发送了消息 X,机器人接收到消息后,会将消息以 A 的名义发给 B 和 C。
同理,B 向机器人发送了消息 Y,机器人会将消息 Y 以 B 的名义发送给 A 和 C。
C 发了一条垃圾广告消息 Z 给机器人,如果机器人有广告拦截功能,识别出了消息 Z 是广告,则不会将消息转发给 A 和 B。
在使用体验上,看似你是在一个群里聊天,其实真正和你对话的只是机器人。因此你的消息将如何被处理,是原文转发,还是修改后转发,或者干脆不转发,都取决于这个机器人的开发者。