クラウド印刷
クラウド印刷を使用すると、WCPOS はレジを実行しているデバイスに直接接続されていないプリンターへレシートを送信できます。WP Admin で一度設定すれば、各デバイスがハードウェアを自分で検出してペアリングする必要なく、注文がキッチンプリンター、バックオフィスのプリンター、または別室のプリンターに印刷されます。
クラウド印刷とは?
ローカル印刷では、POS を実行しているデバイスが USB、Bluetooth、またはローカルネットワーク経由でプリンターと直接通信します。これは、プリンターがレジのすぐ隣にある場合に適した選択です。同じデバイスで USB、Bluetooth、ネットワークプリンターを接続する方法については、プリンター設定を参照してください。
クラウド印刷は、それ以外のすべてのケース向けです。別の場所にあるプリンター、別のネットワーク上のプリンター、または各デバイスで個別に設定することなくすべてのデバイスで共有したいプリンターなどです。配信モデルは 2 つあります:
- ポーリング型プリンター。 プリンターはスケジュールに従ってインターネット経由で WCPOS にアクセスし、「私宛のものはありますか?」と尋ね、待機中のジョブをすべて取得します。WCPOS がプリンターに接続することはありません — 常にプリンターが通信を開始します。これが Star CloudPRNT と Epson Server Direct Print の動作方式です。
- ホスト型リレープロバイダー。 WCPOS はホスト型サービスに印刷ジョブを送信し、そのサービスがプリンターに配信します。これが Star Online と PrintNode の動作方式です。Star Online は stario.online アカウントに登録された Star CloudPRNT プリンターに配信します。PrintNode はデスクトップクライアントを介して、そのコンピューターが既に印刷できるほぼすべてのプリンターに配信します。
ポーリング型プリンターは、開いたポート、固定 IP、ファイアウォールの変更を必要としません — 常にアウトバウンドのリクエストを行うだけです。そのため、リモートサイトにあるプリンターや、管理していないルーターの背後にあるプリンターに最適です。トレードオフは短い遅延です。プリンターは次のポーリングが来たときにのみ印刷します。
プロバイダーの選択
ハードウェアに合ったプロバイダーを選択してください。
Star CloudPRNT
CloudPRNT ファームウェアを実行する Star サーマルプリンター向け。プリンターが WCPOS をポーリングしてジョブを取得します。レシートはプリンターのネイティブコマンドにレンダリングされます。サーマルテンプレートが必要です。
Star Online
stario.online アカウントに登録された Star プリンター向け。WCPOS は Star Document Markup を Star のホスト型サービスに送信し、プリンターは Star Online からそれを取得します。サーマルテンプレートが必要です。
Epson Server Direct Print
Server Direct Print に対応する Epson ePOS プリンター向け。プリンターが WCPOS をポーリングし、ePOS-Print XML としてジョブを取得します。サーマルテンプレートが必要です。
PrintNode
PrintNode デスクトップクライアントを介して、あらゆる OS で、コンピューターが印刷できる事実上すべてのプリンターで動作します。WCPOS は PDF を送信するため、フルページの HTML 請求書を含む任意のテンプレートを使用できます。
| プロバイダー | ハードウェア | ジョブの流れ | テンプレート |
|---|---|---|---|
| Star CloudPRNT | CloudPRNT ファームウェアを搭載した Star サーマルプリンター | プリンターが WCPOS をポーリング | サーマルのみ |
| Star Online | stario.online に登録された Star プリンター | WCPOS が Star Document Markup を Star Online に送信 | サーマルのみ |
| Epson Server Direct Print | Server Direct Print 対応の Epson ePOS プリンター | プリンターが WCPOS をポーリング | サーマルのみ |
| PrintNode | OS 接続された任意のプリンター + PrintNode クライアント | WCPOS が PDF を PrintNode に送信 | 任意のテンプレート |
クラウドプリンターのセットアップ
クラウドプリンターは WP Admin で一度設定すれば、すべてのデバイスで共有されます — デバイスごとに保存されるローカルプリンターとは異なります。
WP Admin > POS > Settings > Cloud Print に移動し、Add printer をクリックします。名前を付けます(例:「Kitchen」や「Back office」)。WCPOS はプリンターから安定したプリンター ID を自動的に生成します — これは決して変わらないため、プリンターのファームウェア構成から参照しても安全です。
プリンターが作成されたら、プロバイダー側を設定します。
Star または Epson(ポーリング型プリンター)
WCPOS にプリンターを追加
WP Admin > POS > Settings > Cloud Print で、プリンターを追加し、プロバイダーとして Star CloudPRNT または Epson Server Direct Print を選択します。WCPOS はそのプリンター用のポーリング URL とワンタイムトークンを生成します。
ポーリング URL とトークンをコピー
生成されたポーリング URL とトークンをコピーします。トークンは一度しか表示されません — 紛失した場合は、プリンターカードから新しいものを再生成し、新しい値でプリンターを更新してください。
プリンターの構成に入力
プリンターの構成ページ — Star の場合は CloudPRNT 設定、Epson の場合は Server Direct Print 設定 — を開き、ポーリング URL とトークンを貼り付けます。プリンターが要求する場合はポーリング間隔を設定します(数秒が一般的です)。必要に応じて保存してプリンターを再起動します。
ポーリングサイクル内でプリンターがチェックインすると、WCPOS でのステータスが Waiting から Connected に変わります。
PrintNode
PrintNode デスクトップクライアントをインストール
ターゲットプリンターに既に印刷できるコンピューターに、PrintNode クライアントをインストールしてサインインします。ジョブを印刷するには、クライアントが起動してオンラインのままである必要があります。
PrintNode API キーを取得
PrintNode アカウントで API キーを作成します。これにより、WCPOS が PrintNode アカウントにジョブを送信できるようになります。
WCPOS に API キーを入力
WP Admin > POS > Settings > Cloud Print でプリンターを追加し、プロバイダーとして PrintNode を選択し、API キーを貼り付けます。WCPOS はこれを使用して、PrintNode アカウントに登録されているプリンターのリストを取得します。
プリンターを選択
PrintNode クライアントが報告するプリンターのリストからターゲットプリンターを選択し、保存します。WCPOS はこのプリンター向けのジョブを PrintNode に送信し、クライアントがそれらを印刷します。
Star Online
Star プリンターが既に stario.online アカウントに登録されていて、Star のホスト型サービスに配信を処理させたい場合は、Star Online を使用します。
CloudPRNT URL を取得
stario.online で Device Groups を開き、グループの CloudPRNT URL をコピーします。https://device.stario.online/cloudprnt/... または https://eu-device.stario.online/cloudprnt/... のような形式になっているはずです。
権限付きの API キーを作成
stario.online で、WCPOS 用の API キーを作成します。キーには、デバイスを一覧表示して印刷する権限が必要です。少なくとも、以下を有効にしてください:
- EnumDevices — WCPOS がデバイスリストを取得する際に必要
- ViewDevice — デバイスステータスチェックに使用
- PrintToDevice — 印刷ジョブの送信に必要
- ViewDeviceGroups — グループ検索と診断のために推奨
これらの権限が有効になっていない場合、API キーが存在していても失敗することがあります。
WCPOS に URL と API キーを入力
WP Admin > POS > Settings > Cloud Print でプリンターを追加し、プロバイダーとして Star Online を選択し、CloudPRNT URL と API キーを貼り付けます。Fetch my devices をクリックします。
Star デバイスを選択
デバイスリストからプリンターを選択して保存します。WCPOS は API キーをサーバー側に保存し、Star Online にジョブを送信する際に、選択したデバイスのアクセス識別子を使用します。
自動印刷ルール
自動印刷ルールは、何をどこに印刷するかを自動的に決定します — 平易な文章として記述されます。ルールは スコープ × プリンター × テンプレート で、たとえば次のようになります:
すべての注文を Kitchen に Kitchen Ticket を使って印刷する。
一致する注文が完了すると、WCPOS は選択したテンプレートをサーバー側でプリンターが必要とする形式にレンダリングしてキューに入れます — レジ担当者がすることは何もありません。
Star および Epson プリンターは、ジョブをプリンターのネイティブコマンド言語(Star の場合は Star Document Markup または ESC/POS、Epson の場合は ePOS-Print)にレンダリングする必要があるため、サーマルテンプレートのみを使用できます。PrintNode はジョブが PDF にレンダリングされるため、任意のテンプレート — サーマルまたはフルページ HTML — を使用できます。あるプリンターでテンプレートがオプションとして表示されない場合、それはプリンターがその形式をレンダリングできないためです。サーマルレイアウトの作成については、サーマルテンプレートを参照してください。
店舗別プリンター (Pro)
デフォルトでは、自動印刷ルールはグローバルです — すべての店舗がそれらを共有します。Pro では、個々の店舗に独自のクラウド印刷ルールを設定し、その注文を独自のプリンターに印刷させることができます(ある店舗のキッチンチケットが別の店舗で印刷されるべきではありません)。
POS → Stores で店舗を編集し、その Cloud Printing セクションを開いて、Add rule をクリックします。各ルールは次のとおりです:
- Printer ID — 送信先のクラウドプリンターの安定した ID
- Scope — POS orders only(デフォルト)、Online orders only、または Every order
- Format — StarPRNT(デフォルト)、ESC/POS、Epson ePOS-Print、または HTML
注文が独自のルールを持つ店舗に属している場合、WCPOS はそれをその店舗のプリンターにルーティングします。店舗に独自のルールがない場合は、グローバルな自動印刷ルールにフォールバックします — そのため、異なる店舗だけを設定すればよいのです。
手動印刷
自動印刷ルールを待つ必要はありません。チェックアウト/レシート画面から、レジ担当者はオンデマンドでクラウドプリンターにレシートを送信できます — 再印刷や、一回限りのチケットを特定のプリンターにルーティングするのに便利です。
レシートの生成方法はプリンターによって異なります:
- Star CloudPRNT — レシートはデバイス上でレンダリングされ、CloudPRNT を通じてプリンターに渡されます。
- Star Online、Epson、PrintNode — レシートは選択された注文とテンプレートからサーバー上でレンダリングされ、その後プリンターまたはホスト型リレーに配信されます。
テスト印刷と接続ステータス
各プリンターカードには Test print ボタンがあり、短い診断を送信します。これにより、実際の注文で使用する前に、プリンターに到達可能で形式が正しいことを確認できます。
カードにはライブステータスも表示されます:
| プロバイダー | ステータス | 意味 |
|---|---|---|
| Star CloudPRNT / Epson | Waiting | プリンターがまだチェックインしていません — WCPOS は最初のポーリングを待っています。 |
| Star CloudPRNT / Epson | Connected | プリンターが最近 WCPOS をポーリングし、ジョブを取得しています。 |
| Star Online | Online | Star Online が、選択されたデバイスが利用可能であると報告しています。 |
| Star Online | Offline | Star Online が、選択されたデバイスが利用できないと報告しています。 |
| Star Online | Unknown | WCPOS が Star Online からデバイスのステータスを確認できませんでした。 |
| PrintNode | Online | PrintNode サービスが、クライアントとプリンターが利用可能であると報告しています。 |
| PrintNode | Offline | PrintNode が、クライアントまたはプリンターが利用できないと報告しています。 |
トラブルシューティング
プリンターが Waiting のまま動かない
Waiting から決して抜け出さないポーリング型プリンターは、WCPOS に正常に到達したことが一度もありません。以下を確認してください:
- プリンターのファームウェア内のポーリング URL とトークンが、WCPOS が生成したものと正確に一致していること。1 文字でも間違っているとすべてのポーリングが拒否されます — 不明な場合は WCPOS でトークンを再生成して入力し直してください。
- プリンターが実際にインターネット経由でサイトに到達できること(正しい DNS、アウトバウンド HTTPS をブロックするファイアウォールがない、ストアの SSL 証明書が有効)。
- プリンターの CloudPRNT / Server Direct Print 構成でポーリングが有効になっており、妥当な間隔が設定されていること。設定を変更した後はプリンターを再起動してください。
Star Online が API キーは権限がない、または禁止されていると表示する
Star Online は認証と権限を分離しています:
- 401 / 認証失敗 は、API キー自体が受け入れられなかったことを意味します。キーが正しくコピーされていること、取り消されていないこと、そして期待される Star Online アカウント/リージョンに属していることを確認してください。
- 403 / 禁止 は、API キーは受け入れられたが、要求されたアクションに対して認可されていないことを意味します。stario.online でキーを編集し、必要な権限を有効にしてください。特に Fetch my devices には EnumDevices、印刷には PrintToDevice が必要です。
Fetch my devices が成功してもプリンターが表示されない場合は、stario.online の Device Groups ページを確認してください。グループには少なくとも 1 台の接続済みデバイスが含まれている必要があり、WCPOS の CloudPRNT URL は同じグループを指している必要があります。
PrintNode のジョブが印刷されない
ジョブは PrintNode に到達しましたが、プリンターから出力されませんでした。以下を確認してください:
- プリンターに接続されたコンピューターで PrintNode デスクトップクライアントが起動してオンラインになっていること。コンピューターがスリープ状態であったり、クライアントが閉じられていたりすると、何も印刷されません。
- WCPOS で正しいプリンターを選択していること — 名前はクライアントが報告するプリンターと一致する必要があります。
- API キーが有効で、取り消されていないこと。PrintNode がプリンターを Offline と表示する場合は、入力し直してください。
Star または Epson プリンターでテンプレートが選択できない
Star および Epson のクラウドプリンターでは、レシートを ESC/POS または ePOS-Print コマンドにレンダリングする必要があるため、サーマルテンプレートのみが動作します。HTML やフルページのテンプレートはこれらの形式で表現できないため、これらのプリンターでは非表示になります。
サーマルテンプレートを選択するか、PrintNode プリンターを使用してください — PrintNode は PDF にレンダリングするため、任意のテンプレートを印刷できます。