Skip to content

Releases: mildmojo/buttons-are-cool-gateway

API update

07 Oct 22:13
Compare
Choose a tag to compare

BREAKING CHANGE: in JSON responses, the button status list is now an array instead of an object. This affects HTTP GET /buttons responses and the deviceStates WebSocket event body. Using an object was unnecessarily complicated and based on a bad assumption.

See documentation for details.

Default mapping fixed: The "player start" buttons are now buttons 49 and 50 on device 1 (instead of 0 and 1). I moved their button numbers to the top of cal1.xml. The XML mapping files are read in reverse order to maintain compatibility with the 100 Button Jam sample Unity project, so moving player start numbers to the top puts them at the end of the list, where the server expects them.

The test page now tries to reconnect every 10s in HTTP polling mode if a poll fails.

Bugfixes!

07 Oct 06:38
Compare
Choose a tag to compare

There were a couple of bugs in v1.1.0, including ones that affected button mapping when connected to hardwware. This release fixes those bugs and adds a new deviceStates WebSocket event when you first connect, telling you the current state of the entire board.

  • Changes JSON returned at GET /buttons
    • [BREAKING] Renames device length to buttonCount.
  • Fixes a couple of bugs in pointer event handling on test page.
  • Fixes really bad button mapping logic (oops!).
  • Makes test page show number of buttons reported by server.
  • Adds support for more than 2 devices reported by server.

Public Release, now with button board emulation

29 Sep 18:58
Compare
Choose a tag to compare

You can now emulate a button board! Start the server with --testmode, visit http://localhost:3000 in two browser windows, and click some buttons! The corresponding buttons in the other window will light up. Configure host in config.json (or use --host on the command line or the HOST environment variable) with '0.0.0.0' or your network IP and you'll be able to pull up the test page from other devices on your network. Connect your tablet!

The test page UI is reworked to be friendlier for touchy clicky stuff.

Screenshot of new UI

  • Fixes mapping bugs; XML mappings were incorrectly read and used.
  • Enables button emulation in testmode via clicking demo page UI
    (sending WebSocket events back to server).
  • Disables long-press context menus on buttons on mobile.
  • Bits of refactoring here and there. Needs more refactor, more tests.
  • Adds support for HOST env var (for setting --host)