删除无用文件

This commit is contained in:
liuzhihang1
2024-06-26 20:46:16 +08:00
parent 831ea9889f
commit 952912a6ed
3 changed files with 0 additions and 247 deletions

View File

@@ -1,8 +0,0 @@
LogLevel: "debug"
Listen: ":8797"
EsConfig:
Enable: true
Url: "http://xcon.top:9200"
Index: "server_log_v1"
Username: "elastic"
Password: "1625167628@xcon"

View File

@@ -1,128 +0,0 @@
{
"user": [
{
"account": "admin",
"password": "91cd3b960f31c06fc4048ff44e6654c1"
},
{
"account": "user",
"password": "5f4dcc3b5aa765d61d8327deb882cf99"
}
],
"server": [
{
"name": "bungeecord",
"args": [
"/usr/lib/jvm/java-17-openjdk-amd64/bin/java",
"-Xmx580M",
"-Xms100M",
"-jar",
"waterfall-1.19-510.jar"
],
"cwd": "/MCS/BungeeCord",
"autoRestart": true,
"push": true,
"logReport": true
},
{
"name": "lobby",
"args": [
"java",
"-jar",
"-server",
"-Xmx1000M",
"paper-1.16.5-794.jar"
],
"cwd": "/MCS/lobby",
"autoRestart": true,
"push": true,
"logReport": true
},
{
"name": "main",
"args": [
"java",
"-jar",
"-server",
"-Xmx8000M",
"launcher-airplane.jar"
],
"cwd": "/MCS",
"autoRestart": true,
"push": true,
"logReport": true
},
{
"name": "s1",
"args": [
"java",
"-jar",
"-server",
"-Xmx5000M",
"launcher-airplane.jar"
],
"cwd": "/MCS/server1",
"autoRestart": true,
"push": true,
"logReport": true
},
{
"name": "起床战争bungeecord",
"args": [
"java",
"-jar",
"BB.jar"
],
"cwd": "/MCS/bed/[25565]BungeeCord",
"autoRestart": true
},
{
"name": "起床战争looby",
"args": [
"java",
"-jar",
"paper-1.16.5-794.jar"
],
"cwd": "/MCS/bed/[25566]Lobby",
"autoRestart": true
},
{
"name": "起床战争入侵",
"args": [
"/usr/lib/jvm/java-8-openjdk-amd64/bin/java",
"-jar",
"RQS.jar"
],
"cwd": "/MCS/bed/[20003]BedWars-入侵",
"autoRestart": true
},
{
"name": "起床战争蘑菇",
"args": [
"/usr/lib/jvm/java-8-openjdk-amd64/bin/java",
"-jar",
"PaperSpigot-1.8.8.jar"
],
"cwd": "/MCS/bed/[10002]BedWarsXP-蘑菇",
"autoRestart": true
}
],
"mq": {
"enable": true,
"mqurl": "amqp://admin:1625167628%40xcon@xcon.top:5672/",
"queue_name": "log_queue_publisher",
"exchange": "log_exchange_publisher",
"routing_key": "server_log"
},
"push": {
"feishu": {
"enable": true,
"webhook": "https://open.feishu.cn/open-apis/bot/v2/hook/86f491ba-6c7a-413b-86e6-d72420934bd9"
},
"wechat":{
"enable": true,
"webhook": "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=5f3fae11-da5c-45a7-8ae9-ceaca2dc1495"
}
},
"logLevel": "debug"
}

View File

@@ -1,111 +0,0 @@
package main
import (
"io"
"log"
"net/http"
"os/exec"
"github.com/creack/pty"
"github.com/gorilla/websocket"
)
var upgrader = websocket.Upgrader{
CheckOrigin: func(r *http.Request) bool {
return true
},
}
func main() {
http.HandleFunc("/ws", handleWebSocket)
log.Println("Server started at :8080")
log.Fatal(http.ListenAndServe(":8080", nil))
}
func handleWebSocket(w http.ResponseWriter, r *http.Request) {
conn, err := upgrader.Upgrade(w, r, nil)
if err != nil {
log.Println("Upgrade:", err)
return
}
defer conn.Close()
// 启动 Minecraft 服务器
cmd := exec.Command("java", "-jar", "launcher-airplane.jar")
// 创建伪终端
ptmx, err := pty.Start(cmd)
if err != nil {
log.Println("Start pty:", err)
return
}
defer func() { _ = ptmx.Close() }() // 最后关闭伪终端
// 创建通道用于读取子程序的输出
outputChan := make(chan string)
go func() {
defer close(outputChan)
readOutput(ptmx, outputChan)
}()
// 将子程序的输出发送到 WebSocket 客户端
go func() {
for output := range outputChan {
if err := conn.WriteMessage(websocket.TextMessage, []byte(output)); err != nil {
log.Println("WriteMessage:", err)
break
}
}
}()
// 从 WebSocket 客户端读取消息并发送到子程序的标准输入
for {
_, message, err := conn.ReadMessage()
if err != nil {
log.Println("ReadMessage:", err)
break
}
// 检查是否是发送 Tab 键的命令
if string(message) == "SEND_TAB" {
_, err := ptmx.Write([]byte{9}) // Tab 键的 ASCII 码是 9
if err != nil {
log.Println("Write to stdin:", err)
}
} else if string(message) == "READ_INPUT" {
// 读取伪终端当前输入管道内已经存在的内容
// 注意:伪终端没有单独的输入缓冲区,输入会立即被处理
// 这里假设你想获取当前输出内容
if err := conn.WriteMessage(websocket.TextMessage, []byte("Currently no direct way to fetch unsent input. Consider monitoring the terminal buffer.")); err != nil {
log.Println("WriteMessage:", err)
}
} else {
_, err := ptmx.Write(append(message, '\n')) // 确保命令后有换行符
if err != nil {
log.Println("Write to stdin:", err)
}
}
}
// 等待子程序结束
if err := cmd.Wait(); err != nil {
log.Println("Wait:", err)
return
}
}
func readOutput(reader io.Reader, outputChan chan<- string) {
buf := make([]byte, 1024)
for {
n, err := reader.Read(buf)
if n > 0 {
outputChan <- string(buf[:n])
}
if err != nil {
if err != io.EOF {
log.Println("Read:", err)
}
break
}
}
}