SetOnRoomChange と SetOnRoomChangeByID イベントの使い方

Diarkis Room では、ルームで発生するあらゆる変更のイベントをキャプチャしてコールバックを実行することが可能です。

既存のルームに以下のような変更があった場合に呼び出されるコールバックを指定することができます。
  • 新しいメンバーがルームに参加した
  • メンバーが退室した
  • プロパティが変更された

イベントの種別

コールバックには、どのルームで発生したイベントであるかを示すルームIDと、何が起こったかを理解するのに役立つイベントタイプが渡されます。

新しいメンバーがルームに参加した

room.MemberAdded - Event type to indicate that a new member has joined a room

ルームからメンバーが離脱した

room.MemberRemoved - Event type to indicate that a member has left a room

ルームのプロパティに更新があった

room.PropertyChanged - Event type to indicate that at least one property has been changed

コールバックの例 SetOnRoomChange

このコールバックは存在する全てのルームに対して発火するイベントコールバックです。

room.SetOnRoomChange(func(roomID string, eventType int, memberIDs []string, properties map[string]interface{
// roomID - Room ID that of the event
// eventType - room.MemberAdded, room.MemberRemoved, room.PropertyChanged
// memberIDs - List of current room member user IDs
// properties - Room property map
}))

コールバックの例 SetOnRoomChangeByID

このコールバックは、Room ID が指定されたルームに対してのみ発火するイベントコールバックです。

room.SetOnRoomChangeByID(roomID, func(roomID string, eventType int, memberIDs []string, properties map[string]interface{
// roomID - Room ID that of the event
// eventType - room.MemberAdded, room.MemberRemoved, room.PropertyChanged
// memberIDs - List of current room member user IDs
// properties - Room property map
}))