グループ加入を申し込む前
機能説明
アプリのバックグラウンドでは、このコールバックを介してユーザーのグループへの参加リクエストをリアルタイムで確認できます。アプリのバックグラウンドでユーザーのグループへの参加リクエストをブロックする操作も可能です。
注意事項
コールバックを有効にするには、コールバックURLを設定し、このコールバックプロトコルに対応するスイッチをオンにする必要があります。設定方法の詳細については、サードパーティコールバックの設定ドキュメントをご参照ください。
コールバックの方向は、IMバックグラウンドからアプリバックグラウンドへHTTP POSTリクエストを送信するようになっています。
アプリのバックグラウンドがコールバックリクエストを受信した後、リクエストURLのパラメータSDKAppIDが自分のSDKAppIDであるかどうかを確認する必要があります。
その他のセキュリティ関連事項については、サードパーティコールバックの概要:セキュリティに関する考慮事項ドキュメントをご参照ください。
このコールバックをトリガーする可能性のあるシナリオ
アプリユーザーがクライアントでグループへの参加リクエストを送信した場合。
コールバックの発生時間
IMバックグラウンドは、グループへの参加を申請したユーザーがグループに参加する前(管理者の承認が必要な場合は、管理者に通知する前)にコールバックします。
インターフェースの説明
リクエストURLの例
以下の例のアプリ設定のコールバックURLは
https://www.example.com
です。
例:https://www.example.com?SdkAppid=$SDKAppID&CallbackCommand=$CallbackCommand&contenttype=json&ClientIP=$ClientIP&OptPlatform=$OptPlatform
リクエストパラメータの説明
パラメータ | 説明 |
https | リクエストプロトコルはHTTPS、リクエストメソッドはPOSTです |
www.example.com | コールバックURL |
SdkAppid | アプリケーションの作成時にIMコンソールで割り当てられたSDKAppID |
CallbackCommand | Group.CallbackBeforeApplyJoinGroupという固定値が適用されます |
contenttype | JSONという固定値が適用されます |
ClientIP | クライアントIP。形式の例:127.0.0.1 |
OptPlatform |
リクエストパケットの例
{"CallbackCommand": "Group.CallbackBeforeApplyJoinGroup", // コールバックコマンドGroupId": "@TGS#2J4SZEAEL","Type": "Public", // グループタイプ"Requestor_Account": "jared", // 申請者"EventTime":"1670574414123"//ミリ秒レベル、イベントのトリガータイムスタンプ}
リクエストパケットフィールドの説明
フィールド | タイプ | 説明 |
CallbackCommand | String | コールバックコマンド |
GroupId | String | グループメッセージが生成されるグループID |
Type | String | |
Requestor_Account | String | グループへの参加の申請者のUserID |
EventTime | Integer | イベントがトリガーされるミリ秒レベルのタイムスタンプ |
レスポンスパケットの例
処理の続行の許可
ユーザーのグループへの参加リクエストの処理を続行することを許可します。
{"ActionStatus": "OK","ErrorInfo": "","ErrorCode": 0 // グループへの参加リクエストの処理の続行を許可することを示す}
リクエストの拒否
グループに参加するリクエストの処理を続行することを許可しません。ユーザーはグループに参加できず、呼び出し元にエラーコード「10016」が返されます。
{"ActionStatus": "OK","ErrorInfo": "","ErrorCode": 1 // グループへの参加リクエストを拒否することを示す}
レスポンスパケットフィールドの説明
フィールド | タイプ | 属性 | 説明 |
ActionStatus | String | 必須 | リクエスト処理の結果。OKは処理に成功したことを意味し、FAILは失敗したことを意味します |
ErrorCode | Integer | 必須 | エラーコード。0は処理の続行を許可すること、1はそのリクエストを拒否することを意味します。サービスニーズに応じて、エラーコードを指定してユーザーのグループへの参加を拒否する必要がある場合は、エラーコード「ErrorCode」と「ErrorInfo」をクライアントに送信し、エラーコード「ErrorCode」を[10100,10200]の範囲内にある値に設定してください。グループへの参加リクエストは管理者の承認を必要とする場合、コールバックが0を返しても、管理者の承認を待つ必要があります |
ErrorInfo | String | 必須 | エラー情報 |