Stasis Action Dispatch Mapping
Stasis Action Dispatch Mapping
To execute visual node graphs across telecommunication networks, Asterisk 2 maps abstract interface elements down into standard Asterisk REST Interface (ARI) commands. The framework converts UI layouts into real native stasis execution frames.
Dynamic API Frame Conversion Topology
The layout below illustrates how abstract workspace modules generate physical API output instructions:
graph LR
%% Visual Model
subgraph CanvasSource["Visual Layout Context"]
NodePlay["Playback Shape block<br/>(File: 'welcome.wav')"]
NodeCollect["Input Shape block<br/>(MaxDigits: 4)"]
end
%% Engine Dispatcher
subgraph TranslationCore["Stasis Dispatcher Class"]
MapPlay["POST /ari/channels/{id}/play<br/>(Inject Audio Container)"]
MapCollect["POST /ari/channels/{id}/play<br/>(Stream prompt & await DTMF event)"]
end
%% Underlying Engine
subgraph AsteriskKernel["Asterisk Channel Engine"]
ExecMedia["res_stasis Execution Engine<br/>(Handles Physical Audio Streams)"]
end
%% Paths
NodePlay ==>|"Translate Action"| MapPlay
NodeCollect ==>|"Translate Action"| MapCollect
MapPlay ==>|"Push Network Frame"| ExecMedia
MapCollect ==>|"Push Network Frame"| ExecMedia
%% Aesthetic Color Schemes
classDef srcToken fill:#0f172a,stroke:#38bdf8,stroke-width:2px,color:#fff,rx:6px,ry:6px;
classDef coreToken fill:#312e81,stroke:#ec4899,stroke-width:2px,color:#fff,rx:6px,ry:6px;
classDef kernelToken fill:#1e293b,stroke:#a855f7,stroke-width:2px,color:#fff,rx:6px,ry:6px;
class CanvasSource,NodePlay,NodeCollect srcToken;
class TranslationCore,MapPlay,MapCollect coreToken;
class AsteriskKernel,ExecMedia kernelToken;
Synthesized API Frame Output Specs
1. Interactive Sound Playback Requests
Maps user sound strings down into explicit network frame formats:
{
"media": "sound:welcome.wav",
"lang": "en",
"playbackId": "play_node_01"
}
2. Dynamic Tone Staging Loops
To gather push-button digit sequences, runtime workers stream introductory prompts and register targeted listener handlers targeting inbound ChannelDtmfReceived socket payloads automatically.