Star CloudPRNT プロトコルガイド

Star CloudPRNTは、以下のCloudPRNT通信プロトコルを提供します。

Note:
全てのCloudPRNT対応プリンターは、CloudPRNT通信プロトコル Version HTTPをサポートします。
CloudPRNT通信プロトコル Version MQTTに対応するプリンターは 動作環境:対応プリンター を参照ください。


プリンターに対するCloudPRNT通信プロトコルの指定方法

CloudPRNT通信プロトコル Version MQTTに対応するプリンターは、プリンター起動時など、所定のタイミングで サーバー設定情報取得リクエスト(GET) を実行します。
CloudPRNTサーバーからのGETレスポンスにより、プリンターはどのプロトコルで動作するかを決定します。 詳しくは各プロトコルのフロー図をご参照ください。

CloudPRNT 通信プロトコル Version HTTP

CloudPRNTサーバーとプリンターは、以下のHTTPメソッドによる通信を行います。

サーバーポーリング(POST)

プリンターは定期的にPOSTリクエストを実行します。これをPOSTポーリングと呼びます。
リクエストボディで自身のステータス通知(JSONフォーマット)を行いつつ、サーバーからのレスポンスによる印刷ジョブ通知を待機します。

印刷ジョブリクエスト(GET)

サーバーから印刷ジョブ通知を受けた場合、プリンターはGETリクエストを使用し、印刷ジョブを取得します。

印刷ジョブ完了確認(DELETE)

印刷完了後、プリンターはDELETEリクエストによる印刷完了通知を行います。


Version HTTP プロセスフロー

Memo
以下の場合には CloudPRNT通信プロトコル Version MQTT をご利用いただくことをおすすめします。

  • POSTポーリングの実行タイミングに起因する印刷動作開始の遅延を軽減したい
  • 定期的なポーリングによるCloudPRNTサーバーへの負荷を軽減したい
  • CloudPRNT 通信プロトコル Version MQTT

    CloudPRNT通信プロトコル Version MQTTは、CloudPRNTサーバーとデバイス間の通信にHTTPプロトコルに加えてMQTTプロトコルを利用することにより、より高速なプリンター制御を可能とします。


    CloudPRNT通信プロトコル Version MQTTでは、以下の2つの手法を提供します。


    Trigger POST

    Trigger POSTの利点

    • CloudPRNT通信プロトコル Version HTTP を実装済みのシステムからの移行が簡単に行えます。
    • Version HTTPにおける、印刷動作開始の遅延、サーバーへの通信負荷を軽減できます。

    Trigger POST 概要

    CloudPRNT通信プロトコル Version HTTP をベースに、CloudPRNTサーバーはMQTTプロトコルのメッセージをプリンター向けに発行します。
    CloudPRNT通信プロトコル Version HTTPと異なり、プリンターは定期的なPOSTポーリングを行いません。(デフォルト設定。定期的に実行させる設定も可能です。)
    CloudPRNTサーバーは、印刷実行、またはプリンターステータス取得を行うタイミングで、プリンター向けのMQTTメッセージを発行します。 プリンターはMQTTメッセージを受信すると、すぐにサーバーポーリング(POST)を実行します。 その後の印刷動作はVersion HTTPと同じです。そのため、Version HTTPを構築済みのシステムからの移行が簡単に行えます。


    Version MQTT - Trigger POST プロセスフロー

    Memo
    印刷動作開始を更に早くしたい場合には、 Full MQTT / Pass URL をご利用いただくことをおすすめします。




    Full MQTT / Pass URL

    Full MQTT / Pass URLの利点

    • Trigger POST より更に高速なプリンター制御が行えます。

    Full MQTT / Pass URL 概要

    CloudPRNTサーバーとプリンターは、主にMQTTプロトコルによる通信を行います。
    CloudPRNTサーバーは 印刷実行、またはステータス取得を行うタイミングで、プリンター向けのMQTTメッセージを発行します。
    プリンターからのステータス通知や印刷結果通知もMQTTメッセージとなり、CloudPRNTサーバー向けに発行されます。


    Full MQTT

    プリンターに印刷を指示するMQTTメッセージのペイロードに、軽量な印刷データを載せることを言います。
    プリンターはメッセージ受信後、すぐに印刷を開始します。
    印刷動作後、プリンターは MQTTメッセージによる印刷結果通知 を行います。



    Pass URL

    プリンターに印刷を指示するMQTTメッセージのペイロードに、印刷データが格納されたURLを乗せることを言います。
    プリンターはメッセージ受信後、指定されたURLに対し 印刷ジョブリクエスト(GET) による印刷データ取得を実行します。
    印刷動作後、プリンターは 印刷ジョブ完了確認(DELETE) ではなく、 MQTTメッセージによる印刷結果通知 を行います。


    Version MQTT - Full MQTT / Pass URL プロセスフロー