แพ็กเกจอย่างเป็นทางการ · ชิ้นส่วนเรียลไทม์
ห้องเกมและล็อบบี้ผ่าน WebSocket
ห้องบนแชนเนล presence: ที่นั่งตามลำดับการเข้า โฮสต์ที่ส่งต่อเมื่อออก สถานะพร้อม การตั้งค่า การเตะ การเริ่มเกม และแชตในห้อง ฝั่งเซิร์ฟเวอร์ลงนามที่นั่งและแสดงรายการห้องที่เปิดอยู่
@hibira-io/lobbyเดโมสด ↗npm ↗GitHub ↗
- ใช้ได้ในเบราว์เซอร์, React Native และเอนจินเกมที่รัน JavaScript
- authorizeRoom() คุมจำนวนคนในห้องไม่ให้เกิน ส่วน listRooms() คืนรายการห้องที่เปิดอยู่
- ห้องของ Unity และ Godot ใช้อีเวนต์ชุดเดียวกัน ผู้เล่นจากทุกเอนจินจึงพบกันในห้องเดียว
ลงชื่อเข้าใช้เพื่อดูโค้ดตัวอย่างเหล่านี้พร้อมโฮสต์คลัสเตอร์ของคุณเอง ลงชื่อเข้าใช้
ติดตั้ง
npm install @hibira-io/lobby pusher-jsใช้งาน
import { Room } from '@hibira-io/lobby'; const pusher = new Pusher('YOUR_APP_KEY', { cluster: 'hkg', wsHost: 'ws.hibira.io', channelAuthorization: { endpoint: '/rooms/auth' }, }); const room = Room.join(pusher, 'presence-room-42', { capacity: 4 }); room.on('members', ({ players }) => render(players)); room.setReady(true);
ก่อนเริ่ม
- เปิด "อนุญาตอีเวนต์ฝั่งไคลเอนต์" ในการตั้งค่าแอป เพื่อให้ผู้เล่นส่งการเคลื่อนไหวและการแตะถึงกันได้
- แชนเนล private และ presence ต้องมี auth endpoint บนแบ็กเอนด์ที่ลงนามการสมัครรับด้วยซีเคร็ตของแอป เหมือนกับ pusher-js
ใช้ app key จากแดชบอร์ดของคุณ ส่วน secret ให้เก็บไว้บนเซิร์ฟเวอร์เท่านั้น ช่อง อีเวนต์ และ endpoint การยืนยันสิทธิ์ทำงานเหมือนกับที่ใช้กับ Pusher ทุกประการ สร้างบัญชีฟรีของคุณ →