
🤖 傻妞机器人插件元信息配置完全指南
📚 目录
- 插件基本信息
- 触发规则配置
- 权限与平台控制
- 定时任务配置
- 高级功能配置
- 完整配置示例
- 最佳实践建议
1. 插件基本信息
📝 作者信息
/**
* @author Cdle
* @author 张三
* @author 李四
*/- 作用:标识插件的作者
- 支持:可以写多行,也可以写多个作者
📛 插件名称
/**
* @name 日常命令
* @name 网络控制工具
*/- 作用:定义插件的显示名称
- 建议:简单明了,见名知意
🏢 组织信息
/**
* @origin 傻妞官方
* @origin 个人开发
*/- 作用:标识插件所属组织或来源
📌 版本号
/**
* @version 1.0.5
* @version 2.0.0-beta
*/- 格式建议:遵循语义化版本
主版本.次版本.修订号
💬 插件描述
/**
* @description 🐷日常命令,个人认为会比较便捷
* @description 这是一个强大的网络控制插件
*/- 作用:详细说明插件的功能和用途
- 技巧:可以使用 emoji 增加可读性
🖼️ 插件图标
/**
* @icon https://wx.zsxq.com/dweb2/assets/images/favicon_32.ico
* @icon https://example.com/icon.png
*/- 作用:为插件设置一个好看的图标
- 格式:图片URL地址
2. 触发规则配置
🎯 正则表达式匹配
/**
* @rule ^你好 ([^\n]+)$
* @rule ^查询状态$
*/- ^:匹配开头
- $:匹配结尾
- 1+:匹配非换行符的任意字符
示例匹配:
- ✅ "你好 张三"
- ✅ "你好 李四"
- ❌ "你好"(缺少参数)
- ❌ "你好 张三 你好"(不是以"你好"开头)
🔤 纯文本匹配
/**
* @rule raw 你好
* @rule raw 帮助
*/- 作用:只要消息中包含指定文本就触发
示例:
- ✅ "你好"
- ✅ "你好啊"
- ✅ "大家好"
❓ 通配符匹配
/**
* @rule 你好 ?
* @rule 状态 ?
*/- ?:代表任意单个字符
示例:
- ✅ "你好a"
- ✅ "你好1"
- ✅ "你好?"
- ❌ "你好"(没有字符)
- ❌ "你好ab"(多个字符)
📦 参数命名匹配
/**
* @rule 你好 [姓名]
* @rule 查询 [城市] 的天气
*/- [姓名]:命名参数
- 取值方式:
s.param("姓名")
示例:
// 消息: 你好 张三
let name = s.param("姓名"); // name = "张三"
// 消息: 查询 北京 的天气
let city = s.param("城市"); // city = "北京"🎭 可选参数匹配
/**
* @rule 你好 [姓名?]
* @rule 查询 [城市?] 的天气
*/- [姓名?]:参数可选,可有可无
示例:
- ✅ "你好"(无参数)
- ✅ "你好 张三"(有参数)
- ❌ "你好 张三 李四"(多个参数)
3. 权限与平台控制
👑 管理员权限
/**
* @admin true // 只有管理员可用
* @admin false // 所有人可用
*/📱 平台限制
/**
* @platform tg qq
* @platform tg wx
* @platform all
*/支持的平台:
tg:Telegramqq:QQwx:微信all:所有平台cron:定时任务专用
🌐 发布范围
/**
* @public true // 发布到插件市场
* @public false // 仅本地使用
*/⚡ 优先级设置
/**
* @priority 9999 // 优先级最高
* @priority 1 // 优先级最低
*/- 范围:数字越大,优先级越高
- 作用:多个插件匹配同一条规则时,优先级高的先执行
🚫 禁用状态
/**
* @disable true // 禁用插件
* @disable false // 启用插件
*/4. 定时任务配置
⏰ Cron 表达式
/**
* @cron 0 0 */5 * * *
*/Cron 格式说明:
text
* * * * * *
│ │ │ │ │ │
│ │ │ │ │ └── 星期 (0-6, 0代表周日)
│ │ │ │ └──── 月份 (1-12)
│ │ │ └────── 日期 (1-31)
│ │ └──────── 小时 (0-23)
│ └────────── 分钟 (0-59)
└──────────── 秒 (0-59)常用示例:
@cron 0 0 * * * * // 每小时执行
@cron 0 0 9 * * * // 每天9点执行
@cron 0 */30 * * * * // 每30分钟执行
@cron 0 0 */2 * * * // 每2小时执行
@cron 0 0 0 * * 1 // 每周一0点执行🔧 服务模块
/**
* @service true // 系统启动时执行
* @service false // 不自动执行
*/- 作用:插件作为服务,在系统启动时自动执行
5. 高级功能配置
📋 多规则组合
/**
* @rule ^断网$|^开网$
* @rule ^状态$
* @rule raw 帮助
*/🎨 带图标的配置
/**
* @icon 📱 // 使用 emoji 作为图标
* @icon 🔌
* @icon 🌐
*/🔗 完整配置示例
/**
* @author Cdle
* @name 断网开网控制器
* @origin 个人开发
* @version 2.0.0
* @description 🔌 远程控制路由器断网/开网,支持多个设备
* @icon 🔌
*
* 触发规则
* @rule ^断网$|^开网$
* @rule ^状态$
* @rule ^帮助$
*
* 权限控制
* @admin true
* @platform tg qq
* @priority 100
*
* 定时任务
* @cron 0 0 8 * * * // 每天8点自动开网
* @cron 0 0 23 * * * // 每天23点自动断网
*
* 其他配置
* @public false
* @disable false
*/6. 完整配置示例
示例1:简单命令插件
/**
* @author 张三
* @name 天气查询
* @version 1.0.0
* @description 🌤️ 查询全国天气
* @icon 🌤️
*
* @rule 天气 [城市?]
* @platform tg qq
* @admin false
* @public true
*/示例2:管理工具插件
/**
* @author 李四
* @name 系统管理
* @origin 傻妞官方
* @version 2.1.0
* @description ⚙️ 系统状态监控和管理
* @icon ⚙️
*
* @rule ^状态$
* @rule ^重启$
* @rule ^日志 (\d+)$
* @admin true
* @platform tg
* @priority 9999
*
* @cron 0 */30 * * * * // 每30分钟记录一次状态
* @service false
*/示例3:你的断网开网插件
/**
* @author Js
* @name 断网开网控制器
* @origin 个人开发
* @version 1.0.0
* @description 🔌 远程控制路由器家长控制功能
* @icon 🔌
*
* 触发规则 - 精确匹配
* @rule ^断网$|^开网$
*
* 权限控制 - 仅管理员可用
* @admin true
* @platform tg qq
*
* 优先级设置
* @priority 100
*
* 其他配置
* @public false
* @disable false
*/7. 最佳实践建议
📌 规则设计原则
- 精确优先:能用正则精确匹配,就不用raw模糊匹配
- 参数命名:使用
[参数]让代码更易读 - 可选参数:需要时加
?增加灵活性
🎯 规则示例对比
// ❌ 不好的设计
@rule raw 断网 // 会匹配"断网线"
// ✅ 好的设计
@rule ^断网$ // 只匹配精确的"断网"
@rule 断网 [设备?] // 支持参数,灵活扩展⚠️ 注意事项
- 优先级冲突:避免多个插件使用相同规则导致冲突
- 平台兼容:某些功能可能在特定平台不可用
- 权限控制:敏感操作必须设置
@admin true
🔧 调试技巧
// 添加调试日志
console.log("触发规则:", s.getContent());
console.log("参数:", s.param("姓名"));
console.log("平台:", s.getPlatform());📊 配置项速查表
| 配置项 | 必填 | 示例 | 说明 |
|---|---|---|---|
@author | 是 | @author Cdle | 插件作者 |
@name | 是 | @name 日常命令 | 插件名称 |
@version | 是 | @version 1.0.0 | 版本号 |
@description | 否 | @description 说明 | 插件描述 |
@rule | 是* | @rule ^你好$ | 触发规则 |
@platform | 否 | @platform tg qq | 支持平台 |
@admin | 否 | @admin true | 管理员权限 |
@priority | 否 | @priority 100 | 优先级 |
@cron | 否 | @cron 0 0 * * * * | 定时任务 |
@service | 否 | @service false | 服务模块 |
@icon | 否 | @icon 🔌 | 插件图标 |
@public | 否 | @public false | 是否发布 |
@disable | 否 | @disable false | 是否禁用 |
*注:@rule 至少需要一个,否则插件无法被触发- \n ↩