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

9 years ago
# Nimvelo Python Client
Modern Python client library for the Nimvelo/Sipcentric API
9 years ago
```python
from nimvelo3 import Nimvelo
9 years ago
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.*
9 years ago
### Manual method
```
git clone git@github.com:faelix/nimvelo3.git && cd nimvelo3
9 years ago
sudo python setup.py install
```
## Getting started
### Examples
**Get account details**
```python
from nimvelo3 import Nimvelo
9 years ago
nimvelo = Nimvelo(username="myusername", password="mypassword")
print nimvelo.account.get()
```
**Connect to the streaming api**
```python
from nimvelo3 import Nimvelo
9 years ago
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')
9 years ago
- 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.