NickelBridge/README.md

25 lines
999 B
Markdown
Raw Permalink Normal View History

2018-06-08 23:01:11 -06:00
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.