在CentOS7下構建TeamSpeak服務器并增加網易云點歌插件

文章目錄

    • 部署TeamSpeak
      • 創建一個新用戶
      • 下載并解壓服務端
        • 下載
        • 解壓
      • 啟動服務端
        • 同意許可協議
        • 啟動與配置
        • 開放端口
        • 設置開機自啟
      • 客戶端連接
    • 部署TS3AudioBot并添加網易云插件
      • 安裝ffmpeg
      • 下載TS3AudioBot本體與插件并解壓
      • 配置TS3AudioBot啟動
      • 設置開機自啟
    • 部署網易云API
      • 安裝git
      • 安裝Node.js和npm
      • 搭建API
      • 設置開機自啟
    • 將插件與API連接
    • 設置機器人指令權限
    • 啟動機器人

首先ssh登錄到我們的服務器。

部署TeamSpeak

創建一個新用戶

這是為了方便管理,而且部分操作不方便通過root賬號完成。

這里我們創建一個名為teamspeak的賬戶:

# 新建用戶teamspeak
useradd teamspeak
# 給予sudo權限
usermod -a -G sudo teamspeak
# 設置密碼
passwd teaspeak
# 切換用戶并定位到家目錄
su teamspeak
cd ~

下載并解壓服務端

下載

https://www.teamspeak.com/zh-CN/downloads/#server

以上為官網下載地址,可以在那里查看最新版本,可以選擇從官網下載下來再傳輸到服務器上,也可以直接命令行下載:

# 需要服務器已安裝wget
wget https://files.teamspeak-services.com/releases/server/3.13.7/teamspeak3-server_linux_amd64-3.13.7.tar.bz2

如果你的服務器沒有安裝wget:

注意使用root賬號。

# 使用yum安裝wget
sudo yum install -y wget
解壓
# 使用tar命令解壓
tar -xvf teamspeak3-server_linux_amd64-3.13.7.tar.bz2

如果解壓報錯“Error is not recoverable: exiting now”:

需要安裝bz2相關內容,使用root賬號:

# 使用yum安裝bzip2
sudo yum install -y bzip2

創建teamspeak目錄,把解壓后的東西塞進去:

mkdir teamspeak
mv  teamspeak3-server_linux_amd64 teamspeak-rf 
rm -rf teamspeak3-server_linux_amd64
cd teamspeak

啟動服務端

同意許可協議
# 沒什么好說的,就是同意許可協議
touch .ts3server_license_accepted
啟動與配置
# 啟動服務端
./ts3server_startscript.sh start

第一次啟動,會顯示包括token在內的重要的信息,記得保存!!!

然后Ctrl+C退出。

開放端口

我們需要為服務器開放一些端口,否則無法與客戶端進行通訊。

以下是端口列表,不僅僅要在服務器開放,還要在云服務提供商的控制臺的安全組中開放。

端口協議說明
9987UDPTeamSpeak語音服務端口
10011TCPTeamSpeak ServerQuery raw 端口
10022TCPTeamSpeak ServerQuery SSH 端口
30033TCPTeamSpeak 文件傳輸端口
41144TCPTSDNS 服務器端口
58913TCP機器人網站后臺端口(不開無所謂)
3000TCP網易云api后臺端口(后面要用,先放開這個端口)

在服務器開放端口:

firewall-cmd --zone=public --add-port=9987/udp --permanent && firewall-cmd --reloa
firewall-cmd --zone=public --add-port=10011/tcp --permanent && firewall-cmd --reloa
firewall-cmd --zone=public --add-port=10022/tcp --permanent && firewall-cmd --reloa
firewall-cmd --zone=public --add-port=30033/tcp --permanent && firewall-cmd --reloa
firewall-cmd --zone=public --add-port=41144/tcp --permanent && firewall-cmd --reloa
firewall-cmd --zone=public --add-port=3000/tcp --permanent && firewall-cmd --reloa

在安全組開放端口:

設置開機自啟

注意使用root賬號。

# 新建teamspeak.service
vim /etc/systemd/system/teamspeak.service

然后i進入INSERT模式,寫文件:

[Unit]
Description=Teamspeak Service
Wants=network.target[Service]
WorkingDirectory=/home/teamspeak
ExecStart=/home/teamspeak/teamspeak/ts3server_minimal_runscript.sh
ExecStop=/home/teamspeak/teamspeak/ts3server_startscript.sh stop
ExecReload=/home/teamspeak/teamspeak/ts3server_startscript.sh restart
Restart=always
RestartSec=15[Install]
WantedBy=multi-user.target

然后Esc:wq!強制保存并退出。

# 更新配置
systemctldaemon-reload# 設置開機啟動
systemctl enable teamspeak.service# 啟動服務
systemctl start teamspeak.service# 查看狀態,如果有active (running)說明成功了
systemctl status teamspeak.service

客戶端連接

這個時候就可以去官網設置服務器別名了,或者也可以直接裸連服務器地址。

連接后使用上面保存的token設置自己為超級管理員。

隨后自定義各種設置。

部署TS3AudioBot并添加網易云插件

安裝ffmpeg

yum -y install epel-release
rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm
yum -y install ffmpeg opus-devel

下載TS3AudioBot本體與插件并解壓

不要下載官方的,因為官方給的linux版編譯環境有問題導致后面不能正常加載插件

下載ZHANGTIAOYAO1重構后的版本與FiveHair修改后的網易云插件。

命令行下載:

# 切換teamspeak賬號
su teamspeak
cd ~
wget https://github.com/ZHANGTIANYAO1/TS3AudioBot-NetEaseCloudmusic-plugin/releases/download/1.1.0/with.TS3Bot.linux-x64.zip
wget https://github.com/FiveHair/TS3AudioBot-NetEaseCloudmusic-plugin-UNM/releases/download/2.0.3.1/YunPlugin-UNM-2.0.3.1.zip

解壓本體與插件并拷貝插件至本體的plugins目錄:

unzip with.TS3Bot.linux-x64.zip
mv linux-x64 TS3AudioBot
unzip YunPlugin-UNM-2.0.3.1.zip
cd TS3AudioBot/plugins
rm *
cd ~
mv YunPlugin-UNM.dll TS3AudioBot/plugins/
mv YunSettings.ini TS3AudioBot/plugins/

配置TS3AudioBot啟動

cd TS3AudioBot
chmod 755 TS3AudioBot
./TS3AudioBot

隨后根據引導設置管理員的uid(在客戶端上面“權限”菜單中打開“所有客戶端列表”可以看到服務器所有人的uid)、服務器ip、密碼等。

然后直接Ctrl+C結束進程。

設置開機自啟

注意切換root賬號:

# ts3audiobot.service
vim /etc/systemd/system/ts3audiobot.service

然后i進入INSERT模式,寫文件:

[Unit]
Description=TS3AudioBot
After=teamspeak.service[Service]
WorkingDirectory=/home/teamspeak/TS3AudioBot/
ExecStart=/home/teamspeak/TS3AudioBot/TS3AudioBot
Restart=always
RestartSec=15[Install]
WantedBy=multi-user.target

然后Esc:wq!強制保存并退出。

# 更新配置
systemctldaemon-reload# 設置開機啟動
systemctl enable ts3audiobot.service# 啟動服務
systemctl start ts3audiobot.service# 查看狀態,如果有active (running)說明成功了
systemctl status ts3audiobot.service

部署網易云API

安裝git

sudo yum install -y git
# 設置用戶名
git config --global user.name "名字"
# 設置郵箱
git config --global user.email "郵箱"

安裝Node.js和npm

sudo yum install -y nodejs
sudo yum install -y npm

搭建API

注意還是切換到teamspeak賬號:

su teamspeak
cd ~
sudo git clone git@gitlab.com:Binaryify/NeteaseCloudMusicApi.git

由于網易云的趕盡殺絕,大部分API都寄了,而這個其實也寄了。但是雖然github上改倉庫刪除歸檔了,我們依舊能在gitlab找到全部源碼。

cd NeteaseCloudMusicApi
sudo npm install
sudo node app.js

此時顯示server running ...即為配置成功,按Ctrl+C,退出。

設置開機自啟

注意切換root用戶:

# netease.service
vim /etc/systemd/system/netease.service

然后i進入INSERT模式,寫文件:

[Unit]
Description=Netease Cloud Music API Service
After=network.target[Service]
WorkingDirectory=/home/teamspeak/NeteaseCloudMusicApi/
ExecStart=/usr/bin/node /home/teamspeak/NeteaseCloudMusicApi/app.js
Restart=always
RestartSec=15[Install]
WantedBy=multi-user.target

然后Esc:wq!強制保存并退出。

# 更新配置
systemctldaemon-reload# 設置開機啟動
systemctl enable netease.service# 啟動服務
systemctl start netease.service# 查看狀態,如果有active (running)說明成功了
systemctl status netease.service

將插件與API連接

注意還是切回teamspeak賬號:

cd ~
cd TS3AudioBot/plugins
vim YunSettings.ini

將鏈接修改為本地:

# 如果原本等號后面有東西就刪掉
WangYiYunAPI_Address = http://localhost:3000

設置機器人指令權限

設置誰能操控機器人誰能點歌,在/home/teamspeak/TS3AudioBot目錄下的rights.toml中有詳細的說明與設置方法。

啟動機器人

之后的操作僅在客戶端就能完成。

聊天框輸入!plugin list,找到網易云插件(狀態應該是RDY就緒)的編號(假設是#0)。

輸入!plugin load 0(后面數字得看編號)加載插件。

然后再查看插件列表,網易云插件的狀態應該為(+ON運行)

之后輸入!yun login后根據機器人的頭像與簡潔設置登錄網易云(請給機器人管理員權限)。

大功告成!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/19776.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/19776.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/19776.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

解讀vue3源碼-2

提示:看到我 請讓滾去學習 vue3編譯模版的提升 文章目錄 vue3編譯模版的提升靜態節點提升補丁標志和block的使用附錄: template explorer可以將我們的源模版轉化成渲染函數代碼,vue2中就有,而Vue3 template explorer 功能更加豐富…

外匯天眼:ESMA發布針對在投資服務中使用人工智能的公司的指導意見

歐洲證券和市場管理局(ESMA),歐盟的金融市場監管機構和監督機構,發布了一份聲明,為在向零售客戶提供投資服務時使用人工智能技術(AI)的公司提供初步指導。 盡管人工智能的普及仍處于初期階段&am…

請描述Vue常用的修飾符

在 Vue 中,修飾符(Modifiers)常用于自定義指令(Directives)和事件監聽(Event Listeners)中,以改變指令或事件監聽器的默認行為。以下是一些 Vue 中常用的修飾符: 1. 事件…

你認識nginx嗎,nginx是做什么的,nginx可以做什么 --2)nginx配置

hello大家今天教大家如何用nginx實驗tomcat的負載均衡,同理其他的也可以,如httpd等 首先需要準備一個nginx和tomcat包,這里用到的是版本號為 然后需要準備最少三臺linux虛擬機,然后我們開始吧 1.安裝tomcat 解包 tar zxf /mnt/…

學習 SSH Key 生成方法

SSH Key 是用于身份驗證的一對密鑰,包括公鑰和私鑰。公鑰可以放在需要訪問的服務器上,私鑰則保留在本地。當你使用SSH連接到支持SSH Key認證的服務器時,服務器會用公鑰來加密一個隨機生成的字符串發送給客戶端,客戶端用私鑰解密并…

C語言(字符和字符串函數)2

Hi~!這里是奮斗的小羊,很榮幸各位能閱讀我的文章,誠請評論指點,歡迎歡迎~~ 💥個人主頁:小羊在奮斗 💥所屬專欄:C語言 本系列文章為個人學習筆記,在這里撰寫成文一…

【LeetCode 130. 被圍繞的區域】

1. 題目 2. 分析 這題其實非常不錯。如果正向解,非常麻煩;因為很難界定哪些O是被包圍的?但是如果反向解呢?因為邊界的O不會被包圍,那么就可以想到跟邊界O相連的O都不會被包圍。那么除此之外的O都會被包圍&#xff0c…

【sklearn | 6】無監督學習與聚類分析

在前幾篇教程中,我們探討了 sklearn 的基礎、高級功能,異常檢測與降維,時間序列分析與自然語言處理,模型部署與優化,以及集成學習與模型解釋。本篇教程將專注于無監督學習和聚類分析,這在探索性數據分析和數…

github有趣項目:自制“我的世界” project make

videocodehttps://www.youtube.com/watch?v4O0_-1NaWnY,https://www.bilibili.com/video/BV1oj411p7qM/?https://github.com/jdah/minecraft-weekend MAKE git clone --recurse-submodules https://github.com/jdah/minecraft-weekend.git 正克隆到 minecraft-weekend... …

x264 參考幀管理源碼分析

x264參考幀管理 在x264中,參考幀的管理是一個重要的組成部分,因為它涉及到視頻編碼過程中的幀間預測。以下是關于x264參考幀管理的一些關鍵點: 參考幀的分類:在x264中,幀可以分為幾類,包括參考幀、當前編碼幀和未使用幀等。 參考幀的作用:參考幀用于幀間預測,通過比較當…

【Qt】之【Get√】QByteArray寫入txt文件、QByteArray截取數據

寫入文件 QFile file(path);if (file.open(QIODevice::WriteOnly)) {// 將 QImage 保存到文件file.write(jsonData.toByteArray());// 關閉文件file.close();SCDebug << "saved to" << path;} else {SCDebug << "Failed to open file for wri…

直播分享|深入解析ts-morph:通過注釋生成類型文檔

? ? 你看小狗在叫 樹葉會笑 風聲在呢喃? ? 乘風追夢&#xff0c;童心未泯 OpenTiny 預祝所有大朋友、小朋友兒童節快樂~ 與此同時&#xff0c;OpenTiny 貢獻者直播也即將開啟啦~ 直播主題&#xff1a;【深入解析ts-morph&#xff1a;通過注釋生成類型文檔】 6月1日&am…

碳課堂|入門必看!碳足跡(CFP)主要國際標準一覽

一、碳足跡概念 碳足跡&#xff08;Carbon FootPrint&#xff0c;CFP&#xff09;是用來衡量個體、組織、產品或國家在一定時間內直接或間接導致的二氧化碳排放量的指標。產品碳足跡屬于碳排放核算的一種&#xff0c;一般指產品從原材料加工、運輸、生產到出廠銷售等流程所產生…

NeuralForecast 推理 - 從csv文件里讀取數據進行推理

NeuralForecast 推理 - 從csv文件里讀取數據進行推理 flyfish from ray import tunefrom neuralforecast.core import NeuralForecast from neuralforecast.auto import AutoMLP from neuralforecast.models import NBEATS, NHITS import torch import torch.nn as nn import…

【Java】剛剛!突然!緊急通知!垃圾回收!

【Java】剛剛&#xff01;突然&#xff01;緊急通知&#xff01;垃圾回收&#xff01; 文章目錄 【Java】剛剛&#xff01;突然&#xff01;緊急通知&#xff01;垃圾回收&#xff01;從C語言的內存管理引入&#xff1a;手動回收Java的垃圾回收機制引用計數器循環引用問題 可達…

SpringBoot六種API請求參數讀取方式

SpringBoot六種API請求參數讀取方式 同步請求和異步請求 同步: 指單線程依次做幾件事異步: 指多線程同時做幾件事 同步請求: 指客戶端瀏覽器只有一個主線程, 此線程負責頁面的渲染和發出請求等操作, 如果此主線程發出請求的話則停止渲染而且會清空頁面顯示的內容 直到服務器響…

優化基礎(二):線性組合、仿射組合、錐組合、凸組合、線性集合、仿射集合、錐集合、凸集合的理解

文章目錄 前言組合線性組合 (linear combination)仿射組合 (affine combination)錐組合 (conic combination)凸組合 (convex combination) 集合仿射集合凸集合 練習&#xff1a;哪個圖形是凸的&#xff0c;哪個是仿射的&#xff1f;參考資料 前言 組合側重于描述由一些基點生成…

越洗越黑”的Pandas數據清洗

引言 先來一個腦筋急轉彎活躍一下枯燥工作日常&#xff0c;問&#xff1a;“什么東西越洗越黑&#xff1f;” 有沒有猜到的&#xff1f;猜不到我告訴你吧&#xff01; 答案是“煤球”。那么這個腦機急轉彎跟我們要討論的話題有沒有關系呢&#xff1f; 嗯是的&#xff0c;還是沾…

三相智能電表通過Modbus轉Profinet網關與PLC通訊案例

Modbus轉Profinet網關&#xff08;XD-MDPN100/300&#xff09;的主要功能是實現Modbus協議和Profinet協議之間的轉換和通信。Modbus轉Profinet網關集成了Modbus和Profinet兩種協議&#xff0c;支持Modbus RTU主站/從站&#xff0c;并可以與RS485接口的設備&#xff0c;它自帶網…

「前端+鴻蒙」核心技術HTML5+CSS3

1、CS架構與BS架構 CS架構(Client-Server):客戶端/服務器架構。用戶通過客戶端軟件與服務器進行交互,客戶端需要安裝特定的軟件才能訪問服務器上的資源。BS架構(Browser-Server):瀏覽器/服務器架構。用戶通過瀏覽器訪問服務器上的網頁,無需安裝額外的軟件,所有的交互都…