Skip to main content

Application role

The application peer implements operations directed to it, may call operations implemented by its peer, emits its own events, and receives peer events.

Must implement​

  • ping — Measure application-layer latency and optionally echo arbitrary data.
  • session.initialize — Negotiate the audio codec and initialize a real-time voice session.
  • session.terminate — Terminate the real-time voice session after replying.

May call​

  • application.move — Advance the IVR flow to another application node after replying.
  • audio.buffer.clear — Discard buffered audio that has not yet been played.
  • call.hangup — Hang up the telephony call after replying.
  • ping — Measure application-layer latency and optionally echo arbitrary data.
  • recording.start — Start recording the telephony call.
  • recording.stop — Stop a recording by identifier.
  • session.get — Get selected session variables, or all variables when keys is empty.
  • session.set — Set free-form variables on the voice session.

Emits​

Receives​

  • audio.info — Report periodic audio read and write throughput counters.
  • call.hangup — Report that the telephony call has ended.
  • dtmf — Report a DTMF key after the remote caller releases it.
  • session.updated — Report a change to negotiated session state such as the selected codec.