FromSignalNodeConfiguration
Namespace: Meshmakers.Octo.MeshAdapter.Nodes.Trigger
Configuration for the FromSignal trigger node. Polls a signal-cli-rest-api bridge
(GET {ApiUrl}/v1/receive/{Number}) for inbound Signal messages and fires the
pipeline with a batch of normalized messages (incl. downloaded attachment bytes).
Inbound counterpart of SignalSender@1. Prototype context: AB#4406 (Epic AB#3295).
Number/ApiUrl resolution (AB#5145): the tenant's registered
System.Communication/SignalChannel singleton (activated via the Studio self-service,
AB#5143) wins and needs NO configuration here at all; the properties below are the
deprecated legacy fallback. With neither, the trigger stays idle instead of failing.
public record FromSignalNodeConfiguration : TriggerNodeConfiguration, INodeConfiguration, IEquatable<NodeConfiguration>, ITriggerNodeConfiguration, IEquatable<TriggerNodeConfiguration>, IEquatable<FromSignalNodeConfiguration>
Inheritance Object → NodeConfiguration → TriggerNodeConfiguration → FromSignalNodeConfiguration
Implements INodeConfiguration, IEquatable<NodeConfiguration>, ITriggerNodeConfiguration, IEquatable<TriggerNodeConfiguration>, IEquatable<FromSignalNodeConfiguration>
Properties
ApiUrl
DEPRECATED legacy fallback (AB#5145): base URL of the signal-cli-rest-api bridge,
e.g. http://localhost:8080. Only read when the tenant has no REGISTERED
System.Communication/SignalChannel; a FromSignalNodeConfiguration.SettingsConfiguration value
still takes precedence over this literal. May be omitted entirely on new-style pipelines.
public string ApiUrl { get; set; }
Property Value
Number
DEPRECATED legacy fallback (AB#5145): the bridge's registered account number to receive
for, e.g. +4366012345678. Only read when the tenant has no REGISTERED
System.Communication/SignalChannel; a FromSignalNodeConfiguration.SettingsConfiguration value
still takes precedence over this literal. May be omitted entirely on new-style pipelines.
public string Number { get; set; }
Property Value
PollingIntervalSeconds
Polling interval in seconds. The bridge's /v1/receive endpoint consumes messages on read, so each poll returns only new ones. Default 5.
public int PollingIntervalSeconds { get; set; }
Property Value
StatusHeartbeatSeconds
Heartbeat of the trigger's status line in seconds (AB#5619). The trigger reports a line like
2026-10-07T04:20:00Z · +4366012345678 · received 2, processed 2, rejected 0 (or
ERROR … when a poll fails) to the pipeline's status — but NOT on every poll: only on a
success↔error transition, after a poll that received messages, and otherwise at most once per
this interval, so an idle, healthy trigger still shows a fresh status without one database
write per poll. A failing bridge is likewise repeated at most once per interval. Default 300;
0 or less means the default.
public int StatusHeartbeatSeconds { get; set; }
Property Value
SenderFilter
Optional filter for the sender number (contains match). When set, only messages from matching senders fire the pipeline — a lightweight allow-list.
public string SenderFilter { get; set; }
Property Value
SettingsConfiguration
DEPRECATED legacy fallback (AB#5145): optional well-known name of a configuration entity
that carries the bridge number / URL (e.g. the accounting app's
SignalImportSettings), reachable from the pipeline via a
System.Communication/Uses association; the attribute names it reads are
FromSignalNodeConfiguration.NumberAttribute / FromSignalNodeConfiguration.ApiUrlAttribute, and values found here
override the node properties. Only consulted when the tenant has no REGISTERED
System.Communication/SignalChannel — new-style pipelines omit this entirely.
public string SettingsConfiguration { get; set; }
Property Value
NumberAttribute
Attribute name on FromSignalNodeConfiguration.SettingsConfiguration holding the bridge number.
public string NumberAttribute { get; set; }
Property Value
ApiUrlAttribute
Attribute name on FromSignalNodeConfiguration.SettingsConfiguration holding the bridge base URL.
public string ApiUrlAttribute { get; set; }
Property Value
CallerBinding
public CallerBindingMode CallerBinding { get; set; }
Property Value
CallerBindingMode
Description
public string Description { get; set; }
Property Value
Constructors
FromSignalNodeConfiguration()
public FromSignalNodeConfiguration()