Streaming Channel Push
登録者情報を取得し、ストリーミングチャネルの通知を転送します。
構文
- URI
- /vXX.X/sobjects/StreamingChannel/[チャネル ID]/push
- 適用開始バージョン
- 29.0
- 形式
- JSON、XML
- HTTP メソッド
- GET、POST
- 認証
- Authorization: Bearer token
- リクエストボディ
- GET の場合、リクエストボディは不要です。POST の場合は、転送通知ペイロードを指定するリクエストボディが必要です。これには、次の項目が含まれます。
それぞれの転送イベントペイロードには、次の項目が含まれます。
名前 型 説明 pushEvents 転送イベントペイロードの配列 通知を送信するためのイベントペイロードのリスト。 名前 型 説明 payload string 通知で送信される情報。3,000 文字 (1 バイト文字) 以下である必要があります。 userIds ユーザ ID の配列 通知を送信する登録ユーザのリスト。この配列が空の場合は、チャネルのすべての登録者に通知が送信されます。 - 要求パラメータ
- なし
- 応答データ
- GET の場合、チャネルおよび登録者に関する情報が次の項目に返されます。
POST の場合、チャネルおよびペイロード通知結果に関する情報が、転送結果の配列に返されます。それぞれの結果には、次の項目が含まれます。
名前 型 説明 OnlineUserIds ユーザ ID の配列 このチャネルに現在登録されているユーザのユーザ ID。 ChannelName string チャネル名 (/u/notifications/ExampleUserChannel など)。 名前 型 説明 fanoutCount number イベントが送信された登録者数。これは、オンラインになっている POST 要求で指定された登録者の数です。要求がすべての登録者に送信された場合は、fanoutCount が –1 になります。チャネルにアクティブな登録者が存在しない場合は、fanoutCount が 0 になります。 userOnlineStatus ユーザのオンライン状況情報の配列 通知が送信されたユーザ ID とそのリスナー状況のリスト。ユーザ ID がアクティブに登録されリスンしている場合は true、それ以外の場合は false。
例
次に、services/data/v29.0/sobjects/StreamingChannel/0M6D000000000g7KXA/push の GET 要求の JSON 応答の例を示します。
1{
2 "OnlineUserIds" : [ "005D0000001QXi1IAG" ],
3 "ChannelName" : "/u/notifications/ExampleUserChannel"
4}JSON リクエストボディを使用した services/data/v29.0/sobjects/StreamingChannel/0M6D000000000g7KXA/push への POST 要求は、次のようになります。
JSON 応答データは、次のようになります。
1{
2 "pushEvents": [
3 {
4 "payload": "hello world!",
5 "userIds": [ "005xx000001Svq3AAC", "005xx000001Svq4AAC" ]
6 },
7 {
8 "payload": "broadcast to everybody (empty user list)!",
9 "userIds": []
10 }
11 ]
12}1[
2 {
3 "fanoutCount" : 1,
4 "userOnlineStatus" : {
5 "005xx000001Svq3AAC" : true,
6 "005xx000001Svq4AAC" : false,
7 }
8 },
9 {
10 "fanoutCount" : -1,
11 "userOnlineStatus" : {
12 }
13 }
14]