[关闭]
@hitchhacker 2018-06-13T21:45:35.000000Z 字数 2505 阅读 1219

3.4 配置最小可用版本的MiXin机器人

点击File>Open用 Pycharm 打开mixin_mini文件夹,这里面是一个最小可用版本的用Python写的Mixin机器人。
mixin_mini.png-155.9kB

3.4.1 修改配置文件

打开mixin_config.py。这是机器人的配置文件,保存着机器人所需的参数信息。
这些参数分成两个部分,无需修改的和需要修改的。
无需修改的参数如下:

  1. #=====无需修改的信息==========
  2. eth_asset_id="43d61dcd-e413-450d-80b8-101d5e903357"
  3. sc_asset_id="990c4c29-57e9-48f6-9819-7d986ea44985"
  4. prs_asset_id = "3edb734c-6d6f-32ff-ab03-4eb43640c758"
  5. cnb_asset_id = "965e5c6e-434c-3fa9-b780-c50f43cd955c"
  6. #=========end ======-==========

是各种数字货币在Mixin中的uuid。
需要修改的参数是这些:

  1. #=====需要修改的信息=========
  2. mixin_client_id = ""
  3. mixin_client_secret = ""
  4. mixin_pay_pin = ""
  5. mixin_pay_sessionid = ""
  6. mixin_pin_token=""
  7. private_key = ""
  8. #=============================

再次打开这个网址:

https://developers.mixin.one/dashboard

按照以下方式把内容填充进去即可:
image.png-97.5kB

3.4.2 Hello,World!

然后我们就能运行机器人啦!右击mixin_robot.py,点击Run 'mixin_robot'。

run_robot.png-554.3kB

如果下面的窗口里出现这样的鬼画符,说明你的机器人运转正常!

ghost.png-115.2kB

然后记下dashboard中的这串机器人的身份id:

info.png-37.5kB

在mixin messanger中用上图的id添加联系人:

image.png-103.3kB

对它说「hello」,如果它回复「world!」,那说明你的程序完全跑通啦,恭喜你,迈出了重要的一步!

image.png-319.8kB

3.4.3 改改参数

任何编程都是从改改参数开始的,所以,我们来修改一下参数,让这个机器人更「个性化」一点吧!

  1. #=====功能:说hello,回复world========
  2. if realData == "hello":
  3. btn = "world!".encode('utf-8')
  4. params = {"conversation_id": data['conversation_id'], "recipient_id": data['user_id'],
  5. "message_id": str(uuid.uuid4()), "category": "PLAIN_TEXT",
  6. "data": base64.b64encode(btn).decode('utf-8')}
  7. writeMessage(ws, "CREATE_MESSAGE", params)

我们首先修改的是realData。realData 变量表示的是在Mixin Messanger 里用户对机器人说了什么。所以我们可以把realData == "hello" 这个逻辑判断中的"hello"修改成我们想让机器人回应的内容,例如 realData == "早上好"。

然后btn中那个"world"就是我们要让机器人回应什么啦,我们同样可以修改为自己想要的内容。

如果你有一定Python基础,可以尝试将AIML等聊天库接入进来,那么你的机器人就变成聊天机器人啦!

3.5 了解网络协议

本节主要介绍MiXin中用到的一些网络协议及相关知识。过程中会用到curl(command line URL viewer),Linux/Unix下面的的一个命令行工具,主要功能之一是发起网络请求并接收返回结果。
它支持HTTP、HTTPS、WebSocket等众多协议。
在我们开发的过程中,Curl是API端口调试必不可少的工具。
MIXIN提供的开发接口也非常简单易用,其中主要用到了HTTP(S)协议的GET方法、 POST方法以及WebSocket协议。所以接下来我们重点对MIXIN中用到的协议进行讲解。

3.5.1 HTTP(S)协议

HTTP(S): Hypertext Transfer Protocol (Secure), 是(安全)超文本传输协议。HTTP和HTTPS的主要区别是HTTPS传输数据时是加密的,而HTTP不加密。下面我们都以HTTP为例来进行讲解。
HTTP协议定义了客户端与服务器之间的通信内容及交互方式。客户端与服务器之间以请求,响应的方式进行交互,即由客户端向服务器端发出请求消息,服务器收到请求消息后执行客户请求并返回请求数据。
请求的消息包含两部分:请求什么资源, 进行什么操作

(1)请求什么资源。即具体访问服务器的哪个文件或者程序。这个是通过URL(统一资源定位符,通俗点就是网址)指定的,其格式如下:
http: + // + Web服务器名 + / + 访问文件目录 + / + 文件名(可选)
http: 表示以 http 协议访问Web服务器,// 后面是服务器域名,域名后面是要访问资源在服务器的具体路径,有时候后面会带上文件名,例如「abc.html」,但这个文件名并非总是必要的。
举个例子说明:
http://api.mixin.one/network/snapshots/8f5b244e-cf86-4374-8eaa-c551fd70cd83 这串URL 表示通过http协议,访问 api.mixin.one 服务器上面的路径"network/snapshots/8f5b244e-cf86-4374-8eaa-c551fd70cd83"。
* 进行什么操作,即希望服务器完成什么样的操作。HTTP协议定义了很多方法用来向服务器发出请求。其中最常用的是GET和POST 两种方法。
* GET, 返回URL指定的信息,如果URL指定的是具体文件,则返回该文件内容,如果指定的是某个程序,则返回改程序的执行结果。

3.6 升级Mixin机器人

3.7 玩转Mixin Messanger各种端口

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注