Diarkis C++Client Library API Document
Diarkis::Modules::IDiarkisRoom クラスabstract

Room機能のインターフェースクラス [詳解]

#include <room.h>

公開メンバ関数

virtual ~IDiarkisRoom ()
 IDiarkisFieldクラスのデストラクタ [詳解]
 
virtual void SetLoggerFactory (const std::shared_ptr< IDiarkisLoggerFactory > &loggerFactory, const Diarkis::StdString &loggerNameSuffix)=0
 ロガーを登録します。 [詳解]
 
virtual bool SetupAsTcp (const std::shared_ptr< IDiarkisTcp > &tcp)=0
 TCP プロトコルとして Room を設定します。 [詳解]
 
virtual bool SetupAsUdp (const std::shared_ptr< IDiarkisUdp > &udp)=0
 RoomをUDPプロトコルとして設定します。 [詳解]
 
virtual bool SetTcp (const std::shared_ptr< IDiarkisTcp > &tcp)=0
 RoomをTCPプロトコルとして設定します。 [詳解]
 
virtual bool SetUdp (const std::shared_ptr< IDiarkisUdp > &udp)=0
 RoomをUDPプロトコルとして設定します。 [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisRoomCreationEventArgs & > > GetCreateEvent ()=0
 Roomが作成されたときに呼び出されるコールバックイベントを取得します。 [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisRoomJoinEventArgs & > > GetJoinEvent ()=0
 Roomに参加したときに呼び出されるコールバックイベントを取得します [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisRoomSuccessEventArgs & > > GetLeaveEvent ()=0
 Roomを退出したときに呼び出されるコールバックイベントを取得します [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< void * > > GetMigrateStartEvent ()=0
 Roomの移行が開始されたときに呼び出されるコールバックイベントを取得します。 [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisRoomMigrateCompleteEventArgs & > > GetMigrateCompleteEvent ()=0
 Roomの移行が完了した際に呼び出されるコールバックイベントを取得します。 [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisPayloadEventArgs & > > GetMemberJoinEvent ()=0
 ルームに別のクライアントが参加したときに呼ばれるコールバックイベントを取得します。 [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisPayloadEventArgs & > > GetMemberLeaveEvent ()=0
 ルームからメンバーが退出した際に呼ばれるコールバックイベントを取得します。 [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisPayloadEventArgs & > > GetMemberBroadcastEvent ()=0
 ブロードキャストメッセージを受信したときに呼び出されるコールバックイベントを取得します。 [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisPayloadEventArgs & > > GetMemberMessageEvent ()=0
 MessageToでメッセージを受信した際に呼び出されるコールバックイベントを取得します。 [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisPayloadEventArgs & > > GetMemberExclusiveBroadcastEvent ()=0
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisPayloadEventArgs & > > GetMemberExclusiveMessageEvent ()=0
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisRoomSuccessEventArgs & > > GetUpdatePropertiesEvent ()=0
 UpdatePropertiesでプロパティが更新されたときに呼び出されるコールバックイベントを取得します。 [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisRoomPropertiesEventArgs & > > GetGetPropertiesEvent ()=0
 GetPropertiesでプロパティが取得されたときに呼び出されるコールバックイベントを取得します。 [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisRoomPropertiesEventArgs & > > GetUpdateSyncPropertiesEvent ()=0
 UpdatePropertiesでプロパティが更新されたときに呼び出されるコールバックイベントを取得します。 [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisRoomIncrementPropertyEventArgs & > > GetIncrementPropertyEvent ()=0
 IncrementPropertyでプロパティが変更されたときに呼び出されるコールバックイベントを取得します。 [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisRoomIncrementPropertySyncEventArgs & > > GetIncrementPropertySyncEvent ()=0
 IncrementProperty でプロパティが変更されたときに呼び出されるコールバックイベントを取得します。 [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisRoomGetOwnerIDEventArgs & > > GetOwnerIDEvent ()=0
 参加しているRoomの所有者のユーザーIDが取得されたときに呼び出されるコールバックイベントを取得します。 [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisRoomMemberIDsEventArgs & > > GetMemberIDSEvent ()=0
 ルームに参加しているメンバーのユーザーIDが取得されたときに呼び出されるコールバックイベントを取得します。 [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisRoomNumberOfMembersEventArgs & > > GetNumberOfMembersEvent ()=0
 Roomのメンバー数を取得するために呼び出されるコールバックイベントを取得する [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisRoomPayloadEventArgs & > > GetRegisterEvent ()=0
 参加中のRoomに追加情報が登録されたときに呼び出されるコールバックイベントを取得します [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisRoomFindByTypeEventArgs & > > GetFindByTypeEvnet ()=0
 FindRoomsByTypeの結果が受信されたときに呼び出されるコールバックイベントを取得します。 [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisRoomPayloadEventArgs & > > GetReserveEvent ()=0
 Reserve への応答を受け取ったときに呼び出されるコールバックイベントを取得します [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisRoomPayloadEventArgs & > > GetCancelReservationEvent ()=0
 CancelReservation に対するレスポンスを受信したときに呼び出されるコールバックイベントを取得します [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisRoomPayloadEventArgs & > > GetChatSyncResponseEvent ()=0
 チャット送信の応答を受信したときに呼び出されるコールバックイベントを取得します [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisRoomChatEventArgs & > > GetChatSyncEvent ()=0
 チャットを受信したときに呼び出されるコールバックイベントを取得する [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisRoomChatLogEventArgs & > > GetChatLogEvent ()=0
 GetChatLogの応答を受信した際に呼び出されるコールバックイベントを取得します [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisP2PEventArgs & > > GetStartP2PSyncEvent ()=0
 StartP2PSyncプッシュ通知を受信した時に呼び出されるコールバックイベントを取得します [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisRoomGetOwnerIDEventArgs & > > GetOwnerChangeEvent ()=0
 ルームオーナーが変更されたときに呼び出されるコールバックイベントを取得します [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisRoomObjectUpdateEventArgs & > > GetObjectUpdateEvent ()=0
 UpdateObject push を受信した際に呼び出されるコールバックイベントを取得します [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisRoomObjectUpdateResponseEventArgs & > > GetObjectUpdateResponseEvent ()=0
 UpdateObjectの応答を受信したときに呼び出されるコールバックイベントを取得します [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisPayloadEventArgs & > > GetRelayEvent ()=0
 Relayによってメッセージを受信した際に呼ばれるコールバックイベントを取得します [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< const DiarkisPayloadEventArgs & > > GetRelayToEvent ()=0
 RelayToにメッセージを受信した際に呼び出されるコールバックイベントを取得します [詳解]
 
virtual std::shared_ptr< IDiarkisEvent< void * > > GetOfflineEvent ()=0
 サーバーがシャットダウンする準備が整ったときに呼び出されるコールバックイベントを取得します [詳解]
 
virtual Diarkis::System::Result Create (uint16_t maxMembers, bool allowEmpty, bool join, uint16_t ttl, uint32_t interval=200)=0
 新しいRoomを作成します。 [詳解]
 
virtual Diarkis::System::Result Join (const char *roomID, const uint8_t *message, size_t messageSize)=0
 Roomに参加します。 [詳解]
 
virtual Diarkis::System::Result Join (const Diarkis::StdString &roomID, const Diarkis::StdVector< uint8_t > &message)=0
 Join()と同じです [詳解]
 
virtual Diarkis::System::Result JoinRandom (uint16_t maxMembers, uint16_t ttl, const uint8_t *message, size_t messageSize, uint32_t interval=200, bool allowEmpty=false)=0
 ルームに参加可能な場合は参加し、そうでない場合は新しいルームを作成します。 [詳解]
 
virtual Diarkis::System::Result JoinRandom (uint16_t maxMembers, uint16_t ttl, const Diarkis::StdVector< uint8_t > &message, uint32_t interval=200, bool allowEmpty=false)=0
 JoinRandom()と同じです [詳解]
 
virtual Diarkis::System::Result Leave (const char *roomID, const uint8_t *message, size_t messageSize)=0
 ルームを退出する。 [詳解]
 
virtual Diarkis::System::Result Leave (const Diarkis::StdString &roomID, const Diarkis::StdVector< uint8_t > &message)=0
 Leave()と同じです [詳解]
 
virtual Diarkis::System::Result BroadcastTo (const char *roomID, const uint8_t *message, size_t messageSize, bool reliable=true)=0
 自分を含む全てのRoomメンバーにメッセージを送信します。 [詳解]
 
virtual Diarkis::System::Result BroadcastTo (const Diarkis::StdString &roomID, const Diarkis::StdVector< uint8_t > &message, bool reliable=true)=0
 BroadcastTo()と同じ [詳解]
 
virtual Diarkis::System::Result ExclusiveBroadcastTo (const Diarkis::StdString &roomID, const Diarkis::StdVector< uint8_t > &message, bool reliable=true)=0
 
virtual Diarkis::System::Result ExclusiveBroadcastTo (const char *roomID, const uint8_t *message, size_t messageSize, bool reliable=true)=0
 
virtual Diarkis::System::Result ExclusiveMessageTo (const Diarkis::StdString &roomID, const Diarkis::StdVector< Diarkis::StdString > &memberIDs, const Diarkis::StdVector< uint8_t > &message, bool reliable=true)=0
 
virtual Diarkis::System::Result ExclusiveMessageTo (const char *roomID, const char **memberIDs, size_t memberIDsCount, const uint8_t *message, size_t messageSize, bool reliable=true)=0
 
virtual Diarkis::System::Result MessageTo (const char *roomID, const char **memberIDs, size_t memberIDsCount, const uint8_t *message, size_t messageSize, bool reliable=true)=0
 特定のRoomに参加しているメンバーにメッセージを送信します。 [詳解]
 
virtual Diarkis::System::Result MessageTo (const Diarkis::StdString &roomID, const Diarkis::StdVector< Diarkis::StdString > &memberIDs, const Diarkis::StdVector< uint8_t > &message, bool reliable=true)=0
 MessageTo()と同じです [詳解]
 
virtual Diarkis::System::Result Relay (const uint8_t *message, size_t messageSize, bool reliable=true)=0
 自分以外のRoomメンバーにメッセージを送信します。 [詳解]
 
virtual Diarkis::System::Result Relay (const Diarkis::StdVector< uint8_t > &message, bool reliable=true)=0
 Relay()と同じです [詳解]
 
virtual Diarkis::System::Result RelayTo (const char *roomID, const char **memberIDs, size_t memberIDsCount, const uint8_t *message, size_t messageSize, bool reliable=true)=0
 特定のRoomに参加しているメンバーにメッセージを送信します。 [詳解]
 
virtual Diarkis::System::Result RelayTo (const Diarkis::StdString &roomID, const Diarkis::StdVector< Diarkis::StdString > &memberIDs, const Diarkis::StdVector< uint8_t > &message, bool reliable=true)=0
 RelayTo()と同じ [詳解]
 
virtual Diarkis::System::Result UpdateProperties (const char *roomID, const Diarkis::StdUnorderedMap< Diarkis::StdString, Diarkis::StdVector< uint8_t >> &properties, bool sync=false)=0
 Roomのプロパティを設定します。 [詳解]
 
virtual Diarkis::System::Result UpdateProperties (const Diarkis::StdString &roomID, const Diarkis::StdUnorderedMap< Diarkis::StdString, Diarkis::StdVector< uint8_t >> &properties, bool sync=false)=0
 UpdateProperties()と同じです [詳解]
 
virtual Diarkis::System::Result GetProperties (const char *roomID, const char **propertyNames, size_t propertyCount)=0
 Roomのプロパティを取得します。 [詳解]
 
virtual Diarkis::System::Result GetProperties (const Diarkis::StdString &roomID, const Diarkis::StdVector< Diarkis::StdString > &propertyNames)=0
 GetProperties()と同じです [詳解]
 
virtual Diarkis::System::Result IncrementProperty (const char *propertyName, int64_t delta, bool sync)=0
 指定されたRoomのプロパティの値を増減させます。 [詳解]
 
virtual Diarkis::System::Result IncrementProperty (Diarkis::StdString propertyName, int64_t delta, bool sync)=0
 IncrementProperty()と同じ [詳解]
 
virtual Diarkis::System::Result GetOwnerID ()=0
 Roomの所有者のユーザーIDを取得します。 [詳解]
 
virtual Diarkis::System::Result GetMemberIDs ()=0
 Roomに参加しているメンバーのユーザーIDのリストを取得します。 [詳解]
 
virtual Diarkis::System::Result GetNumberOfMembers (const char *roomID)=0
 Room内のメンバー数を取得します。 [詳解]
 
virtual Diarkis::System::Result GetNumberOfMembers (const Diarkis::StdString &roomID)=0
 GetNumberOfMembers()と同じです [詳解]
 
virtual Diarkis::System::Result Migrate ()=0
 ルームを別のサーバーに移行します。 [詳解]
 
virtual Diarkis::System::Result Move (Diarkis::StdString roomID_, const Diarkis::StdVector< uint8_t > &leaveMessage, const Diarkis::StdVector< uint8_t > &joinMessage)=0
 現在いるRoomから退出し、新しいRoomに参加します。 OnLeaveとOnJoinを発生させ、リモートでOnMemberLeaveとOnMemberJoinを発生させます。 通常のイベントを聞く代わりに、コールバックを使用することができます。 [詳解]
 
virtual Diarkis::System::Result Register (uint32_t roomType, const char *roomName, const char *roomMetadata)=0
 Roomに追加される情報を登録します [詳解]
 
virtual Diarkis::System::Result Register (uint32_t roomType, const Diarkis::StdString &roomName, const Diarkis::StdString &roomMetadata)=0
 Register()と同じです [詳解]
 
virtual Diarkis::System::Result FindRoomsByType (uint32_t roomType, uint32_t limit)=0
 同じタイプのRoomを検索します。 [詳解]
 
virtual Diarkis::System::Result Reserve (const char **userIDs, size_t userIDsSize)=0
 Roomに参加するメンバーを予約します。 [詳解]
 
virtual Diarkis::System::Result Reserve (const Diarkis::StdVector< Diarkis::StdString > &userIDs)=0
 Reserve()と同じ [詳解]
 
virtual Diarkis::System::Result CancelReservation (const char *cancelRoomID, const char **userIDs, size_t userIDsSize)=0
 Roomの予約をキャンセルします。 [詳解]
 
virtual Diarkis::System::Result CancelReservation (const Diarkis::StdString &cancelRoomID, const Diarkis::StdVector< Diarkis::StdString > &userIDs)=0
 CancelReservation()と同じです [詳解]
 
virtual Diarkis::System::Result CancelReservation (const Diarkis::StdVector< Diarkis::StdString > &userIDs)=0
 現在入室しているRoomの予約をキャンセルする [詳解]
 
virtual Diarkis::System::Result SendChatMessage (const char *message)=0
 Roomメンバーにチャットメッセージを送信します。 [詳解]
 
virtual Diarkis::System::Result SendChatMessage (const Diarkis::StdString &message)=0
 SendChatMessage()と同じ [詳解]
 
virtual Diarkis::System::Result GetChatLog ()=0
 過去のチャットメッセージを取得します。 [詳解]
 
virtual Diarkis::System::Result StartP2PSync (uint8_t linkedClients=0)=0
 Roomに参加するメンバーとのP2P通信を開始します。 [詳解]
 
virtual Diarkis::System::Result UpdateObject (RoomObjectMode mode, const Diarkis::StdString &name, const Diarkis::StdUnorderedMap< Diarkis::StdString, double > &obj, bool reliable=true)=0
 Roomオブジェクトを更新します。 [詳解]
 
virtual const Diarkis::StdStringGetRoomID ()=0
 参加しているRoomのRoom IDを取得します。 [詳解]
 
virtual void SetRoomID (const char *roomID)=0
 RoomのRoom IDを設定します。 [詳解]
 
virtual void SetRoomID (const Diarkis::StdString &roomID)=0
 SetRoomID()と同じです [詳解]
 
virtual void RegisterCustomMessagePush (uint8_t version, uint16_t command, std::function< void(const Diarkis::StdVector< uint8_t > &)> callback)=0
 カスタムメッセージ関数を登録します。 [詳解]
 

詳解

Room機能のインターフェースクラス

Roomを使用するための関数が宣言されています。

構築子と解体子

◆ ~IDiarkisRoom()

virtual Diarkis::Modules::IDiarkisRoom::~IDiarkisRoom ( )
inlinevirtual

IDiarkisFieldクラスのデストラクタ

関数詳解

◆ SetLoggerFactory()

virtual void Diarkis::Modules::IDiarkisRoom::SetLoggerFactory ( const std::shared_ptr< IDiarkisLoggerFactory > &  loggerFactory,
const Diarkis::StdString loggerNameSuffix 
)
pure virtual

ロガーを登録します。

引数
[in]loggerFactoryIDiarkisLoggerFactoryへのポインタ
[in]loggerNameSuffixログに出力されるタグに追加される文字列

◆ SetupAsTcp()

virtual bool Diarkis::Modules::IDiarkisRoom::SetupAsTcp ( const std::shared_ptr< IDiarkisTcp > &  tcp)
pure virtual

TCP プロトコルとして Room を設定します。

OnPush および OnResponse などのイベントリスナーを設定します。

◆ SetupAsUdp()

virtual bool Diarkis::Modules::IDiarkisRoom::SetupAsUdp ( const std::shared_ptr< IDiarkisUdp > &  udp)
pure virtual

RoomをUDPプロトコルとして設定します。

OnPushやOnResponseなどのイベントリスナーをセットアップします。

◆ SetTcp()

virtual bool Diarkis::Modules::IDiarkisRoom::SetTcp ( const std::shared_ptr< IDiarkisTcp > &  tcp)
pure virtual

RoomをTCPプロトコルとして設定します。

◆ SetUdp()

virtual bool Diarkis::Modules::IDiarkisRoom::SetUdp ( const std::shared_ptr< IDiarkisUdp > &  udp)
pure virtual

RoomをUDPプロトコルとして設定します。

◆ GetCreateEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisRoomCreationEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetCreateEvent ( )
pure virtual

Roomが作成されたときに呼び出されるコールバックイベントを取得します。

Roomが作成されたときにコールバックイベントが呼び出されます。

◆ GetJoinEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisRoomJoinEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetJoinEvent ( )
pure virtual

Roomに参加したときに呼び出されるコールバックイベントを取得します

Room参加レスポンスを受信したときにコールバックイベントが呼び出されます。

◆ GetLeaveEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisRoomSuccessEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetLeaveEvent ( )
pure virtual

Roomを退出したときに呼び出されるコールバックイベントを取得します

Room Leaveレスポンスを受信したときにコールバックイベントが呼び出されます。

◆ GetMigrateStartEvent()

virtual std::shared_ptr<IDiarkisEvent<void*> > Diarkis::Modules::IDiarkisRoom::GetMigrateStartEvent ( )
pure virtual

Roomの移行が開始されたときに呼び出されるコールバックイベントを取得します。

このイベントは、Roomのオーナーによって実行されたMigrateによって、すべてのRoomメンバーに通知されます。

◆ GetMigrateCompleteEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisRoomMigrateCompleteEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetMigrateCompleteEvent ( )
pure virtual

Roomの移行が完了した際に呼び出されるコールバックイベントを取得します。

◆ GetMemberJoinEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisPayloadEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetMemberJoinEvent ( )
pure virtual

ルームに別のクライアントが参加したときに呼ばれるコールバックイベントを取得します。

◆ GetMemberLeaveEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisPayloadEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetMemberLeaveEvent ( )
pure virtual

ルームからメンバーが退出した際に呼ばれるコールバックイベントを取得します。

◆ GetMemberBroadcastEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisPayloadEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetMemberBroadcastEvent ( )
pure virtual

ブロードキャストメッセージを受信したときに呼び出されるコールバックイベントを取得します。

◆ GetMemberMessageEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisPayloadEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetMemberMessageEvent ( )
pure virtual

MessageToでメッセージを受信した際に呼び出されるコールバックイベントを取得します。

◆ GetMemberExclusiveBroadcastEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisPayloadEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetMemberExclusiveBroadcastEvent ( )
pure virtual

◆ GetMemberExclusiveMessageEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisPayloadEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetMemberExclusiveMessageEvent ( )
pure virtual

◆ GetUpdatePropertiesEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisRoomSuccessEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetUpdatePropertiesEvent ( )
pure virtual

UpdatePropertiesでプロパティが更新されたときに呼び出されるコールバックイベントを取得します。

◆ GetGetPropertiesEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisRoomPropertiesEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetGetPropertiesEvent ( )
pure virtual

GetPropertiesでプロパティが取得されたときに呼び出されるコールバックイベントを取得します。

◆ GetUpdateSyncPropertiesEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisRoomPropertiesEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetUpdateSyncPropertiesEvent ( )
pure virtual

UpdatePropertiesでプロパティが更新されたときに呼び出されるコールバックイベントを取得します。

◆ GetIncrementPropertyEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisRoomIncrementPropertyEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetIncrementPropertyEvent ( )
pure virtual

IncrementPropertyでプロパティが変更されたときに呼び出されるコールバックイベントを取得します。

◆ GetIncrementPropertySyncEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisRoomIncrementPropertySyncEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetIncrementPropertySyncEvent ( )
pure virtual

IncrementProperty でプロパティが変更されたときに呼び出されるコールバックイベントを取得します。

◆ GetOwnerIDEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisRoomGetOwnerIDEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetOwnerIDEvent ( )
pure virtual

参加しているRoomの所有者のユーザーIDが取得されたときに呼び出されるコールバックイベントを取得します。

◆ GetMemberIDSEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisRoomMemberIDsEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetMemberIDSEvent ( )
pure virtual

ルームに参加しているメンバーのユーザーIDが取得されたときに呼び出されるコールバックイベントを取得します。

◆ GetNumberOfMembersEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisRoomNumberOfMembersEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetNumberOfMembersEvent ( )
pure virtual

Roomのメンバー数を取得するために呼び出されるコールバックイベントを取得する

◆ GetRegisterEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisRoomPayloadEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetRegisterEvent ( )
pure virtual

参加中のRoomに追加情報が登録されたときに呼び出されるコールバックイベントを取得します

◆ GetFindByTypeEvnet()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisRoomFindByTypeEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetFindByTypeEvnet ( )
pure virtual

FindRoomsByTypeの結果が受信されたときに呼び出されるコールバックイベントを取得します。

◆ GetReserveEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisRoomPayloadEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetReserveEvent ( )
pure virtual

Reserve への応答を受け取ったときに呼び出されるコールバックイベントを取得します

◆ GetCancelReservationEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisRoomPayloadEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetCancelReservationEvent ( )
pure virtual

CancelReservation に対するレスポンスを受信したときに呼び出されるコールバックイベントを取得します

◆ GetChatSyncResponseEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisRoomPayloadEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetChatSyncResponseEvent ( )
pure virtual

チャット送信の応答を受信したときに呼び出されるコールバックイベントを取得します

◆ GetChatSyncEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisRoomChatEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetChatSyncEvent ( )
pure virtual

チャットを受信したときに呼び出されるコールバックイベントを取得する

◆ GetChatLogEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisRoomChatLogEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetChatLogEvent ( )
pure virtual

GetChatLogの応答を受信した際に呼び出されるコールバックイベントを取得します

◆ GetStartP2PSyncEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisP2PEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetStartP2PSyncEvent ( )
pure virtual

StartP2PSyncプッシュ通知を受信した時に呼び出されるコールバックイベントを取得します

◆ GetOwnerChangeEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisRoomGetOwnerIDEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetOwnerChangeEvent ( )
pure virtual

ルームオーナーが変更されたときに呼び出されるコールバックイベントを取得します

◆ GetObjectUpdateEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisRoomObjectUpdateEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetObjectUpdateEvent ( )
pure virtual

UpdateObject push を受信した際に呼び出されるコールバックイベントを取得します

◆ GetObjectUpdateResponseEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisRoomObjectUpdateResponseEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetObjectUpdateResponseEvent ( )
pure virtual

UpdateObjectの応答を受信したときに呼び出されるコールバックイベントを取得します

◆ GetRelayEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisPayloadEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetRelayEvent ( )
pure virtual

Relayによってメッセージを受信した際に呼ばれるコールバックイベントを取得します

◆ GetRelayToEvent()

virtual std::shared_ptr<IDiarkisEvent<const DiarkisPayloadEventArgs&> > Diarkis::Modules::IDiarkisRoom::GetRelayToEvent ( )
pure virtual

RelayToにメッセージを受信した際に呼び出されるコールバックイベントを取得します

◆ GetOfflineEvent()

virtual std::shared_ptr<IDiarkisEvent<void*> > Diarkis::Modules::IDiarkisRoom::GetOfflineEvent ( )
pure virtual

サーバーがシャットダウンする準備が整ったときに呼び出されるコールバックイベントを取得します

◆ Create()

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::Create ( uint16_t  maxMembers,
bool  allowEmpty,
bool  join,
uint16_t  ttl,
uint32_t  interval = 200 
)
pure virtual

新しいRoomを作成します。

GetCreateEvent() に登録されたコールバックイベントがトリガーされます。

引数
[in]maxMembers作成されるRoomに参加できるクライアントの最大数。
[in]allowEmptyクライアントが1人も参加していなくてもRoomを保持するかどうかを決定します。
[in]join作成後にRoomに参加するかどうかを決定します。
true = 作成後にRoomに参加します。サーバーからJoinレスポンスは送信されません。
false = Roomを作成のみ行います。Roomに参加したい場合は、別途Joinを行う必要があります。
[in]ttl空になった後のRoomの有効期間を秒単位で指定します。allowEmptyにtrueが指定されている場合にのみ使用されます。
[in]intervalサーバーがBroadcastメッセージなどを処理する間隔をミリ秒単位で指定します。
intervalの値が大きいと、サーバーの負荷が軽減されますが、メッセージの受信に遅延が発生します。
intervalの値が小さいと、サーバーの負荷が増加しますが、メッセージがサーバーから直ちに送信されます。
デフォルト値は200 msです。

◆ Join() [1/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::Join ( const char *  roomID,
const uint8_t *  message,
size_t  messageSize 
)
pure virtual

Roomに参加します。

GetJoinEvent()で登録されたコールバックイベントがトリガーされます。
Roomのメンバーに登録されたGetMemberJoinEvent()で登録されたコールバックイベントがトリガーされます。 uidで指定されたユーザーIDはコールバックイベントから受信できます。

引数
[in]roomID参加するRoomのRoomID
[in]messageメンバーが参加する際に送信されるメッセージ
[in]messageSizeメッセージの長さ

◆ Join() [2/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::Join ( const Diarkis::StdString roomID,
const Diarkis::StdVector< uint8_t > &  message 
)
pure virtual

Join()と同じです

◆ JoinRandom() [1/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::JoinRandom ( uint16_t  maxMembers,
uint16_t  ttl,
const uint8_t *  message,
size_t  messageSize,
uint32_t  interval = 200,
bool  allowEmpty = false 
)
pure virtual

ルームに参加可能な場合は参加し、そうでない場合は新しいルームを作成します。

新しいルームが作成されると、GetCreateEvent()で登録されたコールバックイベントと、
GetJoinEvent()で登録されたコールバックイベントがトリガーされます。
既存のルームに参加する場合は、GetJoinEvent()で登録されたコールバックイベントのみがトリガーされます。

引数
[in]maxMembers作成されるルームに参加できるクライアントの最大数。
[in]ttlルームが空になってからの期間(秒単位)、allowEmptyがtrueに設定されている場合にのみ使用されます。
[in]messageメンバーが参加したときに送信されるメッセージ
[in]messageSizeメッセージの長さ
[in]intervalサーバーがメッセージを処理する間隔(ミリ秒単位)を指定します。
メッセージはサーバーで一定時間まとめて送信されます。
intervalの値が大きいと、サーバーの負荷が低減されますが、メッセージの受信に遅延が生じます。
intervalの値が小さいと、サーバーの負荷が増加しますが、メッセージがサーバーから直ちに送信されます。
デフォルト値は200 msです。
[in]allowEmpty誰も参加しないときでもクライアントがルームを保持するかどうかを決定します。

◆ JoinRandom() [2/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::JoinRandom ( uint16_t  maxMembers,
uint16_t  ttl,
const Diarkis::StdVector< uint8_t > &  message,
uint32_t  interval = 200,
bool  allowEmpty = false 
)
pure virtual

JoinRandom()と同じです

◆ Leave() [1/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::Leave ( const char *  roomID,
const uint8_t *  message,
size_t  messageSize 
)
pure virtual

ルームを退出する。

GetLeaveEvent() で登録されたコールバックイベントがトリガーされます。 退出が成功すると、GetMemberLeaveEvent() で登録されたコールバックイベントがルームの各メンバーでトリガーされます。

引数
[in]roomIDルームのルームID
[in]messageルームから退出する際にメンバーに送信されるメッセージ
[in]messageSizeメッセージの長さ

◆ Leave() [2/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::Leave ( const Diarkis::StdString roomID,
const Diarkis::StdVector< uint8_t > &  message 
)
pure virtual

Leave()と同じです

◆ BroadcastTo() [1/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::BroadcastTo ( const char *  roomID,
const uint8_t *  message,
size_t  messageSize,
bool  reliable = true 
)
pure virtual

自分を含む全てのRoomメンバーにメッセージを送信します。

GetMemberBroadcastEvent() で登録されたコールバックイベントをトリガーします。

引数
[in]roomIDRoomのRoom ID
[in]message送信するメッセージ
[in]messageSizeメッセージの長さ
[in]reliableメッセージが信頼性のある通信(RUDP)を介して送信されるかどうかを決定します;TCPプロトコルには無視されます。

◆ BroadcastTo() [2/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::BroadcastTo ( const Diarkis::StdString roomID,
const Diarkis::StdVector< uint8_t > &  message,
bool  reliable = true 
)
pure virtual

BroadcastTo()と同じ

◆ ExclusiveBroadcastTo() [1/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::ExclusiveBroadcastTo ( const Diarkis::StdString roomID,
const Diarkis::StdVector< uint8_t > &  message,
bool  reliable = true 
)
pure virtual

◆ ExclusiveBroadcastTo() [2/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::ExclusiveBroadcastTo ( const char *  roomID,
const uint8_t *  message,
size_t  messageSize,
bool  reliable = true 
)
pure virtual

◆ ExclusiveMessageTo() [1/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::ExclusiveMessageTo ( const Diarkis::StdString roomID,
const Diarkis::StdVector< Diarkis::StdString > &  memberIDs,
const Diarkis::StdVector< uint8_t > &  message,
bool  reliable = true 
)
pure virtual

◆ ExclusiveMessageTo() [2/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::ExclusiveMessageTo ( const char *  roomID,
const char **  memberIDs,
size_t  memberIDsCount,
const uint8_t *  message,
size_t  messageSize,
bool  reliable = true 
)
pure virtual

◆ MessageTo() [1/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::MessageTo ( const char *  roomID,
const char **  memberIDs,
size_t  memberIDsCount,
const uint8_t *  message,
size_t  messageSize,
bool  reliable = true 
)
pure virtual

特定のRoomに参加しているメンバーにメッセージを送信します。

GetMemberMessageEvent()で登録されたコールバックイベントがトリガーされます。

引数
[in]roomIDRoomのRoom ID
[in]memberIDs送信するメンバーのユーザーIDのリスト
[in]memberIDsCountメンバーIDの数
[in]message送信するメッセージ
[in]messageSizeメッセージの長さ
[in]reliableメッセージが信頼性のある通信(RUDP)を介して送信されるかどうかを決定します。TCPプロトコルでは無視されます。

◆ MessageTo() [2/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::MessageTo ( const Diarkis::StdString roomID,
const Diarkis::StdVector< Diarkis::StdString > &  memberIDs,
const Diarkis::StdVector< uint8_t > &  message,
bool  reliable = true 
)
pure virtual

MessageTo()と同じです

◆ Relay() [1/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::Relay ( const uint8_t *  message,
size_t  messageSize,
bool  reliable = true 
)
pure virtual

自分以外のRoomメンバーにメッセージを送信します。

Broadcastとは異なり、サーバーによってメッセージは編集されません。
GetRelayEvent()で登録されたコールバックイベントがトリガーされます。

引数
[in]message送信するメッセージ
[in]messageSizeメッセージの長さ
[in]reliableメッセージが信頼性のある通信(RUDP)を介して送信されるかどうかを決定します。TCPプロトコルの場合は無視されます。

◆ Relay() [2/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::Relay ( const Diarkis::StdVector< uint8_t > &  message,
bool  reliable = true 
)
pure virtual

Relay()と同じです

◆ RelayTo() [1/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::RelayTo ( const char *  roomID,
const char **  memberIDs,
size_t  memberIDsCount,
const uint8_t *  message,
size_t  messageSize,
bool  reliable = true 
)
pure virtual

特定のRoomに参加しているメンバーにメッセージを送信します。

MessageToとは異なり、メッセージはサーバーによってコンパイルされません。
GetRelayToEvent()で登録されたコールバックイベントがトリガーされます。

引数
[in]roomIDRoomのRoom ID
[in]memberIDs送信するメンバーのユーザーIDのリスト
[in]memberIDsCountメンバーIDの数
[in]message送信するメッセージ
[in]messageSizeメッセージの長さ
[in]reliableメッセージが確実な通信(RUDP)を介して送信されるかどうかを決定します。TCPプロトコルの場合は無視されます。

◆ RelayTo() [2/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::RelayTo ( const Diarkis::StdString roomID,
const Diarkis::StdVector< Diarkis::StdString > &  memberIDs,
const Diarkis::StdVector< uint8_t > &  message,
bool  reliable = true 
)
pure virtual

RelayTo()と同じ

◆ UpdateProperties() [1/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::UpdateProperties ( const char *  roomID,
const Diarkis::StdUnorderedMap< Diarkis::StdString, Diarkis::StdVector< uint8_t >> &  properties,
bool  sync = false 
)
pure virtual

Roomのプロパティを設定します。

この関数を呼び出した後、GetUpdatePropertiesEvent()で登録されたコールバックイベント(例:OnRoomUpdateProperties)がサーバーからの応答として呼び出されます。

引数
[in]roomIDRoomのRoom ID
[in]properties登録するプロパティとデータを指定します。
[in]synctrueの場合、更新されたプロパティはGetUpdatePropertiesEvent()で登録されたコールバックイベントと同期されます。

◆ UpdateProperties() [2/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::UpdateProperties ( const Diarkis::StdString roomID,
const Diarkis::StdUnorderedMap< Diarkis::StdString, Diarkis::StdVector< uint8_t >> &  properties,
bool  sync = false 
)
pure virtual

UpdateProperties()と同じです

◆ GetProperties() [1/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::GetProperties ( const char *  roomID,
const char **  propertyNames,
size_t  propertyCount 
)
pure virtual

Roomのプロパティを取得します。

GetGetPropertiesEvent()で登録されたコールバックイベントがトリガーされます。

引数
[in]roomIDRoomのRoom ID
[in]propertyNames取得するプロパティの名前を指定します。
[in]propertyCountプロパティ名の数

◆ GetProperties() [2/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::GetProperties ( const Diarkis::StdString roomID,
const Diarkis::StdVector< Diarkis::StdString > &  propertyNames 
)
pure virtual

GetProperties()と同じです

◆ IncrementProperty() [1/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::IncrementProperty ( const char *  propertyName,
int64_t  delta,
bool  sync 
)
pure virtual

指定されたRoomのプロパティの値を増減させます。

GetIncrementPropertyEvent()で登録されたコールバックイベント(例:OnRoomIncrementProperty)がトリガーされます。

引数
[in]propertyName増減させるプロパティの名前。
[in]delta増減させる値のサイズ
[in]sync他のクライアントに通知するかどうかを決定します。 trueの場合、GetIncrementPropertySyncEvent()で登録されたコールバックイベントがトリガーされます。

◆ IncrementProperty() [2/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::IncrementProperty ( Diarkis::StdString  propertyName,
int64_t  delta,
bool  sync 
)
pure virtual

◆ GetOwnerID()

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::GetOwnerID ( )
pure virtual

Roomの所有者のユーザーIDを取得します。

GetOwnerIDEvent()で登録されたコールバックイベントがトリガーされます。

◆ GetMemberIDs()

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::GetMemberIDs ( )
pure virtual

Roomに参加しているメンバーのユーザーIDのリストを取得します。

GetMemberIDSEvent()で登録されたコールバックイベントがトリガーされます。

◆ GetNumberOfMembers() [1/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::GetNumberOfMembers ( const char *  roomID)
pure virtual

Room内のメンバー数を取得します。

GetNumberOfMembersEvent() で登録されたコールバックイベントがトリガーされます。

引数
[in]roomIDRoomのRoom ID

◆ GetNumberOfMembers() [2/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::GetNumberOfMembers ( const Diarkis::StdString roomID)
pure virtual

GetNumberOfMembers()と同じです

◆ Migrate()

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::Migrate ( )
pure virtual

ルームを別のサーバーに移行します。

ルームのオーナーのみが呼び出すことができます。
成功した場合、サーバーからルームの各メンバーに通知が送信され、GetMigrateEvent()(例:OnRoomMigrate)で登録されたコールバックイベントがトリガーされます。
ライブラリは内部的に現在参加しているルームを退室し、新しいルームに参加します。

◆ Move()

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::Move ( Diarkis::StdString  roomID_,
const Diarkis::StdVector< uint8_t > &  leaveMessage,
const Diarkis::StdVector< uint8_t > &  joinMessage 
)
pure virtual

現在いるRoomから退出し、新しいRoomに参加します。 OnLeaveとOnJoinを発生させ、リモートでOnMemberLeaveとOnMemberJoinを発生させます。 通常のイベントを聞く代わりに、コールバックを使用することができます。

引数
[in]roomID_参加するRoomのID
[in]leaveMessage退出時にブロードキャストされるバイト配列メッセージ
[in]joinMessage参加時にブロードキャストされるバイト配列メッセージ

◆ Register() [1/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::Register ( uint32_t  roomType,
const char *  roomName,
const char *  roomMetadata 
)
pure virtual

Roomに追加される情報を登録します

引数
[in]roomTypeFindRoomsByTypeで使用するRoomのタイプ
[in]roomName登録されるRoomの名前
[in]roomMetadata登録されるRoomの追加文字列データ

◆ Register() [2/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::Register ( uint32_t  roomType,
const Diarkis::StdString roomName,
const Diarkis::StdString roomMetadata 
)
pure virtual

Register()と同じです

◆ FindRoomsByType()

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::FindRoomsByType ( uint32_t  roomType,
uint32_t  limit 
)
pure virtual

同じタイプのRoomを検索します。

GetFindByTypeEvnet()で登録されたコールバックイベントがトリガーされます。
コールバックイベントでは、検索結果としてRoomのリストを受け取ることができます。

引数
[in]roomType検索するRoomのタイプ
[in]limit検索結果のリストに含まれる最大Room数

◆ Reserve() [1/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::Reserve ( const char **  userIDs,
size_t  userIDsSize 
)
pure virtual

Roomに参加するメンバーを予約します。

GetReserveEvent()で登録されたコールバックイベントがトリガーされます。

引数
[in]userIDs予約するメンバーのユーザーIDのリスト。
[in]userIDsSizeユーザーIDの数

◆ Reserve() [2/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::Reserve ( const Diarkis::StdVector< Diarkis::StdString > &  userIDs)
pure virtual

Reserve()と同じ

◆ CancelReservation() [1/3]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::CancelReservation ( const char *  cancelRoomID,
const char **  userIDs,
size_t  userIDsSize 
)
pure virtual

Roomの予約をキャンセルします。

GetCancelReservationEvent()で登録されたコールバックイベントがトリガーされます。

引数
[in]cancelRoomIDキャンセルするRoomのRoom ID
[in]userIDsキャンセルするメンバーのユーザーIDのリスト
[in]userIDsSizeユーザーIDの数

◆ CancelReservation() [2/3]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::CancelReservation ( const Diarkis::StdString cancelRoomID,
const Diarkis::StdVector< Diarkis::StdString > &  userIDs 
)
pure virtual

CancelReservation()と同じです

◆ CancelReservation() [3/3]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::CancelReservation ( const Diarkis::StdVector< Diarkis::StdString > &  userIDs)
pure virtual

現在入室しているRoomの予約をキャンセルする

GetCancelReservationEvent() で登録されたコールバックイベントがトリガーされます。

引数
[in]userIDsキャンセルするメンバーのユーザーIDのリスト

◆ SendChatMessage() [1/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::SendChatMessage ( const char *  message)
pure virtual

Roomメンバーにチャットメッセージを送信します。

メッセージはサーバーに保存され、過去のメッセージはGetChatLog()で取得できます。
この関数を実行するクライアントは、GetChatSyncResponseEvent()で登録されたコールバックイベントをトリガーします。
メンバーは、GetChatSyncEvent()で登録されたコールバックイベントをトリガーします。

引数
[in]message送信するメッセージ

◆ SendChatMessage() [2/2]

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::SendChatMessage ( const Diarkis::StdString message)
pure virtual

◆ GetChatLog()

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::GetChatLog ( )
pure virtual

過去のチャットメッセージを取得します。

GetChatLogEvent() で登録されたコールバックイベントがトリガーされます。

◆ StartP2PSync()

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::StartP2PSync ( uint8_t  linkedClients = 0)
pure virtual

Roomに参加するメンバーとのP2P通信を開始します。

GetStartP2PSyncEvent()で登録されたコールバックイベントをトリガーします。
コールバックイベントでピアアドレスのリストを受信します。
この関数はRoomメンバーのうちの1人だけが実行する必要があります。

引数
[in]linkedClientsP2P接続を確立するクライアントの数を指定します。
0 = マッチしたメンバー全員のアドレスを受け取ります。
n = マッチしたメンバーからn人をランダムに選んだメンバーのアドレスを受け取ります。

◆ UpdateObject()

virtual Diarkis::System::Result Diarkis::Modules::IDiarkisRoom::UpdateObject ( RoomObjectMode  mode,
const Diarkis::StdString name,
const Diarkis::StdUnorderedMap< Diarkis::StdString, double > &  obj,
bool  reliable = true 
)
pure virtual

Roomオブジェクトを更新します。

成功した場合は、GetObjectUpdateEvent() で登録されたコールバックイベントがトリガーされます。
通知は、自分を含むRoomのすべてのメンバーに送信されます。

引数
[in]modeオブジェクトを操作するモード
[in]nameオブジェクトの名前
[in]objキーと値のリストによってオブジェクトを指定します。
例: obj["x"] = 123.4;
例: obj["y"] = 567.8;
例: obj["hp"] = 300.0;
mode が OBJ_DEL_MODE の場合は、このパラメータは使用されません。
[in]reliable信頼性のある通信(RUDP)を介して送信するかどうかを決定します。TCPプロトコルでは無視されます。

◆ GetRoomID()

virtual const Diarkis::StdString& Diarkis::Modules::IDiarkisRoom::GetRoomID ( )
pure virtual

参加しているRoomのRoom IDを取得します。

◆ SetRoomID() [1/2]

virtual void Diarkis::Modules::IDiarkisRoom::SetRoomID ( const char *  roomID)
pure virtual

RoomのRoom IDを設定します。

◆ SetRoomID() [2/2]

virtual void Diarkis::Modules::IDiarkisRoom::SetRoomID ( const Diarkis::StdString roomID)
pure virtual

SetRoomID()と同じです

◆ RegisterCustomMessagePush()

virtual void Diarkis::Modules::IDiarkisRoom::RegisterCustomMessagePush ( uint8_t  version,
uint16_t  command,
std::function< void(const Diarkis::StdVector< uint8_t > &)>  callback 
)
pure virtual

カスタムメッセージ関数を登録します。


このクラス詳解は次のファイルから抽出されました: