Show / Hide Table of Contents

Star CloudPRNT プロトコル開発者ガイド

はじめに

Star CloudPRNT はリモートサーバー(以下サーバー)からの印刷を可能とするプロトコルです。 遠隔地プリンターへの印刷を可能とするために、ユーザーは Star CloudPRNT プロトコルに従ったサーバーの用意が必要となります。

Star CloudPRNT は簡単な実装、およびセキュリティの確保が可能となるよう設計されています。汎用の http/https を使用することにより、 REST/JSON および汎用の印刷ジョブデータフォーマットを渡します。 それはウェブ開発者に良く知られる技術であり、接続のための特定のファイアウォールやポート開放、 トンネリングなどを必要としません。

概要

全ての Star CloudPRNT 通信はhttpプロトコルを利用して、任意のWebサーバーを用いることができます。 http POST メソッドを使用するクライアント(Star CloudPRNT 対応プリンター)は一定時間(※1)毎に、 プリンターおよびプリンターに接続されている周辺機器デバイスの最新の状態を読み取り、この情報を含めたリクエストを サーバーに送信します。このリクエストに対して、サーバーは印刷可能な印刷ジョブの有無および詳細を応答します。 クライアントはそのあと、http GET メソッドを使用し要求されたデータ形式にて印刷ジョブを取得します。 最後にクライアントは DELETE またはサーバーの印刷状態を知らせるエラーコード付き POST を応答します。 POSTに関するネゴシエーションはエンコードされた JSON 情報を使用します。また、http GET (エンコードされたURL パラメーターをともなう)を使用し要求されたデータ形式で送信される印刷ジョブ要求および、http DELETE (エンコードされたURL パラメーターをともなう)を使用し印刷ジョブに関する通知をする印刷完了通知要求は、JSON情報を使用しません。

(※1) Web Config UIの設定により時間間隔の調整が可能です。

Star CloudPRNTにおけるクライアントからの各リクエストに対する、サーバーからの各レスポンスの設定項目の概要は以下になります。(詳細は各POST、GET、DELETEのページを参照してください。)

メソッド レスポンスヘッダー レスポンスBody
POST HTTPステータスコード Star CloudPRNTで定義されたJSONデータ
GET HTTPステータスコード、Star CloudPRNTで定義されたカスタムヘッダー(オプション) クライアントから指定されたメディアタイプでエンコードされた印刷ジョブのためのコンテンツデータ (JSONデータは含みません)
DELETE HTTPステータスコード 無し (JSONデータは含みません)

また、サーバーからの各メソッドのレスポンスに関する各HTTPレスポンスステータスコードを受け取り後のプリンターの動作例は下記となります。

メソッド ステータスコード プリンター動作
POST 200 サーバーからのレスポンスを解析し、内容に応じて各種リクエストを発行します。
印刷要求がない場合:
 特別な処理はせず、サーバーポーリング(POST)を継続します。
印刷要求がある場合:
 印刷ジョブリクエスト(GET)を発行します。
clientAction要求がある場合:
 clientAction要求の実施、および結果を含めたサーバーポーリング(POST)を行います。
POST 200以外 サーバーからのレスポンスを解析せず、サーバーポーリング(POST)を継続します。
GET 200 印刷完了後、codeパラメーターに200 OKを付加して印刷ジョブ完了確認(DELETE)を発行します。
GET 200以外 codeパラメーターにエラーコード520(もしくは521)を付加して印刷ジョブ完了確認(DELETE)を発行します。
DELETE 200 / 200以外 サーバーポーリング(POST)を発行します。

印刷プロセス

In This Article
Back to top