Contents
Simple Voice Inbound–Immediate Call
Overview
This is a basic service that helps an application/end user contact the contact center. It has the following characteristics:
- It supports only customer initiated voice contacts.
- It stores and maintains application data with the service.
- It returns access information in the response of the Create API.
- It supports very basic access number allocation (random and locking)
- It supports reserving the access information when allocated for the application for a configurable period of time.
- It support the following types of access information:
- Access Number (DNIS) which is to be called by the application
- Access code which is to be supplied by the customer/application when the contact is being established. This provides an extra level of authentication.
Sequence Diagrams
request-interaction - No Delay
request-interaction - No Delay, access code
Request, Response, and Events Reference
Create Request Data
These are the service specific parameters that will be supplied on the Create service API.
Parameters |
Mandatory |
Description |
---|---|---|
_phone_number |
Yes |
The phone number of the device that the application is running on. This data will be used to match the specified data when the device/application calls the supplied access number. |
_provide_code |
No | This indicates if the service should return an access code which will add more security and reliability when trying to correlate the incoming call with the service. The value is a boolean. If not present, then GMS will use the value that was configured for the service. If it is not configured and not supplied on the Create API request then the value will be false. |
_resource_group |
No |
This identifies the type of resource group that is need to help this end user. This maps to a configured set of access numbers. If not present, then GMS will use the group that was configured for the service. If it is not configured and not supplied on the Create API request then the request will be rejected. |
{appdataname} |
No |
This is data that is supplied by the application and used to help the contact center resources better service the end user. The application can supply as many application data parameters as they want. These parameters may be string values or files. They should add to the multi-part structure in the body. |
Create Response Data
These are the service specific parameters that will be supplied on the Create service API response.
Parameters |
Mandatory |
Description |
---|---|---|
_access_number |
Yes |
This is the access number which was allocated for this application. The application should use this number to contact the contact center. |
_access_code |
No |
This is the access code that should be supplied by the application or end user when the call is established to further authentication the application/user. This will be present when the Create API specifies that it needs a access code (_provide_code = true). |
_expiration_time | No |
This is the amount time (in seconds) that this access information will be locked/reserved for the service. |
Specific Requests
There are no specific requests for this service.
Events
There are no events associated with this service.
Customization
Customers can customize their own services based on the request-interaction service. The way you do this is by defining your custom service in Configuration Manager. You create a section under the services section in the GMS application object as the name of your service. You then specify the configuration options and appropriate value for your service. Most of these options are parameters that will be passed to an request-interaction service but have been given pre-defined values via configuration. For details on the configuration options see the section below. This enables you to simplify the API signature for your service. Once the new service is defined the application can use it. The following is an example: You can create an iPhoneService section under the services section and set the following configuration options:
Option |
Value |
---|---|
_type |
built-in |
_name |
request-interaction |
_ttl |
7200 |
_provide_code |
false |
_resource_group |
iPhoneService |
The following is the example Create API invocation for the iPhoneService service:
Request URL:http://localhost:8080/gms-web/gms/1/service/iPhoneService Request Method:POST Accept:*/* Accept-Charset:ISO-8859-1,utf-8;q=0.7,*;q=0.3 Accept-Encoding:gzip,deflate,sdch Accept-Language:en-US,en;q=0.8 Connection:keep-alive Content-Length:xxxx Content-Type:multipart/form-data; boundary=----Boundary Request Payload ------Boundary Content-Disposition: form-data; name="_phone_number" 6504669999 ------WebKitFormBoundaryy16qocbN6tmPORZL Content-Disposition: form-data; name="current_location_latitude" 48.8583 ------WebKitFormBoundaryy16qocbN6tmPORZL Content-Disposition: form-data; name="current_location_longitude" 2.2944 ------WebKitFormBoundaryy16qocbN6tmPORZL
Configuration Options
The following are the configuration options that can be defined for a customized service based on the request-interaction service: Note: if one of the request-interaction parameters is passed on Create API for a customized version of the service, the configuration option value will supercede the passed value (that is, it will be ignored).
Option |
Type |
Mandatory |
Value |
Description |
---|---|---|---|---|
_type |
string |
true |
builtin |
This is the type of service that will be used. The values can be either built-in or ors. |
_service |
string |
true |
request-interaction |
This will always be "request-interaction" for basic related services. |
_ttl | int | false | user defined - if not provided, the default will be 30 | This specifies the default time to live for all stored data. |
_resource_group | string | true | {none} | Specifies the name of the resource group from which to select a resource. |
_provide_code | boolean | false | user defined - if not provided, the default will be false | If enabled, the service returns an access code that may be used to identify the inbound call |