Skip to content

What is a custom driver

A custom driver is a small JavaScript program that runs inside the Domotz Collector. It talks to a single device on the local network — over HTTP, SSH, SNMP, Telnet, TCP, WinRM, TFTP, or SCP — collects the data you care about, and publishes it to Domotz as variables, metrics, or a table.

Reach for a custom driver when:

  • Built-in Domotz monitoring does not cover a specific metric, command, or configuration item on a device.
  • You need to expose values the device only returns over a proprietary API or CLI.
  • You want to track a value over time and see it alongside Domotz built-in variables.

If all you need is basic availability or standard SNMP OIDs, the built-in monitoring is usually enough.

  • It does not run in the cloud — it runs on the collector that sits on the customer site.
  • It does not keep state across executions — each run starts fresh.
  • It cannot make arbitrary outbound network calls to the internet. All calls go through the sandbox-provided libraries, which constrain them to the managed device.

See the driver lifecycle for how the pieces fit together, and Sandbox constraints for exactly what the runtime permits.