リクエスト (GET)
エンドポイント
[http/https]://[modified_cloudprntURL]/cloudprnt-setting.json?uid=<printer ID>&mac=<printer-mac-address>&replaced_path=<replaced-path>
https://cloudprnt.net/printer.php
https://cloudprnt.net/cloudprnt-setting.json?mac=00%3A11%3A62%3A1d%3A9a%3Ab7&replaced_path=printer.php
Query Parameter |
Value |
---|---|
uid |
サーバーで指定する”uniqueID”が設定されます。
これはサーバーが Client Action 要求にて”uniqueID”を割り当てている場合にのみ含まれます。
|
mac |
プリンター固有のEthernetMACアドレス |
replaced_path |
プリンター本体に設定されたCloudPRNT URLのうち、[cloudprnt-setting.json]に置き換えられた箇所 |
クライアント HTTP リクエストボディ
なし
クライアント HTTP リクエストヘッダー
詳細は クライアント HTTP リクエストヘッダー を参照してください。
リクエストタイムアウト
15秒
リクエスト実行タイミング
CloudPRNT Version MQTT 対応プリンターは、以下の場合に本GETリクエストを実行します。
プリンターが電源投入後、インターネットに接続されたとき。
取得した設定ファイル中に"nextUrl"キーが定義されているとき。値で指定されたURLに対して、再度本GETリクエストを実行。
プリンターが正常動作中、取得した設定ファイル中に定義された"reloadIntervalMin"キーの値で示された時間が経過するたび。
プリンターが CloudPRNT Version MQTT で動作中、MQTTメッセージ request-get-server-info を受け取ったとき。
プリンターが CloudPRNT Version MQTT で動作中、MQTTブローカーとの通信が切断されたとき。 GETリクエストのリトライ に記載の条件で実行。
プリンターがサーバーから取得した設定ファイルに従いMQTTブローカーと接続しようとしたが接続出来なかったとき。 GETリクエストのリトライ に記載の条件で実行。
サーバーレスポンスに対するプリンター動作
プリンターは本GETリクエストに対するサーバーレスポンスに対し、以下のように動作します。
正常系
- ステータスコードが200の場合 :
レスポンスボディで得られた設定項目に従って動作します。
- ステータスコードが404 (not found)の場合 :
プリンターは CloudPRNT Version HTTP で動作を開始します。
異常系
- リクエストがタイムアウトした場合、サーバーに到達しない場合 :
GETリクエストのリトライ に記載する仕様に従い、本GETリクエストのリトライを実施します。
- ステータスコードが500系 (サーバーエラー)の場合 :
GETリクエストのリトライ に記載する仕様に従い、本GETリクエストのリトライを実施します。
- ステータスコードがそれ以外の場合 :
- プリンター起動後、初回のGETリクエストの場合 :
プリンターは CloudPRNT Version HTTP で動作を開始します。
- プリンターの利用するCloudPRNT通信プロトコルが決定したあとのGETリクエストの場合 :
プリンターは現在のCloudPRNTプロトコルの動作を継続します。
GETリクエストのリトライ
プリンターが CloudPRNT Version HTTP で動作している場合
- GETレスポンスが正しく取得できて CloudPRNT Version HTTP で動作している場合 :
"reloadIntervalMin"キーの値に従って本GETリクエストを実行します。
- GETレスポンスが正しく取得できずに CloudPRNT Version HTTP で動作を開始した場合 :
60分間隔で本GETリクエストを実行します。
サーバーレスポンスのステータスコードが500系であった場合、またはリクエストがタイムアウトした場合、サーバーに到達しない場合
プリンターは以下の条件でGETリクエストをリトライします。
500系レスポンス取得後、またはリクエストのタイムアウト後、5sec後にGETリクエストを実行します。
3回までリクエストを試行します。それでも完了しなかった場合、プリンターは CloudPRNT Version HTTP で動作を開始します。
プリンターが CloudPRNT Version MQTT で動作中に、MQTTブローカーとの通信が切断された場合
プリンターが本GETリクエストのレスポンスに従いMQTTブローカーと接続しようとしたが出来なかった場合
プリンターは以下の条件でGETリクエストを実行します。
ブローカー接続切断・接続失敗から30sec後、GETリクエストを実行します。レスポンスの内容に従って次の動作を行います。
上記のレスポンスでブローカーへの接続が指示されているが、再度接続出来なかった場合は、次は1min後にGETリクエストを実行します。
30sec, 1min, 2min, 4min, 8minとGETリクエスト実行の間隔を伸ばします。最大で8min間隔です。
注釈
リトライ動作を行っている間、MQTTブローカーに接続していないプリンターは CloudPRNT Version HTTP の動作を行います。