リレーションシップチェーン管理

リレーションシップチェーンシステムの説明

IMは、ユーザーリレーションシップチェーンのホスティング機能をオープン化し、リレーションシップチェーンに関連する一まとまりのソリューションを提供しています。App内のユーザー間のフレンドシップの構築または維持を希望しない場合やフレンドの追加や削除など一連の機能を手軽に実行したい場合は、IMのリレーションシップチェーンのホスティングサービスを選択することができます。
IMは、リレーションシップチェーンの保存機能を提供し、お客様のデータのリモート障害復旧、マルチサイトデプロイおよび自動スケーリングといった機能を確保します。サーバーのダウンタイム、マルチマスター/スレーブレプリケーション、スケーリングなどの処理をお手伝いし、お客様は複雑な処理フローから完全に解放されます。
IMは、業界共通の業務処理フローを提供し、お客様がユーザーリレーションシップチェーンのロジックから完全に解放されるようお手伝いします。
IMは、プロフェッショナルな運営フローと運営チームを提供し、年間を通じて99.99%という安定したサービス品質をお約束し、ユーザーに評判の高い安定したサービスを提供するお手伝いをします。
IMは、使いやすいサービスインターフェースとクイックアクセスヘルプガイドを提供し、プロセス全体で優れたサービスを提供します。
リレーションシップチェーンとは、ユーザーと他のユーザーとの関係性を説明するために用いられるデータのグループです。IMが現在サポートしているリレーションシップチェーンには、フレンドリストとブラックリストがあります。

リレーションシップチェーンフィールド

IMリレーションシップチェーンシステムは、標準リレーションシップチェーンフィールドとカスタムリレーションシップチェーンフィールドをサポートしています。リレーションシップチェーンフィールドには、次のような特性があります。
リレーションシップチェーンフィールドは、Key-Valueの形式で表されます。
KeyはString型、命名にはアルファベット大文字・小文字、数字、アンダーバーのみサポートしています。
Valueには次のタイプがあります。 a. uint64_t型の整数(カスタムリレーションシップチェーンフィールドではサポートしていません)。 b. string型の文字列(stringの長さは500バイトを超えてはなりません)。 c. bytes型のbuffer(bufferの長さは500バイトを超えてはなりません)。 d. string型の文字列配列(各stringの長さは500バイトを超えてはならず、フレンドリストのTag_SNS_IM_Groupフィールドでのみ使用されます)。

フレンドリスト

IMのフレンドリストには、最大3,000人のフレンドを追加できます。 フレンドリストは、標準フレンドフィールドとカスタムフレンドフィールドをサポートしています。

標準フレンドフィールド

現在、IMでサポートされている標準フレンドフィールドは次のとおりです。
フィールド名
タイプ
説明
Tag_SNS_IM_Group
Array
フレンドグループ:
1. 最大32のグループをサポートします。
2. グループ名をブランクにすることはできません。
3. グループ名の長さは30バイトを超えてはなりません。
4. 同じフレンドが異なる複数のグループを保有することができます
Tag_SNS_IM_Remark
string
フレンドノート:
コメントの最大長は96バイトを超えてはなりません
Tag_SNS_IM_AddSource
string
フレンドソースの追加:
1. フレンドソースフィールドの追加には、プレフィックスとキーワードの2つの部分があります。
2. フレンドソースフィールドの追加のプレフィックスは次のとおりです。AddSource_Type_ ;
3. キーワード:アルファベットとし、長さが8バイトを超えてはなりません。英単語または英単語の省略形を使用することをお勧めします。
4. 例:フレンドソースのキーワードがAndroidの場合、フレンドソースフィールドは、AddSource_Type_Androidです<br />
Tag_SNS_IM_AddWording
string
フレンドの追伸の追加:
フレンドの追伸の長さは256バイトを超えてはなりません
Tag_SNS_IM_AddTime
Integer
友達のタイムスタンプを追加

カスタムフレンドフィールド

カスタムフレンドフィールドは、各Appによって各自の業務ニーズに応じて設定されたフレンドデータです。フレンドフィールドをカスタマイズすることで、各Appはフレンドにデータを追加することができ、また、既存インターフェースを介して、読み取りおよび書き込み操作を行うことができます。 App管理者は、IMコンソール >アプリケーションの設定>機能設定から、カスタムフレンドフィールドを申請することができます。申請すると、カスタムフレンドフィールドは5分以内に有効になります。
カスタムフレンドフィールドの命名規則は次のとおりです。
カスタムフレンドフィールドの名称は、プレフィックスとキーワードという2つの部分に分かれます。
カスタムフレンドフィールドのプレフィックスは、Tag_SNS_Customです。
キーワード:必ずアルファベットとし、長さは8バイトを超えてはなりません。英単語または英単語の省略形を使用することをお勧めします。
例:特定のAppが申請するカスタムフレンドフィールドのキーワードがTestの場合、カスタムリレーションシップフィールドの名称は、Tag_SNS_Custom_Testとなります。
カスタムフレンドフィールドを申請するときは、カスタムフレンドフィールドごとに次の情報を送信する必要があります。
カスタムフレンドフィールドの名称(Key)。
カスタムフレンドフィールドのタイプ(Value):詳細についてはリレーションシップチェーンフィールドをご参照ください。

フレンドの追加

IMは、フレンドの一括追加、フレンドの1ターン追加、2ターン追加といった、フレンドの追加モードをサポートしています。詳細については、フレンドの追加をご参照ください。
双方向のフレンド:ユーザーAのフレンドリストにユーザーBがいて、BのフレンドリストにもAがいます。 一方向のフレンド:ユーザーAのフレンドリストにはユーザーBがいますが、BのフレンドリストにはAがいません。 フレンド追加検証方法:各ユーザーは、他のユーザーからフレンドとして追加される方法を選択することができます。詳細については、標準プロファイルフィールドにおけるフレンド追加検証方法フィールドをご参照ください。 フレンドの1ターン追加:アカウントAに設定されたフレンド追加検証方法がAllowType_Type_AllowAnyである場合、Aをフレンドとして追加する人は誰でも、そのまま追加が成功します。このように、1回のリクエストでフレンドの追加に成功するシナリオをフレンドの1ターン追加と呼びます。 フレンドの2ターン追加:アカウントAに設定されたフレンド追加検証方法がAllowType_Type_NeedConfirmである場合、誰かがAをフレンドとして追加すると、Aはフレンド追加検証をリクエストするメッセージを受け取ります。これが1回目のターンで、次にAは、このフレンド追加検証をリクエストするメッセージに同意する旨の操作を行います。これが2回目のターンです。このように、検証が必要なフレンド追加シナリオをフレンドの2ターン追加と呼びます。

フレンドの削除

IMは、一方向のフレンド削除と双方向のフレンド削除といった2つのフレンド削除モードをサポートしています。
削除モード
DeleteType
説明
一方向のフレンド削除
Delete_Type_Single
From_AccountのフレンドリストからTo_Accountのみが削除されますが、From_AccountはTo_Accountのフレンドリストから削除されません
双方向のフレンド削除
Delete_Type_Both
From_AccountのフレンドリストからTo_Accountが削除されると同時に、From_AccountもTo_Accountのフレンドリストから削除されます
IMもフレンドの一括削除をサポートしています。詳細については、フレンドの削除をご参照ください。

フレンドのプル

IMは、フレンドなしの増分プルモード、フルページングプルモード、およびフレンドありのプルモードという3つのフレンドプルモードをサポートしています。詳細については、フレンドのプルをご参照ください。

フレンドのチェック

IMは、一方向のフレンドシップチェック、双方向のフレンドシップチェックという、2つのフレンドチェックモードをサポートしています。
チェックモード
CheckType
説明
一方向のフレンドシップチェック
CheckResult_Type_Single
From_AccountのフレンドリストにTo_Accountがあるかどうかのみをチェックし、To_AccountのフレンドリストにFrom_Accountがあるかどうかはチェックしません
双方向のフレンドシップチェック
CheckResult_Type_Both
From_AccountのフレンドリストにTo_Accountがあるかどうか、およびTo_AccountのフレンドリストにFrom_Accountがあるかどうかチェックします
一方向のフレンドシップチェックを行った際に予想される結果は次のとおりです。
Relation
説明
CheckResult_Type_NoRelation
From_AccountのフレンドリストにはTo_Accountはありませんが、To_AccountのフレンドリストにFrom_Accountがあるかどうかは確定できません
CheckResult_Type_AWithB
From_AccountのフレンドリストにはTo_Accountがありますが、To_AccountのフレンドリストにFrom_Accountがあるかどうかは確定できません
双方向のフレンドシップチェックを行った際に予想される結果は次のとおりです。
Relation
説明
CheckResult_Type_BothWay
From_AccountのフレンドリストにはTo_Accountがあり、To_AccountのフレンドリストにもFrom_Accountがあります
CheckResult_Type_AWithB
From_AccountのフレンドリストにはTo_Accountはありますが、To_AccountのフレンドリストにFrom_Accountはありません
CheckResult_Type_BWithA
From_AccountのフレンドリストにTo_Accountはありませんが、To_AccountのフレンドリストにはFrom_Accountがあります
CheckResult_Type_NoRelation
From_AccountのフレンドリストにTo_Accountはなく、To_AccountのフレンドリストにもFrom_Accountはありません
フレンドのチェックに関するその他の情報については、フレンドのチェックをご参照ください。

ブラックリスト

各ユーザーには、ユーザーによってブロックされたアカウントを保存するためのブラックリストがあります。 ユーザーAがユーザーBをブラックリストに追加すると、AとBの間のフレンドシップは解除され(フレンドシップがある場合)、AとBの間ではフレンド追加リクエストを送信できなくなります。 IMのブラックリストには、デフォルトで1000個のブラックリストアカウントを追加できます。ブラックリストは設定をサポートしていません。

ブラックリストの追加

IMは、ブラックリストの一括追加をサポートしています。詳細については、ブラックリストの追加をご参照ください。

ブラックリストの削除

IMはブラックリストの一括削除をサポートしています。詳細については、ブラックリストの削除をご参照ください。

ブラックリストのプル

IMは、ページングモードを介したフルブラックリストのプルをサポートしています。詳細については、ブラックリストのプルをご参照ください。

ブラックリストのチェック

IMは、一方向のブラックリストリレーションシップチェック、双方向のブラックリストリレーションシップチェックという2つのブラックリストチェックモードをサポートしています。
チェックモード
CheckType
説明
一方向のブラックリストリレーションシップチェック
BlackCheckResult_Type_Single
From_AccountのブラックリストにTo_Accountがあるかどうかのみをチェックし、To_AccountのブラックリストにFrom_Accountがあるかどうかはチェックしません
双方向のブラックリストリレーションシップチェック
BlackCheckResult_Type_Both
From_AccountのブラックリストにTo_Accountがあるかどうか、およびTo_AccountのブラックリストにFrom_Accountがあるかどうかチェックします
一方向のブラックリストリレーションシップチェックを行った際に予想される結果は次のとおりです。
Relation
説明
BlackCheckResult_Type_AWithB
From_AccountのブラックリストにはTo_Accountがありますが、To_AccountのブラックリストにFrom_Accountがあるかどうかは確定できません
BlackCheckResult_Type_NO
From_AccountのブラックリストにTo_Accountはありませんが、To_AccountのブラックリストにFrom_Accountがあるかどうかは確定できません
双方向のブラックリストリレーションシップチェックを行った際に予想される結果は次のとおりです。
Relation
説明
BlackCheckResult_Type_BothWay
From_AccountのブラックリストにTo_Accountがあり、To_AccountのブラックリストにもFrom_Accountがあります
BlackCheckResult_Type_AWithB
From_AccountのブラックリストにはTo_Accounttはありますが、To_AccountのブラックリストにFrom_Accountはありません
BlackCheckResult_Type_BWithA
From_AccountのブラックリストにTo_Accountはありませんが、To_AccountのブラックリストにはFrom_Accountがあります
BlackCheckResult_Type_NO
From_AccountのブラックリストにTo_Accountはなく、To_AccountのブラックリストにもFrom_Accountはありません
ブラックリストのチェックに関するその他の情報については、ブラックリストのチェックをご参照ください。

関連ドキュメント