You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

25 lines
999 B
Markdown

NickelBridge
============
NickelBridge is a simple utility that allows NickelBox to interface with receipt
printers. It runs a simple web server listening on localhost:64269 (nibox) that
accepts JSON-format receipts and attempts to print them to whatever device is
configured in the UI.
NickelBridge uses [`node-thermal-printer`](https://www.npmjs.com/package/node-thermal-printer)
to print receipts. It therefore supports the Epson ESC/POS and STAR protocols.
NickelBridge itself has only been tested with ESC/POS.
Endpoints
---------
* GET `/status`: Returns JSON `{"status": "OK", "width" 48}` where the width is
the user-configured maximum width in characters of a single printed line of text.
* POST `/print`: Accepts a JSON body comprised of the output of a `json` format
NickelBox receipt. Prints it, cuts the paper (if hardware allows), and responds
with `{"status": "OK"}`.
* POST `/opendrawer`: Instructs the receipt printer to pop open the cash drawer,
if there is one attached.