Hatch Review

Bill Erickson, Software Development Engineer, King County Library System

Evergreen Conference, 2018

What Problem Does Hatch Solve?

window.print();

Hatch Architecture

  1. Browser AngularJS Service egHatch (JavaScript)

  2. Browser Extension (JavaScript)

  3. Native Application (Java)

Hatch Message Flow

Hatch Diagram

JS Objects and JSON All The Way Down

{
    "action":"print",
    "content":"<b>Hello, World!</b>",
    "contentType":"text/html",
    "showDialog":true,
    "msgid":10,
    "from":"page",
    "clientid":5319,                   // set by extension
    "origin":"https://eg.example.org", // set by extension
    "settings":{"context":"default","printer":"HP-Deskjet-5100", ...}
}

HatchInstaller.exe

Verifying the Java Install

# Linux
$ ./hatch.sh test

# Windows
C:\Program Files (x86)\Hatch> hatch.bat test

2017-03-29 13:52:21 FINEST MessageWriter sending: {"clientid":1,"origin":"https://test.hatch...
2017-03-29 13:52:21 INFO   Using data directory: /home/berick/.evergreen
2017-03-29 13:52:21 FINEST MessageReader read: {"clientid":1,"origin":"https://test.hatch....
2017-03-29 13:52:21 INFO   Received message id=1 action=keys
...

Browser Client Configuration

Enable Hatch

Administration ⇒ Workstation ⇒ Print/Storage Service ("Hatch")

Hatch Settings

Hatch Printing UI

Administration ⇒ Workstation ⇒ Printer Settings

Hatch Print Config

What’s Next?

/

#