Bagikan melalui


Pemecahan masalah Universal Print - Memahami tahapan pekerjaan cetak

Artikel ini memberikan gambaran umum tentang bagaimana pekerjaan cetak melewati berbagai komponen Universal Print dan bagaimana statusnya diperbarui.

Cetakan pengguna (dari klien)

Pengguna memilih printer Universal Print, memilih opsi cetak yang diinginkan lalu mengklik tombol Cetak. Pengguna dapat mencetak dari salah satu sumber berikut (terkadang kami menyebutnya sebagai klien):

  • Dari OS Windows (PC, Windows 365, Azure Virtual Desktop dll.)
  • Dari aplikasi browser web seperti OneDrive for Business, Excel di browser.
  • Aplikasi oleh vendor lain atau aplikasi Lini bisnis (LOB) yang dikembangkan menggunakan API Microsoft Graph.
  • Klien lain (seperti Mac dll.).

OS Windows

Mari kita ambil contoh pengalaman dari OS Windows.

Setelah pengguna mencetak di Windows, berikut adalah langkah-langkah yang terjadi:

  1. Aplikasi dapat menggunakan salah satu dialog cetak standar Windows (seperti Notepad) atau dialog cetaknya sendiri (misalnya Microsoft aplikasi Office s, Adobe Acrobat, dll.). Salah satu dialog ini akan mengirim tugas cetak ke penampung Windows Print yang berjalan pada Windows. Untuk Universal Print, setiap printer menggunakan driver kelas Universal Print bawaan. Penampung menggunakan pengandar ini untuk memproses pekerjaan lebih lanjut.
    • Penampung Windows Print dapat secara opsional memanggil Aplikasi Dukungan Cetak (PSA) jika pencetak dikaitkan dengannya dan diinstal pada perangkat. PSA biasanya diterbitkan oleh OEM printer dan terkait dengan model printer mereka. PSA mungkin terinstal secara otomatis pada Windows dan ditautkan ke pencetak.
  2. Penampung Windows Print mengunggah tugas cetak (metadata dan payload) ke layanan Universal Print. Pekerjaan dikirim menggunakan Internet Printing Protocol (IPP) melalui HTTPS. Porta yang digunakan untuk printer yang diberikan dinamai sebagai IPP-GUID.

Saat klien mengirim pekerjaan cetak ke layanan Universal Print, klien melakukan tindakan berikut:

  1. Memvalidasi tugas cetak. Ini memastikan bahwa atribut pekerjaan cetak cocok dengan atribut yang dilaporkan oleh printer. Pekerjaan yang gagal validasi ditolak dan kesalahan dikembalikan ke klien. Pekerjaan yang berhasil divalidasi disimpan dalam antrean cloud dan tersedia di portal Universal Print di bawah Pekerjaan Cetak printer. Pada tahap ini, status pekerjaan akan menjadi atau Pending Paused.
    • Pekerjaan mungkin dalam keadaan Paused jika printer mengaktifkan rilis aman dan pekerjaan sedang menunggu, atau jika ada tugas yang dipicu oleh aplikasi cloud pihak ketiga.
    • Jika pencetak tidak memiliki rilis aman atau tidak memiliki tugas pihak ketiga, maka pencetak akan langsung pergi ke Pending status. Jika tidak, statusnya akan berubah dari Paused menjadi Pending hanya setelah pekerjaan dirilis atau tugas ditandai sebagai selesai.
  2. Untuk pekerjaan Pending , Universal Print memberi tahu printer yang sesuai bahwa setidaknya ada satu pekerjaan cetak yang menunggu dalam antrean cloud. Beberapa printer (dan Konektor Pencetakan Universal) mendengarkan pemberitahuan ini secara real time, sedangkan printer lain dapat melakukan polling untuk pemberitahuan tersebut secara berkala (misalnya setiap 30 detik).
  1. Ketika pencetak menerima pemberitahuan, ia dapat memutuskan untuk segera memproses pekerjaan cetak atau menunggu (misalnya jika printer sudah sibuk mencetak pekerjaan cetak lain).
  2. Printer mulai memproses pekerjaan dengan terlebih dahulu meminta daftar SEMUA Pending pekerjaan cetak. Printer dapat memutuskan untuk memproses pekerjaan ini satu per satu atau dapat memproses beberapa pekerjaan secara paralel.
  3. Untuk printer pekerjaan mulai diproses, pertama-tama mengklaim pekerjaan dengan mengakuinya. Ini menginformasikan Universal Print bahwa pekerjaan sekarang dikunci untuk diproses oleh printer tertentu dan status pekerjaan cetak berubah menjadi Processing.
  4. Printer mengunduh metadata dan payload pekerjaan cetak.
  5. Printer memproses payload cetak dan cetakan.
    • Catatan: Dalam beberapa kasus, printer dapat mengakui pekerjaan tetapi dapat menunda pekerjaan untuk sementara. Selama waktu ini, printer dapat memperbarui status pekerjaan ke Processing-Stopped di Universal Print.
  6. Printer memperbarui pekerjaan ke salah satu status "final" berikut:
    • Completed: Ketika pekerjaan berhasil dicetak.
    • Aborted: Ketika printer menghadapi beberapa masalah dan tidak dapat mencetak pekerjaan
    • Canceled: Ketika printer mungkin memiliki konsol tampilan, pengguna akan melihat daftar pekerjaan cetak yang tertunda. Mereka dapat memilih satu atau semua dan menjadikan sebagai Canceled.

Untuk printer yang terdaftar melalui Konektor Pencetakan Universal, Konektor melakukan langkah yang sama dengan yang akan dilakukan printer biasa. Namun, ini menyampaikan pekerjaan dari layanan Universal Print ke printer aktual.

Berikut adalah beberapa perbedaan dalam alur untuk konektor:

  • Layanan Universal Print memberi tahu Konektor untuk Pending pekerjaan alih-alih printer.
  • Universal Print Connector mengakui dan mengunduh data pekerjaan cetak. Setelah mendapatkan pekerjaan, Konektor memanggil WINDOWS Print API untuk mengirimkan pekerjaan ke penampung Windows di Konektor. Penampung Windows memanfaatkan pengandar pencetak untuk merender pekerjaan, lalu tugas dikirim ke pencetak.
  • Untuk memperbarui status pekerjaan cetak:
    • Pencetak mengirim status tugas cetak ke penampung Windows pada Konektor.
    • Polling konektor untuk status pekerjaan dari penampung Windows.
    • Ketika status pekerjaan diperbarui, status pekerjaan diperbarui sama di layanan Universal Print.

Catatan

Jika printer tertentu memiliki beberapa Pending pekerjaan, maka Konektor akan memproses pekerjaan tersebut secara serial (satu per satu). Pekerjaan yang sedang diproses akan muncul sebagai Processing, sedangkan pekerjaan cetak setelah itu pada printer yang sama akan menunggu dan memiliki status sebagai Pending. Pekerjaan di berbagai printer (pada Konektor yang sama) akan diproses secara paralel.