News & Announcements User Community Developer Community

Welcome to the RingCentral Community

Please note the community is currently under maintenance and is read-only.

Make sure to review our Terms of Use and Community Guidelines.
  Please note the community is currently under maintenance and is read-only.
Home » Developers
Unable to graduate our app because of the Call Control permission
Tags: call handling
May 11, 2022 at 3:39pm   •   2 replies  •  0 likes
InteractiveTel API

We have met all graduation requirements except for the CallControl permission (for event filter: /restapi/v1.0/account/{accountId}/telephony/sessions).

We faced this issue in the past, and right now, we cannot graduate the app on our own.

Can you guys graduate the app as soon as possible?

Also, how can we prevent this from happening in the future?

PS: The ticket system is unavailable as well.

2 Answers
answered on May 12, 2022 at 7:46am  

I forgot to add it, app id: L6g0jppRSM2773fQSmlIDw~TR9eVOBtT524bQkkGhAX2Q, client id: p7sMTbPAQcCVsUvG3W8GMA, but don't you think guys this is a waste of development time to meet the Call Control permission. I would advise either removing the permission from the event filter or having another way to test exercise it.

Quoting you: "test your app by making inbound calls to detect call events": This is exactly what we do

and then you said: "implement an extra function to just forward those incoming call to another number": This is a waist of time, I think everyone would agree.

Just having to add way more code to meet this requirement is not within everyone's budget!

on May 12, 2022 at 8:14am   •  0 likes


I agree with you that the requirement in this case should be removed, and we are in the process to improve the app graduation experience.

However, I don't think that the recommended workaround solution is a "way more code" to meet the requirement. Look at the extra code e.g. in Node JS.

// incoming telephony event
  var body = msg.body
  if (body.parties[0].direction == "Inbound" &&
        body.parties[0].status.code == "Proceeding"){
        forwardCall(body, "+1650XXXYYYY")

async function forwardCall(call, toNumber){
  var endpoint = '/restapi/v1.0/account/~/telephony/sessions/'
  endpoint += call.telephonySessionId
  endpoint += `/parties/${call.parties[0].id}/forward`
    var resp = await, { phoneNumber:toNumber })
    var jsonObj = await resp.json()
on May 12, 2022 at 8:37am   •  0 likes

Thank you for the code snipped; I am implementing it now in our graduation code (Python) (yes, we have a graduation code to graduate the app sort of automatically). In the meantime, can you graduate the app by hand, please? our client is waiting.

on May 12, 2022 at 8:41am   •  0 likes

I wrote "Done" meaning the app was manually graduated.

on May 12, 2022 at 9:00am   •  0 likes

Thank you, we appreciate your help.

answered on May 11, 2022 at 4:25pm  

When request for such a thing, remember to provide the app client id.

In the future, you can any API that requires the permission that you need for your notification. For example, your app is listing to telephony session event notifications and it requires the Call Control permission, test your app by making inbound calls to detect call events, then implement an extra function to just forward those incoming call to another number. That way your app will exercise the Call Control permission when it call the call forward API. Remove that function from your code after testing and graduating your app.


A new Community is coming to RingCentral!

Posts are currently read-only as we transition into our new platform.

We thank you for your patience
during this downtime.

Try Workflow Builder

Did you know you can easily automate tasks like responding to SMS, team messages, and more? Plus it's included with RingCentral Video and RingEX plans!

Try RingCentral Workflow Builder

Developer Platform
Integrated Apps
App Gallery
Developer support
Games and rewards

Resource center
Product Releases
App Download
RingCentral App login
Admin Portal Login
Contact Sales
© 1999-2024 RingCentral, Inc. All rights reserved. Legal Privacy Notice Site Map Contact Us