ข้ามไปเนื้อหา
SNTalkBot 5.1.4 / TTUHelper 1.5.2 / Web Manager 1.1.7
- SNTalkBot: เพิ่ม one-shot TeamTalk Administrator credential verifier สำหรับ Web Manager; รับ secret JSON ทาง stdin, login ชั่วคราวด้วย TeamTalk SDK, ตรวจ UserType=Administrator แล้ว disconnect โดยไม่เก็บรหัสผ่าน
- SNTalkBot: แก้ strict Linux verification ที่ vendor TeamTalk5.py/TTSDK_license.txt ติด CRLF โดย normalize text เป็น LF ตอน Docker build; canonical commands ยังคง 124
- Web Manager: ลูกค้าสร้างบอตได้ด้วย TeamTalk Administrator username/password ของตนเองแม้ชื่อเว็บคนละชื่อ; ค่า username ที่ Super Admin ผูกไว้เป็นเพียงค่าเริ่มต้นช่วยกรอก ไม่ใช่ authorization gate
- Web Manager: กลุ่มลบแสดงเฉพาะ instance ที่หยุดแล้ว และ backend ปฏิเสธ delete ด้วย 409 หาก container ยังทำงาน; exact-name confirmation + TTUHelper backup ยังคงอยู่
- Web Manager: คง Guardian 1.0.0 บน 28765, FastAPI backend 28766, stopped-state suppression และ realtime room/server/admin detail เดิม
- TTUHelper: คง 22 คำสั่งและ ownership/collision/backup safety เดิม
SNTalkBot 5.1.2 / TTUHelper 1.5.2 / Web Manager 1.1.5
- SNTalkBot: Realtime Dashboard นับจำนวนคนในห้องที่บอตอยู่จริง แยกจำนวนทั้งเซิร์ฟเวอร์ และไม่รวมทุก session ที่ใช้ TeamTalk username ของบอตเองเป็นผู้ใช้/Administrator ของมนุษย์
- SNTalkBot: ส่งรายละเอียดคนในห้อง, Administrator ในห้อง/ทั้งเซิร์ฟเวอร์ และ Voice/Media/Video/Desktop แยกขอบเขตห้องกับเซิร์ฟเวอร์ โดยยังคง 124 canonical commands; . <คิว> และ , <คิว> เป็นรูปแบบเพิ่มของคำสั่งเดิม
- Web Manager: เพิ่ม Web Guardian 1.0.0 เป็น service กลางบน 127.0.0.1:28765 ส่วน FastAPI ใช้ 127.0.0.1:28766 ทำให้ routine self-update มีหน้า maintenance แทน raw 502 ระหว่าง backend restart
- Web Manager: บอตที่หยุดแล้วไม่แสดง runtime snapshot เก่าค้าง และหน้า Dashboard/รายละเอียดมีกลุ่มลบที่ต้องพิมพ์ชื่อยืนยันก่อน TTUHelper สำรองข้อมูลแล้วลบ
- Web Manager: หน้า realtime แสดงจำนวนคนในห้อง/ทั้งเซิร์ฟเวอร์, รายชื่อคนในห้อง, Administrator, activity, Player/Manager และสถานะ self-update แบบเหมาะกับคีย์บอร์ด/โปรแกรมอ่านหน้าจอ
- TTUHelper: คง 22 คำสั่งสาธารณะและกลไก backup/ownership guard เดิม; Web Manager เรียก action ตาม command จริงและคู่มือได้รับการตรวจให้ตรงกับระบบ
SNTalkBot 5.1.1 / TTUHelper 1.5.2 / Web Manager 1.1.4
- SNTalkBot: แยกสถานะผลค้นหาของแต่ละรายการในคิว และเพิ่ม . <หมายเลขคิว> / , <หมายเลขคิว> เพื่อเปลี่ยนผลค้นหาของคิวที่ระบุโดยไม่รบกวนคิวของผู้ใช้อื่น
- TTUHelper: เพิ่ม Docker ownership guard ให้ run/stop/restart/delete/logs ปฏิเสธ container ของบริการอื่นเมื่อชื่อชน โดยคงคำสั่งสาธารณะ 22 คำสั่งเดิมครบ
- Web Manager: ป้องกันชื่อ instance ชน Docker container ก่อนสร้าง และจำกัด inspect/logs ให้เฉพาะ container ที่มี ownership label ของ TTUHelper พร้อมเพิ่ม action-matrix regression test
- Web Manager/TTUHelper: คง production layout แบบ Docker-only และ /opt/sntalkbot-bots พร้อมตรวจ Bash/LF บน Linux
- Web Manager: เปลี่ยน Self-update เป็น staged/backup/rollback จึงไม่ล้มเมื่อ source บนเซิร์ฟเวอร์มี local changes, CRLF หรือไฟล์ untracked และจะคืนรุ่นเดิมอัตโนมัติถ้า installer รุ่นใหม่ล้ม
- Web Manager: การติดตั้ง/อัปเดตจะ restart service จริงและตรวจ health version ให้ตรงกับ source; self-update จากหน้าเว็บ defer restart อย่างปลอดภัยเพื่อไม่ตัด job กลางทาง
5.1.0 / TTUHelper 1.5.0 / Web Manager 1.1.0
- เพิ่ม SNTalkBot 5.1.0 Realtime API แบบ read-only ต่อ instance โดย TTUHelper สุ่มพอร์ต loopback 20000-27999 และ token แยกกัน จึงดูสถานะสดได้โดยไม่เปิด API ของบอตสู่ Internet
- เพิ่ม TTUHelper 1.5.0: คำสั่ง delete สำรองข้อมูลก่อนลบ, จัดพอร์ต API แบบไม่ซ้ำพร้อม lock, ปรับ Linux shared-data permission/setgid และ installer ตรวจของที่มีอยู่ก่อนติดตั้งเฉพาะสิ่งที่ขาด
- เพิ่ม SNTalkBot Web Manager 1.1.0 สำหรับจัดการหลาย instance ผ่านเว็บ: สร้าง/เริ่ม/หยุด/รีสตาร์ต/ลบ, Log, Config, CPU/RAM, Cookies, Migration, Doctor และ Update โดยไม่เปิด web shell
- Web Manager รองรับหลายบัญชี: ผู้ใช้คนแรกเป็น Super Admin, Super Admin เท่านั้นสร้างบัญชีเพิ่ม และผู้ใช้ทั่วไปจัดการได้เฉพาะ instance/Job ของตนเอง
- การสร้างบอตผ่านเว็บตรวจว่า TeamTalk username ของเจ้าของเป็น Administrator ที่ออนไลน์อยู่จริง และตัดบัญชีของบอตเองออกจากรายชื่อ Administrator
- Dashboard แสดงสถานะสด เช่นห้องปัจจุบัน ผู้ใช้ออนไลน์ Administrator ที่ออนไลน์ Voice/Media/Video/Desktop เพลงปัจจุบัน โหมดคิว รายการคิวและผู้เพิ่ม โดย fallback ไป runtime_status.json เมื่อ API ใช้ไม่ได้
- Web Manager ป้องกันผู้ใช้ทั่วไปเปลี่ยน TeamTalk host/ports/bot login หลังยืนยันสิทธิ์เจ้าของแล้ว; Super Admin ยังแก้ connection identity ได้เมื่อจำเป็น
- การอัปเดต Web Manager รักษาค่า bind/port/HTTPS secure-cookie เดิมและอัปเดต privileged bridge/systemd พร้อม source ไม่ให้หน้าเว็บกับ root action คนละรุ่น
5.0.0
- แยก Full Bot, Player Bot และ Server Manager ชัดเจน แต่ Full Bot รวมความสามารถ Player + Manager ไว้ครบ
- เพิ่ม status เป็นแดชบอร์ดคำสั่งเดียวตามประเภทบอต: ทุกโหมดเห็นสถานะ TeamTalk พื้นฐาน, Player/Full เห็นเพลง/คิว/Autoplay/Cookies และผู้ดูแล Manager/Full เห็นตัวควบคุม moderation/input เพิ่มเติม
- เพิ่ม events [1-25] สำหรับผู้ดูแล Manager/Full เพื่อดูเหตุการณ์ล่าสุด เช่น login/join/leave, การแก้ชื่อหรือสถานะ, การเปลี่ยน Channel, ไฟล์ในห้อง, server update และ media/video/desktop โดยเก็บแบบวงแหวนในหน่วยความจำ
- filter on ตรวจซ้ำเมื่อผู้ใช้เปลี่ยน nickname/status หลัง login และเมื่อแก้ชื่อหรือ Topic ของ Channel ภายหลัง จึงไม่สามารถหลบตัวกรองด้วยการเปลี่ยนข้อมูลทีหลัง
- events บันทึกการใช้คำสั่งผู้ดูแลเฉพาะชื่อ action และผู้สั่ง โดยไม่เก็บ argument รหัสผ่าน token หรือข้อความลับ
- คำสั่งใช้แบบไม่มี / ได้ทั้ง Private และ Channel; Private ที่พิมพ์คำสั่งไม่ถูกต้องจะแนะนำให้ใช้ h โดยไม่รบกวนบทสนทนาปกติใน Channel
- จัดคำสั่งย่อให้หนึ่งคำสั่งหลักมี shorthand เดียว เช่น a=about, c=select, j=join และ vt=voicetx เพื่อลดความสับสน
- about แสดงประเภทบอตและแนะนำ dr <ข้อความของคุณ> สำหรับแจ้งบั๊ก ขอฟีเจอร์ หรือเสนอแนะ โดยไม่พาไปหน้า support ที่ไม่มีแบบฟอร์ม
- ตัวกรองคำใช้ blacklist multilingual ชุดเดียวสำหรับไทย อังกฤษ และภาษาอื่น; filter on/off คุมทั้งหมด และยังกรองได้เมื่อ ci off
- แก้ Queue FIFO ไม่ให้เพลงที่เพิ่มตรงจังหวะเพลงจบแซงคิวเดิม; เพลงที่เล่นจบถูกนำออกทีละรายการ, dq ลบทีละรายการ, cq ล้างคิว และ s หยุดพร้อมล้างทั้งหมด
- คิวจำชื่อผู้เพิ่มและเวลาที่เพิ่ม; ข้อความ/TTS บอกว่าใครเพิ่มเพลงหรือ playlist ลงคิวที่ลำดับ/ช่วงใด และ ql แสดงผู้เพิ่มกับเวลาที่ผ่านไป
- เพิ่ม pp <playlist_link> สำหรับต่อ YouTube/YouTube Music playlist ชุดที่ 2, 3, ... โดยไม่หยุดเพลงปัจจุบัน; Queue Mode เพิ่มทั้ง playlist ต่อท้าย FIFO ตามลำดับเดิม
- ใช้ c <ลำดับ> เป็นคำสั่งสั้นเพียงตัวเดียวของ select เช่น c 56; ,/. ใช้เลื่อนผลค้นหา และ n/b ใช้ Related Radio ในโหมดปกติ
- M2/Autoplay ต่อเพลงใกล้เคียงผ่าน YouTube Mix / YouTube Music Radio หลังรายการปกติหรือ playlist session เล่นจบ โดยไม่แทรกลำดับ playlist ที่ผู้ใช้เปิดไว้
- Player/Full มี default YouTube cookies จากโปรเจกต์เดิมให้เริ่มใช้งานได้ทันที; วันหลังสามารถใช้ TTUHelper แทน /app/data/cookies.txt ด้วยชุดที่ export เองโดยไม่ถูก default overwrite
- TTUHelper 1.4 รองรับติดตั้ง/ตรวจ cookies สำหรับ Player/Full และติดตั้งตัว helper ได้ทั้งดาวน์โหลด ZIP หรือ git clone