Inbound call

The following sequence diagram describes a typical inbound call scenario. The scenario can be resumed in the following steps (step numbers are annotated in the diagram):

  1. Incoming call from the media gateway (connected to the PSTN network); INVITE sent to OneProxy.
  2. OneProxy applies the configured routing rules and forwards INVITE to CallControl.
  3. CallControl send Call::Routing event to ServerManager.
  4. ServerManager creates a session and send Session::Create|Routing event to Router.
  5. Router request a ScriptEngine to run the initial script.
  6. The initial script request router to assign a service to the session based on the interaction DNIS.
  7. Router identifies the service that matches the DNIS and requests an assign service to ServerManager.
  8. An assign service callback is sent to the original caller (the initial script) indicating that the operation was successful.
  9. ScriptEngine then launches the configured service script.
  10. In this scenario, the service script request a play/park operation to ServerManager.
  11. ServerManager processes the request and forwards it to CallControl.
  12. CallControl invites OnePark indicating the file to be played.
  13. OnePark accepts call.
  14. CallControl connects the inbound call to OnePark – the client is now listening to the audio file.
  15. A callback is sent to ServerManager and then to ScriptEngine indicating that the Park operation was successful.
  16. Next, the service script enqueues the session for distribution.
  17. Router receives this request and searches for available agent to handle the session. A suitable agent is found and Router issues a Deliver request to ServerManager.
  18. ServerManager reserves the agent and create an agent session; the deliver request is forwarded to CallControl.
  19. CallControl invites OneAgentWeb, through OneSIPConnector and sends a Call::Offering event to ServerManager.
  20. ServerManager evolves the agent state to busy and the agent session state to Connecting – events are sent to agent.
  21. OneAgentWeb accepts call, through OneSIPConnector.
  22. CallControl re-invites the media gateway and connects the inbound call to the agent.
  23. CallControl disconnect OnePark.
  24. CallControl send a Call::Connected event to ServerManager.
  25. ServerManager evolves the agent session state to Working – event is sent to OneAgent.
  26. The deliver operation is completed successfully and a callback is sent to ServerManager and then to Router.
  27. The Session::Delivered|Working is sent to ScriptEngine that runs the PostCall script if configured to do so.