cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
7156
Views
20
Helpful
19
Replies

Join Zoom button Touch 10

shleets
Beginner
Beginner

Hello, can a button be added to the Cisco Touch 10 like the join Webex button but for Zoom and just need to put in the conference ID?  We use the OBTP feature with calendar service but we are being asked to add a button to the touch 10 like the join WEBEX button.  If this can be done is there any documentation on how to accomplish this?

19 Replies 19

Roger Kallberg
VIP Expert VIP Expert
VIP Expert

Yes you can add a button and tie a macro to it. Google CE macro zoom and I sure you would find what you need. Pretty sure Zoom uses standard SIP uri, you should be able to use the example macro for Webex and modify it to fit for Zoom. Let us know how it goes and if you need any more help. If so would you mind to please post an example of how the Zoom join SIP uri looks like?



Response Signature


Zoom does not use standard SIP unless the customer has paid for that service (it's not standard/free). They call it the Zoom conference room connector - it's basically a gateway service. When the hosting customer has this service the conference information will include a SIP URI - it would be a nine digit number @zoomcrc.com - for example 123456789@zoomcrc.com. To shleets - are your endpoints clould connected? If so and you have hybrid calendar service available you should be able to get OBTP no problem. 

Patrick - yes they are cloud connected and we do use OBTP.  Was just trying to give another option like the join WEBEX button on the touch 10 to join if the room resource did not get scheduled in Exchange.  We have a split environment of Zoom and Webex so trying to cover all the bases before return to office.  We do subscribe to the Zoom SIP service.

As you have the needed service with Zoom to use SIP you should be able to use the macro for Webex join, the one that existed before this got added natively to CE, and modify it to work with Zoom. Something along with this should likely work for you based on the description of the SIP uri that was given by Patrik.

const xapi = require('xapi');
const domain = "zoomcrc.com";

function onGuiZoom(event) {
  if (event.PanelId == 'zoom_start') {
    xapi.command('UserInterface Message TextInput Display', {
		FeedbackId: 'zoomStart',
		Text: 'Join the Zoom meeting by typing the meeting ID or the PMR name. Examples are 123456789',
		Placeholder: 'Meeting ID or PMR name',
		SubmitText: 'Join',
		Title: 'Join a Zoom Meeting',
		Duration: 30,
	});
  }
}

function ZoomMeeting(event) {
  if (event.FeedbackId == 'zoomStart') {
    if (event.Text.search("@") == -1) {
		xapi.command('Dial', {
			Number: event.Text + "@" + domain,
		});
    }
    else {
		xapi.command('Dial', {
			Number: event.Text,
		}); 
    }
  }
}

xapi.event.on('UserInterface Extensions Panel Clicked', onGuiZoom);
xapi.event.on('UserInterface Message TextInput Response', ZoomMeeting);

Add this as a macro to the endpoints and name it zoom_start, make sure you enable it after you have added it. Then add a button in the UI Extension configuration on the device that has a ID that is zoom_start and name it to Join Zoom. The button should be visible in the Only out of call state.



Response Signature


You could simply create a favorite - dial 1@zoomcrc.com, that will get you to the Zoom IVR. Save it as a favorite and you're all set!

 

Roger,

This macro works fine but can it be modified so the keyboard is used to enter the meeting ID?  The dial box is limited to numbers.

 

Regards,

 

Bill Cassidy

It should be possible to enter both digits and letters. We use basically pretty much the same macro to present a join button for Webex meetings and it works for both regular meetings and PMR meetings. For the later it would contain mostly letters, but could also have digits.



Response Signature


Thanks for the quick reply Roger.  Maybe we have an issue with our codex.  The meeting ID prompt that we get resembles a phone dial pad.

 

Regards,

 

Bill Cassidy

This is the UI we get when using this macro.

Snag_1aae055.png



Response Signature


draylan01
Beginner
Beginner

Hello! I have been trying to test creating a Zoom dial button but it seems to not be working for me for some reason. I have tried multiple other sample codes as well but every time when I press the button, nothing happens. Am I missing something? 

 

For the example above, I have ensured that the panel_ID matches my UI Extension ID. I'm not sure what else i'm missing here. Would greatly appreciate if anyone can help here.

 

Thanks!

Dave 

How long is the text that you have is the descriptive "Text:" label of the js file? There is a limitation for how long this can be, I ran into that issue when I tried to create a MS Teams join script/button. Would you mind to post your js code here for us to validate it?



Response Signature


draylan01
Beginner
Beginner

Thanks for the reply Roger! I actually tried using your code you posted above but just changed the PanelID to match mine. It's enabled and tied to my UI Extension button but when I press the button, nothing happens. Is the Text field here too long? I'll try to reduce it and give it another go.

const xapi = require('xapi');
const domain = "zoomcrc.com";

function onGuiZoom(event) {
  if (event.PanelId == 'dial_zoom') {
    xapi.command('UserInterface Message TextInput Display', {
		FeedbackId: 'zoomStart',
		Text: 'Join the Zoom meeting by typing the meeting ID. Example are 123456789',
		Placeholder: 'Meeting ID',
		SubmitText: 'Join',
		Title: 'Join a Zoom meeting',
		Duration: 30,
	});
  }
}

function ZoomMeeting(event) {
  if (event.FeedbackId == 'zoomStart') {
    if (event.Text.search("@") == -1) {
		xapi.command('Dial', {
			Number: event.Text + "@" + domain,
		});
    }
    else {
		xapi.command('Dial', {
			Number: event.Text,
		}); 
    }
  }
}

xapi.event.on('UserInterface Extensions Panel Clicked', onGuiZoom);
xapi.event.on('UserInterface Message TextInput Response', ZoomMeeting);

I also tried just adding a simple one from the Example tab:

const xapi = require('xapi');

const MYSPEED_DIAL_NUMBER = 'zoom1@zoomcrc.com';

xapi.event.on('UserInterface Extensions Page Action', (event) => {
    if(event.Type == 'Opened' && event.PageId == 'dial_zoom'){
         xapi.command("dial", {Number: MYSPEED_DIAL_NUMBER});
    }
});

But that too did not work. Scratching my head on this one...

No that text is not too long. Could you share screen shots of your macro setup and also of your UI extension?



Response Signature


Hi Roger, I managed to get it working so disregard I ended up rebuilding the UI Extension and that worked. Thanks a lot for your help!

 

Would you know if there is a similar dial string for Pexip by the way?

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community:

Recognize Your Peers