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.
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!
Done.
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` try{ var resp = await platform.post(endpoint, { phoneNumber:toNumber }) var jsonObj = await resp.json() console.log(JSON.stringify(jsonObj)) }catch(e){ console.log(e.message) } }
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.
I wrote "Done" meaning the app was manually graduated.
Thank you, we appreciate your help.
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