Coder Social home page Coder Social logo

bandwidth / examples Goto Github PK

View Code? Open in Web Editor NEW
5.0 7.0 11.0 6.33 MB

Examples leveraging Bandwidth's Voice, Messaging, & Phone numbers APIs

Home Page: https://dev.bandwidth.com

C# 19.13% Java 11.39% Python 19.78% Ruby 20.41% PHP 13.23% JavaScript 14.84% HTML 1.19% Shell 0.03%

examples's Introduction

Bandwidth Examples

๐Ÿšง Deprecation Notice ๐Ÿšง

This project is deprecated. Please go to https://github.com/Bandwidth-Samples to check out our latest samples!

BW_ALL

This repository contains examples of how to use Bandwidth's APIs and SDKs.

About

In order to run the examples, you'll need a Bandwidth account with valid API Credentials. See the links below:

Contents

NodeJS

SDKs

The NodeJS SDK(s) are available via NPM & Github.

Module Description Github
@banwdidth/numbers Manage phone numbers and account settings
@bandwidth/voice Create outbound phone calls and manage call media (recordings/transcriptions)
@bandwidth/bxml Create BXML for managing call flow N/A
@bandwidth/messaging Create outbound messages and manage message media (MMS)

Examples

Example Description Products
Reference App A small sample app that covers basic use cases with Bandwidth's Voice and Messaging APIs Voice/Messaging
BoilerPlate A template to be used to build Bandwidth apps in NodeJS Voice/Messaging

C#

SDKs

The C# SDK(s) are available via NuGet & Github

Module Description Github
Bandwidth.Sdk Manage Phone Calls with BXML, Create outbound calls, SMS messages, MMS messages
Bandwidth.Iris Manage phone numbers and account settings

Examples

Example Description Products
Reference App A small sample app that covers basic use cases with Bandwidth's Voice and Messaging APIs Voice/Messaging
BoilerPlate A template to be used to build Bandwidth apps in C# Voice/Messaging

Ruby

SDKs

The Ruby SDK(s) are available via RubyGems & Github

Module Description Github
bandwidth-sdk Manage Phone Calls with BXML, Create outbound calls, SMS messages, MMS messages
ruby-bandwidth-iris Manage phone numbers and account settings

Examples

Example Description Products
Reference App A small sample app that covers basic use cases with Bandwidth's Voice and Messaging APIs Voice/Messaging
BoilerPlate A template to be used to build Bandwidth apps in Ruby Voice/Messaging
Voicemail A sample app that mimics a voicemail service using Bandwidth's Voice API and Recording Voice/Messaging
Phone Number Ordering A demo app that creates a Ruby/Sinatra server that exposes endpoints to order phone numbers from Bandwidth Numbers

Python

SDKs

The Python SDK(s) are available via PyPi & Github

Module Description Github
bandwidth-sdk Manage Phone Calls with BXML, Create outbound calls, SMS messages, MMS messages

Examples

Example Description Products
Reference App A small sample app that covers basic use cases with Bandwidth's Voice and Messaging APIs Voice/Messaging
BoilerPlate A template to be used to build Bandwidth apps in Python Voice/Messaging
Voicemail A sample app that mimics a voicemail service using Bandwidth's Voice API and Recording Voice/Messaging

PHP

SDKs

The PHP SDK(s) are available via Packagist & Github

Module Description Github
bandwidth/sdk Manage Phone Calls with BXML, Create outbound calls, SMS messages, MMS messages
bandwidth/iris Manage phone numbers and account settings

Examples

Example Description Products
Reference App A small sample app that covers basic use cases with Bandwidth's Voice and Messaging APIs Voice/Messaging
BoilerPlate A template to be used to build Bandwidth apps in PHP Voice/Messaging
Outbound Call Center A sample app to show how to create an outbound call with a desired caller ID Voice
Phone Number Ordering A demo app that creates a PHP/Slim server that exposes endpoints to order phone numbers from Bandwidth Numbers

Java

SDKs

The Java SDK(s) are available via Maven & Github

Module Description Github
com.bandwidth.sdk/bandwidth-sdk Manage Phone Calls with BXML, Create outbound calls, SMS messages, MMS messages
com.bandwidth.sdk/bandwidth-java-iris-sdk Manage phone numbers and account settings

Examples

Example Description Products
Reference App A small sample app that covers basic use cases with Bandwidth's Voice and Messaging APIs Voice/Messaging
BoilerPlate A template to be used to build Bandwidth apps in Java Voice/Messaging
Phone Number Ordering A demo app to order numbers using the bandwidth-java-iris-sdk Numbers

examples's People

Contributors

ajrice6713 avatar aubron avatar bryanzwu avatar bw-mot avatar carrington-bw avatar cejohnson-bw avatar covati avatar dependabot[bot] avatar dtolb avatar dx-bandwidth avatar hamermike avatar jchavez443 avatar jeffturner avatar jmulford-bw avatar jturner-bw avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

examples's Issues

Issue with WebRTC (no audio)

Both node webrtc examples are unable to communicate audio in either direction.

This is the one that I have running right now:
https://github.com/Bandwidth/examples/tree/master/nodejs/webrtc-hello-again

  • I updated my env with the appropriate credentials/ngrok url.
  • The example successfully initiates a phone call.
  • onStreamAvailable is triggered once the call is answered.
  • The call is active on both ends
  • If I try to send audio in either direction nothing happens (only silence).

Help!

Attempting to play back the recording drops the call. "Error processing media request"

I'm attempting to play back voicemails based on this example: https://github.com/Bandwidth/examples/blob/master/ruby/RecordingApp/app.rb

I can't seem to get this bit to work. After I send this BXML to bandwidth, the phone call is immediately dropped.

play_recording = Bandwidth::Voice::PlayAudio.new({
    :url => data["tag"],
    :username => VOICE_API_USERNAME,
    :password => VOICE_API_PASSWORD
})
response.push(play_recording)

This is the raw BXML that I'm sending, and I think it looks fine.

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <PlayAudio username="[REDACTED]" password="[REDACTED]">
    https://voice.bandwidth.com/api/v2/accounts/[REDACTED]/calls/c-6a0d8e3e-a08bea47-fb75-40a0-a450-cd72e67c88c6/recordings/r-fbe17a78-e4e7ea0c-6692-446a-82a6-06e631a82877/media
  </PlayAudio>
  <Gather gatherUrl="http://abe582a0145b.ngrok.io/bandwidth/callback/redirect-to-voicemail-if-applicable" maxDigits="1">
    <SpeakSentence>Would you like to re record? Press 1 if so, otherwise please hangup</SpeakSentence>
  </Gather>
</Response>

Other important pieces of context:

  • I am able to access the media in chrome with the same username/password at that exact URL, so I know the media is accessible.
  • I'm using the recording_available_url hook, which bandwidth is triggering before I attempt to access the media.
  • Playing other media is fine (e.g. beep-01a.wav from this example works).
  • If I look up the metadata for the call I'm able to see: "Error processing media request".
  • I'm using version 3.12.1 of bandwidth-sdk

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.