Avaya Client SDK Developer Hub Structure
The Avaya Client SDK Developer Hub is organised by Operating System (OS) platform and Avaya Client SDK packages. Each platform lists its supported packages. Each package has a logical grouping of functionality that can be used independently or with other packages. These grouping of functionalities ensures developers have control over which SDK libraries are included with their application which in turn will reduce complexity and optimize the application size. Documentation for each package will include:
- Guides articles: These will lead the developer through their first project using the SDK package.
- Technical articles: Articles written by developers, for developers, on more advanced concepts. The library of technical articles will increase over time driven by developer feedback/questions.
- API reference
- Sample application
The Avaya Client SDK libraries can be downloaded by OS platform via the Developer Download tab.
The following supported packages by platform are shown in the table below:
|Communication Services||Calls (Audio, Video), Signaling Features (MWI, feature buttons, ...), Conferencing, Collaboration, Contacts, Presence, Messaging Service||Yes||Yes||Yes||Yes||Yes||Avaya Aura® Infrastructure|
|Communication Services (For IP Office deployments available from Client SDK 4.1)||Calls (Audio, Video), Signaling Features (MWI, feature buttons, ...), Conferencing, Collaboration, Messaging Service||Yes||Yes||Yes||Yes||N/A||IP Office™ Infrastructure|
|Deskphone Services||Vantage Platform services||N/A||Yes||N/A||N/A||N/A||Used in conjunction with the Communication package to provide additional call control capabilities with the Avaya Vantage device|
|Recording Management Services||N/A||N/A||N/A||N/A||Yes||Avaya Equinox Conferencing|
|Meeting Scheduling Services||N/A||N/A||N/A||N/A||Yes||Avaya Equinox Conferencing|
|Customer Interaction Services||Agent, Supervisor, Work/Interactions and Team Services||N/A||N/A||N/A||N/A||Yes||Avaya Oceana|
|Customer Interaction Utilities||Provides additional Customer Interaction functionality: eMail services||N/A||N/A||N/A||N/A||Yes||Avaya Oceana|
|Data Services||Context Data||N/A||N/A||N/A||N/A||Yes||Avaya Oceana|
|Sharing Services||Sharing Web Pages, Co Browse||N/A||N/A||N/A||N/A||Yes||Avaya Oceana|
Note: See release notes for solution line up.
Avaya Client SDK Solution Architecture while using Avaya Aura® Infrastructure
Partners or Customer Developers can create applications over a mix of device platforms such as mobile, desktop or browser applications. No matter which platform is chosen, the SDK's methods and class provide an abstraction of the Avaya infrastructure. This abstraction allows developers to create their applications without the need to create a deep knowledge of the communication protocols or infrastructure elements.
This allows developers to create new or augment existing desktop and mobile solutions with communication, and collaboration work flows. These Applications can avail of a wide range of Unified Communications and Collaboration (UC&C) capabilities from voice and video call control (direct from the application or through the control of a SIP desk phone), to IM and presence integration, to a full conferencing, collaboration experience.
- Avaya Aura® Web Gateway,
- Avaya Aura® Media Server.
The Avaya Aura® Web Gateway provides an active-active and highly scale-able set of capabilities comprise of an Endpoint Service Gateway and Web Portal.
- A Web Portal host the Avaya Equinox Conferencing, Meetings for Web client. This portal functionality is utilized by applications created by Avaya and is not accessible to third party developers
The Avaya Aura Media Server provide the Adaption and transcoding of WebRTC Media.
Avaya Client SDK Solution Architecture while using IP Office™ Infrastructure
IP Office™ is an integrated, modular communications solution. It provides basic telephony services, such as making and receiving calls, basic conferencing, voicemail, Presence, Directory and resiliency to meet the evolving needs of small, medium, and large enterprises. IP Office supports Application Presence for non-Telephony usage (example states - “available”, “busy”, “away”, “offline”, “do not disturb”) and Telephony Presence for Telephony usage (example states - "On a Call"). To avail all the IP Office services, "Avaya Softphone" license has to be installed in IP Office server and the User Profile should be Office-worker, Power User, or Teleworker. Note that only limited set of features will be availed with the "Third party IP Endpoints" license.
The following diagram shows the architecture of Avaya Client SDK when the IP Office™ infrastructure is deployed.
“Over The Top” Equinox Conferencing Deployment
When used with Avaya Equinox® conferencing 9.0.2 or higher, applications developers using these capabilities can create a conferencing client for the following new use cases:
- Users can have their own virtual room
- They can join a virtual room as named moderator or participant users
- Users can Join as Guest users
- Users configured as an Aura UC user joining a conference from another company that has deployed Avaya Equinox conferencing
These users can avail of full Audio Video and conferencing capability including application and screen sharing.
Full Solution Deployment
The solution can avail of browser based WebRTC media by addition of the Avaya Aura® Web Gateway (AAWG). In this solution the browser using http registers to Aura via the AAWG as a SIP endpoint. The Agent or supervisor application controls this SIP endpoint using UCM and CTI
Oceana Agent /Supervisor client and Avaya Mobile Video
The Client SDK 3.3 and Oceana 3.4 adds WebRTC support for an Oceana® agents / supervisors client. These capabilities allow agents and supervisors to avail of browser-based voice and video, within the application when an agent is assigned to an Oceana video skill set.
In Client SDK 4.0 and Oceana 3.5 This functionality was extended to support customer side deployment using the Oceana Web Voice & Video Client APIs solution which also utilizes the Avaya Aura Web Gateway (AAWG). The APIs for the customer side integration are a reduced set of API to that available in the Avaya Client SDK Communication Services package and are provided via a API wrapper layer to this package. These APIs can be accessed via the Download SDK quick link on the DevConnect Oceana Solution pages.
The following figures depicts a customer application(s) supporting click-to-call and click-to-video functionality initiated by end user from either their browser or mobile application (IOS & Android). This call is presented to an Oceana Agent who is running Workspaces with media provided in the Browser (WebRTC).
The Customer Web Servers handles the authentication of the user of the Customers application and passed an authorization token to the application which. This token is accepted by AAWG and the application is authorized to make calls to the Customers Avaya infrastructure.
A voice / video call is instigated from this client is presented to Aura as a SIP Session, by the AAWG. Its media is adapted by the AAMS server deployed with the AAWG. This call is routed to Oceana where it is queued. The media from this call is then anchored on the Breeze AAMS where it receives it call treatment. When assigned to an agent the media is presented to AAWG’s AAMS where the media is adapted to support the browser WebRTC codecs. The application will exercise call control for these sessions through by UAC with mid call actions instigate by the application.
AACC Customer Endpoint Implementation
With release 7.1, Avaya Aura Contact Center (AACC) delivered a solution to handle video contact type. AACC will be able to configure video contact type, assign video skillset to an agent, route a video call, play audio treatments when the video call is in the queue, be able to report the call as a video call in real-time and historical reports. Transfer of the video calls to skillset or directly to another video agent / non-agent is also supported.