Sends WhatsApp messages through a provider connection, and can receive inbound ones. Useful where WhatsApp is how the plant already communicates.
Type: whatsapp · Category: Notification · Ports: one input · one output


When to use it
- Escalation to people who will not read email out of hours
- Reaching contractors and suppliers who are not QUBIQ users
Settings
| Setting | Key | Default | Purpose |
|---|---|---|---|
| Mode | mode | send | send, or receive. |
| Connection | connectionId | — | The provider connection. |
| Recipients | recipients | [] | Numbers in international format. |
| Send mode | waSendMode | freeform | freeform, or a pre-approved template. |
| Template | templateId | — | Which approved template, for template mode. |
| Body | body | — | Message text, for freeform. |
Example — escalating after ten minutes unacknowledged
Inject (60s) → SQL (alarms unacked > 10 min) → Array Iterator → WhatsApp (send)
Recipients: {{payload.escalationNumber}}
Send mode: template
Template: alarm_escalation
{{payload.data}} against a message with no data field renders as nothing at all — you get
Value: rather than Value: {{payload.data}}. A raw token arriving in somebody's inbox looks
like data the author meant to send, so a blank is the safer failure.
The practical consequence is that a mistyped path is invisible: the message still sends, just missing a piece. Send one to yourself, or watch a Debug node, before wiring it to an escalation.
The database nodes do the opposite with the same syntax — there an unresolved token is left as literal text.
Gotchas
- Unprompted alerts must use an approved template. WhatsApp only permits freeform messages inside a 24-hour window that the recipient opened by messaging you first. An escalation path built on freeform will work while you are testing — because you have just messaged the bot — and fail silently at 03:00.