The integration with the RingCentral consists of the following steps:
Creating and configuring the RingCentral application
Configuring the connector to work with the RingCentral application
Distributing license among the users
Provisioning of the connection configuration for the users (the process is described in User Guide)
Configuring RingCentral
Prerequisites
An active RingCentral account
The administrative access to the developer console (to create private RC applications)
Settings
Make sure your app has the following properties set, otherwise you'll get errors.
WebRTC enables dialing out and you need to be attached to an extension to use this capability. You can configure this in the Online Web Portal for Production (https://service.ringcentral.com/) and Sandbox (https://service.devtest.ringcentral.com/) accounts. You can find more information on the Digital Lines and their configuration in the following RingCentral Knowledge Base article topics:
Digital Line Overview (KB 5862) - RingCentral DigitalLine Overview
Adding a Digital Line (KB 3136). - The application should have an allocated Digital Line. A limited number of Digital Lines are free with each sandbox account and can be configured with the free RingCentral for Desktop softphone. - http://success.ringcentral.com/articles/RC_Knowledge_Article/5-10-Adding-Phones-to-other-extensions-via-Web
Reassigning an Existing Digital Line (KB 3748) - http://success.ringcentral.com/articles/en_US/RC_Knowledge_Article/How-to-Assign-an-Existing-Digital-Line-to-a-different-extension
These permissions are configured for your app in the RingCentral Developer Portal (https://developers.ringcentral.com/). Fill in the Registration Form (https://goo.gl/sPsrXN) to get access to the WebRTC permissions. Please contact devsupport@ringcentral.com to request these permissions.
Setting Up the Integration
Go to the RingCentral Developers Console and create the Application there:
Click [Create App] (Fig. 1).
Fig. 1. Creating an Application
b. Choose [Rest API App] for the Application type and click the "Next" button (Fig. 2).
Fig. 2. Choosing the Application type
c. Enter the application name and add the description (Fig. 3).
Fig.3. Entering the application name and adding the description
d. Add the Primary Contact (Fig. 4).
e. Choose [No] for the promotion (Fig. 4).
f. Choose Type of app for calling the API (Fig. 4).
Fig.4. Adding the primary contact, promotion and choosing type of app for calling the API
g. Configure the OAuth Redirect URLs (OAuth Redirect URLs should be written according to the following format: https://<Creatio instance domain>/0/rest/VvtAuthorizeService/callback (Fig.5).
h. Choose [Yes] for refresh tokens (Fig.5).
i. Configure the permissions (set VoIP Calling, Read Call Log, Read Accounts, Read Messages, Webhook Subscription) (Fig.5).
j. Choose the access to your application (Fig.5).
Fig. 5. Configuring the permissions and the Redirect URLs, refreshing tokens and choosing the access to the application
As a result, the application will be added to the [Apps] section. It is published within Sandbox. To publish it to Production, you have to take the following steps.
2. Click [Resources] on the page heading, and choose [See all APIs] (Fig.7).
Fig. 7. Opening the See all APIs section
3. Search [Register] and choose [Register Device] from the dropdown menu (Fig. 8).
Fig. 8. Opening the Register Device section
4. Click [+] in the sipinfo section and select WWS from the [Transport] field dropdown menu (Fig.9).
Fig. 9. Setting up the Transport field
5. Click [Change App] (Fig.10), choose your Application, and click [Authorize] (Fig. 11).
Fig. 10. Changing the Application
Fig. 11 Choosing the Application and its authorization
6. Click the [Try it out] button.
If all settings are correct, you will see the message that's everything is OK. If there is an ERROR, repeat steps 3-6 again (Fig.12).
Fig.12. Message about the correct settings in the Register Device section
After that click the [Try it out] button 10+ times (the restriction is applied, thus you can make up to 10 requests per minute).
7. Сlick [Call Log] in the left menu and choose [Get Company Call Log Records] from the dropdown menu (Fig.13).
Fig. 13. Opening the Get Company Call Log Records section
8. Enter '~' in the [accountId] field (Fig.14).
Fig.14. Setting up the accountId field
9. Select [Change App], choose your Application, click [Authorize], and finally, press the [Try it out] button.
If all the settings are correct, you will see the message that's everything is OK (Fig. 15). If there will be an ERROR, try to do points 7-9 again.
Fig.15. Message about the correct settings in the Get Company Call Log Records section
After that click the [Try it out] button 10+ times (the restriction is applied, thus you can make up to 10 requests per minute).
10. Go to the Account section, click [Phone Numbers], and from the dropdown menu choose [Get Extension Phone Number List] (Fig. 16).
Fig. 16. Opening the Get Extension Phone Number List section
11. Enter "~" in the [accounted] and [extensionId] fields (Fig. 17).
Fig. 17. Setting up the accounted and extensionId fields
12. Select [Change App], choose your Application, click [Authorize], and finally, press the [Try it out] button.
If all the settings are correct, you will see the message that's everything is OK (Fig. 18). If there will be an ERROR, try to do points 10-12 again.
Fig. 18. Message about the correct settings in the Get Extension Phone Number List section
After that click the [Try it out] button 10+ times (the restriction is applied, thus you can make up to 10 requests per minute).
13. Check the status
As a result, the application will be added to the [Apps] section. It is published within Sandbox. To publish it to Production, you have to take the following steps.
Click the [Resources] on the page headingand choose your app (Fig. 19).
Fig. 19. Opening the created application
The status is in the [Status & Review] section (refreshed every 30 minutes). As soon as the button is available, click [Apply for Production] (Fig. 20) in RingCentral Developers.
Fig. 20. Applying the Application for Production
Check all the information and click [Next] (Fig. 21).
Fig. 21. Checking the information on the first step in the Apply for Production - General Settings window
Check all the information and click [Next] (Fig. 22).
Fig. 22. Checking the information on the second step in the Apply for Production - General Settings window
Add the Comment and click [Send Request] (Fig. 23).
Fig. 23. Checking the information on the third step in the Apply for Production - General Settings window
After that Production Environment credentials will become available (Fig. 24).
Fig. 24. Application page
14. Sign in to Creatio as an admin to be able to configure the application.
15. Go to the [System Settings] -> [Telephony] (Fig. 25).
Fig. 25. Opening Telephony setting folder
16. Click the [Default Messages exchange library], and click [Open] (Fig. 26).
Fig. 26. Opening the Default Messages exchange library section
17. Make sure that [Telephony integration library based on Velvetech protocol] is set as a default value.
18. Return to the previous page, open the [Velvetech] (Fig. 27) setting folder.
Fig. 27. Opening Velvetech setting folder
19. Open [RC platform: Production] and make sure that the Default value is checked.
20. Open [RC Client Id] and fill in the Default value field, with the Client ID from the Production Environment in RingCentral’s [Credentials] section (Fig.28).
Fig. 28. Copying the Client ID from the Production Environment in the RingCentral’s [Credentials] section
21. Open the [RC Client Secret] and fill in Client Secret in the [Credentials] section's Default value field (Fig. 29).
Fig. 29. Copying the Client Secret from the Production Environment in the RingCentral’s Credentials section
22. Now, you can distribute the licenses among the users who need to be connected with the RingCentral (see /wiki/spaces/VAM/pages/731217834).
23. Sign out from the admin account in the Creatio.
24. To create users follow this instruction from the RingCentral - https://support.ringcentral.com/article/11683-Add-Users-Extensions-and-assign-RingCentral-Phone-app-RingCentral.html