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();