How Notify processes incoming calls
Notify processes incoming calls using workflow activities.
Any Notify activity that manages incoming phone calls creates a record on the Notify Workflow Activity [notify_wf_activity] table. Each notify_wf_activity record is associated with a single call. These records store JSON data detailing the actions to send to the telephony provider.
Notify processes incoming calls in the
following way:
- A person calls a Notify phone number.
- Notify launches the incoming call workflow associated with that Notify phone number.
- The workflow reaches a Notify activity and invokes the activity onExecute() function.
- The activity creates a new notify_wf_activity record detailing any actions to take, with a State value of execute.
- Notify sends the specified actions to the telephony provider.
- The notify_wf_activity record State changes to processed.
- The telephony provider sends a response.
- Response arguments, such as user input or recording info, are stored as JSON data in the notify_wf_activity response_args field.
- The notify_wf_activity State changes to complete.
- The JSON data from the notify_wf_activity record is copied to the Last action field in the Notify call record that triggered the workflow.
- The workflow invokes the onUpdate() function in executing activities.
- The activity confirms that the associated notify_wf_activity record has completed, and changes the activity state to finished.
- The workflow transitions to the next activity.