Table of Content

1.      OT16 (R2.5) 2

1.1        Others REST WS improvements. 2

2.      OT15 (R2.4) 3

2.1        Others REST WS improvements. 3

3.      OT14 (R2.3.1) 3

4.      OT13 (R2.3) 3

4.1        Others REST WS improvements. 3

5.      OT12.0 (R2.2.1) 3

5.1        Others REST WS improvements. 3

6.      OT11.0 (R2.2) 4

6.1        Iteration1. 4

6.2        Iteration2. 4

6.2.1         Dial by URI - MMF 2 - Simple incoming Call 4

6.3        Iteration3. 4

6.3.1         Suse OS. 4

6.4        Iteration4. 4

6.4.1         Homogenous contacts and contact meta data. 4

6.5        Iteration5. 4

6.6        Iteration6. 4

6.7        Iteration7. 5

6.7.1         Dynamic Users Configuration. 5

6.8        Iteration8. 5

6.8.1         Homogenous contacts and contact meta data. 5

6.9        Iteration9. 5

6.9.1         Presence API enhancement: add Calendar presence. 5

6.10     Iteration10. 5

6.10.1      Supervision Services on 8068 Premium Desk phone. 5

6.10.2      Manager-Assistant Services on 8068 Premium Deskphone. 5

6.10.3      API Exposure Suite: API Voice Messaging. 6

6.11     Iteration11. 6

6.12     Iteration12. 6

6.13     Iteration13. 6

6.13.1      Others REST WS improvements. 6

7.      OT10.0 (R2.1.1) 7

7.1        Iteration1. 7

7.1.1         Instant Messaging and Presence API 7

7.1.2         Secured application identification for API access (Step2) 7

7.2        Iteration2. 7

7.2.1         Provisioning consistency of OTCT/OTCV SW Clients. 7

7.2.2         Others REST WS improvements. 8

7.3        Iteration3. 8

7.3.1         Others REST WS improvements. 8

7.4        Iteration4. 8

7.4.1         Instant Messaging REST WS. 8

7.4.2         Presence REST WS. 9

7.4.3         Others REST WS improvements. 10

8.      OT2.1. 10

8.1        Iteration1. 10

8.2        Iteration2. 10

8.3        Iteration3. 10

8.3.1         CLIR/COLR Management 10

8.4        Iteration4. 10

8.4.1         OXE routing in routing REST API 10

8.5        Iteration5. 11

8.5.1         API Exposure Suite: API Voice Messaging. 11

8.6        Iteration6. 12

8.6.1         Others REST WS improvements. 12

8.7        Iteration7. 12

8.7.1         Add a new method to get server information. 12

8.8        Iteration8. 13

1.   OT16 (R2.5)

1.1    Others REST WS improvements

Improvement of the feature “User information”:

 

-          Adding in the object “User” the customAttributes” value.
Custom attributes.

Improvement of the feature “Call control”:

 

-          New POST /telephony/devices/{deviceId}/mute/{mute}
Activate/deactivate ringing of a device.

 

-          New notification OnDeviceMuteFailed

This notification indicates that a mute request failed.

 

-          New notification OnDeviceMuteSuccess

This notification indicates that a mute request was successful.

 

-          Adding in the object “DeviceState” the mutable” value.
Indicates whether a device can be muted or not.

 

-          Adding in the object “DeviceState” the muted” value.
Indicates whether a device is muted or not.

 

2.   OT15 (R2.4)

2.1    Others REST WS improvements

Improvement of the feature “Groups”:

 

-          New notification OnGroupLoggedFailed

This notification indicates to a member of a group that the group logged request failed.

 

-          Adding in the object “GroupMemberRole” the AGENT” value.
Hunting Group: the HG member is active in the call distribution.

 

-          Adding in the object “GroupType” the HUNTING_GROUP” value.
Hunting group.

 

3.   OT14 (R2.3.1)

 

No specific evolution.

 

4.   OT13 (R2.3)

4.1    Others REST WS improvements

Improvement of the feature “Communication log”:

 

-          New GET /comlog/records/{recordId}/im             
Get the IM thread.

 

5.   OT12.0 (R2.2.1)

5.1    Others REST WS improvements

Improvement of the feature “User information”:

-          New PUT /users/{loginName}/password               
Change user's password.

Improvement of the feature “Call control”:

-          Adding in the method GET /telephony/calls the loginName” parameter.
Login name of the user for whom the request is invoked. This parameter is ignored if the Session identifier matches a user account, but if it matches an administrator account, it MUST be specified.

-          New  GET /telephony/calls/{callRef}/park                           
Park a specified active call to a target device.

-          New POST /telephony/devices/{deviceId}/unpark
UnPark a call from a target device.

-          Adding in the object “CallCause” the CALL_BACK” value.
The call is a call back.

Improvement of the feature “Messaging”:

-          New  POST /messaging/mailboxes/{mailboxId}/voicemails/{voicemailId}/forward                            

Forward an existing message with recording an introduction.

6.   OT11.0 (R2.2)

6.1    Iteration1

 

No specific evolution.

6.2    Iteration2

6.2.1    Dial by URI - MMF 2 - Simple incoming Call

Improvement of the feature “User information”:

-          Adding in object “User” the sipUriparameter.
User's SIP URI.

6.3    Iteration3

6.3.1    Suse OS

 

-          New operating system: SUSE Linux Enterprise Server 12. An adaptation of the FLEX server was necessary.

6.4    Iteration4

6.4.1    Homogenous contacts and contact meta data

Improvement of the feature “Directory search”:

-          Adding in the object “PartyInfo” the vcardPathparameter.
The vCard path of a user.

6.5    Iteration5

 

No specific evolution.

6.6    Iteration6

 

No specific evolution.

6.7    Iteration7

6.7.1    Dynamic Users Configuration

 By default, the mobile physical type is unknown (DevicePhysicalType.NONE). Its physical type will be known during its startup.

6.8    Iteration8

6.8.1    Homogenous contacts and contact meta data

Improvement of the feature “Call control”:

-          Adding in the object “PartyInfo” the vcardPathparameter.
The vCard path of a user.

-          In the object “PartyInfo” the vcardUrl” is deprecated.
The vCard URL of a user.

6.9    Iteration9

6.9.1    Presence API enhancement: add Calendar presence

Improvement of the feature “Presence”:

-          Deprecated POST/presence/connection
Invoking this method is no longer needed since it is implicitly invoked when calling any operation on this service.

-          Deprecated DELETE /presence/connection         
Invoking this method is only needed if the user does not properly end its session.


6.10    Iteration10

6.10.1   Supervision Services on 8068 Premium Desk phone

Same as next chapter.

6.10.2   Manager-Assistant Services on 8068 Premium Deskphone  

Added feature “Groups” .

-          New GET /groups
Get information on all the groups of the user.

-          New POST /groups/refresh        
Ask to be refreshed by notification on all the calls which happened on the groups of the user.

-          New GET /groups/{groupId}
Returns a description of one group.

-          New GET /groups/{groupId}/changeRole
Change the role of member(s) of a group.

 

-          New OnGroupCreated 
This notification indicates to a user that it is inserted in a new group.

-          New OnGroupModified
This notification indicates to a member of a group that this group has been modified: members added, members removed or members changed (right or role).

-          New OnGroupRemoved
This notification indicates that a user is removed from a group.

-          New OnSupervisedUpdated       
This notification indicates to a supervisor user that some of its supervised users have changed.

 

6.10.3   API Exposure Suite: API Voice Messaging

Improvement of the feature “Messaging”:

-          The attribute “offset of the object “PlayVoiceMessageRequesthas a better behavior : in seconds or in percentage to start playing the message

6.11    Iteration11

No specific evolution.

6.12    Iteration12

No specific evolution.

6.13    Iteration13

6.13.1   Others REST WS improvements

Improvement of the feature “User information”:

-          Adding in object “User” the vcardPathparameter.
User's vCard relative URL.

Improvement of the feature “Call control”:

-          Improve the method “POST /telephony/calls”
Initiates a new call to another user (the callee). (Either multimedia or standard user)

To initiate a regular call don't fill the associatedData, pin, secretCode or businessCode parameters. (Standard user ONLY)

To initiate a call with associated data fill the associatedData parameter. (Standard user ONLY)

To initiate a Private Call fill the pin and secretCode parameters. (Standard user ONLY)

To initiate a Business Call fill the businessCode parameter.

To initiate a call from any connected set which is not associated to an OpenTouch user, don't fill the bypass, associatedData, pin, secretCode or businessCode parameters.

 

7.   OT10.0 (R2.1.1)

7.1    Iteration1

7.1.1    Instant Messaging and Presence API        

New notification for REST Presence WS:

-          New OnContactPresenceUpdate notification     
This notification is received on contact's presence changed.

7.1.2    Secured application identification for API access (Step2)


Any third party application developed under a partnership agreement will be given an encrypted token which will contain some useful information for the openness framework.

 

The token will be generated by the key tenant and encrypted thanks to RSA with a secret key. The encrypted token will be given to the partner who will use it in the “application name” field of his application while it tries to connect to the openness framework.

Step 2

In this step, the chameleon decrypts the incoming token so that it is possible to open the rights defined in the token.

 

7.2    Iteration2

7.2.1    Provisioning consistency of OTCT/OTCV SW Clients

-          Adding in the object “Device” (User information)
configId” parameter : If the device type is MOBILE this parameter defines the single identifier that allows the mobile to retrieve its configuration file. (private)

-          Updating the parameter “subType” of the object “Device” (User information)

The device physical types are:

                OXE,

                VHE8088,

                MYICSIP,

                SIP,

                ICM_MOBILE_ANDROID,

                MR8042,

                VHE8082,

                ICM_MOBILE_BLACKBERRY,

                MOBILE,

                MOBILE_ANDROID,

                MOBILE_BLACKBERRY,

                MOBILE_NOKIA,

                MOBILE_WINDOWS,

                NONE,

                VIDEO,

                MOBILE_IPHONE,

                NOMADIC_HOME,

                NOMADIC_OTHER,

                SIP_4008,               

                SIP_4018,

                OTC_TABLET,

                THIRD_PARTY_VIDEO,

                WLAN_MOBILE,     

SIP_8002,

                SIP_8012

                ICM_MOBILE_IPHONE,

SIP_8068,

SIP_8001,

SIP_8038

7.2.2    Others REST WS improvements

Improvement of the feature “User information”:

-          New OnUserCreated     
This event is sent on creation of an user (only for administrator).

-          New OnUserDeleted     
This event is sent when user is deleted (only for administrator).

 

7.3    Iteration3

7.3.1    Others REST WS improvements

Improvement of the feature “User information”:

-          New query parameter “types” in the method GET /logins

-          New query parameter “apiRights” in the method GET /logins

Improvement of the feature “Communication log”:

-          New query parameter “optimized” in the method GET /comlog/records

7.4    Iteration4

7.4.1    Instant Messaging REST WS

-          New GET /im/calls
List all the currently active IM sessions of the user.

-          New POST /im/calls
Create a new instant messaging session.

-          New DELETE /im/calls/{callRef} 
Delete an instant messaging session.

-          New GET /im/calls/{callRef}/participants
List all the participants of an IM session.

-          New POST /im/calls/{callRef}/participants
Add a list of participants into an IM session.

-          New DELETE /im/calls/{callRef}/participants
Remove (drop) a list of participants from an IM session.

-          New POST /im/calls/{callRef}/send
Send an instant message to a list of participants in a given IM session.

-          New POST /im/calls/{callRef}/state
Set the user's state as 'typing a message'.

-          New GET /im/deferred  
Retrieve all the deferred messages stored on the server.

-          New DELETE /im/deferred
Delete the deferred messages stored on the server.

-          New PUT U/im/deferred
Update the status of the deferred messages stored on the server.

-          New GET /im/deferred/counters
When user is offline, or not connected to the presence server, messages sent to him cannot be delivered.

-          New OnDeferredMessageCountersChanged notification
Event received indicating that an instant message has been left on the server.

-          New OnImParticipantAdded notification
Event sent when a participant is added in an IM session.

-          New OnImParticipantDropped notification
Event sent when a participant is dropped from an IM session.

-          New OnImParticipantTyping notification
Event sent when a participant has set its typing state (i.e. just starting typing).

-          New OnImReceived notification
Event received containing the instant message.

7.4.2        Presence REST WS

 

-          New POST /presence/connection
Connect the user to the Presence server.

-          New DELETE /presence/connection
Disconnect the user from the Presence server.

-          New GET /presence/contacts
Retrieves contacts presences.

-          New POST /presence/contacts/subscribe
Subscribe to a list of contacts for which we want to receive presence updates.

-          New POST /presence/contacts/unsubscribe
Unsubscribe a list of contacts for which we no longer want to receive presences updates.

-          New GET /presence/user
Retrieves all the user presences types in a single operation.

-          New GET /presence/user/basic
Retrieves the user's basic presence.

-          New PUT /presence/user/basic
Set the user's basic presence.

-          New GET /presence/user/im
Retrieves the user's IM presence.

-          New PUT /presence/user/im
Set the user's IM presence.

-          New GET /presence/user/note 
Retrieves the user's note presence.

-          New PUT /presence/user/note
Set the user's note presence.

-          New GET /presence/user/phone 
Retrieves the user's phone presence.

-          New OnContactPresenceUpdated notification
Event received on contact's presence changed.

-          New OnUserPresenceUpdated notification

Event received on user's presence changed.

7.4.3    Others REST WS improvements

Improvement of the feature “Call control”: add call back methods (public)

-          New GET /telephony/incomingCallbacks 
(Standard user ONLY) Returns the whole list of callback requests.

-          New DELETE /telephony/incomingCallbacks
(Standard user ONLY) Deletes all callback requests.

-          New DELETE /telephony/incomingCallbacks/{callbackId} 
(Standard user ONLY) Deletes a callback request.

-          New POST /telephony/outgoingCallbacks  
(Standard user ONLY) Requests for call back.


8.   OT2.1

8.1    Iteration1

No specific evolution.

8.2    Iteration2

New management of errors returned by REST services invocation follows the common practice which consists of providing as much information as possible to the user. The returned information structure contains several fields, targeting all possible users of the API: RestErrorInfo

 

-          Adding in object “RestErrorInfo” theroutingparameter: Routing error information
Extra details if errors are generated by a routing service request.

8.3    Iteration3

8.3.1    CLIR/COLR Management


When activated, any communication will be managed with the identity secret status.

 

-          New GET /users/{loginName}/preferences/telephony resource

-          New POST /users/{loginName}/preferences/telephony resource

-          Adding in object “TelephonyPreferences”, clirModeparameter

-          New OnPreferencesChanged notification

8.3.1.1    Numbering

This REST WS is public.

-          New GET /telephony/numbering/canonical : Transforms the phone number into canonical

-          New GET /telephony/numbering/dialable : Transforms the phone number into dialable

8.4    Iteration4

8.4.1    OXE routing in routing REST API

When we perform a get profiles for OXE user on REST routing management API, accordingly to the user configuration and rights, profiles are given.
The fallback profile is always named DEFAULT whatever is content (which depends too on the user devices and rights).

-          Adding in the object “ForwardRoute”:
New
overflowType” Optional condition to forward route for OXE users.

 

-          Adding in the enumeration “DestinationType”:

8.5    Iteration5

8.5.1    API Exposure Suite: API Voice Messaging

-          New GET /messaging/mailboxes              
get all the user's mailboxes.

-          New GET /messaging/mailboxes/{mailboxId}     
Get a specific mailbox information.

-          New GET /messaging/mailboxes/{mailboxId}/greetings 
Get all user's greetings, whatever their recording state (recorded or not).

-          New DELETE /messaging/mailboxes/{mailboxId}/greetings                          
Delete the content (wav file) of the given greeting.

-          New GET /messaging/mailboxes/{mailboxId}/greetings/{greetingId}
Get a specific user's greeting.

-          New DELETE /messaging/mailboxes/{mailboxId}/greetings/{greetingId} 
Delete the content (wav file) of all greetings.

-          New POST /messaging/mailboxes/{mailboxId}/greetings/{greetingId}/activate                   
Activate a given greeting.

-          New POST /messaging/mailboxes/{mailboxId}/player    
Start or resume playing a voice message.

-          New DELETE /messaging/mailboxes/{mailboxId}/player                
Terminate a player session with the media server.

-          New POST /messaging/mailboxes/{mailboxId}/player/pause
Pause the current voice message being played.

-          New POST /messaging/mailboxes/{mailboxId}/player/stop          
Stop a currently playing on a message.

-          New POST /messaging/mailboxes/{mailboxId}/recorder
Start of resume a record of a new voice message.

-          New GET /messaging/mailboxes/{mailboxId}/recorder                  
Get the previously recorded message.

-          New DELETE /messaging/mailboxes/{mailboxId}/recorder                           
Terminate a recorder session with the media server.

-          New POST /messaging/mailboxes/{mailboxId}/recorder/cancel                 
Cancel a currently recording message, or the previously created message.

-          New POST /messaging/mailboxes/{mailboxId}/recorder/resume
Resume recording of a message.

-          New POST /messaging/mailboxes/{mailboxId}/recorder/send
Send a recorded message to a list of recipients.

-          New POST /messaging/mailboxes/{mailboxId}/recorder/stop     
Stop currently recording on a message.

-          New GET /messaging/mailboxes/{mailboxId}/voicemails               
Retrieve all user's voicemails

-          New DELETE /messaging/mailboxes/{mailboxId}/voicemails                        
Delete specified voicemails.

-          New GET /messaging/mailboxes/{mailboxId}/voicemails/{voicemailId}
Retrieve a given user's voicemail, containing the full details (including the URL).

-          New POST /messaging/mailboxes/{mailboxId}/voicemails/{voicemailId}/callback
Call back the sender of a voice message.

 

-          New OnMessageAdded
Event sent when a new voice message has been stored in the user's mailbox.

-          New OnMessageDeleted             
Event sent when a voice message has been deleted from the user's mailbox.

-          New OnMessageUpdated           
Event sent when a voice message status has been updated.

8.6    Iteration6

8.6.1    Others REST WS improvements

-          Adding in the object “SessionInfo” (session management)
admin” Optional parameter, indicate if the session has been opened by an administrator

 

-          Adding in object “ApplyProfileRoutesRequest” (routing management)
otherNumberOptional parameter, For "OTHER" and "OTHER_AND_MOBILE" profiles only

 

-          Adding examples in object “criterion” (directory search)

 

-          Adding in object “User” (User information)
dialingRuleOptional parameter, User's dialing rule description

 

-          Adding  in object “UserPreferences” (User information)
telephonyOptional parameter, User's telephony preferences

 

-          Adding in object “Selector” (Subscription management)
formatOptional parameter, Preferred serialization format

 

-          Adding in object “SubscriptionRequest” (Subscription management)
“timeout” behavior: Default lifetime of the channel opened between the server and the client. After that time, in minutes, the server can close the connection. It is up to the client to reconnect. Allowed values are 2 minutes and 60 minutes, with an exception for the value 0. For this special case, the lifetime of the notification channel is not maintained by the given timeout, but depends on the lifetime of the user's session.

8.7    Iteration7

8.7.1    Add a new method to get server information

This new method provides extra information about the server hosting the REST API:

o   productName
Friendly description of the product (e.g. 'OpenTouch Multimedia Services')

o   productType
Short name of the product (e.g. OTMS, OTMC, ...).

o   productVersion
Version of the product.

 

-          New GET /          
Extra information about the server hosting the REST API

8.8    Iteration8

-          Update “ForwardRoute” object.
Change the name “overflowType” to “forwardType”
(Standard user ONLY) Optional condition to forward route for STANDARD users.

END OF DOCUMENT