Events API

Real-time events and messaging

Events API

Real-time event streaming and pub/sub messaging for your applications.

Publishing Events

// Publish a custom event
await aethex.events.publish({
  channel: 'game:lobby',
  event: 'player:ready',
  data: {
    playerId: 'user_abc',
    character: 'warrior'
  }
});

Subscribing to Events

// Subscribe to a channel
const subscription = aethex.events.subscribe('game:lobby');

subscription.on('player:ready', (data) => {
  console.log('Player ready:', data.playerId);
});

subscription.on('game:start', (data) => {
  console.log('Game starting!');
});

// Unsubscribe
subscription.unsubscribe();

Presence Channels

// Join a presence channel
const room = await aethex.events.presence('room:123');

room.on('member:join', (member) => {
  console.log(member.name, 'joined');
});

room.on('member:leave', (member) => {
  console.log(member.name, 'left');
});

// Get current members
const members = room.getMembers();