OpenClove Video Exchange (OVX) Cloud-based Secure Communications as a Service and Overview and Configuration Guide for Embedded Video Communications CONFIDENTIAL INFORMATION © 2014. OpenClove, Inc. TABLE OF CONTENTS 1. Introduction ..................................................................................................................................................... 3 2. Quick Starter Guide for HTML/JS Developers ........................................................................................ 4 3. OVX Secure Communications as a Service (SCaaS) .............................................................................. 5 4. OVX Engage Conversations Player ............................................................................................................ 6 4.1. Engage Conversations Player Customization .................................................................................... 7 4.2. Standard OVX Live HTML and JS Embed Code ............................................................................... 10 4.3. OVX Live Configuration Parameters ......................................................................................... 11 CONFIDENTIAL INFORMATION © 2014. OpenClove, Inc. 1. Introduction This document defines provides a simple way to embed and launch the Group Video Conversations directly into any application using the OpenClove OVX Live Conversations Player. OpenClove offers its OpenClove Video Exchange (OVXTM) Cloud SCaaS (Secure Communications as a Service) to enable real-time chat embedded inside applications and web pages. The service is easily accessible using its Engage Conversations Player, which enables users to conduct live video and audio chat across multiple platforms. Customizable Real-time Group Video Conversations Player Connects your users across WebRTC, non-WebRTC browsers, iOS and Android devices. Available as JavaScript for HTML apps and SDKs for iOS and Android. Allows 9 parties to communicate in real-time using audio / video / text chat Encrypts end to end communications channel between the user device and OVX Cloud Delivers all the OVX Cloud Features including multi-format recording and streaming Provides session control functions to the users OVX Cloud and OVX Live Conversations Player can be configured and customized for any application as per the guidelines described below. CONFIDENTIAL INFORMATION © 2014. OpenClove, Inc. 2. Quick Starter Guide for HTML/JS Developers Here are the simple steps for any web developer to embed live group video conversations into their application. Step 1: Get APIKey - Register @ http://developer.openclove.com/member Get a key @ http://developer.openclove.com/apps/mykeys Step 2: Select your starter OVX Live Conversations Player Template - Visit http://ovx.me/demos/ to browse, test and select a basic look and feel Step 3: Paste code in your Web App - View source for any of the templates above Cut and paste the JavaScript code into your own app (sample code in section 4.2) Embed the HTML elements as per your design specifications Step 4: Configure your Engage Player There are several configuration options for you to select, see section 4.3. Here are the mandatory ones to get you started. - ovx-apiKey (from step 1) ovx-session which assigns a unique session ID for each conversation session. The app will require your app to share the session ID across the users wanting to join the same session. You can manually request the users to enter the ID, or use any alphanumeric session ID that you may already have as part of your application. Rest of the parameters are set to default and can be modified as per your app user experience requirements. Step 5: Launch and Test across multiple platforms Your application is now ready with embedded video and audio communications. Simple launch your app and test the experience. - Chrome (v23+) and Firefox (v22+) will provide option to Video chat using Computer and voice call back option to any phone number. Other non-WebRTC browsers, will automatically provide voice call only option. Download LiveBoard Lite application from Google Play or Apple iTunes app stores and access our application from this WebRTC-enabled browser for complete video chat experience. CONFIDENTIAL INFORMATION © 2014. OpenClove, Inc. 3. OVX Secure Communications as a Service (SCaaS) OVX Cloud provides powerful functionality to fuel use cases across various verticals – social networks, messaging, healthcare, education, financial, e-commerce, enterprise collaboration, HR, CRM and gaming. OVX Cloud Platform is based on OpenClove’s telco-grade cloud MCU, which provides a combination of cloud-based real-time media processing to do audio and video mixing, transcoding, streaming, recording and layering, all exposed via simple to use API’s. The following features are available on the cloud and easily configurable using the OVX Live Conversations Player. Please note that while some of the features are available and activated, you will only pay (or count against the package limits) only if and when they are used on a per user minute basis (marked by ). Group Video Chat – OVX Cloud supports group video and audio conversations for up to 9 people in a single session. If required, this can be extended to support 16 people on a single conference session. Multi-Platform (WebRTC + Mobile) – Video and audio conversations can be made from any WebRTC browser, iOS and Android devices with applications using OVX SDKs. Tablet and Mobile Video Browser – Web applications utilizing OVX.js to implement group video chat gain from our free WebRTC video browser (LiveBoard Lite) available on iOS and Android. Users of web apps will be able to do video chat on any iOS and Android device using our browser. Bandwidth Optimization – Each uplink and downlink streams are tightly controlled by the OVX cloud to maintain sustainable quality over available bandwidth. This feature is critical to deliver high quality video experience over 3G and 4G networks globally. Global Number Dialing – OVX Cloud supports global PSTN connectivity to bridge in any user across the world using any phone number. This feature is widely used to connect users without bandwidth access or as a backup for non-WebRTC browsers. Additional calling charges apply. Network Recording – OVX Cloud can record the audio and video conversations for archiving or sharing purposes. Files are stored in a temporary storage for retrieval by the customer. Live Streaming – Any conversation can be live streamed for live sharing to any target audience. By default live stream can be viewed by up to 3 users. However, if required, OVX Cloud can be configured to support 100’s or 1000’s of viewers. Moderator and Layer Controls – Allows application developers to control the live session by modifying the video frame layouts of every user from the cloud, eliminating any complexity on the client implementation. Active User Messaging – Users connected in an active session can exchange text messages with each other. This can be used to share links, images, whiteboard etc. Elastic Cloud Capacity – Provides customers with unlimited capacity, as OVX Cloud utilizes latest cloud technology to scale on demand. Geo-Routing – This feature allows apps to connect to the nearest OVX Cloud instance to get the best video and audio performance for their users. CONFIDENTIAL INFORMATION © 2014. OpenClove, Inc. Free Developer Tools – OVX Cloud access comes with free developer tools for any application developer to build, enhance, modify their application when they want. OVX.js provides the benefit of “code-once-for-any-platform” to allow WebRTC developers to deliver value across multiple platforms with just one time development. 4. OVX Engage Conversations Player is a HTML-based real-time communications player to simplify the adoption of multiparty, multi-platform video and audio conversations into any web application. OVX Live has access to all the functionality of the OVX Cloud SCaaS. The player can be customized via intuitive parameters to define the desired user experience for your users and customers. Several samples and templates are available for you to test and adopt at http://ovx.me/demos. How to use ovxplayer Once the OVX Live Conversation Player is customized integrated, app developers can commercialize their service by subscribing to an OVX SCaaS subscription plan based on your features and usage. Please contact [email protected] for pricing. Development is always free and does not require any subscription. Advanced developers still have the choice of building their own player and using our OVX Cloud SCaaS API’s from http://developer.openclove.com. CONFIDENTIAL INFORMATION © 2014. OpenClove, Inc. 4.1. Engage Conversations Player Customization The following customization inputs will define the user experience, end user features and the look and feel of the HTML application. 1. Video Chat Service Launch 1.1. START Buttons will be provided by the host application platform. Some of the templates on http://ovx.me/demos provide a default button template for the developers. On clicking start, the following actions will happen based on the device. 1.2. WebRTC browsers (Google Chrome v23+, Mozilla Firefox v22+) : Users will have the option to Connect using Computer (Video Chat) or Connect via Phone as per their preference. The player can also be configured to automatically start video in a popup window. WebRTC Browser Launch Options 1.3. Non-WebRTC browsers (Microsoft IE 9+, Safari v XX): Users will be provided an option to enter their phone number with country code to connect (outbound call to the user) to the live conversation. Alternatively, the phone number maybe derived by from the user’s profile of the host application. IE/Safari Launch Option 1.4. iOS and Android browsers: Users will be prompted with a message to launch LiveBoard browser to initiate video chat. First time users will be directed to the app download page on Apple iTunes or Google Play store. CONFIDENTIAL INFORMATION © 2014. OpenClove, Inc. iPad Launch Options 2. Web frame 2.1. Popup will launch with the Application Name in the header bar. This is configurable via parameter below. 2.2. Transition frame will be displayed with an animated graphic indicating “Connecting”. IBM to provide design input. 2.3. The web frame will contain the Video Screen. The web frame can be designed to include background color, branding, header bar, logo, footer links like HELP, ABOUT etc. ovxplayer Customizable Web Frame 3. Video Screen Design 3.1. Video Screen Layouts 3.1.1.Single party: Full screen self-view of local video feed. Displayed while the first user is waiting for other parties to join or if other parties drop out. 3.1.2.Two party: Full screen remote user, with local self-video in PIP mode. 3.1.3.Multi party: tiled, film strip options for composite view. 3.1.4.On WebRTC/HTML5 browsers, users can toggle between the users locally by clicking on the video screen. CONFIDENTIAL INFORMATION © 2014. OpenClove, Inc. Tiled Layout Film Strip Layout Option 3.2. 3.3. 3.4. 3.5. Background Image Frames Text overlay (user name), font, size Logo overlay (this logo is common across a multi-enterprise deployment) Custom Elements in Video Screen 4. Video Screen User control buttons 4.1. Audio mute/unmute 4.2. Video mute/unmute 4.3. Video Full Screen 4.4. END button 4.5. Share Link 4.6. Record and Download File CONFIDENTIAL INFORMATION © 2014. OpenClove, Inc. User Controls in the Video Screen 4.2.Standard OVX Live HTML and JS Embed Code Engage Conversation Player – Helper Functions Standard JavaScript Code: (function(d, w) { var x = d.getElementsByTagName('SCRIPT')[0]; var f = function () { var s = d.createElement('SCRIPT'); s.type = 'text/javascript'; s.setAttribute('ovx-widget','ovxplayer'); s.setAttribute('ovx-apikey','myAPIKey'); s.setAttribute('ovx-name','Guest'); s.setAttribute('ovx-session’,'SomeUniqueID'); CONFIDENTIAL INFORMATION © 2014. OpenClove, Inc. s.setAttribute('ovx-render','popup'); s.setAttribute('ovx-chat',’disable'); s.src = "//ovx.me/ovxplayer/ovx-embed-ovxplayer.js?v1"; x.parentNode.insertBefore(s, x); }; w.attachEvent ? w.attachEvent('onload', f) : w.addEventListener('load', f, false); }(document, window)); HTML Code For CALLER: <div id="ovx-player” style=”width:300px;height:100px”></div> -- OR -<img onclick="OVXEMBED.launch();" src="//ovx.me/img/ibm-connect.png" style="cursor:pointer; width:100px; margin-right:0px;"> JS Code For CALL RECEIVER: <script> OVXEMBED.setKeyValue('ovx-name', <userName>); OVXEMBED.setKeyValue('ovx-session','SomeUniqueID'); OVXEMBED.launch(); </script> 4.3. OVX Live Configuration Parameters Parameter Valid Settings Description IBM Configuration ovx-apiKey A valid API Key from OpenClove. Signup and obtain a valide API Key from OpenClove OpenClove will assign ovx-widget ovxplayer, ovxrecorder, ovxagent(tbd), ovxclient (tbd) ovxplayer – provides 2-way audio/video/text communications for upto 9 parties ovxplayer voice, video video –allows ovxrecorder to use video/audio feed over the Internet to record ovx-type ovxrecorder – provides option to record user audio or video voice – allows ovxrecorder to use a phone dialout to record CONFIDENTIAL INFORMATION © 2014. OpenClove, Inc. video for WebRTC browsers, iOS and Android voice for non-WebRTC browsers ovx-name Any AlphaNumeric string ovx-session Any AlphaNumeric string ovx-segment Any AlphaNumeric string To specify further segments for ovxrecorder (eg. Question ID for screening) n.a. ovx-chat enable, disable To enable text chat, along with the audio/video communications channel disable ovx-render embed, popup, panel (tbd) Popup ovx-record enable, disable ovx-dialout enable, disable embed – render the player in-page as per the ovx-player <div> in the HTML DOM Popup – render the player as a popup originating from the embedding page ovxpanel – tbd. To allow user initiated recording and download of the live audio/video session To allow user’s to initiate a phone call dialout from the live session ovx-width In CSS format (eg. 300px) Initial width of the ovx-player 400 px. Minimum is 300. ovx-height In CSS format (eg. 300px) User name for display purposes. 300 px. Minimum is 250. ovx-poster url to a valid image file with 4:3 aspect ratio url to a valid image file with 75px x 75px size true, false Sets the background poster for the ovxrecorder to visually display your background/logo prior to recording Specify custom branding logo image 4:3 To launch the call automatically as soon as the script is configured. True ovx-logo ovx-autostart Passed by the hosting application. Default is Guest. Unique session ID identifying the IBM to provide as a same session for multiple users to join parameter. in User name for display purposes. Phase 1 – disable Phase 2 – enable Enable Mandatory parameters in BOLD. Please contact [email protected] for any questions or help regarding the customization of the OVX Live Conversation Player. CONFIDENTIAL INFORMATION © 2014. OpenClove, Inc.
© Copyright 2024 ExpyDoc