Skip to content

SIP PBX Trigger Trunk Event

Andrey Egorov edited this page May 18, 2026 · 2 revisions

Overview

Use SIP PBX Trigger with Trigger On = Trunk Event to:

  • receive inbound calls from an external SIP side
  • route fixed-address trunks with or without SIP registration
  • host workflow-driven auth for dynamic trunks
  • optionally decide whether daemon-owned global call recording should start

Main Parameters

Parameter Required Shown when Description
Trigger On Yes Always Select Trunk Event.
Trunk Ref Yes Always Stable public trunk name. Used by inbound events and by Dial -> Make Call in Mode = Trunk.
Connection mode Yes Always Fixed Address or Dynamic Address.
SIP Connection Yes for practical use Connection mode = Fixed Address SIP credential used for outbound trunk signaling and fixed-address matching.
Use registration No Connection mode = Fixed Address If enabled, the trigger sends outbound REGISTER and later validates the returned route token on inbound requests.
Auth Mode Yes Connection mode = Dynamic Address Static, Digest First, or Raw.
Username Yes Connection mode = Dynamic Address and Auth Mode = Static Static auth username for dynamic trunk auth.
Password Yes Connection mode = Dynamic Address and Auth Mode = Static Static auth password for dynamic trunk auth.
Global Call Recording No Always Enables the Recording branch.

Options

Fixed Address

Option Shown when Description
Codecs Always Allowed SIP audio codecs for this trunk route. This is an allow-list only, not a priority override. The runtime keeps its built-in codec priority. Applies both to inbound calls on this trigger and to outbound Dial -> Make Call in Mode = Trunk through the same Trunk Ref.
DTMF Methods Always Allowed inbound and outbound DTMF methods for this trunk route: RFC2833, SIP INFO, Inband. This is a filter only, not a priority override. Applies both to inbound calls on this trigger and to outbound Dial -> Make Call in Mode = Trunk through the same Trunk Ref.
Registration Expires (Seconds) Use registration = on Requested REGISTER expiry for outbound trunk registration refresh.
REGISTER Headers Use registration = on Extra SIP headers added to outbound REGISTER.

Dynamic Address

Option Shown when Description
Codecs Always Allowed SIP audio codecs for this trunk route. This is an allow-list only, not a priority override. The runtime keeps its built-in codec priority. Applies both to inbound calls on this trigger and to outbound Dial -> Make Call in Mode = Trunk through the same Trunk Ref.
DTMF Methods Always Allowed inbound and outbound DTMF methods for this trunk route: RFC2833, SIP INFO, Inband. This is a filter only, not a priority override. Applies both to inbound calls on this trigger and to outbound Dial -> Make Call in Mode = Trunk through the same Trunk Ref.
Auth Timeout (Seconds) Auth Mode = Digest First or Raw How long the trigger waits for Respond To Auth before assuming not_applicable.
Transport Always Current UI exposes UDP.
Local Bind Port Always UDP port for inbound SIP listener.
TLS Bind Port Always Reserved UI field for TLS listener port.
Local Bind IP Always Explicit local bind address.
Advertised IP Always Public host or IP used in Contact/Via fallback identity.
Realm Always SIP auth realm exposed to remote side.
Continue On Auth Reject Always If enabled, a reject from this trigger does not stop later matching auth candidates on the same endpoint.

Recording

Option Shown when Description
Respond to recording timeout (Seconds) Global Call Recording = on How long the trigger waits for Respond to recording.

Connection Modes

Mode Behavior
Fixed Address Matches inbound SIP by fixed remote address. Can optionally perform outbound SIP registration and validate the generated route token on inbound traffic.
Dynamic Address Uses workflow-aware auth handling for inbound REGISTER and INVITE. The remote endpoint becomes the active address after successful auth/registration.

Media Filter Notes

Topic Behavior
Codec priority The Codecs option only removes codecs from consideration. It does not reorder them.
DTMF method priority The DTMF Methods option only enables or disables methods. It does not define a user-facing priority order.
Inband DTMF If Inband is allowed, the runtime also runs audio-tone detection in addition to SIP/RTP DTMF paths.

Auth Modes For Dynamic Address

Auth Mode Auth branch Meaning
Static No Runtime validates the remote side directly against the configured static username/password.
Digest First Yes Runtime models digest auth but asks the workflow for the decision.
Raw Yes Workflow gets the raw auth request and decides whether to allow, challenge, deny, or ignore it.

Output Branches

Branch When it appears Meaning
Call Always Inbound call routed through this trunk trigger.
Recording Global Call Recording = on Trigger-side recording decision request.
Auth Connection mode = Dynamic Address and Auth Mode != Static Workflow auth decision request for inbound REGISTER or INVITE.

Call Output Payload

Field Meaning
eventType Trigger event type, typically invite.
ref Public trunk ref.
legId Live leg created for the call.
callId SIP call identifier.
direction Runtime call direction string.
from Caller SIP URI.
callerNumber Parsed caller number or SIP user.
callerName Parsed caller display name.
to Called SIP URI.
calledNumber Parsed called number or SIP user.
calledName Parsed called display name when present.
raw Normalized SIP inspection object for advanced workflow logic.
sipPbx.ref Hidden routing metadata.
sipPbx.legId Hidden leg resolution metadata.

Recording Output Payload

Field Meaning
eventType Recording trigger event type.
recordRequestId Request ID for Respond to recording.
kind Recording request kind.
ref Public trunk ref.
legId Live leg to record.
callId SIP call identifier.
direction Runtime call direction string.
from Caller SIP URI.
callerNumber Parsed caller number.
callerName Parsed caller display name.
to Called SIP URI.
calledNumber Parsed called number.
calledName Parsed called display name.
extension Present when the call is linked to an extension-facing side.
sipPbx.recordRequestId Hidden request handle used by automatic respond resolution.

Auth Output Payload

Field Meaning
authRequestId Request ID for Respond To Auth.
ref Public trunk ref.
requestType SIP method being authenticated, typically register or invite.
auth Flat auth object such as username, realm, nonce, uri.
remoteIp Remote source IP.
remotePort Remote source port.
transport SIP transport, currently udp.
localIp Local listener IP used for this request.
localPort Local listener port used for this request.
raw Normalized SIP request inspection object.
sipPbx.authRequestId Hidden request handle used by automatic respond resolution.

Follow-Up Action: Respond To Auth

Use SIP PBX -> Respond -> Respond To Auth.

Parameter Required Shown when Description
Action Yes Always Allow, Verify Digest Password, Not Applicable, Challenge, or Deny.
Password Yes Action = Verify Digest Password Digest password to verify against the inbound auth request.
Extension No Action = Allow or Verify Digest Password Leave empty for dynamic trunks. This field is only meaningful for extension auth.
Status Code Yes Action = Challenge or Deny SIP response status code.
Reason Yes Action = Deny SIP reason phrase or workflow-defined reject reason.
Options -> Request ID No Always Explicit auth request override. Usually resolved automatically from the trigger item.

Follow-Up Action: Respond to recording

For recording parameters and outputs, see SIP PBX Global Recording.

The Recording branch can also fire for outbound calls created through Dial -> Make Call when that dial uses this same trunk route.

Clone this wiki locally