1 / 27

Job Messaging Format (JMF) Tutorial

Job Messaging Format (JMF) Tutorial. Doug Belkofer , EFI Chair, SB&I WG Alt. Chair of MIS & JMF WGs Sunday, October 7, 2007 Foster City. Overview. Transport protocols for JMF JMF Message families JMF over HTTP MIME packaging Open issues in JMF. What is a JMF Message?.

ghada
Download Presentation

Job Messaging Format (JMF) Tutorial

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Job Messaging Format (JMF) Tutorial Doug Belkofer, EFI Chair, SB&I WG Alt. Chair of MIS & JMF WGs Sunday, October 7, 2007Foster City

  2. Overview • Transport protocols for JMF • JMF Message families • JMF over HTTP • MIME packaging • Open issues in JMF

  3. What is a JMF Message? • An XML document contained in • a file written to a folder • the body of a HTTP request or HTTP response • Some usages • Job submission • Snapshots of job and device status • Dynamic job update • Queue support

  4. Transport Protocols for JMF • File Protocol • JMF is written to and read from a folder in a file system • Unidirectional • Asynchronous • HTTP Protocol • JMF is sent in the body of a HTTP request/response • Bidirectional • Synchronous and asynchronous • Required by Base ICS Level 2 and 3 • Optionally secure with HTTPS

  5. JMF Message Families • Command — requests a state change • Query — requests information • Response — synchronous reply to a Command or Query • Acknowledge — asynchronous reply to Command (and Query in 1.3) • Signal — a response to a subscribed Query • Registration — tell the receiver to send Commands to a specified URL (new in 1.3)

  6. Command Manager Worker Command / Response Manager Worker Command / Response Acknowledge

  7. Query Manager Worker Query / Response Manager Worker Query / Response JDF 1.3 Acknowledge

  8. Signal Manager Worker Query / Response Signal Signal Signal

  9. Registration Manager Worker/Manager Worker Registration / Response Command / Response Command / Response Command / Response

  10. Message Types • Bootstrapping (still under construction) • Plug & play Pressroom • Device Information • Consumable Level • Status • Settings • Currently executing jobs • Job Status / Progress Messages • Job Phase • Job Progress • Events • Job Modifications - NewJDF

  11. Message Types continued • Queue Handling • Set Priority • Reorder / Group jobs • Hold / restart queued jobs • Abort running Job • Job Submission • Submission via HTTP • JDF + Content in MIME package • File Based JDF submission • hot folder • URL

  12. Message Types continued • Device Control • Startup • Shutdown • Resource Modification • Flush Resources

  13. Pipes • Pipe Interactions • models the phone call from operator to operator • Start Production • Stop Production • High Water / Low Water marks • Individual Resource Requests • Resource Changes for iterative processing

  14. Messages vs. Audit Elements • JMF Messages • Transports Job information in quasi real time • Methods defined for • Unidirectional Signals • Bi-directional Query-Response Pairs • Immediate Synchronous Responses • Delayed Asynchronous Responses • Audit Objects • Logs actual, post-facto job properties in the JDF • Resource Usage and Modifications • Process Times • Events • Logged in the JDF Job Ticket • Transported inside the Job Ticket

  15. Levels of JMF Messaging • Base ICS Level 1 • No messaging • Base ICS Level 2 • Signal messages — either hard wired Query subscriptions or Query subscriptions embedded in JDF • Manager requires both HTTP client & server • Worker requires a HTTP client • Base ICS Level 3 • Query, Command, Response and Acknowledge messages • Manager and worker both require a HTTP client & server

  16. JMF over HTTP • JMF messages are transported in the body of a HTTP POST request or HTTP response • JMF Command, Query, Signal and Acknowledge are sent in a the body of a HTTP POST request • JMF Response is sent in the body of a HTTP response

  17. JMF over HTTP • If the HTTP POST body contains a • JMF Query or Command • The HTTP response body contains a JMF Response • JMF Signal or Acknowledge • The HTTP response body is empty • If the HTTP body contains a JMF message the HTTP header Content-type must be set to application/vnd.cip4-jmf+xml

  18. JMF Query JMF Response <?xml version="1.0" encoding="UTF-8"?><JMF SenderID="JMFTransmitter" TimeStamp="2005-01-23T10:10:03+01:00" Version="1.2" xmlns="http://www.CIP4.org/JDFSchema_1_1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Query ID="0815" Type="Status" xsi:type="QueryStatus"/></JMF> JMF Query <?xml version="1.0" encoding="UTF-8"?><JMF SenderID="No ID configured" TimeStamp="2005-01-23T10:10:10+01:00" Version="1.2" xmlns="http://www.CIP4.org/JDFSchema_1_1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Response ID="R0815" Type="Status" xsi:type="ResponseStatus" refID="0815"> <DeviceInfo DeviceStatus="Idle"> <Device Class="Implementation" DeviceID="Elk" ID="Elk1234" KnownLocalizations="En" ModelName="Elk" Status="Available"/> </DeviceInfo> </Response></JMF> JMF Response JMF Example Manager Worker

  19. MIME Packaging • A JMF message may be bundled in a MIME encoded package together with a JDF job ticket and other digital assets • The MIME package is sent in the body of a HTTP POST request • The HTTP header Content-type must be multipart/related

  20. MIME Packaging • The content in the MIME package must be in the following order: • JMF and JDF refer to other files in the package using the CID URL scheme: cid:file.pdf@cip4.org

  21. New in JDF 1.3 • New message family “Registration” • Allows directing commands to be sent to a particular place • Examples: • MIS that is not interested in resource commands indicating availability of plates can direct prepress to send those commands directly to the press control system • Vice-versa – can direct prepress to send them to MIS

  22. New in JMF for 1.3 • Authentication • Standard Client-server authentication with certificates over HTTPS • How should certificates be exchanged and installed? • Manual process • KnownMessages message extended to indicate which messages are supported via non-authenticated channels versus those requiring a authenticated channel

  23. JDF 1.3 ICS • With JDF 1.2, JMF conformance requirements were defined mainly in the Base ICS, and built upon in other ICS’s • With JDF 1.3, JMF has been broken out into its own ICS • De-couples Base requirements from JMF, allowing easier definition of workflows that don’t require JMF • JMF ICS defines many more messages, with message itself being optional, but if supported, must conform to specific requirements • Allows more interoperability between systems that go beyond the minimum requirements • Encourages use of KnownMessages query to determine supported messages • Allows other ICS’s that want to require a specific message to simply reference definition in JMF ICS

  24. Coming in JMF 1.4 • RequestForAuthentication • Approved proposal for JDF 1.4, uses new RequestForAuthentication messages for exchanging certificates. • Reliable signals • Proposal in development • Resource synchronization • Proposal in development

  25. Open Issues in JMF • Discovery • Some discovery is possible, once you know how to contact other controllers/devices • Missing part is auto-discovery of how to contact other controllers/devices • Proposal has been made to use ZEROCONF for this, postponed until we have a champion to lead the effort • Will not make JDF 1.4

  26. References • JMF messaging • JDF Specification 1.3, Chapter 5http://www.cip4.org/documents/jdf_specifications/JDF1.3.pdf • Base ICShttp://www.cip4.org/document_archive/documents/ICS-Base-1.0RevB.pdf • CIP4's JMF Working Group Wiki page http://www.cip4.org/intern/wiki/JMF • CIP4's Elk Framework • An open source implementation of JMF messaging with Base ICS Level 3 supporthttp://elk.itn.liu.se

  27. <?xml version="1.0" encoding="UTF-8"?><JMF DeviceID="TutorialAudience" SenderID="Doug" TimeStamp="2006-11-05T16:20:00-05:00" Version="1.3"> <Query ID="0815" Type="Resource"> <ResourceQuParams ResourceName="Question"/> </Query></JMF> Questions?

More Related