แพ็กเกจอย่างเป็นทางการ · ชิ้นส่วนเรียลไทม์

ห้องเกมและล็อบบี้ผ่าน WebSocket

ห้องบนแชนเนล presence: ที่นั่งตามลำดับการเข้า โฮสต์ที่ส่งต่อเมื่อออก สถานะพร้อม การตั้งค่า การเตะ การเริ่มเกม และแชตในห้อง ฝั่งเซิร์ฟเวอร์ลงนามที่นั่งและแสดงรายการห้องที่เปิดอยู่

  • ใช้ได้ในเบราว์เซอร์, React Native และเอนจินเกมที่รัน JavaScript
  • authorizeRoom() คุมจำนวนคนในห้องไม่ให้เกิน ส่วน listRooms() คืนรายการห้องที่เปิดอยู่
  • ห้องของ Unity และ Godot ใช้อีเวนต์ชุดเดียวกัน ผู้เล่นจากทุกเอนจินจึงพบกันในห้องเดียว

ลงชื่อเข้าใช้เพื่อดูโค้ดตัวอย่างเหล่านี้พร้อมโฮสต์คลัสเตอร์ของคุณเอง ลงชื่อเข้าใช้

  1. ติดตั้ง

    npm install @hibira-io/lobby pusher-js
  2. ใช้งาน

    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 ทุกประการ สร้างบัญชีฟรีของคุณ →