Extension Management

Extension Management

Extensions are custom pieces of software, produced by GB and third-parties, that “extend” the capabilities of CAS. Extension guidelines and examples can be found on our GitHub presence at:

General Bytes on Github

Any and all documentation about extensions are confined to our GitHub site. General Bytes' Support is limited to existing hardware and software only. Support cannot and will not assist in your creation of custom code. That exploration is outside the scope of our Support. Questions may only be fielded to the community and development team via standard GitHub channels.

Operator Website API Example



Installing an Extension

Once the extension is built, it may be loaded into CAS. Copy the extension file to the proper folder, tell CAS to load that extension, and then restart the CAS master service.

Copy the “jar” file to the extensions folder.

sudo mkdir -p /batm/app/master/extensions cp /root/your_custom_extension.jar /batm/app/master/extensions/your_custom_extension.jar
  • the filename and location will obviously be different.

Modify file ownership.

sudo chown batm:batm /batm/app/master/extensions/your_custom_extension.jar
  • the custom extension must be “owned” by the batm user.

Modify the extensions configuration file.

Create the /batm/config/extensions file and adjust it's permissions:

sudo touch /batm/config/extensions sudo chown batm:batm /batm/config/extensions

Use nano (or any another text editor) to edit the extensions configuration file:

sudo nano /batm/config/extensions
  • set autoload=true for the jar’s extension, example:

  • com.generalbytes.batm.server.extensions.website.SellExtension.autoload=true

  • Save the file and exit nano (Ctrl+X and Enter).

Restart CAS to implement the new extension.

sudo /batm/batm-manage stop all sudo /batm/batm-manage start all

Success. The JAR is now in the proper place, and CAS will load it when started.

To verify it is enabled, navigate (in CAS) to: Tools > Loaded extensions

image-20260713-191853.png
  • Your custom extension should be listed on that page.


Disabling an Extension

Third-party extensions will normally require testing & debugging. To disable an extension for debugging, remove the extension entry from the configuration file & restart the master service.

Remove the extension entry.

Use nano (or another editor) to edit the “extensions” configuration file:

sudo nano /batm/config/extensions
  • set autoload=false for the jar’s extension.

  • com.generalbytes.batm.server.extensions.your_custom_extension.autoload=false

  • Save the file and exit nano (Ctrl+X and Enter).

Restart the CAS master service.

sudo /batm/batm-manage stop all sudo /batm/batm-manage start all

Verify.

To verify it is disabled, navigate (in CAS) to: Tools > Loaded extensions:

image-20260713-191947.png

Your custom extension should NOT be listed if you’ve properly disabled it.

Copyright © 2020-2026 General Bytes USA LLC