Giter VIP home page Giter VIP logo

python-bandwidth's Introduction

Bandwidth Python API

Build Status Can I Use Python 3?Documentation Status

Client library for the Bandwidth App Platform

Full Reference

dev.bandwidth.com/python-bandwidth

Requirements

Installation

pip install bandwidth-sdk

Usage

Client Initialization

import bandwidth
voice_api = bandwidth.client('voice', 'u-user', 't-token', 's-secret')
messaging_api = bandwidth.client('messaging', 'u-user', 't-token', 's-secret')
account_api = bandwidth.client('account', 'u-user', 't-token', 's-secret')

## Or import each individually for better IDE integration::

from bandwidth import messaging, voice, account
messaging_api = messaging.Client('u-user', 't-token', 's-secret')
voice_api = voice.Client('u-user', 't-token', 's-secret')
account_api = account.Client('u-user', 't-token', 's-secret')

Each of these code sample assumes that you have already initialized a client

Search and order phone number

numbers = account_api.search_available_local_numbers(area_code = '910', quantity = 3)
print(numbers[0]['number'])
## +19104440230

my_number = account_api.order_phone_number(numbers[0]['number'])

print(my_number)
#n-rnd5eag33safchqmrj3q

Send Text Message

message_id = api.send_message(from_ = '+1234567980',
                              to = '+1234567981',
                              text = 'SMS message')
print(message_id)
# m-messageId

Send Picture Message

message_id = api.send_message(from_ = '+1234567980',
                              to = '+1234567981',
                              text = 'MMS message',
                              media=['http://cat.com/cat.png'])
print(message_id)
# m-messageId

Fetch information about single message

my_message = api.get_message('m-messageId')
print(my_message[state])
## received

Create an outbound call

call_id = api.create_call(from_ = '+1234567890',
                          to = '+1234567891',
                          callback_url = "http://yoursite.com/calls")
print(call_id)
## c-abc123

Get information on single call

my_call = api.get_call('c-abc123')
print(my_call)
## {   'callback_url'         : 'http://yoursite.com/calls',
##     'direction'           : 'out',
##     'events'              : 'https://api.catapult.inetwork.com/v1/users/u-abc/calls/c-abc123/events',
##     'from'                : '+1234567890',
##     'id'                  : 'c-abc123',
##     'recording_enabled'    : False,
##     'recording_file_format' : 'wav',
##     'recordings'          : 'https://api.catapult.inetwork.com/v1/users/u-abc/calls/c-abc123/recordings',
##     'startTime'           : '2017-01-26T16:10:11Z',
##     'state'               : 'started',
##     'to'                  : '+1234567891',
##     'transcription_enabled': False,
##     'transcriptions'      : 'https://api.catapult.inetwork.com/v1/users/u-abc/calls/c-abc123/transcriptions'}

Retrieving list of calls

call_list = api.list_calls(to = '+19192223333', size = 2)
print(list(call_list))

python-bandwidth's People

Contributors

avbel avatar axik avatar dpereira-daitan avatar joeldodson avatar jsilva-daitan avatar kldavis4 avatar lvivo-daitan avatar msoedov avatar mzizzi avatar truskovskiyk avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.