Help us understand the problem. What is going on with this article?

CLIで電話番号を買ったりする

More than 3 years have passed since last update.

電話APIを提供している Twilio では、Webの 管理画面 から電話番号を買ったり、それに紐づく API の設定をすることができます。今回は、Ruby を用いて CLI でそれらの操作をしてみます。

twilio-ruby の gem を利用します。

クライアント

#!/usr/bin/env ruby
require 'twilio-ruby'

# put your own credentials here
account_sid = 'XXXXXXXXXXXX'
auth_token = 'XXXXXXXXXXXXX'

# set up a client to talk to the Twilio REST API
@client = Twilio::REST::Client.new account_sid, auth_token

契約している電話番号を調べる

numbers = @client.incoming_phone_numbers.list
numbers.each{|n| puts n.phone_number}

購入する電話番号を検索する

ここでは、JP の指定だけしかしていませんが、電話番号が SMS を受信できるかどうかなど、パターンにあった電話を検索することができます。

numbers = @client.available_phone_numbers.get('JP').local.list
numbers.each_with_index do |n, i|
  puts "#{i + 1} : #{n.phone_number}"
end

電話番号を購入する

050 ではじまる番号なら 108円/月 とかで購入できます。

@client.account.incoming_phone_numbers.create(phone_number: number)

電話番号の設定をする

購入した電話番号の RequestURL の設定をします。ひとまずこれだけ設定できればアプリケーション作れます。
なぜか、RequestURLvoice_url というkey で設定するので注意が必要です。

number.update(voice_url: "http://demo.twilio.com/docs/voice.xml")

購入した電話番号を解除する

number = @client.account.incoming_phone_numbers.get(sid)
number.delete

まとめ

CLI でいろいろ操作できて便利ですね。  

REF

7kaji
Scrap & Scrap
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away