Contents
Genesys Mobile Services-based Services
Business Services
These are services which provide a specific business oriented functionality. These services are used by external applications.
request-interaction
Overview
This is a basic service which 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.
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. Note: Settings in Configuration Manager override request parameters. |
_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 CME. You would create a section under the services section in the GMS application object as the name of your service. You would then specific the configuration options and appropriate value for your service. Most of these options are parameters that would 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 will allow 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: We would 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
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 are passed on Create API for a customized version of the service, the configuration option value will supercede the passed value (i.e. 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 |
request-chat
Overview
This is a basic chat service which helps an application/end user contact the contact center. It has the following characteristics:
- It supports only customer initiated chat session
- It stores and maintains application data with the service.
- It is responsible for routing the the chat interaction to a specified (or configured) interaction endpoint
- It support both poll and async (via cometd) mode of message delivery
Note: See the Genesys Mobile Services Basic Chat Service API for more information.
Access Information Utility Services
These are services that provide a utility or composite Access Information related functionality to other services or applications. They are to be used in conjunction with the business services.
match-interaction
Overview
This service will do the following for ALL Services:
- It looks through all the services for one that matches the input criteria.
- only the service id (session id) and data id will be returned to the requester.
- The service will always release, the matched service access information will be unreserved (access resources returned).
Note: The user of this service must use the Storage APIs to retrieve any data that was associated with the matched service.
Create Request Data
These are the service specific parameters that will be supplied on the Create service API.
Parameters |
Mandatory |
Description |
---|---|---|
_phone_number | No | This is the phone number of the party that is calling and will be matched against the _phone_number property of the services. |
_access_number |
Yes |
This is the number that the party called and will be matched against the _access_number property associated with the services. |
_access_code |
No |
This is the code assigned to the party that is calling will be matched against the _access_code property assigned to the services. |
Create Response Data
Parameters |
Mandatory |
Description |
---|---|---|
_id |
Yes | This is the id of the matching service. |
_data_id |
Yes |
This is the id of the matching service's data that is in GMS Storage. |
Specific Requests
There are no specific requests for this service.
Events
There are no events associated with this service.
Configuration
The following are the configuration options that are defined for this service:
Option |
Type |
Mandatory |
Default |
Description |
---|---|---|---|---|
type |
string |
true |
builtin | This is the type of service that will be used. THis will always be builtin. |
name |
string |
true |
match-interaction | This is the name of the matching service. |
request-access
Overview
This service provides a service with access information that has been allocated for it and can then be used to contact the contact center. This service will do the following for any service:
- It will validate that the requesting service is active and running.
- It will acquire the appropriate access information based on the basic allocation algorithm.
- It can reserve the access information for a configurable period of time
- Simple random or round robin allocation
- 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.
Create Request Data
These are the service specific parameters that will be supplied on the Create service API.
Parameters |
Mandatory |
Description |
---|---|---|
_id |
Yes |
This is the identifier of the service which the allocated access information should be associated with. |
_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. The default is false. |
_phone_number |
No |
This is the phone number that is to be associated with the reserved access information. |
_resource_group |
Yes |
This is the resource group from which an available access number will be taken. |
_booking_expiration_timeout |
No |
This is the resource _booking_expiration_timeout used to book the resource. This parameter will override the value in Resource options and in CME options. |
Create Response Data
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 |
Yes |
This is the amount time 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.
Configuration
The following are the configuration options that are defined for this service:
Option |
Type |
Mandatory |
Default |
Description |
---|---|---|---|---|
access_code_length |
int |
false |
6 |
This is the length of the access code which can be allocated. |