Skip to content
This repository has been archived by the owner on Nov 19, 2019. It is now read-only.

Latest commit

 

History

History
56 lines (46 loc) · 1.46 KB

README.md

File metadata and controls

56 lines (46 loc) · 1.46 KB

elixir-bandwidth

An Elixir client library for the Bandwidth Application Platform

Hex Version

SDK for Bandwidth HTTP Voice and Messaging

Install

Add as a dependency:

defp deps() do
  [{:bandwidth, "~> 1.2.2"}]
end

Fetch and compile:

mix do deps.get, deps.compile

Or install as archive:

git clone https://github.com/bandwidth/elixir-bandwidth.git
cd elixir-bandwidth
mix install

Usage

use Bandwidth
# Create a client
client = Client.new("user-id", "api-token", "api-secret")

# Find a message
case Messages.find(client, "m-slkdfjskldjfklsjfdlk") do
  {:ok, {200, message, headers}} -> IO.inspect message
  {:ok, {404, _, _}}             -> IO.puts "not found :("
  {:error, reason}               -> IO.inspect reason
end

# Send a message
message = %{from: "+12223334444", to: "+13334445555", text: "hello bandwidth"}
case Messages.create(client, message) do
  {:ok, {201, _, headers}} -> IO.puts "message sent!"
  {:error, reason}         -> IO.inspect reason
end

# Search for a local number
case AvailableNumbers.Local.search(client, zip: 22303) do
  {:ok, {200, numbers, headers}} -> IO.inspect numbers
  {:error, reason}               -> IO.inspect reason
end

Documentation