傻妞编写js插件的函数说明与简单入门
试了试傻妞的js插件,发现比go写插件舒服太多了,花了点时间整理了下傻妞支持的函数有配合js写法
// [rule: ^demo(.*)$] 使用正则匹配,括号中为期望匹配的值
// [rule: demo ?] 使用问号匹配
// [rule: demo] 直接匹配
// [cron: 36 11,17 * * *] 定时任务
// [admin: true] 是否只允许管理员使用
// [disable: false] 是否禁用
// [priority: 10] 匹配优先级
// [server: 1 ] 如果不指定rule和cron时,设置为非空则指定为一个空服务,否则这个js不会加载
//上下文获取
param(n)//获取rule中期望捕获的第n个字符串,中文需要使用 encodeURI(param(n))
ImType()//聊天来源类型如:qq,wx等,其中fake为特殊调用可能为cron调用
GetUserID()//发送人用户id
GetUsername()//发送人昵称
GetChatID()//群号
GetChatname()//群名
GetContent()//获取接受到的消息
isAdmin()//发送人是否管理员
//系统功能相关
cancall(name)//返回特殊调用的函数
call(name,value)//特殊调用
Debug(log)//打印日志
sleep(millisecond)//休眠
GroupBan(uid, time)//群禁言,需要在群聊才可用
GroupKick(uid, reject)//群踢人,reject为是否拉黑名单,需要在群聊才可用
request({
url:"",//必须
method:"",//get,post,put,delete,可选,默认get
headers:{},//可选
body:"",//可选
dataType:"",//location=>重定向url,json=>尝试解析为对象,否则为body字符串,可选
useproxy:false,//可选
})//发送请求
//存储相关 sillyGirl存储结构为 {mainKey1:{key1:value,key2:value},mainKey2:{key1:value,key2:value}}}
bucketGet(mainKey,key)//取值
bucketSet(mainKey,key,value)//存值
bucketKeys(mainKey)//获取所有key名称
get(key)//同bucketGet("otto",key)
set(key,value)//同bucketSet("otto",key,value)
//消息相关
input(time /*[,str]*/)//等待下一个消息,str不为空时可接受其他群的消息 str可选
breakIn(str)//生成一个新的消息向下传递,可以被所有命令处理(包括当前js,所以需要防止递归)
Continue()//消息继续向下传递,可以被其他命令处理
Delete()//撤回接受到的这条消息
image(string)//图片地址转可拼接消息字符串
push({
imType:string,//发送到指定渠道,如qq,wx,必须有
userID:"",//groupCode不为0时为@指定用户,可选
groupCode:"",//可选
content:string,//发送消息
})//给指定im发送消息
notifyMasters(string)//通知管理员
sendText(string)//发送文本
sendImage(url)//发送图片
sendVideo(url)//发送视频
整理时间为2021-12-22
编写插件简单教程
1.在/sillyGirl/develop/replies目录下新建任意 demo.js (名称随便改.js文件就行),内容如下
// [rule: 你好]
sendText("你好世界")
2.重启傻妞,对傻妞发送你好
js开发插件就是这么简单
最后非常感谢作者开发如此好用的机器人
感谢分享
非常感谢大佬的教程,我现在有一个疑问,就是如何傻妞插件如何进行二次获取用户发送的文本,类似交互,如果傻妞插件可以实现,改如何写呢?希望大佬能够解惑,拜托了😊😊
同问,在探索中,0进展
input不是能够多次获取么
请问这是啥原因呢
空指针了 方法的调用者是 null
ffmpeg获取视频图像帧失败 这个怎么解决
现在是不是不行了
插件设置了定时,到点不推送,求解,或定时发送的食用方法
post请求如何传参?用data无效
去看上一篇
评论一下
能发语音吗
感谢大佬的教程
现在是不是不行了
感谢分享了
傻妞插件如何进行二次获取用户发送的文本,类似交互,如果傻妞插件可以实现,改如何写呢? 例如1号发送了 “路况+广州南路堵车” 2号发送 “查路况”可以看到1号发送的路况 当天累计的路况零点的时候自动清空,大佬请指教
感谢分享,让我好好学习一下
让我好好学习一下
感谢分享
无尽的折腾
谢谢大佬分享,谢谢!