You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
98 lines
2.0 KiB
Markdown
98 lines
2.0 KiB
Markdown
# Nimvelo Python Client
|
|
|
|
Modern Python client library for the Nimvelo/Sipcentric API
|
|
|
|
```python
|
|
from nimvelo3 import Nimvelo
|
|
nimvelo = Nimvelo(username="myusername", password="mypassword")
|
|
print nimvelo.sms.post(_from="0123", to="03301201200", body="Hello World!")
|
|
```
|
|
|
|
## Install
|
|
|
|
### Best method
|
|
|
|
```
|
|
sudo pip install nimvelo
|
|
```
|
|
|
|
*You may need to install `simplejson` and `multiprocessing` if you don't have them already.*
|
|
|
|
### Manual method
|
|
|
|
```
|
|
git clone git@github.com:faelix/nimvelo3.git && cd nimvelo3
|
|
sudo python setup.py install
|
|
```
|
|
|
|
## Getting started
|
|
|
|
### Examples
|
|
|
|
**Get account details**
|
|
|
|
```python
|
|
from nimvelo3 import Nimvelo
|
|
|
|
nimvelo = Nimvelo(username="myusername", password="mypassword")
|
|
|
|
print nimvelo.account.get()
|
|
```
|
|
|
|
**Connect to the streaming api**
|
|
|
|
```python
|
|
from nimvelo3 import Nimvelo
|
|
|
|
nimvelo = Nimvelo(username="myusername", password="mypassword")
|
|
stream = nimvelo.Stream
|
|
|
|
def callHandler(call):
|
|
print 'Incoming call from ' + call['callerIdName'] + ' (' + call['callerIdNumber'] + ')'
|
|
|
|
def smsHandler(sms):
|
|
print sms['excerpt'] + ' from: ' + sms['from']
|
|
|
|
stream.register(type='incomingcall', callback=callHandler)
|
|
stream.register(type='smsreceived', callback=smsHandler)
|
|
|
|
stream.connect()
|
|
```
|
|
|
|
## Reference
|
|
|
|
- nimvelo3.Nimvelo(username, password, base='https://pbx.sipcentric.com/api/v1', customer='me')
|
|
- account
|
|
- get()
|
|
- callBundles
|
|
- get()
|
|
- recordings
|
|
- get()
|
|
- phoneBook
|
|
- get()
|
|
- timeIntervals
|
|
- get()
|
|
- endpoints
|
|
- get()
|
|
- phoneNumbers
|
|
- get()
|
|
- sms
|
|
- get()
|
|
- post(to, _from, body)
|
|
- creditStatus
|
|
- get()
|
|
- calls
|
|
- get()
|
|
- sounds
|
|
- get()
|
|
- outgoingCallerIds
|
|
- get()
|
|
- Stream
|
|
- register(type, callback)
|
|
- connect()
|
|
- disconnect()
|
|
|
|
## History
|
|
|
|
This project was forked from Nimvelo's original project (for Python 2.7) [python-client](https://github.com/Nimvelo/python-client). The name was changed to `nimvelo3` to make migration to Python 3.x codebases as simple as possible.
|