question

janielle2936 avatar image
janielle2936 asked benjamin-dean answered

The mentioned permission "VoIP Calling" in "Configuring your RingCentral app" does not exists for WebPhone

Original: https://github.com/ringcentral/ringcentral-web-phone/issues/85


As my colleague and I are trying to explore how to work with the Web Phone, we stuck while configuring the RingCentral app for Web Phone according to the README file.

The issue is that when we try to set up a new browser-based app, there is no permission VoIP Calling. Should I use different permissions?

Today, I found a Youtube video released by Benjamin Dean regarding to the setup. At 14:03 of the video, the demo app in the video clearly have the permission VoIP Calling. However, when I set up the application, the permission VoIP Calling doesn't seem to exist as you can see from the screenshots on GitHub.

Please advise how I should set up an application with VoIP Calling. Also, is it possible to have a Server/Web application to do VoIP Calling?

getting started
1 |3000

Up to 8 attachments (including images) can be used with a maximum of 1.0 MiB each and 10.0 MiB total.

janielle2936 avatar image
janielle2936 answered
Hey Benjamin,
We currently have a passing public server application but we need to also use browser calling and don't want to manage two sessions/apps
1 |3000

Up to 8 attachments (including images) can be used with a maximum of 1.0 MiB each and 10.0 MiB total.

janielle2936 avatar image
janielle2936 answered
Hey team, we've got a product to ship. Can you please have someone respond to our issues?
1 |3000

Up to 8 attachments (including images) can be used with a maximum of 1.0 MiB each and 10.0 MiB total.

benjamin-dean avatar image
benjamin-dean answered
Janielle,

RingCentral does not grant "Direct RingOut", "Interoperability", or "Read Client Info" API permissions to any external developers. If you need the "Number Lookup" API Permission, you will need to provide us with a detailed use case about how you will use this API Permission in order for us to consider granting one of your applications this Advanced API Permission.

We will not make any further modifications to application(s) which have already been approved for production access. Our graduation process will not delay you in any way towards getting your updated application(s) approved for production. In fact, the moment your application has successfully achieved the requirements to apply for production and you have applied, just add a reply here letting me know, and if everything is in order I will graduate your applications immediately.

Following our best practices, which I outlined above, will not require you to manage two sessions/apps.  You will just change your configuration/environment files to use the new API keys. You should be able to do this in the Sandbox account for development with these applications as they have the necessary API permissions to do both RingOut and WebRTC voice calling:

Statflo Business Connect (Web Phone)
Statflo Business Connect (Web Phone) - Private App

Sincerely,
Benjamin
1 |3000

Up to 8 attachments (including images) can be used with a maximum of 1.0 MiB each and 10.0 MiB total.

janielle2936 avatar image
janielle2936 answered John Wang Deactivated commented
Thanks Benjamin.

I found out why we can't get the demo to work.

I followed the demo apps documentation, which says we needed to created an app and set it's Platform Type to Browser-Based. The problem is, is that a browser based app does not support Password Flow and the demo is setup to only use password flow.

You should ask the developers to fix the documentation or get them to add Password Flow as an authentication type for Browser-Based app

Is there another demo somewhere that shows how to use the Authorization Flow?

And in the mean time could you add the voip calling permission to an app calle d ringcentral-web-phone (Private, Mobile/Only) please,

Thanks,




4 comments
1 |3000

Up to 8 attachments (including images) can be used with a maximum of 1.0 MiB each and 10.0 MiB total.

janielle2936 avatar image janielle2936 commented ·
Oh, I just found this, and the online demo for this works for the authorization flow.

https://github.com/ringcentral/ringcentral-js-cti-demo
1 Like 1 ·
janielle2936 avatar image janielle2936 commented ·
Yes, the ringcentral-web-phone's documentation is incorrect, see below, it says to choose Browser-Based, but like you said that won't work for Password Flow (and like I said that demo only demonstrates Password Flow)

No need to change the app type to browser-based, I have another app set up that's browser-based and it has the voip calling permission.

I found this demo, which uses the authorization flow, I think this will allow us to get something to work, thanks.

https://github.com/ringcentral/ringcentral-js-cti-demo



1 Like 1 ·
benjamin-dean avatar image benjamin-dean commented ·
Do you mean for the RingCentral Web Phone ( https://github.com/ringcentral/ringcentral-web-phone)?

VOIP Calling is added to the app you requested, but I do not believe it will work with RingCentral WebRTC because you have it set to Platform Type = "Mobile/Other", and WebRTC only operates with "Browser-Based".

We intentionally do not include "Password Flow" for use with Browser-Based apps because that architectural style for an application has inherent security vulnerabilities (since you would need to have your API keys contained in the client-side code).

Would you like me to change your application's Platform Type => Browser-Based, or do you want to use one of the existing applications you have defined?
0 Likes 0 ·
John Wang avatar image John Wang ♦♦ commented ·
@Janielle, In addition to the RC JS CTI Demo, you can also reference the following set of OAuth Authorization Code demos:

https://github.com/ringcentral/ringcentral-demos-oauth

The OAuth demos are simpler and just retrieve an access token while the CTI Demo is a demo application that uses Local Storage to enable cross-tab session management. 
0 Likes 0 ·
janielle2936 avatar image
janielle2936 answered
Unfortunately we can't use  https://github.com/ringcentral/ringcentral-js-cti-demo to test in-browser calling since it only supports ringout and URI

It would be nice to test with  https://github.com/bdeanindy/ringcentral-webrtc-crm-demo but it requires Interoperability

How would you suggest we get started with in-browser calling without starting from scratch? We'd like to give something to our UI/UX team to work with while we develop against the sdk in parallel
1 |3000

Up to 8 attachments (including images) can be used with a maximum of 1.0 MiB each and 10.0 MiB total.

benjamin-dean avatar image
benjamin-dean answered
Interoperability is no longer required to operate WebRTC, only VOIPCalling.
1 |3000

Up to 8 attachments (including images) can be used with a maximum of 1.0 MiB each and 10.0 MiB total.

benjamin-dean avatar image
benjamin-dean answered
Interoperability is no longer required to operate WebRTC, only VOIPCalling.
1 |3000

Up to 8 attachments (including images) can be used with a maximum of 1.0 MiB each and 10.0 MiB total.

janielle2936 avatar image
janielle2936 answered
Thanks Benjamin,

Do you know of any demo we can try that support in-browser calling using a public app?
1 |3000

Up to 8 attachments (including images) can be used with a maximum of 1.0 MiB each and 10.0 MiB total.

benjamin-dean avatar image
benjamin-dean answered
Yes, the RingCentral for Google Chrome application on App Gallery does this very thing.
https://developers.ringcentral.com/app-gallery.html/app/312709020-312709020-7gufiGT3T3CCuCP37hMDaQ~K...
1 |3000

Up to 8 attachments (including images) can be used with a maximum of 1.0 MiB each and 10.0 MiB total.

Developer sandbox tools

Using the RingCentral Phone for Desktop, you can dial or receive test calls, send and receive test SMS or Fax messages in your sandbox environment.

Download RingCentral Phone for Desktop:

Tip: switch to the "sandbox mode" before logging in the app:

  • On MacOS: press "fn + command + f2" keys
  • On Windows: press "Ctrl + F2" keys