RingCentral Extensible is a SDK with a tiny core and lots of extensions. It is an endeavour to get rid of bloated SDK. You install extensions on demand.
If you are having difficulty using this SDK, or working with the RingCentral API, please visit our developer community forums for help and to get quick answers to your questions. If you wish to contact the RingCentral Developer Support team directly, please submit a help ticket from our developer website.
yarn add @rc-ex/core
Then you should be able to import the SDK like this:
import RingCentral from '@rc-ex/core';
You can also find lots of useful code snippets from test cases.
This SDK supports extensions. You can enable features by installing extensions.
If you want to add features to this SDK, create an extension.
Some sample code for binary content downloading may not work.
Because RingCentral is gradually migrating binary content to CDN such as media.ringcentral.com
.
For example, to download the attachment of a fax:
// `message` is the fax message object
const r = await rc.get(message.attachments[0].uri, undefined, { responseType: 'arraybuffer' })
const content = r.data
The following does NOT work:
// `message` is the fax message object
const content = await rc.restapi().account().extension().messageStore(message.id).content(message.attachments[0].id).get()
But not all binary content has been migrated to CDN. If the resource to download provides you with a CDN uri, use that CDN uri. If there is no CDN uri provided, construct the uri as sample code shows.
Make a copy of the packages/core/.env.sample
file and name it packages/core/.env
, edit it to specify path to swagger spec file.
yarn generate
yarn reset && yarn compile && yarn test
t=auto-recover yarn test
yarn lerna publish
yarn lerna add ramda --scope=@rc-ex/debug
- Extension to refresh token
- Extension to do pagination