💬消息解析
消息解析的指令,属于文本代码的高阶指令,将根据解析规则,对消息进行逻辑处理,再进行发送,可以与文本代码组合使用
API解析
参数变量处理
i 消息响应类,会将收的的消息,转为参数,则会自动替换实际内容
#{1}、#{2}、#{3}
为用户指令中被正则匹配到子内容
举例:
指令规则:^签名(.*)$
用户发送:签名萌宝宝
解析模版:url=http://lgo.me/qianming?name=#{1}
实际执行:#{1}
替换为萌宝宝
,http://lgo.me/qianming?name=萌宝宝
#{字段名}
为内置系统字段,自动替换
支持字段名列表:
- 艾特信息:
#{atuserlist[0].wxid}
、#{atuserlist[0].nickname}
- 来源机器人:
#{robot_wxid}
- 来源群号:
#{from_group}
- 来源群名:
#{from_group_name}
- 来源用户WXID:
#{from_wxid}
- 来源用户昵称:
#{from_name}
- 来源消息ID:
#{msgid}
- 版本密钥:
#{edition}
举例:
指令规则:(.+)提醒我(.+)
用户发送:wxid_user1
在123456@chatroom
发送一小时后提醒我买药
,响应机器人为wxid_bot1
。
解析模版:提醒我|#{robot_wxid}|#{from_group}|#{from_wxid}|#{1}|#{2}
实际执行:提醒我|wxid_bot1|123456@chatroom|wxid_user1|一小时后|吃药
@{函数名}
为内置函数字段,自动执行替换
支持函数列表:
- 获取头像
@{getFace(bot,user)}
- bot:机器人wxid,可以通过
#{robot_wxid}
获取 - user:用户wxid,可以用过
#{from_wxid}
、#{atuserlist[0].wxid}
获取
- bot:机器人wxid,可以通过
- 随机整数
@{randomNum(min,max)}
- 当前时间
@{nowTime(日期格式,时间格式)}
- 日期格式:
yyyy [年],M [月],d [日],dddd [星期]
- 时间格式:
tt [上午或下午],h [小时],m [分钟], s [秒]
- 日期格式:
- 挑选文本
@{choiceOne(text1|text2|text3)}
,随机从多个文本参数中返回一个 - 花瓣画板
@{huaban(boards)}
- boards:画板ID,如果有多个的话,可以用|隔开
- 设置数据
@{setUp(group,name,value)}
- 修改配置
@{setCfg(group,name,value,appid)}
消息指令解析
代码:[api,msg=指令内容]
说明:由机器人触发该指令,返回该指令的结果,一般用于定时任务,或组合指令
网络请求解析
代码: [api,url=接口地址,tmpl=%解析模版内容%]
说明:目前支持一下三种方式
- 原样返回
模版内容如果传
$
,视为不解析,接口返回啥,返回啥
示例:%$%
- JSON解析
${字段}
指json字段文本,${...数组名...@字段名@}
为json数组
示例:${result.content}
历史上的今天 ${...data.list...【@lsdate@】@title@}
- 正则表达式(未支持)
/正则表达式/gm
,则表示按照此正则捕获内容,#{数字} 为正则匹配子文本内容
本地工具解析
代码:[api,local=工具|参数1|参数2]
开发者专用,暂不对外开放
最后修改时间: 5 个月前