Skip to main content

RingCentral Engage Voice Python SDK

Build Status Coverage Status

API docs.

Installation

PIP

pip3 install ringcentral_engage_voice
# or
pip install ringcentral_engage_voice

Usage

from ringcentral_engage_voice import RingCentralEngageVoice
# create from ringcentral app client id /secret
# you can create app from https://developer.ringcentral.com
ev = RingCentralEngageVoice(
  'RINGCENTRAL_CLIENT_ID',
  'RINGCENTRAL_CLIENT_SECRET'
)
# auth with password flow
ev.authorize(
  username = 'USERNAME',
  password = 'PASSWORD',
  extension = 'EXTENSION' # optional
)
# // can also auth with auth code flow
# // check https://developers.ringcentral.com/guide/authentication for more detail
ev.authorize(
  code = 'xxxx',
  redirectUri = 'yyyyyy'
)

# get access token, will expire in 5 minutes
token = ev.token['accessToken']

# // api request
# // check all api doc from https://engage-voice-api-docs.readthedocs.io/en/latest/
r = ev.get('/api/v1/admin/accounts')
assertEqual(len(r.json()) > 0, True)

For legacy server use:

from ringcentral_engage_voice import RingCentralEngageVoice

# LEGACY_SERVER could be
# 'https://portal.vacd.biz',
# or  'https://portal.virtualacd.biz'
ev = RingCentralEngageVoice(
  server = process.env.LEGACY_SERVER
)

# only support username/password auth
await ev.authorize({
  username = process.env.LEGACY_USERNAME,
  password = process.env.LEGACY_PASSWORD
})

# api request
# check all api doc from https://engage-voice-api-docs.readthedocs.io/en/latest/
let r = ev.get('/api/v1/admin/accounts')
r = r.json()
expect(len(r) > 0).toBe(true)

Instance methods

ev._request(
    method,
    endpoint,
    params = None,
    json = None,
    data = None,
    files = None,
    multipart_mixed = False,
    headers = None
)

ev.get(endpoint, params = None)

ev.post(endpoint, json = None, params = None, data = None, files = None, multipart_mixed = False)

ev.put(endpoint, json = None, params = None, data = None, files = None, multipart_mixed = False)

ev.patch(endpoint, json = None, params = None, data = None, files = None, multipart_mixed = False)

ev.delete(endpoint, params = None)

Virtual Environment

The venv module allows you to create a lightweight "virtual environment" within your own site directory, isolated from system site directories. The virtual environment has it's own Python binary and can have its own independent set of installed Python packages in its site directories. This is a good way to to create an isolated test environment to test out this code

Test

To use the virtual environments, make sure you have pip3 and python3.6+ setup, then execute the following:

bin/init
source venv/bin/activate
pip install -r requirements.txt
cp env-sample.env .env
# edit .env fill all fields

# now test
./bin/test

# test non-lagecy API
python3 test/engage_voice_spec.py

# test lagecy API only
python3 test/engage_voice_lagecy_spec.py

To test without virtual environments and in your system directory, make sure you have pip3 and python3.6+, then execute the following:

pip3 install -r requirements-dev.txt
pip3 install -r requirements.txt
cp env-sample.env .env
# edit .env fill all

# now test
./bin/test

Credits

Based on Tyler's https://github.com/tylerlong/ringcentral-python.

License

MIT

Metadata

Release files for ringcentral-engage-voice 0.3.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ringcentral-engage-voice 0.3.2
File Size Uploaded
ringcentral_engage_voice-0.3.2.tar.gz 5.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ringcentral-engage-voice 0.3.2
File Interpreter ABI Platform
ringcentral_engage_voice-0.3.2-py3-none-any.whl Python 3 none any Details

Total release size: 11.4 kB

Release files / ringcentral_engage_voice-0.3.2.tar.gz

Download URL ringcentral_engage_voice-0.3.2.tar.gz
Size 5.2 kB
Tags Source
SHA-256 checksum
How to use checksums
204ec8ec2fc1b6ca3a77998df52cf30b5c13ff1bab8999f3174d7611cdeb1552
BLAKE2b-256 checksum
How to use checksums
b6a08858648cd5f19f8ab8b843365198184ae14d4347b70d971956da63645fea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/51.0.0 requests-toolbelt/0.9.1 tqdm/4.55.1 CPython/3.9.1

Release files / ringcentral_engage_voice-0.3.2-py3-none-any.whl

Download URL ringcentral_engage_voice-0.3.2-py3-none-any.whl
Size 6.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5435857f608a78ef5cfdf290dea2e2e79f2c965ab81082a0362ef6090b7b5c4d
BLAKE2b-256 checksum
How to use checksums
93f31e4faa3b335c0846442beaa1fd88a67bdf6f048172908cd42a1532fd3a02
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/51.0.0 requests-toolbelt/0.9.1 tqdm/4.55.1 CPython/3.9.1

Release history Release notifications | RSS feed

This release

0.3.2 This release

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page