[超詳細(xì)]小白也能在手機(jī)/電腦上搭建ZeroBot-Plugin和導(dǎo)入原神面板插件的教程
前言
本教程是在安卓手機(jī)虛擬終端Termux中操作的,如果你已經(jīng)有了一臺裝有Linux系統(tǒng)的個(gè)人電腦或服務(wù)器,也是可以搭建該項(xiàng)目的。教程包含使用穩(wěn)定發(fā)行版(簡單易上手)和本地搭建(更高的自定義)兩種搭建方法。同時(shí)也會(huì)告訴你如何以較高成功概率的方式授權(quán)go-cqhttp自動(dòng)登錄機(jī)器人QQ賬號。讀完本專欄用時(shí)較長,畢竟是從0開始嘛。
準(zhǔn)備工作
材料:兩個(gè)QQ賬號(一個(gè)是機(jī)器人的,一個(gè)是管理者的,不能是同一個(gè)賬號),一定的檢索能力,一定的英語閱讀理解能力,翻譯器,腦子,手,耐心。
首先要在安卓手機(jī)上安裝Termux軟件(Linux電腦用戶就不用了),你可以去網(wǎng)上自行尋找安裝包(寫這篇專欄時(shí)termux的最新版本是0.118.0),你也可以去官網(wǎng)https://termux.dev/cn/并在其提供的兩種下載渠道中選擇
接著要在termux中安裝一個(gè)較為完整的Linux容器,教程使用的是天萌的ArchLinux-Proot容器(這是官方的參考手冊鏈接https://doc.tmoe.me/zh/android.html)

接下來是實(shí)操
首先打開termux或Linux電腦中的終端,向其中輸入指令curl -LO https://gitee.com/mo2/linux/raw/2/2.awk; awk -f 2.awk會(huì)出現(xiàn)如下界面
記得輸完指令后要回車。

此處要輸入y并回車?;剀嚭笥謺?huì)出現(xiàn)如下界面

我們繼續(xù)輸入y并回車。接著又會(huì)出現(xiàn)如下界面

國內(nèi)用gitee比較快,因此這里就輸入y并回車。接下來可能會(huì)申請一些權(quán)限,全部都同意。中間卡住可以試試回車。
之后回會(huì)讓你選擇語言,它默認(rèn)是中文,所以直接回車就行了。接著會(huì)出現(xiàn)如下界面

這里通過屏幕下方的方向鍵選擇proot容器,回車。
接著它會(huì)問
您需要克隆本項(xiàng)目倉庫方能繼續(xù)使用
Do you want to continue?[Y/n]
Press enter to continue,type n to return.
按回車鍵繼續(xù),輸n返回
此處輸入y并回車
之后又會(huì)問如下內(nèi)容
您尚未安裝相關(guān)依賴
?% Total ? ?% Received % Xferd ?Average Speed ? Time ? ?Time ? ? Time ?Current
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Dload ?Upload ? Total ? Spent ? ?Left ?Speed
?0 ? ? 0 ? ?0 ? ? 0 ? ?0 ? ? 0 ? ? ?0 ? ? ?0 --:--:-- --:--:-100 ?8861 ? ?0 ?8861 ? ?0 ? ? 0 ?12813 ? ? ?0 --:--:-- --:--:-- --:--:-- 12823
檢測到您當(dāng)前使用的sources.list不是北外源,是否需要更換為北外源[Y/b/n]
更換后可以加快中國境內(nèi)的下載速度,按回車鍵切換為bfsu北外源, 輸t切換為tuna-tsinghua清華源,輸n拒絕。
If you are not living in the People's Republic of China, then please type n .[Y/n]
這里回車就可以了。該過程中會(huì)卡住幾次,要回車才行。操作無誤的話會(huì)有如下界面

這里再次回車,之后會(huì)再次出現(xiàn)如下界面

還是選擇proot容器并回車。接下來會(huì)彈出幾個(gè)界面,里面有這幾個(gè)要求
1.請選擇終端配色2.請選擇終端字體,若您跳過選擇字體,則部分字符可能無法正常顯示3.是否需要?jiǎng)?chuàng)建termux.properties?這將會(huì)修改小鍵
這里統(tǒng)統(tǒng)默認(rèn)回車,然后會(huì)有如下界面

這里選擇第四個(gè)(即阿里源)并回車
接下來又會(huì)顯示一些對話框 ,一直按回車,直到出現(xiàn)如下界面

選擇arm64架構(gòu)并回車,完成后看下圖

選擇第5項(xiàng)Arch并回車,完成后看下圖

這里選擇第一項(xiàng)并回車,屏幕里的內(nèi)容會(huì)滾動(dòng)起來
經(jīng)過一段時(shí)間的等待,會(huì)彈出如下界面

這里我們選擇否,然后回車。完成后看下圖。

選擇是,回車。

選擇是,回車。

選擇否,回車。
完成上述操作后,等待幾分鐘會(huì)出現(xiàn)下圖。

如果你的手機(jī)上出現(xiàn)了該命令行界面就說明你已經(jīng)安裝好了ArchLinux-Proot容器(?>?<?)至此準(zhǔn)備工作結(jié)束。(如果容器安裝失敗可以到手機(jī)的設(shè)置中給termux清除數(shù)據(jù)重新走一遍該教程

go-cqhttp的安裝
先跳到home目錄。在終端中輸入cd /home并回車,結(jié)果圖是這樣的。

新建一個(gè)機(jī)器人專用目錄,輸入如圖所示的指令并回車。

輸入指令ls,輸出結(jié)果中有qqbot這個(gè)目錄,說明成功創(chuàng)建目錄。

輸入cd qqbot跳到該目錄里
然后我們到這個(gè)網(wǎng)站https://github.com/Mrs4s/go-cqhttp/releases/進(jìn)去后把下圖這個(gè)圈里的內(nèi)容點(diǎn)開(你可能要反復(fù)刷新好幾次才能打開或是科學(xué)上網(wǎng)才能打開該網(wǎng)站,畢竟Github是國外網(wǎng)站嘛)

在里面找到這一欄,除了版本號1.0.1其他的一定要匹配(寫專欄時(shí)go-cqhttp的最新發(fā)行版本為1.0.1

復(fù)制圈住的內(nèi)容的鏈接地址,復(fù)制出來的內(nèi)容是這樣的https://github.com/Mrs4s/go-cqhttp/releases/download/v1.0.1/go-cqhttp_linux_arm64.tar.gz
然后到termux或終端中輸入指令wget?https://github.com/Mrs4s/go-cqhttp/releases/download/v1.0.1/go-cqhttp_linux_arm64.tar.gz等待下載完。若卡住不下載可以用組合鍵Ctrl+c關(guān)掉程序重新輸入指令多試幾次? ?實(shí)在不行就用梯子。

接下來解壓go-cqhttp_linux_arm64.tar.gz如圖

再輸入./go-cqhttp并回車,再輸入2回車,再回車,如圖

接著用兩指縮放屏幕內(nèi)容,把字變小一些,否則后續(xù)掃碼時(shí)二維碼顯示不全。
然后輸入nano config.yml進(jìn)入文本編輯器
找到如下兩條內(nèi)容,按照下方代碼塊里的注釋填入機(jī)器人QQ賬號
# go-cqhttp 默認(rèn)配置文件
?account:
?uin: 1233456 #此處填入機(jī)器人的QQ賬號
?password: '先不要在單引號里輸入機(jī)器人的QQ密碼'
?encrypt: false ?
?status: 0 ? ? ?
?relogin:
? ?delay: 3 ?
? ?interval: 3 ?
? ?max-times: 0 ?
向下滑動(dòng)屏幕找到這個(gè),把8080改為6700(其實(shí)任意4位數(shù)都可以,我輸入了8060 )
# 連接服務(wù)列表
servers:
?#
?#
?#
?#
?#
?#
?- ws:
? ? ?
? ? ?address: 0.0.0.0:8080 #把這里的8080改為6700
? ? ?middlewares:
? ? ? ?<<: *default
然后找到并按下屏幕下方小鍵盤中的ctrl鍵,在英文鍵盤模式下按下x鍵(即組合鍵ctrl+x),輸入y,按回車。此時(shí)你應(yīng)該返回到了命令行界面(*^▽^)/★*☆
接下來再輸入./go-cqhttp不管輸出什么,等待10秒鐘后按下組合鍵ctrl+c(把上文的x換成c)關(guān)掉go-cqhttp
再輸入nano device.json用文本編輯器編輯device.json文件
按住組合鍵ctrl+w并輸入protocol,然后回車。操作正確的話你的光標(biāo)會(huì)定位到protocol上,把后面的6改為2,即"protocol":6,改為"protocol":2,
然后找到并按下屏幕下方小鍵盤中的ctrl鍵,在英文鍵盤模式下按下x鍵(即組合鍵ctrl+x),輸入y,按回車。此時(shí)你應(yīng)該返回到了命令行界面(*^▽^)/★*☆
再次輸入./go-cqhttp
待出現(xiàn)二維碼后我們可以掏出另外一臺登錄機(jī)器人QQ的手機(jī)掃這個(gè)二維碼(注意縮放界面)或者在手上的這臺手機(jī)上下載騰訊Tim后登錄機(jī)器人QQ再掃碼。掃碼成功后會(huì)出現(xiàn)如下界面。

至此go-cqhttp成功安裝并啟動(dòng)
接著配置自動(dòng)登錄
用組合鍵Ctrl+C關(guān)掉go-cqhttp程序,再輸入
nano config.yml
回車并把機(jī)器人的QQ密碼填入指定位置
再用組合鍵Ctrl+x,輸入y并回車
最后輸入./go-cqhttp再次啟動(dòng)go-cqhttp

ZeroBot-Plugin(即zbp)本體的搭建(項(xiàng)目地址https://github.com/FloatTech/ZeroBot-Plugin)
1.使用穩(wěn)定發(fā)行版
打開這個(gè)網(wǎng)址https://github.com/FloatTech/ZeroBot-Plugin/releases/向下翻找到Assets如圖

找到我圈住的這一項(xiàng)復(fù)制其地址鏈接,復(fù)制出來是這樣的
https://github.com/FloatTech/ZeroBot-Plugin/releases/download/v1.7.1/zbp_linux_arm64.tar.gz
接下來按住屏幕左端向右滑動(dòng),會(huì)有該界面

點(diǎn)擊右下角的new session打開新的回話窗口。
輸入debian打開上一次使用的容器。如圖

跳到機(jī)器人目錄,指令cd /home/qqbot并回車
再輸入指令wget?https://github.com/FloatTech/ZeroBot-Plugin/releases/download/v1.7.1/zbp_linux_arm64.tar.gz如圖

回車,等待下載完成即可。下載過程中若是未出現(xiàn)如下界面你可以按組合鍵Ctrl+c關(guān)掉程序重新輸入指令多試幾次? ? 再不行就用梯子
前面的東西省略。。。。。。
已發(fā)出 HTTP 請求,正在等待回應(yīng)... 200 OK
長度:8568102 (8.2M) [application/octet-stream]
正在保存至: “zbp_linux_arm64.tar.gz”
_linux_arm64.tar ?73%[=====> ? ] ? 6.02M ?2.63MB/s
下載好后輸入指令ls會(huì)輸出一些內(nèi)容,檢查里面是否只有一個(gè)叫做zbp_linux_arm64.tar.gz的文件,有的話就可以進(jìn)行下一步了。
接下來解壓該文件,指令tar -zxvf zbp_linux_arm64.tar.gz結(jié)果如圖

接著輸入指令./zbp -s config.json如圖

如上圖,程序會(huì)自動(dòng)創(chuàng)建一個(gè)config.json文件并結(jié)束運(yùn)行。接下來編輯該文件,指令為
nano config.json

如上圖,我這里是豎著顯示的,你在termux中看到的是橫著的,你可以通過左右方向鍵控制光標(biāo)移動(dòng)到指定位置。然后按上圖中的注釋填入內(nèi)容。最后保存并退出(方法你已經(jīng)會(huì)了吧)
在命令行界面輸入./zbp -c config.json
當(dāng)你看到如下輸出則說明zbp啟動(dòng)成功。出現(xiàn)框住的內(nèi)容是則說明go-cqhttp和zbp握手成功。

打開QQ或tim,用機(jī)器人主人的QQ賬號向機(jī)器人QQ賬號發(fā)送/全局響應(yīng)不出意外的話(一定要帶上前面的/符號),機(jī)器人會(huì)回復(fù)XXX將所在有的地方啟用了之類的話。
至此機(jī)器人便可以正常工作了。

本地搭建
第一步要安裝golang語言環(huán)境,因?yàn)樵擁?xiàng)目就是用go語言開發(fā)的。
如果你已經(jīng)使用穩(wěn)定發(fā)行版搭建機(jī)器人,你應(yīng)該長按有zbp程序的會(huì)話窗口的屏幕,這樣會(huì)彈出三個(gè)選項(xiàng):copy? ? paste? ?more
點(diǎn)擊more,找到并點(diǎn)擊kill process,然后回車。該操作會(huì)把有zbp的會(huì)話窗口關(guān)掉。
同之前的步驟,新建一個(gè)窗口,輸入debian打開之前的容器。
輸入cd /home/qqbot調(diào)到機(jī)器人目錄里
好,開始安裝go語言環(huán)境。
在命令行界面輸入pacman -S go并回車
然后輸入y并回車,結(jié)果如圖。

寫專欄時(shí)go語言的最新版本為1.20.5越新越好,因?yàn)轫?xiàng)目有時(shí)要求最新go語言版本
現(xiàn)在克隆zerobot-plugin項(xiàng)目
輸入指令git clone https://github.com/FloatTech/ZeroBot-Plugin.git回車,結(jié)果如圖

這一步卡住的話可以用組合鍵ctrl+c打斷并重新輸入指令多試幾次,或掛梯子。
輸入指令cd /home/qqbot/ZeroBot-Plugin回車進(jìn)入項(xiàng)目目錄
輸入nano main.go回車,向下翻找到這幾項(xiàng)
sus := make([]int64, 0, 16)
? ? ? ?// 解析命令行參數(shù)
? ? ? ?d := flag.Bool("d", false, "Enable debug level log and higher.")
? ? ? ?w := flag.Bool("w", false, "Enable warning level log and higher.")
? ? ? ?h := flag.Bool("h", false, "Display this help.")
? ? ? ?// g := flag.String("g", "127.0.0.1:3000", "Set webui url.")
? ? ? ?// 直接寫死 AccessToken 時(shí),請更改下面第二個(gè)參數(shù)
? ? ? ?token := flag.String("t", "", "Set AccessToken of WSClient.")
? ? ? ?// 直接寫死 URL 時(shí),請更改下面第二個(gè)參數(shù)
? ? ? ?url := flag.String("u", "ws://127.0.0.1:6700", "Set Url of WSClient."
? ? ? ?// 默認(rèn)昵稱
? ? ? ?adana := flag.String("n", "椛椛", "Set default nickname.")
? ? ? ?prefix := flag.String("p", "/", "Set command prefix.")
? ? ? ?runcfg := flag.String("c", "", "Run from config file.")
? ? ? ?save := flag.String("s", "", "Save default config to file and exit.")
? ? ? ?late := flag.Uint("l", 233, "Response latency (ms).")
? ? ? ?rsz := flag.Uint("r", 4096, "Receiving buffer ring size.")
? ? ? ?maxpt := flag.Uint("x", 4, "Max process time (min).")
看到里面的6700和椛椛這兩個(gè)關(guān)鍵詞了嗎,如何修改之前說過了。接下來找到下面內(nèi)容
// 通過代碼寫死的方式添加主人賬號
? ? ? ? // sus = append(sus, 12345678)
? ? ? ? // sus = append(sus, 87654321)
刪掉sus前面的注釋即//然后把里面的數(shù)字改為機(jī)器人主人的賬號。結(jié)果應(yīng)為這樣的
// 通過代碼寫死的方式添加主人賬號
? ? ? ?? sus = append(sus, xxxxxx)
? ? ? ? ?sus = append(sus, xxxxxx)
在翻動(dòng)的過程中你會(huì)看到很多類似這樣的代碼
_ "github.com/FloatTech/ZeroBot-Plugin/plugin/manager" // 群管
?_ "github.com/FloatTech/zbputils/job" // 定時(shí)指令觸發(fā)器
這是機(jī)器人的插件
你可以在前面加上注釋//來關(guān)掉你不想用的插件
比如這個(gè)插件
_ "github.com/FloatTech/ZeroBot-Plugin/plugin/heisi"? ? ? ? ? ? // 黑絲
關(guān)掉后是這樣的
//_ "github.com/FloatTech/ZeroBot-Plugin/plugin/heisi"? ? ? ? ? ? // 黑絲
保存并退出(你應(yīng)該知道怎么操作了吧)
修改好配置文件后會(huì)返回到命令行界面,輸入指令sh run.sh并回車。接下來會(huì)出現(xiàn)大量類似這樣的輸出,不用管

當(dāng)它卡住不動(dòng)的時(shí)候可以多試試回車,當(dāng)進(jìn)行到上圖的紅框內(nèi)容卡死時(shí)按回車也大概率沒用。這時(shí)你可以用組合鍵ctrl+c關(guān)掉程序重來一遍就能啟動(dòng)了。
不要忘了向機(jī)器人QQ賬號發(fā)送/全局響應(yīng)。若是機(jī)器人回復(fù)ERROR: group 0 already in response也沒關(guān)系,因?yàn)檫@句話翻譯過來的意思是已經(jīng)全局響應(yīng)過了。自此你已經(jīng)成功地在本地搭建了機(jī)器人。
可能會(huì)出現(xiàn)的
你的termux可能會(huì)被手機(jī)系統(tǒng)鯊后臺,這時(shí)你需要重新啟動(dòng)go-chttp和zbp,方式如下(別忘了每輸完一條指令后都要回車)。
1.啟動(dòng)go-cqhttp
①打開termux,輸入指令debian
②輸入指令cd /home
③輸入指令./ go-cqhttp
接下來二選一
2.啟動(dòng)zbp(使用穩(wěn)定發(fā)行版)
①新建窗口,在命令行界面輸入cd /home/qqbot
②輸入./zbp -c config.json
3.啟動(dòng)zerobot-plugin(本地搭建)
①新建窗口,在命令行界面輸入cd /home/qqbot/ZeroBot-Plugin
②輸入sh run.sh
吐槽:這專欄投稿的文本編輯器真難用
小白你可能想知道本地搭建更高的自定義如何實(shí)現(xiàn),下面舉兩個(gè)例子。
在完成本地搭建并成功使機(jī)器人響應(yīng)后關(guān)掉termux,然后按照上文的指令啟動(dòng)1.go-cqhttp和2.zerobot-plugin
啟動(dòng)完成后,在有zerobot-plugin的窗口內(nèi)按下組合鍵ctrl+c關(guān)掉程序,輸入指令ls你會(huì)發(fā)現(xiàn)項(xiàng)目內(nèi)有這些文件

其中的plugin為插件目錄。比如我看膩了機(jī)器人被戳一戳?xí)r發(fā)送的話,我要修改一下。
該配置文件叫chat.go且位于/home/qqbot/ZeroBotcPlugin/plugin/chat目錄里
修改它,輸入指令nano /home/qqbot/ZeroBot-Plugin/plugin/chat/chat.go回車,在文本編輯器中滑動(dòng),找到這一項(xiàng)

修改紅框內(nèi)的內(nèi)容,注意不要改動(dòng)包括最兩段的雙引號以外的內(nèi)容,否則會(huì)報(bào)錯(cuò)。
我改為了這樣(?ω?)

修改完后保存退出(你會(huì)保存退出了吧)
然后可以輸入指令sh run.sh來啟動(dòng)機(jī)器人。
小白除了可以簡單地修改插件的配置文件,也可以導(dǎo)入插件。這里以導(dǎo)入原神面板插件為例
在命令行界面輸入指令cd /home/qqbot/ZeroBot-Plugin然后輸入指令git clone https://gitee.com/lianhong2758/kokomi-plugin.git ./plugin/kokomi/回車,正確結(jié)果如圖

再次輸入指令sh run.sh就可以在機(jī)器人中使用該插件了?(??????)?
如果你有疑問可以私信我(emm我每周都會(huì)打開一次B站看看,你也可以去看我的舊專欄中的Q&A和評論區(qū)以及舊視頻)