# MCBotPlugin ปลั๊กอิน LangBot สำหรับกลุ่มแชทเซิร์ฟเวอร์ Minecraft: ผูกเซิร์ฟเวอร์เข้ากับกลุ่ม สอบถามสถานะเซิร์ฟเวอร์แบบเรียลไทม์และผู้เล่นออนไลน์ และติดตามเวลาเล่นของผู้เล่นแต่ละคน > นี่คือเวอร์ชันที่ย้าย [MCBotPlugin](https://github.com/langbot-app/MCBotPlugin) รุ่นเก่า (สร้างสำหรับ QChatGPT) มายัง LangBot plugin SDK ใหม่ พื้นที่จัดเก็บถูกเปลี่ยนจาก MongoDB เป็น KV storage ในตัวของปลั๊กอิน (ไม่ต้องใช้ฐานข้อมูลภายนอก) การสอบถามสถานะ Minecraft เปลี่ยนจาก `mctools` แบบ synchronous เป็น `mcstatus` แบบ asynchronous และการสุ่มเก็บเวลาเล่นในเบื้องหลังเปลี่ยนจาก thread เป็น asyncio task ## ฟีเจอร์ - **ผูกเซิร์ฟเวอร์**: แต่ละกลุ่มผูกเซิร์ฟเวอร์ Minecraft (Java Edition) ได้หนึ่งเครื่อง - **สอบถามสถานะ**: ดู MOTD เวอร์ชัน จำนวนผู้เล่นออนไลน์ และรายชื่อผู้เล่นแบบเรียลไทม์ - **สถิติเวลาเล่น**: งานเบื้องหลังสุ่มเก็บข้อมูลผู้เล่นออนไลน์ และรวมเวลาออนไลน์ของผู้เล่นแต่ละคนในช่วงเวลาใดก็ได้ ## คำสั่ง | คำสั่ง | คำอธิบาย | สิทธิ์ | | --- | --- | --- | | `!mcbot` | แสดงความช่วยเหลือ | ทุกคน | | `!mcbot bind <ที่อยู่[:พอร์ต]>` | ผูกเซิร์ฟเวอร์เข้ากับกลุ่มนี้ | ผู้ดูแล | | `!mcbot unbind` | ยกเลิกการผูกเซิร์ฟเวอร์ | ผู้ดูแล | | `!mcbot status` | แสดงสถานะเซิร์ฟเวอร์และผู้เล่นออนไลน์ | ทุกคน | | `!mcbot time [นาที]` | แสดงสถิติเวลาเล่น (ค่าเริ่มต้น 1440 นาที = 24 ชม.) | ทุกคน | > ผู้ดูแลกำหนดจากการตั้งค่า `admins` ของ LangBot (`{launcher_type}_{launcher_id}`) ## การตั้งค่า | คีย์ | คำอธิบาย | ค่าเริ่มต้น | | --- | --- | --- | | `track_interval` | ช่วงเวลาสุ่มเก็บข้อมูลผู้เล่นออนไลน์ (วินาที) ขั้นต่ำ 15 | 60 | | `ping_timeout` | เวลา timeout ในการ ping เซิร์ฟเวอร์ (วินาที) | 10 | ## สิ่งที่ต้องพึ่งพา - [`mcstatus`](https://github.com/py-mine/mcstatus) —— การสอบถามสถานะเซิร์ฟเวอร์ Minecraft ## การจัดเก็บข้อมูล ข้อมูลการผูกและบันทึกการออนไลน์ถูกเก็บไว้ใน KV storage ในตัวของปลั๊กอิน LangBot ไม่ต้องใช้ MongoDB บันทึกการออนไลน์จะถูกเก็บไว้ 14 วันโดยค่าเริ่มต้น