学习内容简介
本教程主要实现:
下载契约SDK
熟悉契约SDK基本结构
编写基础功能收发消息
编译和发布插件
详细内容:
契约群发、私聊 功能的使用
学会发送: 文本、图片、语音、卡片
说明:
本课程源代码支持契约单Q版和多Q版框架
联系我们
如果你有机器人开发问题或有需求,可与我们进行交流
QQ机器人开发交流群
声明
本教程非契约官方教程,为作者学习易语言过程的知识总结,将主要内容整理、汇总后,形成本教程。
致力于进行技术交流,帮助新人快速入门,少走弯路。
请在遵守中华人民共和国法律、腾讯相关规定和契约框架相关说明下进行使用
如您使用本技术,进行包括但不限于如下行为,软件作者并不知情,不承担任何法律风险
1.违法行为
2.违法腾讯规定
3.违法契约框架规定
教程内容
下载插件SDK
首先需要下载契约官方提供的易语言SDK,
易语言SDK
解压文件后文件如下:
QYPluginSDK 文件是SDK源代码
QYPluginSDK.v2018.20190617 是编译好的sdk
com.contract.testapp(v2018.20190617) 是Demo源代码,可以在此文件上进行修改
SDK介绍
QYPluginSDK.e文件详情
使用易语言编译器 打开com.contract.testapp(v2018.20190617).e 时需要选择QYPluginSDK.v2018.20190617文件
打开后看到左侧是契约SDK提供的API信息,所有的代码都从这里开始编写的
demo文件是一个完整文件,可以直接编译生成dll插件,如下图所示
将文件放到plugin下,运行契约程序。
登录QQ后,点击 载入插件,查看到插件的基本信息
点击菜单 查看更多的功能
开发功能
修改插件配置信息
修改 常量表 -> 应用信息 鼠标点击 即可进行修改
群消息监控
别人在QQ群里发 良心,机器人回答 良心开发机器人
_eventGroupMsg 进行开发,传递参数如下所示
编写代码如下,QY是全局变量,输入点 可以看到被选中的函数,根据函数名字,基本上可以看出函数功能,每个函数 根据参数即可知道使用方法,传递对应参数到函数中,需要看到对应的参数类型,有长整数型,文本型,代码如下:
好友消息监控
好友给机器人发 你好,机器人回复 良心机器人给你打招呼
_eventPrivateMsg 进行开发,传递参数如下所示:
与群发消息函数相同,代码如下:
别人加机器人好友时机器人同意
别人加机器人好友时,自动同意
_eventRequest_AddFriend 具体代码如下:
QY.置处理好友添加请求 (QQID, responseFlag, #请求_通过, “测试通过”)
别人拉机器人入群自动同意
_eventRequest_AddGroup 函数
具体代码样例文件都有 ,我们需要将注释去掉 就行,具体如下:
有人退群时 发提示消息
_eventSystem_GroupMemberDecrease 函数
有人退群时发消息,代码如下:
有人加群时,私聊新人
_eventSystem_GroupMemberIncrease 函数
有人加群时,私聊新人 代码如下:
群消息撤回
契约机器人支持撤回群成员的消息(机器人需要是管理员)
并且给出了样例代码,将其整合 我们做这样的一个功能
群成员发送 良心是坏蛋 则撤回消息,代码如下:
_eventGroupMsg 中加入
.版本 2
.如果真 (msg = “良心是坏蛋”) ' 匹配到关键词 则启动撤回代码
.如果真 (fromInfo ≠ “”)
u.写入 (fromInfo)
MsgInfo = u.读取 (“MsgInfo”)
QY.置消息撤回 (QQID, MsgInfo)
.如果真结束
.如果真结束
契约机器人发送图片功能
契约机器人发送图片非常简单,将本地图片调用
LQ码_本地图片()函数即可
具体功能如下:
在群里发 良心联系方式 将返回一张图片(在源代码中已经有test_pic.png)
_eventGroupMsg 函数 添加代码
.版本 2
.如果真 (msg = “良心联系方式”)
name = 应用目录 + “test_pic.png”
.如果真 (写到文件 (name, 到字节集 (网页_访问S (“http://shop.720life.cn/static/mypic/13/17.png”))))
QY.发送群消息 (QQID, fromGroup, QY.LQ码_本地图片 (name))
同样道理,发送网络图片,更换函数即可,代码如下 发送良心网络 4个字 将返回一个网络图片
.版本 2
.如果真 (msg = “良心网络”)
QY.发送群消息 (QQID, fromGroup, QY.LQ码_网络图片 (“http://shop.720life.cn/static/mypic/13/17.png”))
契约机器人发语音
发语音更多时候是为了防止消息被屏蔽,同时也可以让群成员看起来 正像是一个真人,所以备受喜爱的一个功能 ,实现上也非常的方便
样例代码:发送语音 4个字 则发送一条语音 详细代码如下:
.版本 2
.如果真 (msg = “发送语音”)
name = 应用目录 + “test_mp3.mp3”
.如果真 (写到文件 (name, 到字节集 (网页_访问S (“http://shop.720life.cn/static/mypic/13/17.mp3”))))
QY.发送群消息 (QQID, fromGroup, QY.LQ码_本地语音 (name))
契约机器人发卡片
契约机器人支持发送xml和json格式的代码,简称卡片功能,主要依赖于 LQ码_特殊消息 函数
实现简单的功能,发送我的卡片,机器人返回一个卡片代码
.版本 2
.如果真 (msg = “发送我的卡片”)
name = 网页_访问S (“http://shop.720life.cn/static/mypic/13/17.txt”) ' 获得json代码
QY.发送群消息 (QQID, fromGroup, QY.LQ码_特殊消息 (#特殊消息_轻应用消息, name))
实际测试
编译、加载插件,进行测试
私聊机器人 你好:
群内消息测试:
[图片上传失败...(image-bf5685-1594304196778)]