電話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
の設定をします。ひとまずこれだけ設定できればアプリケーション作れます。
なぜか、RequestURL
は voice_url
というkey で設定するので注意が必要です。
number.update(voice_url: "http://demo.twilio.com/docs/voice.xml")
購入した電話番号を解除する
number = @client.account.incoming_phone_numbers.get(sid)
number.delete
まとめ
CLI
でいろいろ操作できて便利ですね。