Showing posts with label polycom. Show all posts
Showing posts with label polycom. Show all posts

Friday, July 18, 2014

[Lab] Polycom Conference Manager for Google Chrome

[UPDATE]: New UI with version 2.0

Two weeks ago, I illustrated how to develop a PHP (server-side) application, leveraging Polycom DMA APIs, to easily control a Polycom on-going conference (here). That app doesn't require admin credentials, so an end-user can use it via its own credentials, but he needs to have a PHP server.
So, to simplify the use of that service, I adapted that aplication to be usable as a Google Chrome App. So, now anhy end-user can install that "local" app on its Google Chrome browser, and uses it.

Click on that icon to install it on your Google Chrome.

That application provide the following features:
  • List of meeting participants (audio, video, content)
  • Start/stop recording
  • Lock/unlock conference
  • Mute/unmute a selected person (or a list of people)
  • Mute all participants except chairperson
  • Unmute all participants
  • Add/remove participants.
  • Save/retrieve your meetings details (DMA FQDN, username, login...)
Some screenshots of that application:


Just retrieved my previous settings

Validate my meeting number of my ongoing conference

List participants

Just clicked on "Begin Recording"

Just locked my conference

Selection of several people who attend the meeting

Just muted selected people

Unmuted the conference
Live Demonstration:


Monday, July 7, 2014

Polycom RealPresence Platform Director & DMA licensing

At the end of june, Polycom has released a bunch of new product releases.Platform Director v1.7 is GA.

With this release Platform Director becomes the licensing control point for Virtual Editions and RPOne in the Flexera licensing environment. The Platform Director is provided with each order of a Virtual Edition or RPOne.  

I have recorded the registration sequence of a DMA Virtual Edition on Platform Director 1.7


[Lab] Video Meeting Tracker

To drive a better user adoption and to improve customer satisfaction, it could be interesting in retrieving feedback from users. Based on Polycom APIs, you can track meeting activities like when a meeting starts, stops, who is the owner and participants.

I have design a small app, tracking meetings and sending an email recap at the end of the meeting to the owner, with a link to a survey.


[Lab] Conference Management via APIs

During the last two years, I have demonstrated Polycom APIs infrastructure value through several examples like VMR-user Management, CloudAXIS scheduling, IBM Sametime integration, but I only played with REST APIs. But, I had a request - display a message during the conference, I can't solve via DMA or Resource Manager API, I had to use Polycom Collaboration Server (RMX) ---- XML-based API.

I have designed a Web application (using PHP) allowing an end-user to fully control his on-going conference. The user will be able to list all meeting participants, start/stop the meeting recording, lock/unlock conference and different mute options, you can also invite/disconnect a participant.

Web Page of the app.
A short recording about the different capabilities of the app:


All features are accessible via only end-user credentials, but if you want to different text message during the conference, you need DMA & RMX admin credentials.

[UPDATE]

That application has now a new user interface leveraging Bootstrap.



Tuesday, July 1, 2014

[UX_Series] Polycom Conference Control Application V2

A couple of months ago, I have announced the Polycom Global Services (PGS) asset named Polycom Conference Control Application (CCA) available on Polycom Price list. That is a great tool to let your end-user to easily manage their on-going conference.

Display list of participants

Manage participant (Mute audio/video) 

Mobile Access

Friday, June 6, 2014

[OpenDay] Prenez une longueur d’avance avec les solutions Polycom. (France)

Rendez-vous le jeudi 12 juin pour tout savoir sur les nouveaux modèles de collaboration vidéo et découvrir au travers de démonstrations nos dernières solutions audio et vidéo.

AGENDA

09h00 - 09h30: Accueil café
09h30 - 09h50: Présentation de Polycom et tendances du marché
09h50 - 10h30: Les nouveaux modèles de collaboration vidéo : Hardware, Software, Cloud
10h30 - 10h45: Comment mesurer l’utilisation de vos salles de visioconférence?
10h45 - 12h15: Démonstrations de nos solutions audio et vidéo:
  • Solutions vidéo de salle et de bureau
  • Solutions audio et vidéo dans l'environnement Microsoft Lync (Gamme CX, Lync Room System)
  • Gammes de téléphones multimédia Lync et SIP
  • Solution de web conférence CloudAxis
  • Salles de téléprésence...
12h15: Cocktail déjeunatoire

Date:                                        Horaires: 
Jeudi 12 juin 2014                     De 9h00 à 13h30

Accès:
Polycom France,
Tour Prisma, 7ème étage,
4-6 avenue d’Alsace,
92400 Courbevoie

Inscrivez vous

Friday, May 30, 2014

Polycom CloudAXIS 1.5 has been released

We just released Polycom CloudAXIS 1.5. That new release brings lot of new features like:

Support in CloudAXIS for Polycom’s SVC (Scalable Video Codec) solution
Improved user experience during video calls
Expanded scalability and lowered TCO for running the Real Presence Platform solution in the enterprise.

Support for Single Sign-On (SSO)
End users no longer have to sign in to CloudAxis if they are already logged into their Domain



Polycom room signature embedded in email invites
Users can join meetings with a single click from HDX/Group Series –giving end-users the flexibility of choosing how they want to participate in a conference call/

CloudAXIS Invitation on Group Series

CloudAXIS Invitation on HDX
Configure CA web users to come in at a controlled call rate
Enforce maximum bandwidth consumed for web users. Especially useful for external/guest users – IT managers can make sure that bandwidth is optimized keeping the network running smoothly.



Improved  Experience Admin Portal for simpler install and management experience
GUI interface usable for administration rather than editing  a configuration file thus improving  the IT manager’s experience


Friday, May 23, 2014

[UX Series] Easy Meeting Mobile Application

One of my leitmotiv at Polycom is the User Experience (UX) and how APIs can improve the UX for end-users even more. In the past, I have develop some app like a "Chrome Extension for Polycom RealPresence CloudAXIS" or show you how to leverage Human Capital (IBM Kenexa) with Polycom technology.

I love the Steve Jobs' approach, he believed that 'the only way to truly capture the full value of technology is to adapt the technology to fit the way we live our lives instead of requiring that we adapt our lives to fit the way the technology works.'

This week, I have develop a new mock-up based on a mobile application and NFC technology. The purpose is to simplify the initialization of a call on Polycom Group Series to a video meeting room (VMR). Out of the box, Polycom Endpoints can retrieve and display calendar information coming from a Microsoft Exchange server. But, you have to have booked the endpoint.
Imagine you have an Open Access room policy or video-kiosk.You have to join a call in 2 min, you have find a free system, but you are not always familiar with the system.
Via your mobile, you can tap the NFC tag to start the call. The android app will retrieve from your calendar meeting details like video meeting id and send the launch command to the Group Series.


Technologies Used:

For that mock-up, I have used all of these technologies:

1/ A NFC Tag - It stores Group Series information.
2/ An Android Tablet or Smartphone
3/ Android Calendar Provider API (here) - I parse the calendar entry to retrieve the VMR number via a specific pattern.
4/ Android NFC API (here) to read the content of the NFC tag in the room.
4/ Polycom Group 500 (here)

Friday, May 2, 2014

New Sametime SDK & Sametime 9 Phonebook Management

IBM just published a new release of IBM Sametime 9.0 SDK I won't list all new APIs or features.
I will just focused my article to the updates of IBM Sametime Telephony Toolkit.

Link to download Sametime Standard V9.0 SDK IFR 1 Multiplatform: here
(The date on the site for the ePackage doesn't properly reflect that, but IBM just uploaded it.)

That is a comparison between the list of public objects we have in S9 & S9 IFR1 SDK:


IBM Sametime 9 has introduced IBM Softphone which allows you to place and receive voice and video calls from your computer. To place call, IBM Sametime Phonebook, is very useful if you don't want to remember all telephone number, SIP URI or h323 dial string. The only way to provision the phonebook was a plugin I described two years ago, leveraging your IBM Notes contacts. Same thing to export or backup, there was no way of exporting or backing up your Sametime Phonebook or call history data from the Sametime client user interface (UI).

Via these new objects,you can now easily manipulate the content of IBM Sametime Phonebook  by creating, deleting entries. I have designed a Sametime plugin to export Polycom endpoints details from a flat file (csv) or from a Polycom Resource Manager.


Hope it will help you to leverage the power of IBM Softphone, especially with Polycom infrastructure.

Monday, April 28, 2014

[Lab] Google Chrome App for Polycom DMA

In the last two articles, I demonstrated you how to leverage Polycom DMA & CloudAXIS APIs within Google Chrome App & Extension.
Now, I will show you how to create your first Chrome Application to list all users and create a new user on your Polycom DMA.

The main advantage of a Chrome Application is you can develop via Web technology without a web server, and do easy demo very quickly. You will work from the skeleton of a Chrome Application. You can download the application from here and you want to unzip it.

Installation of the application
  1. Open your Chrome browser
  2. Extensions that you download from the Chrome Web Store are packaged up as .crx files, which is great for distribution, but not so great for development. Recognizing this, Chrome gives you a quick way of loading up your working directory for testing. Let's do that now.
  3. Visit chrome://extensions in your browser (or open up the Chrome menu by clicking the icon to the far right of the Omnibox. and select Extensions under the Toolsmenu to get to the same place).
  4. Ensure that the Developer mode checkbox in the top right-hand corner is checked.
  5. Click Load unpacked extension… to pop up a file-selection dialog.
  6. Navigate to the directory in which your extension files live, and select it.
Access to Chrome Apps
  1. In a new Chrome tab, type chrome://apps
  2. You should now see a new icon with the Polycom logo.
  3. Click on it, you will see a new web page with just a title

We will now start to work on the user interface of the application.

Part 1: Retrieve the list of users

We will only work on two files – index.html, app.js. In a first time, we will work on the user interface (UI) of the application.
  • Open, with your preferred source code editor (in my case Notepad++), index.html. 
We will have a form to let the user enter Polycom DMA hostname and the credentials.

  • Add the following lines in the section “Retrieve the list of users”:
<form>
DMA Hostname: <input type="text" name="dma" id="dma" ><br>
Login: <input type="text" name="login" id="login" ><br>
Password: <input type="password" name="password" id="password"><br>
<input type="submit" value="Retrieve info"></input></br>
Your DMA users: <span id="room_id"></span> <br /><br>
</div>
</for>


  • Go back to the Web page with the blank application and right-click on the page and choose “Reload App” or if you have closed the app, reopen it. The application has been updated with three inputs fields and on button.

But, if you click on the button “Retrieve Info”, nothing will happen, because we don’t have written the business logic, yet.

We will write the business logic using Javascript.
  •  Open the file app.js which will contain all the business logic.


The file is not empty, because I have already set up several variables we will use the rest of the code, and a function to encode in Base64 the authentication string.
  • Add the following code in the section “Code to retrieve users”
var form = document.querySelector('form'); //define the object Form we have created in the HTML page.
form.addEventListener('submit', function(ev) {
                //Definition of variables to retrieve the info you put in the form
                dma = document.getElementById('dma').value;
                login = document.getElementById('login').value;
                pass = document.getElementById('password').value;
                user_id = document.getElementById("room_id");
                // URL Definitions
                url_init="https://" + dma + ":8443";
                url = url_init + '/api/rest/users';
   
               
                var xhr = new XMLHttpRequest();
                xhr.open('GET',url);
                auth = make_base_auth(login,pass);
                xhr.setRequestHeader("Authorization", auth); //Authentication Header
                xhr.send(); // send of the REST Command
                xhr.onreadystatechange = function() {
    if (xhr.readyState === 4) {
                                   if (xhr.status === 200) {
                               
                                var items = xhr.responseXML.querySelectorAll("username"); //Selection of Username elements in the XML File
                                var name = "";
                                for (var n = 0; n < items.length; n++) {
                                                if(name=="")
                                                {
                                                name = items[n].textContent; // Retrieve the value of the Username element
                                                }
                                                else
                                                {
                                                                name = name + ", " + items[n].textContent;
                                                }
                                                user_id.innerHTML=name; //Display of the list of users
                                                }
        } else
{
            console.error("Something went wrong!");
}
    }
                console.log("Nom : " + name);
};
});

  • Go back to the Web page with the blank application and right-click on the page and choose “Reload App” or if you have closed the app, reopen it.
  • Enter your Polycom DMA hostname and Admin credentials.

Congratulations, you have written your first Web-like application leveraging Polycom DMA APIs.

Part 2: Create a new user on Polycom DMA

Now, we will enhance the application, the user will be able to create a new user on Polycom DMA. Like, we just did, you have to modify the Index.html file (UI) and app.js (Business logic). I will let you do it by yourself.
  • Modify Index.html and app.js with the following codes
HTML Code:

<div style="color: white; font-size: 15px;">
New user Creation:<br /><br>
<form name='myForm2' id='myForm2'>
First Name: <input type="text" name="first_name" id="first_name"><br>
Last Name: <input type="text" name="last_name" id="last_name"><br>
Username:&nbsp <input type="text" name="username" id="username"><br>
Password:&nbsp&nbsp <input type="text" name="password2" id="password2"><br><br>
<input type="submit" value="Create user"></input></br>
<span id="Update_good"></span> <br />
</form>
</div> 

Business Logic:

var form2 = document.getElementById('myForm2');
                form2.addEventListener('submit', function(ev) {
                dma = document.getElementById('dma').value;
                url_init="https://" + dma + ":8443";
                var url_final_user = url_init + "/api/rest/users";
               
                var first_name = document.getElementById("first_name").value;
                var last_name = document.getElementById("last_name").value;
                var username = document.getElementById("username").value;
                var password = document.getElementById("password2").value;
                login = document.getElementById('login').value;
                pass = document.getElementById('password').value;
                auth = make_base_auth(login,pass);

//Creation of the XML Message wichi contains all information about the new user you want to create like username, password           
                var XML_Message =
                                "<plcm-user xmlns=\"urn:com:polycom:api:rest:plcm-user\">\r\n" +
                                "<username>"+ username +"</username>\r\n" +
                                "<first-name>"+ first_name +"</first-name>\r\n" +
                                "<last-name>"+ last_name +"</last-name>\r\n" +
                                "<password>"+ password +"</password>\r\n" +
                                "</plcm-user>\r\n";
               
                                var req = new XMLHttpRequest();
                                req.open('POST', url_final_user);
                                req.setRequestHeader("Content-Type","application/vnd.plcm.plcm-user+xml");
                                req.setRequestHeader('Authorization', auth);
                                req.withCredentials = true;
                                req.send(XML_Message);

                                req.onreadystatechange = function() {
                                if (req.readyState === 4) {
                                                if (req.status === 201) {
                                                                Update_good.innerHTML="User Created :) ...";                                                                               
                                                } else {
                                                                console.error("Something went wrong!");          
                                                }
                                }
}
});
  • Go back to the Web page with the blank application and right-click on the page and choose “Reload App” or if you have closed the app, reopen it.
  • Enter your Polycom DMA hostname, Admin credentials and user details, then click on “Create User”
PS: POST instead of GET
In that code, we send data to the Polycom DMA describing the user (username, password…). 
Most of the type, POST Call contains a XML content describing the object we want to create like a conference room, conference or a reservation on RPRM.

Congratulations, you have improved by adding a new function to create a new user.  

Thursday, April 3, 2014

Chrome Extension for Polycom RealPresence CloudAXIS

I became a fan of Google Chrome development capabilities. Last week, I have developed two Google Chrome Apps, leveraging Polycom DMA APIs Now, I have tested Google Chrome Extension, using Polycom RealPresence CloudAXIS APIs.

The purpose of that extension is to be able, from the Google Chrome UX, to create an ad-hoc and scheduled meeting. I have published that extension in the Google Chrome WebStore.


If you have new feature idea, don't hesitate to comment that app.

Tuesday, March 25, 2014

Chrome App for Polycom VMR Management

That is why I think APIs are very important... In previous articles, I already showed several examples of development leveraging Polycom DMA REST APIs for VMR Passcode management using Java or HTML/ Web Development.
Today, I have tested a new approach: a Chrome App.
The main advantage I have leverage my previous piece of code (Web dev), but without the need to have a Web Server. It is very easy and fast to design...

Chrome Extension
That video will show you the user experience of that Chrome extension.

I have also published that application on Chrome Web Store : here
Don't hesitate to share your comments on that app...

Tuesday, March 18, 2014

HR professionals will shape the future of business

A couple of weeks, I have written an article "Leveraging Human Capital with Polycom technology"

Based on recent studies, the use of online video in the hiring process jumped a staggering 320% from 2010 to 2011. Why? Not only is the process faster, but the results are also better.

  1. 95% retention rate for candidates chosen through online video interviews
  2. 54% of employees screened through video interviewing achieved goals on time as opposed to 43% hired the traditional way
  3. 82% of candidates chosen via video interviews delivered 12-month milestones on time

Not only is video interviewing more effective, but it is also less costly. Video saves as much as 67% of travel costs associated with in-person interviewing...

It is time to test it..

A customer example: Afflelou

[Engage by Blug] Feedback

As always that is a great event... It was my second time as speaker.

Just some numbers:
- 48 tracks (Business, Administration, Development...)
- A opening session with Kramer Reeves and Suzanne Livingston
- About 350 attendees,
- 66 different speakers,
- 30 IBM Champions from all over the world,
- A speed-sponsoring session - Three minutes twelve times to talk about your solution
- A great community spirit...

Partner List

Acuity & Polycom Booth 
Partner Zone

The wall of Speakers

Just before the start of my session...
This year, I have delivered a presentation with Marco Janssen from Acuity on Social Communications & IBM Sametime 9. I have more specifically covered the video part of that presentation - Why Video Collaboration is critical? What are IBM Sametime Audio/Video capabilities? Integration with Video Room Systems?

Theo Heselmans has done a great job with this event. Would like to see the same kind of event in other EMEA countries..

Thursday, February 20, 2014

IBM Sametime 9 & Polycom Demonstration

On the Polycom booth at IBM Connect, you could see the seamless integration between IBM Sametime 9 & Polycom technology: Integration with Polycom Group Series, with Polycom Collaboration Server (RMX)...
If you didn't have the chance to see that in action, I have recorded a demo of the different use cases:


Demo Sequence:
1/ Call to Sametime User using video endpoint as preferred device - TCSPI
2/ Invite an expert using Polycom Endpoint in a Sametime Meeting (Dial out) - TCSPI
3/ Call to Polycom Group Series - IBM Softphone
4/ Call to video meeting room involving H323 & SIP Endpoints (AVC/SVC) - IBM Softphone
5/ Call to video meeting room involving only SIP Endpoints (SVC) - IBM Softphone

If you want to see that in live, contact your local Polycom representative...

Tuesday, February 18, 2014

Leveraging Human Capital with Polycom technology

I have published on my blog examples of vertical integration of video into business processes (Video Online Banking in Finance). I'm really convinced if you want to drive the best user adoption of a new service you need to seamlessly integrate it into an existing business processes...

I would like to highlight another industry: Human Resources (HR).

HR department is under pressure, the role of HR is changing. HR need to deliver forward-thinking capabilities that can help companies respond more timely and effectively to changes in the business environment, Lead their organizations in areas such strategic utilization of employees to serve business goals, and talent management and development...

Video-enabled processes can help them in several domains:
1/ Talent Acquisition
2/ On-Boarding
3/ Performance Management
4/ Flexible Working
5/ Learning & Development
6/ Succession Planning

I will deepen the number #1: Talent Acquisition
You have probably read several articles on Internet about Video Interviews. Video interviews help attract skilled workers and talents, and shorten time to hire. For example, when I joined Polycom, I have done several interview rounds via video with my manager based in US and the recruiter in UK. But, in my case, I have used Polycom system in Polycom Paris.

Imagine:
- As a candidat to be able to do that from your home office via your laptop.
- As a HR recruiter to have a simple interface linking your recruitment system via your video infrastructure to easily setup interviews rounds and notify the candidate via email.

Polycom has developed a prototype to link Kenexa BrassRing with Polycom RealPresence CloudAXIS to be able to easily do video interviews..

I have illustrated a full recruitment process involving these two solutions that Day in a Life.


[Day in a Life] Polycom & Kenexa Brass-Ring - Video Interview from Vincent Perrin

During IBM Connect 2014, we have demonstrated that solution on the Polycom Booth.
I have done a demo for Bertrand Duperrin. Sorry in French..