ユニバーサル印刷のクラウド印刷 API の概要
ユニバーサル印刷は、組織が Microsoft のクラウドサービスを使用して印刷インフラストラクチャを管理するために使用できる最新の印刷ソリューションです。
ユニバーサル印刷を使用する理由
ユニバーサル印刷は、Windows Server の主要な印刷機能を Microsoft 365 クラウドに移行します。このため、組織はオンプレミスの印刷サーバーが不要になり、デバイスにプリンター ドライバーをインストールする必要がなくなります。 さらに、ユニバーサル印刷では、プリンター アクセス用のセキュリティ グループ、場所ベースのプリンター検出、豊富な管理者エクスペリエンスなどの主要な機能が追加されています。
ユニバーサル印刷を導入している組織と独立系ソフトウェア ベンダー (ISV) は、Microsoft Graph のユニバーサル印刷 API を使用して、新しいシナリオをサポートするアプリケーションを構築および拡張できます。
Web およびモバイル アプリからドキュメントを印刷する
印刷インフラストラクチャをクラウドに移行することで、Web およびモバイル アプリから直接ドキュメントを印刷できます。
- ユーザーは printerShare に印刷ジョブを送信できます。
- プリンター管理者は、プリンターを組織と共有する前に予備テストを行うために、印刷ジョブをプリンターに送信することもできます。
印刷ジョブを printerShare に送信するには、次の手順に従います。
- 印刷ジョブを作成し、作成されたドキュメント ID を保存します。
- ドキュメントの uploadSession を作成します。
- 作成されたアップロード セッションにバイトをアップロードします。
- 印刷ジョブを開始します。
プリンターを管理する
組織のプリンター、プリンターの構成、およびプリンターの使用状況を把握することは、複雑な作業です。 ユニバーサル印刷 API は、3 つの領域すべてで統合を可能にします。
リスト printers および printerStatus を使用して、プリンターの状態、構成、および可用性を注意して見ます。
レポート API を使用して、プリンターを使用しているユーザーと印刷量を確認します。
プリンターのユーザーおよびグループ メンバシップを変更して、ユーザー権限を構成します。
プリンター ハードウェアをシームレスに交換または更新する
共有されるまで プリンターはユーザーに表示されず、管理者は特定の時点で使用可能なプリンター ハードウェアをきめ細かく制御できます。
プリンターを共有すると、printerShare リソースが作成され、いつでも更新して別のプリンターを指定できます。そのため、破損したプリンター ハードウェアを簡単に交換したり、メンテナンスのためにプリンターをオフラインにしたりできます。
アプリケーションで使用するには、printerShare の更新を使用して printerShare の printer
リファレンスを更新します。
プル印刷を有効にする
Microsoft Graph のユニバーサル印刷 API を使うと、アプリケーションでプル印刷をサポートできます。 プル印刷を設定するには、印刷ジョブの開始など、特定の印刷イベントが発生したときに (サービス間通信を介して) アプリケーションに通知するトリガーを登録します。
これらのトリガーを使用すると、アプリケーションは印刷ワーク フローを中断して、ジョブを別のプリンターにリダイレクトしたり、ドキュメント ペイロードを変更したりできます。
次の手順に従って、プル印刷を有効にします。
アプリケーションのアクセス権限を使用して printTaskDefinition を作成します。 この抽象タスク定義は、アプリケーションのジョブを保持するタスクを作成するために使用されます。 テナントごとに、少なくとも 1 つのタスク定義を定義する必要があります。これにより、タスク トリガーを使用してテナントの任意の数のプリンターに関連付けることができます (手順4を参照)。
管理者認証トークンと
null
physicalDeviceId を使用して、1 つ以上の仮想プリンターを登録します。 "仮想プリンター" は、物理デバイスが接続されていない、ユニバーサル プリントのプリンター オブジェクトです。 通常、ユーザーは仮想プリンターに印刷し、後で物理印刷デバイスで印刷ジョブを受け取ります。 手順 6 を参照してください。アプリケーションのアクセス許可と
application/ipp
メディアの種類を使用して、仮想プリンターの属性を更新します (例を参照)。タスクの定義を仮想プリンターに関連付ける管理者認証トークンを使用し、仮想プリンターのタスクトリガーを作成します。 アクセス トークンの生成に使用される appId は、タスク定義の作成に使用されたものと同じ appId である必要があります。
印刷ジョブが仮想プリンターに送信されると、 printTaskTrigger が原因で一時停止されます。 関連付けられている printTaskDefinition に基づいて、
processing
状態が分かる printTask が作成されます。ユーザーが物理プリンター デバイスでバッジをスワイプすると、プリンターはアプリケーションに通知します。 この時点で、アプリケーションは、関連する仮想プリンターのジョブをフェッチ して、現在のユーザーによって作成されたジョブのリストをフィルター処理することが ます。
ユーザーが 1 つ以上の印刷ジョブを選択した場合、アプリケーションは印刷ジョブを物理プリンターにリダイレクトする ことができ、印刷が開始されます。 リダイレクト呼び出しは、このアプリが手順 4 で作成したトリガーによって開始された、関連付けられたプリンターに printTaskが
processing
の状態の場合にのみ成功します。 このタスクは、リダイレクト後に自動的にcompleted
状態に設定されます。
API リファレンス
このサービスの API リファレンスをお探しですか?
フィードバックの提供
ユニバーサル印刷 API に関するご意見をお聞かせください。 Microsoft 365 開発者プラットフォームのアイデア フォーラムで、提案をお寄せください。