Getting Started Cameras & Video Detection & Recording Automation & Events Actions Integration & Connectivity Network & Discovery AI & Remote Control MQTT Modbus ZeroMQ System & Administration Use Cases Troubleshooting About & Legal
Home / Documentation / ZeroMQ Socket
Knowledge base

ZeroMQ Socket

ZeroMQ Socket creates and manages a ZeroMQ/JeroMQ socket inside Banalytics. Use it when Banalytics must exchange low-latency messages with local services, industrial gateways, custom agents, or other applications that already speak ZeroMQ.

Configure the messaging endpoint once, then reuse it in tasks

The component owns the socket type, bind/connect mode, endpoint address, subscription filter, timeouts, and runtime counters. A listener task can then receive messages through this socket and pass them into Banalytics automation.

ZMQ

Socket lifecycle

The component wraps JeroMQ socket creation and exposes a stable Banalytics component for downstream tasks.

B/C

Bind or connect

Use BIND when Banalytics opens the endpoint, or CONNECT when it attaches to an existing peer.

STAT

Runtime statistics

Monitor sent and received messages, transferred bytes, and socket errors from the component state.

Select the socket pattern that matches the integration contract

SUB

Subscribe to an external publisher

Choose SUB, usually with CONNECT, when an external service publishes telemetry, commands, or detection results. Use subscribeFilter to reduce incoming traffic by byte prefix.

PUB

Publish from Banalytics to many consumers

Choose PUB when downstream tools should receive the same messages. In most topologies the publisher binds and subscribers connect.

PULL

Receive queued work from PUSH producers

Use PULL when another process pushes a stream of jobs, measurements, or frames that Banalytics should process one by one.

REQ

Request/response integrations

Use REQ or REP only when the peer follows ZeroMQ's strict request-response alternation.

ADV

Advanced routing

Use PAIR, DEALER, or ROUTER when the external application explicitly implements the same framing and routing pattern.

Plan endpoint ownership before choosing bind or connect

Local bridge
Use tcp://127.0.0.1:5555 when Banalytics talks to an agent running on the same machine.
LAN endpoint
Use tcp://0.0.0.0:5555 in bind mode when peers from the local network should connect to Banalytics.
One binder
Only one process can bind a TCP endpoint. Other peers should connect to that endpoint.
Firewall path
When binding on a network interface, make sure the operating system firewall allows the chosen port.

Configuration parameters

ParameterRequiredDescriptionDefault
Title
YesHuman-readable name for this ZeroMQ endpoint.None
Socket Type
YesZeroMQ socket pattern: PUB, SUB, PUSH, PULL, REQ, REP, PAIR, DEALER, or ROUTER.SUB
Connection Mode
YesBIND opens the endpoint from Banalytics. CONNECT attaches to an endpoint opened by another process.CONNECT
Address
YesZeroMQ address, for example tcp://localhost:5555, tcp://127.0.0.1:5555, or a LAN endpoint.tcp://localhost:5555
Subscribe Filter
OptionalByte-prefix filter used by SUB sockets. Empty value subscribes to all messages.Empty
Receive Timeout (ms)
YesReceive timeout in milliseconds. It affects idle detection and how quickly receive operations return when no message arrives.1000
Send Timeout (ms)
YesSend timeout in milliseconds. It controls how long send operations may wait before reporting a failure.1000

Operational notes

SUB

Subscription filters are not wildcards

subscribeFilter is a ZeroMQ byte-prefix filter, not an MQTT-style wildcard. Use exact prefixes such as sensor/ or leave it empty for all messages.

TIME

Timeouts tune responsiveness

Short receive timeouts make idle checks react sooner. Longer values reduce wakeups on slow or sporadic sources.

SEND

Sending depends on another component

This release focuses on the reusable socket and receiving pipeline. Add an action or custom task when the deployment needs outbound ZeroMQ messages.

Related ZeroMQ pages

Related tasks and pages