无界BOT安装

无界BOT安装

1、无界Docker安装命令

docker run -dit \ -v /root/BncrData:/bncr/BncrData \ -p 9090:9090 \ --name bncr \ --hostname bncr \ --restart on-failure:5 \ --log-opt max-size=5m \ --log-opt max-file=3 \ anmour/bncr && docker attach bncr

更新命令

docker run --rm \
 -v /var/run/docker.sock:/var/run/docker.sock \
 containrrr/watchtower \
 -c --run-once \
bncr

查看日志

docker logs bncr

进入/推出控制台

#进入
docker attach bncr
# 退出attach
Ctrl+p Ctrl+q

初始化

进入容器交互控制台

#进入
docker attach bncr
# 退出交互控制台
Ctrl+p Ctrl+q

默认鉴权URL无法使用,请前往无界服务状态
获取鉴权地址,输入自定义鉴权URL后回车

然后输入从 鉴权bot 获取的token,先去大群Bncr社区发送 /get_token,然后机器人会回复你token

系统日志开关建议开

控制台消息等级建议第一项全开,以后配置好了再改

开发者模式建议开

以上设置后面可以去面板配置

结构目录:

 Adapter :适配器目录
 config :一些config.json文件,用来存放鉴权,反代等数据
 db :数据库,可用来备份或者迁移无界
 node_modules :模块
 plugins :插件目录
 public :缓存的文件,图片或视频

发布插件:

1、端对端 :
以发布者的机器作为服务端载体
用户侧:
用户取得开发者订阅链接后在插件市场右上角设置中添加订阅源
开发侧:
·发布者把需要发布的插件@public字段改成true
·发布者需要在前端填写相关信息生成订阅插件发布于用户使用
·发布者可通过config/PluginCloudAuthentication.ts模块控制订阅行为(基于此模块,你可以实现订阅黑名单、白名单等操作)
2、GitHub模式 :
用GitHub仓库为服务端
用户测
前端订阅源只需要填写仓库地址,例如https://github.com/Anmours/Bncr ,不要带/结尾
开发侧
·需要在config.json手动增加pluginsPublishingMode字段,值为:github
·当有public插件时,会在BncrData中生成publicFileIndex.json索引文件,
·需要将publicFileIndex.json和要发布的文件同步更新至GitHub
·或 cp Bncr仓库的.github/workflows文件夹到自己仓库,然后仓库需要开启 “Read and write permissions” 与 “Allow GitHub Actions to create and approve pull requests” 权限,更新文件后GitHub Actions将会自动生成索引在仓库根目录。
·发布GitHub仓库默认分支必须是main分支,且文件摆放格式与需要与BncrData下的一致,具体请参考Bncr官方库

登录

浏览器访问 ip:端口 端口默认9090,点击初始化账号会出现设置账号密码的命令,忘记帐号密码也可以使用,

打开主机bash执行:docker attach bncr 进入容器内部. 或在拥有管理员的平台发送以下命令:

#设置账号:
set system name 你的账号

#设置密码,密码必须为6-18位数字/字符/符号,至少2种组合:
set system password 你的密码

返回登录页登录,仪表盘首页的内存占用并不准确,不用在意

插件市场

暂不支持分类,可以使用搜索

无界的具体功能都需要适配器/插件实现,首先下载适配器,方便对接各聊天平台,建议一次把需要的适配器下载完,因为适配器需要重启才能看到

添加订阅

进入插件市场,右上角点击订阅按钮,默认已经订阅了官方插件

2f8d94893433fc63a3b24.png

点击右边加号添加其他大佬的订阅,点击减号删除订阅
一、红灯区

D佬

  • 订阅模式:sub
  • 说明:狗东相关
  • 订阅链接:bncrSub://UpdjUc6jid/ZFkJhEZFTW0zFEYpg7ZPidkatlTM6OSN/bOxWaExKe5VQ14AHsy+0ufSXlKVuOuRYAqkTz7a2Z3dS8aW8mj6O8MsZVFDHMpc=
  • 寒佬
  • 订阅模式:sub
  • 说明:狗东/内置微信相关
  • 订阅链接:bncrsub://3BPeb/Ff4FlBAx372D99jdVghsmvkSgLBq9KU/hngTdwC2GEcEwqYWSWDYKb6RfikHZG1cRp8/VvIGJ786YOuBlGXSIKXzAA1klCLP7Pc80=

胜利佬

  • 订阅模式:sub
  • 说明:娱乐相关
  • 订阅链接:bncrSub://wF/k4Mz95ytHfhV15ZODYlhhzebRtJJ0f7TFUFxz93HmBntFxJwjKeBgOyXJiWIShBPM7dP7q+Vtzcu1imytZ0T0Nj7Zc2Nb6vO6LiP7NAU=

缘佬

  • 订阅模式:sub
  • 说明:AI相关
  • 订阅链接:bncrSub://3BPeb/Ff4FlBAx372D99jYvj+QZcN253M4hwNraBlDlkcHZ3Co50nPr36N+UPUwByGOOlBqx00VAtjamL5r6HbE7eOYTWuOnjVZCTZZmO68=

Merrickk

sumuen

单身汪

小九九

三藏

枯花

  • 订阅模式:sub
  • 说明:小工具
  • 订阅链接:bncrSub://hbq80RwrMDlTHxjzsPkUWY/ObH3eYsqVRJduerbj3VLqn6HIX9FDfEnjLxmP3tnDAbgZA/ZytDYXnMPDNs/6OgX6FJrZlwgu1yMKxaPkjdA=

October

  • 订阅模式:sub
  • 说明:小工具
  • 订阅链接:bncrSub://3BPeb/Ff4FlBAx372D99jSgYAOp0iHTZYdXsiIPvd8Kv+n62AwCyJeSaLEwNILJPTolaQ/RxzeG3WMcOQzvUpkO+H+mnXr5+73k7J/jMjQA=

yuanter

  • 订阅模式:sub
  • 说明:专用登录工具
  • 订阅链接:bncrSub://UpdjUc6jid/ZFkJhEZFTW/8AQnqGof/eXGPt+fCsmJ31/6uffZxee3QzBTXMYrzPWdzsQ90+6RGUYrEfBlnRnsXejZuVbYXS1qVLK8a4tPI=

屁 啊

奖 励

鑫仔

对接聊天平台

对接微信

xyo

已xyo为例,插件市场官方订阅下载wxXyo.js适配器,重启无界,进入插件配置→找到/Adapter/wxXyo.js开启适配器,输入xyo的上报地址,点击保存

32e0b99ba391aaca1c7c4.png

再去微信框架中的xyo插件中添加消息回调地址,http://无界的ip:端口/api/bot/Xyo

70ac63d6ff676582f2101.png

另外可能需要开启相关端口,自行搜索教程

设置xyo token

在web聊天窗口发送命令

set wxXyo xyo_token xxx

设置管理员

在微信中给机器人账号发消息,在微信框架的日志中查看管理员ID,然后在web聊天窗口发送命令

set wxXyo admin xxx  (这个xxx指的是你对机器人发‘我的id’出来的id)

要使配置生效,还需要再次重启无界

wechaty

需要先添加寒佬订阅链接,微信号需实名

插件市场下载wechaty.js,插件配置中找到wechaty,点击开启适配器,其他选项可选。

设置管理员

在微信中给机器人账号发消息,在无界的日志中查看管理员ID,然后在web聊天窗口发送命令

set wechaty admin wxid_

要使配置生效,还需要再次重启无界

登录

配置好wechaty插件后第一次重启无界时,查看无界日志,会弹出登录二维码,使用微信小号扫码登录即可

重要!如需更换微信机器人账号,需要在wechaty插件中修改机器人标识

对接NTQQ

插件市场下载qq.js,插件配置中找到qq.js,点击开启适配器,适配器模式 ws,保存

去QQ框架那边启用并添加反向ws协议,写入 ws://无界ip:9090/api/bot/qqws,消息上报格式选择CQ码

ef38dcb61a2fb061a5801.png

设置管理员

在web聊天窗口发送命令

set qq admin 管理员QQ号

要使配置生效,还需要再次重启无界

对接TG人型

内置

需要科学上网环境或S5代理

申请apiID和apiHash过程略过

插件市场下载适配器HumanTG.js,填写上面获取的apiID和apiHash,代理配置选填,保存,重启无界

设置管理员

无需设置,默认自身就是管理员

登录

配置好内置人型后第一次启动无界时进入交互界面,按照提示输入注册TG的手机号、TG登录密码以及收到的验证码即可登录

外置

插件市场下载适配器pgm.js,点击开启,保存

下载文件bncr.py,使用pgm安装该插件并启用,发送 ,bncr ws://无界ip:9090/api/bot/pgmws链接

设置管理员

首先获取管理员账号的ID,然后在web聊天窗口发送命令

set pgm admin 管理员ID

要使配置生效,还需要再次重启无界

注意:如果自己监听了bot发出来的日志,只要去web拉黑一下botid,或者直接对他说拉黑这个b就不会监听了

对接TGbot

需要科学上网环境或自建反代

插件市场下载适配器tgBot.js

获取TGbot token过程略过

设置管理员

首先获取管理员账号的ID,然后在web聊天窗口发送命令

set tgBot admin 管理员ID

要使配置生效,还需要再次重启无界

插件使用记录

对接青龙

青龙相关的功能都是基于奶酪插件实现的,但是红灯区还没有适配3.0,需要自行从红灯区仓库下载奶酪.js到无界的 /bncr/BncrData/plugins/红灯区目录下

下载mod文件夹下 AmQlMod.jsAmTool.js和 CryptoJS.js到 mod目录下

下载好后进入文件管理,编辑奶酪插件,将 origin改成 team保存

青龙面板创建应用过程略过

Web交互聊天窗口使用管理员身份发送命令 面板管理按照提示添加青龙面板,可添加多个,最后记得输入 wq保存并退出

834c2e31c953821286a77.png

对接狗东登录工具

插件市场下载登录.js插件,这里使用D佬版,需要下载d佬的依赖文件,搜索tool,把几个tool都下载下来。

以Nolan Pro面板为例,Pro配置过程略过

进入web后台插件配置 /plugins/红灯区/登录.js按照注释填写配置,带星号的必须填写。

rabbit容器id一般是2,如中间删过,后面又重新对接了,那就得写3,每删一次,就得往后加1。

登录/上车回复语自己设置。这里不设置的话,则默认使用插件内部回复语

注意:rabbitPro容器id哪怕没有也要填写一个0,否则无法保存,如果登录有莫名其妙的报错 请运行D佬的一键依赖并重启,got版本要在11.8.5,在任意有管理员权限的平台发:npm i got@11.8.5

33f2383921d058428dc17.png

查询狗东资产

插件市场下载D版查询.js插件,还需要下载依赖文件h5st.js,安装依赖 npm i date-fns,进入插件配置,直接点击保存即可。
注意:如果查询有莫名其妙的报错 请运行D佬的一键依赖并重启,有火爆的话在Doraemon_config_tool.js插件下配置代理。got版本要在11.8.5,在任意有管理员权限的平台发:npm i got@11.8.5

spy

1.从红灯区下载BncrSPY.js和mod下的文件

1.1 自行编辑bncr\BncrData\plugins\红灯区\mod\SpyConfig.js

或者直接用别人写好的模板

修改完需要重启才能生效

必填项目:
/* 监控列表 */
    ListenList: [
        {
            Name: '6666', //备注
            Id: '6666666666', //群id/频道id
选填项目:
/* 运行日志输出位置,例如错误运行日志/任务运行成功等日志,只能设置1个 */
runLogsInfo: {
        platform: 'HumanTG', //发送平台
        toGroupOrUser: 'groupId', //通知类型,个人userId //群groupId
        Id: '-1001842786543', //个人id 或群id
    },
    /* 静默后监控结果输出位置  可填多个*/
    TabooLogsInfo: [
        {
            platform: 'HumanTG', //发送平台
            toGroupOrUser: 'groupId', //通知类型,个人userId //群groupId
            Id: '-100666666666666', //个人id 或群id
        },

实例:

{
            Name: '【M】幸运抽奖',
            /* 执行的脚本名 */
            Script: 'm_jd_wx_luckDraw.js',
            /* 监听变量 */
            ListenEnv: ['M_WX_LUCK_DRAW_URL','GZSL_DRAW_URL','jd_lzkj_loreal_draw_url'],
             /* 转换变量 */
            SetEnv: {
                GZSL_DRAW_URL: 'M_WX_LUCK_DRAW_URL',
                jd_lzkj_loreal_draw_url: 'M_WX_LUCK_DRAW_URL',
            },
           /* 具体怎么装换 左转换→监听 */
            execRegExp: ['(?<=activityId(=|%3D))[^&% ]+'],
            TimeOut: 60,
              /* 超时退出 (秒)*/
            Interval: 0,
             /* 间隔时间(秒) */
            RunPanel: [0],
                       /* 运行面板 0 代表 面板管理中的第一个容器 以此类推 非超授只能用第一个面板 */
            Disable: false,
                       /* 禁用任务 */
        },

2.监听群组

1.可以发消息的群组直接发送

监听该群
不回复该群(推荐 不然等着被ban)

或在用户配置→监听群列表添加需要监听的群或频道(如果频道或群组不能发消息的时候可以用)

3.对接青龙

1.在青龙→系统设置→应用设置中新建一个应用,名称随意,权限至少包含定时任务、环境变量、配置文件、脚本管理和任务日志。记下Client ID和Client Secret。

2.web发送 面板管理,输入 0 添加面板,输入面板地址,注意是无界访问青龙面板的地址不一定你访问面板的地址

3.然后分别输入Client ID和Client Secret,备注随意,输入版本号。

输入 wq 保存退出。完成

4.配置解析

自行编辑bncr\BncrData\plugins\官方插件\mod\SpyHandleMsg.js

只要是spy配置文件的监控列表以及监听群组列表都有群组频道发送了活动链接

就自动解析+运行

举例:

{
            keyword: /lzkj-isv\.isvj(clou)?d\.com\/wxGameActivity/, //不懂得看活动链接的特征 照抄
            name: 'M无线游戏', //活动名或者脚本名
            trans: [
                {
                    ori: '-1', //-1是整个活动链接 
                    redi: 'M_WX_GAME_URL', //M无线游戏 //
                },
            ],
        },
        {
            keyword: /lzkj-isv\.isvj(clou)?d.com\/wxgame/,
            name: 'LZ游戏活动',
            trans: [
                {
                    ori: 'activityId', //activityId就是截取上面活动链接里的activityId到下面环境变量里
                    redi: 'WXGAME_ACT_ID', //

                },
            ],

如果自己发的链接会被解析,在spyConfig里加spyjx:’j’,则管理员发的https链接必须以j开头才会被插件解析

注:没反应的问题自己检查有没有监听该群,spy里有没有白名单,有没有规则,解析规则对不对。

常见问题

大部分问题建议先尝试先翻译理解,然后去谷歌搜索

  • 部分插件不在插件配置里显示/发送面板管理没有反应
    • 链接ssh后发送docker restart bncr && docker attach bncr,观察插件是否加载成功,有没有报错,如报错根据错误解决。
  • 安装失败/报错
    • 检查安装命令是否完整,是否有多余的符号
    • 更新docker版本,更换docker镜像源
    • 更换端口或使用host模式

鉴权未通过/插件市场不可用

  • 进入web端用户配置→系统配置,更换鉴权URL,保存后重启无界
  • 机器码不符
  • 前往tg群发 /清空机器码

忘记后台帐号密码

  • 进入ssh交互界面,分别输入以下命令
    get system name
    get system password

插件市场加载慢/部分插件消失/部分订阅提示ETIMEDOUT

  • 直接使用页面提示:速度快慢完全取决于您的Bncr所在网络,请确保所在网络能连通Github和插件作者的无界
  • 插件配置中没有插件
  • 该功能需要插件开发者适配2.0规范,未适配完成的插件不会在此列表中列出

插件运行报错

  • 首先查看日志
  • 插件未适配2.0规范
  • 缺少依赖文件,查看报错日志,将需要的文件放到指定位置
  • 未安装依赖,查看插件注释手动安装,对机器人发送命令 npm i 依赖名
  • 或插件市场下载Doraemon_一键安装所需依赖.js,对机器人发命令 Doraemon_一键安装所需依赖

非超授禁用插件

  • 字面意思,要授权

为什么对接了xx平台机器人,发消息没反应

  • fe7a1768f9e5326934186.png
  • 去后台用户配置查看是否监听了群,是否将用户添加到黑名单
  • 部分插件自身需要添加监听群和白名单,查看插件注释

监听自己机器人发出来的线报怎么办

  • 对机器人说拉黑这个b 或者去web拉黑机器人id

为什么不回复消息 没反应

  • 当发送管理员命令没有反应时,请检查管理员是否正确,在有管理员权限的平台设置管理员(比如web,ssh),如果只发time有反应的话,重启看看有没有下面报错

关于报错:Error: Cannot find module ‘xxxxx’

  • 统一为缺少npm模块,通过管理员对机器人发送 npm i xxxx 命令安装模块后重启即可解决

关于报错:Error: Cannot find module ‘./xxxxx’

  • 统一为缺少自定义模块,谁写的插件找谁要这些模块,一般对应的插件仓库都有的,是你没装好!

关于报错:插件[xxxx.js]加载异常 未设置xxxx

  • 未设置@name|@rule|@version|@admin|@author|@origin 这种情况一般是你的插件放错位置了,比如红灯区 GitHub 的插件,全部放在/plugins/红灯区/下,没有这个目录就新建!

安装npm包

  • 有管理员权限的平台发送 npm i xxxx

登录插件报错没有权限

  • 你的pro或者rabbit的bot apitoken跟无界插件设置的不一致,改个一样的就可以

发送登录没有二维码出现

设置青龙通知接口token

  • 去青龙填写变量:export BncrToken=”123123″(或者你自定义一个),然后去插件里填写你自己设置的token,两边需要保持一致

加载异常:未设置@team

  • 由于1.x 2.x在更新到版本3.0后,原有的所有文件,插件均不可用(需手动修改所有文件中顶部的@origin为@team,或 在插件市场 下载安装 替换origin.ts 后发送‘升级文件到新版’完成平替)

加载异常:@name必须与文件名一致

  • 把插件内的@name改成跟插件一样的名称,或者把插件名称改成跟插件内@name一样,或者不用管,这个报错也可以使插件正常运行

通知平台怎么填

  • 格式:f:g:m,f为平台名比如:wxQianxun、qq、tgBot、HumanTG,g可选groupId、userId,分别对应群和个人,m为id。例子:wxQianxun:userId:1111(为推送给wxQianxun平台的1111微信号)

删除内置人形数据重新登陆指令

  • 在有管理员权限的平台发送:del HumanTG session

发布者:无界云天下第一,转载请注明出处:https://note.gjrnb.com/?p=810

(1)
无界云天下第一的头像无界云天下第一
上一篇 2024年 10月 29日 下午7:23
下一篇 2024年 8月 13日 上午2:28

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注