SkyWay Embedded SDK 0.1.0
読み取り中…
検索中…
一致する文字列を見つけられません
member.h ファイル

Memberのメタデータ更新と退出。 [詳解]

[ソースコード]

データ構造

struct  skw_room_member_data_field_t
 Memberの取得結果を受け取る出力先。NULLを設定したフィールドには格納されない。 [詳解]
 skw_room_member_update_metadataのパラメータ。 [詳解]
struct  skw_room_member_leave_params_t
 skw_room_member_leaveのパラメータ。 [詳解]

マクロ定義

#define SKW_ROOM_MEMBER_ID_SIZE   (36+1)
 MemberIDを格納するバッファのサイズ(NUL終端を含む)。
#define SKW_ROOM_MEMBER_NAME_SIZE   (128+1)
 MemberNameを格納するバッファのサイズ(NUL終端を含む)。
#define SKW_ROOM_MEMBER_METADATA_SIZE   (1024+1)
 MemberMetadataを格納するバッファのサイズ(NUL終端を含む)。
#define SKW_ROOM_MEMBER_UPDATE_METADATA_PARAMS_INIT(...)
 skw_room_member_update_metadata_params_tの初期化子。指定しなかったフィールドには既定値が入ります。
#define SKW_ROOM_MEMBER_LEAVE_PARAMS_INIT(...)
 skw_room_member_leave_params_tの初期化子。指定しなかったフィールドには既定値が入ります。

型定義

typedef char skw_room_member_id_t[SKW_ROOM_MEMBER_ID_SIZE]
 MemberIDを格納する文字列型(NUL終端を含む)。
typedef char skw_room_member_name_t[SKW_ROOM_MEMBER_NAME_SIZE]
 MemberNameを格納する文字列型(NUL終端を含む)。
typedef char skw_room_member_metadata_t[SKW_ROOM_MEMBER_METADATA_SIZE]
 MemberMetadataを格納する文字列型(NUL終端を含む)。

列挙型

enum  skw_room_member_err_t {
  SKW_ROOM_MEMBER_OK = 0 , SKW_ROOM_MEMBER_ERR_NULL_ARGS = 1 , SKW_ROOM_MEMBER_ERR_INVALID_ARGS = 2 , SKW_ROOM_MEMBER_ERR_CONTEXT_NOT_INITED = 3 ,
  SKW_ROOM_MEMBER_ERR_CONTEXT_NOT_SETUP = 4 , SKW_ROOM_MEMBER_ERR_REQUEST_FAILED = 5 , SKW_ROOM_MEMBER_ERR_MUTEX_UNLOCK_FAILED = 6 , SKW_ROOM_MEMBER_ERR_CALLED_IN_HANDLER = 7 ,
  SKW_ROOM_MEMBER_ERR_SEND_FAILED = 8 , SKW_ROOM_MEMBER_ERR_TIMEOUT = 9 , SKW_ROOM_MEMBER_ERR_CONNECTION_CLOSED = 10 , SKW_ROOM_MEMBER_ERR_RESPONSE_TOO_LARGE = 11 ,
  SKW_ROOM_MEMBER_ERR_RESPONSE_PARSE_FAILED = 12 , SKW_ROOM_MEMBER_ERR_UNKNOWN = 99 , SKW_ROOM_MEMBER_ERR_BAD_REQUEST = 400 , SKW_ROOM_MEMBER_ERR_UNAUTHORIZED = 401 ,
  SKW_ROOM_MEMBER_ERR_FORBIDDEN = 403 , SKW_ROOM_MEMBER_ERR_NOT_FOUND = 404 , SKW_ROOM_MEMBER_ERR_ALREADY_EXIST = 409 , SKW_ROOM_MEMBER_ERR_TOO_LARGE = 413 ,
  SKW_ROOM_MEMBER_ERR_TOO_MANY_REQUESTS = 429 , SKW_ROOM_MEMBER_ERR_SERVER_INTERNAL = 500 , SKW_ROOM_MEMBER_ERR_SERVER_BUSY = 503
}
 Member APIのエラーコード。 [詳解]
enum  skw_room_member_side_t { SKW_ROOM_MEMBER_SIDE_LOCAL_PERSON = 0 , SKW_ROOM_MEMBER_SIDE_REMOTE_MEMBER = 1 }
 Memberの種別。 [詳解]
enum  skw_room_member_type_t { SKW_ROOM_MEMBER_TYPE_PERSON = 0 , SKW_ROOM_MEMBER_TYPE_BOT = 1 }
 Memberのタイプ。 [詳解]

関数

skw_room_member_err_t skw_room_member_update_metadata (const skw_room_member_update_metadata_params_t *params)
 MemberのMetadataを更新します。
skw_room_member_err_t skw_room_member_leave (const skw_room_member_leave_params_t *params)
 MemberをRoomから退出させます。

詳解

Memberのメタデータ更新と退出。

マクロ定義詳解

◆ SKW_ROOM_MEMBER_LEAVE_PARAMS_INIT

#define SKW_ROOM_MEMBER_LEAVE_PARAMS_INIT ( ...)
値:
{__VA_ARGS__}

skw_room_member_leave_params_tの初期化子。指定しなかったフィールドには既定値が入ります。

◆ SKW_ROOM_MEMBER_UPDATE_METADATA_PARAMS_INIT

#define SKW_ROOM_MEMBER_UPDATE_METADATA_PARAMS_INIT ( ...)
値:
{__VA_ARGS__}

skw_room_member_update_metadata_params_tの初期化子。指定しなかったフィールドには既定値が入ります。

列挙型詳解

◆ skw_room_member_err_t

Member APIのエラーコード。

列挙値
SKW_ROOM_MEMBER_OK 

正常終了

SKW_ROOM_MEMBER_ERR_NULL_ARGS 

引数がNULL

SKW_ROOM_MEMBER_ERR_INVALID_ARGS 

引数の値が不正

SKW_ROOM_MEMBER_ERR_CONTEXT_NOT_INITED 

Contextが初期化されていない

SKW_ROOM_MEMBER_ERR_CONTEXT_NOT_SETUP 

Contextがセットアップされていない

SKW_ROOM_MEMBER_ERR_REQUEST_FAILED 

リクエストの実行に失敗

SKW_ROOM_MEMBER_ERR_MUTEX_UNLOCK_FAILED 

Member APIのアンロックに失敗

SKW_ROOM_MEMBER_ERR_CALLED_IN_HANDLER 

イベントハンドラ内から呼ばれた

SKW_ROOM_MEMBER_ERR_SEND_FAILED 

リクエストの送信に失敗

SKW_ROOM_MEMBER_ERR_TIMEOUT 

応答の受信がタイムアウトした

SKW_ROOM_MEMBER_ERR_CONNECTION_CLOSED 

応答待ちの間に接続が切断された

SKW_ROOM_MEMBER_ERR_RESPONSE_TOO_LARGE 

応答が受信バッファのサイズを超過した

SKW_ROOM_MEMBER_ERR_RESPONSE_PARSE_FAILED 

応答の解析に失敗した

SKW_ROOM_MEMBER_ERR_UNKNOWN 

不明なエラー

SKW_ROOM_MEMBER_ERR_BAD_REQUEST 

リクエストパラメータが不正

SKW_ROOM_MEMBER_ERR_UNAUTHORIZED 

AuthTokenが不正、もしくは有効期限切れ

SKW_ROOM_MEMBER_ERR_FORBIDDEN 

必要な権限が無い

SKW_ROOM_MEMBER_ERR_NOT_FOUND 

リソースが見つからない

SKW_ROOM_MEMBER_ERR_ALREADY_EXIST 

すでに存在するリソースを作成しようとした

SKW_ROOM_MEMBER_ERR_TOO_LARGE 

リクエストパラメータが大きすぎる

SKW_ROOM_MEMBER_ERR_TOO_MANY_REQUESTS 

レートリミット超過

SKW_ROOM_MEMBER_ERR_SERVER_INTERNAL 

サーバー内部エラー

SKW_ROOM_MEMBER_ERR_SERVER_BUSY 

サーバーが過負荷で一時的に利用できない

◆ skw_room_member_side_t

Memberの種別。

列挙値
SKW_ROOM_MEMBER_SIDE_LOCAL_PERSON 

LocalPerson

SKW_ROOM_MEMBER_SIDE_REMOTE_MEMBER 

RemoteMember

◆ skw_room_member_type_t

Memberのタイプ。

列挙値
SKW_ROOM_MEMBER_TYPE_PERSON 

Person

SKW_ROOM_MEMBER_TYPE_BOT 

Bot

関数詳解

◆ skw_room_member_leave()

skw_room_member_err_t skw_room_member_leave ( const skw_room_member_leave_params_t * params)

MemberをRoomから退出させます。

引数
params退出パラメータのポインタ
戻り値
エラーコード

◆ skw_room_member_update_metadata()

skw_room_member_err_t skw_room_member_update_metadata ( const skw_room_member_update_metadata_params_t * params)

MemberのMetadataを更新します。

引数
params更新パラメータのポインタ
戻り値
エラーコード