sipcentric

Modern Python client library for the Sipsentric (Simwood Partner, formerly Nimvelo) API


Keywords
sipcentric, simwood, nimvelo, voip, pbx, sms, sip
License
MIT
Install
pip install sipcentric==0.0.0

Documentation

Nimvelo Python Client

Python 2.7 client library for the Nimvelo/Sipcentric API

from nimvelo 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:Nimvelo/python-client.git && cd python-client
sudo python setup.py install

Getting started

Examples

Get account details

from nimvelo import Nimvelo

nimvelo = Nimvelo(username="myusername", password="mypassword")

print nimvelo.account.get()

Connect to the streaming api

from nimvelo 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

  • nimvelo.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()