
BoltzEngine HTTP API ゲートウェイ
BoltzEngine の RPC インターフェイスを HTTP からアクセスできるようにするゲートウェイサービスです。
これは BoltzEngine 本体とは別のサービスとなっており、HTTP と RPC インターフェイスとの仲立ちを行います。
概要
BoltzEngine HTTP API ゲートウェイは BoltzEngine v1.1 以降で boltz-http-proxy コマンドとして同梱されます。
リクエストとして JSON でリクエストオブジェクトで指定されている JSON を送信すると処理が行われ、以下の形式の JSON がレスポンスが戻ります。error 要素には BoltzEngine 上で言語レベル、TCP レベルでのエラーが発生した際にエラーメッセージ文字列がセットされます。
|
|
また、APNS, FCM 共に認証情報については HTTP API ゲートウェイの起動パラメータとして渡されているため、渡す必要はありません。
特殊処理
JSON-RPC インターフェイスで BASE64 を渡すことになっているなっている以下のデータはエンコードが行われます。
- iOS のデバイストークン: 16進数表記の文字列と相互変換されます。
- iOS の通知ペイロード: 文字列と相互変換されます。(JSON を文字列で指定します)
メソッド一覧
POST /boltz/apns/request
APNs へメッセージを送信します。RPC の BoltzEngine.BroadcastMessagesToAPNs に対応します。
-
導入バージョン:BoltzEngine v1.1
-
リクエストオブジェクト:apns.Request (Addr, Credential は指定しません)
-
レスポンスオブジェクト:apns.Response
-
Request (application/json)
|
|
- Response (application/json)
|
|
GET /boltz/apns/feedback
APNs のフィードバックサービスへアクセスし、無効になったトークンの一覧を取得します。RPC の BoltzEngine.ReceiveFeedbackFromAPNs に対応します。
-
導入バージョン:BoltzEngine v1.1
-
レスポンスオブジェクト:apns.FBResponse
-
Response (application/json)
|
|
POST /boltz/gcm/request
FCM へメッセージを送信します。RPC の BoltzEngine.BroadcastMessagesToGCM に対応します。
- 導入バージョン:BoltzEngine v1.1
- リクエストオブジェクト:gcm.Request (URL, Credential は指定しません)
- レスポンスオブジェクト:gcm.Response
boltz-http-proxy の設定で、FCM のリクエスト URL をどう指定したかによって、以下のメッセージ形式が変化します。
URL が http:// または https:// で開始する場合
- Request (application/json)
|
|
URL が http:// または https:// 以外の場合
- Request (application/json)
|
|
- Response (application/json)
|
|
POST /boltz/adm/request
BoltzEngine HTTP API Gateway では、ADM への通知はサポートしていません。
POST /boltz/webpush/request
WebPush へメッセージを送信します。RPC の BoltzEngine.BroadcastMessagesToWebPush に対応します。
-
導入バージョン:BoltzEngine v2.2
-
リクエストオブジェクト:webpush.Request (Credential は指定しません)
-
レスポンスオブジェクト:webpush.Response
-
Request (application/json)
|
|
- Response (application/json)
|
|
GET /boltz/activities
BoltzEngine の性能情報を取得します。RPC の BoltzEngine.QueryActivities に対応します。
-
導入バージョン:BoltzEngine v1.1
-
レスポンスオブジェクト:boltz.MasterActivity
-
Response (application/json)
|
|