...
As the session is created, a new processor session resource and workflow session resource are created and need to be bound to just like the processor and workflow services.
Workflow Events
Code Block |
---|
2023-06-13_14:58:35.910 UTC INFO WorkflowSession PureCloud-rajat1 - Workflow Event: PureCloud-rajat1 session.started
2023-06-13_14:58:35.910 UTC DEBUG ViewObject session.PureCloud-rajat1 - processing event session.started
2023-06-13_14:58:35.910 UTC DEBUG ViewObject session.PureCloud-rajat1 - Found transition for event: session.started
2023-06-13_14:58:35.911 UTC INFO View initial - Exited State: initial
2023-06-13_14:58:35.911 UTC INFO View logged_in - Entered State: logged_in
2023-06-13_14:58:35.911 UTC DEBUG NetworkClient media-bar rajat.gupta@openmethods.com - Queued Event: {"messageType":"resourceEvent","serviceId":"WorkflowManager","resourceId":"PureCloud-rajat1","event":{"messageType":"stateEvent","target":"PureCloud-rajat1","name":"state.updated","context":{},"data":[{"name":"session.logout","type":"enable"},{"name":"session.login","type":"disable"}]}}
2023-06-13_14:58:35.911 UTC INFO WorkflowSession PureCloud-rajat1 - Client Event: state.updated
{"messageType":"stateEvent","target":"PureCloud-rajat1","name":"state.updated","context":{},"data":[{"name":"session.logout","type":"enable"},{"name":"session.login","type":"disable"}]}
2023-06-13_14:58:35.911 UTC DEBUG WorkflowSession PureCloud-rajat1 - Done processing event: PureCloud-rajat1 session.started |
As the session or interaction state changes, the workflow component keeps track using several state machines. An event is raised by the processor session and sent to the workflow engine (line 1). The workflow engine looks to see if there is a transition for the event and if there is changes the state machine (line 3). The state changes are listed in lines 3 & 4. When the state changes, the set of buttons or capabilities that are enabled and disable are updated and set to the client (lines 6-8).