2023年5月1日を持ちまして、株式会社KDDIウェブコミュニケーションズのTwilioリセール事業が終了したため、本記事に記載されている内容は正確ではないことを予めご了承ください。
はじめに
Twilio CLIの3.0の記事もありますので、参考まで。
みなさん、こんにちは。
KDDIウェブコミュニケーションズのTwilio事業部エバンジェリストの高橋です。
今回から何回かに分けて、Twilio CLI(Command Line Interface)について説明をします。
Twilio CLIは、今年のSIGNALイベントで発表されたTwilioの新機能で、その名の通りコマンドベースでTwilioの操作ができるものです。
従来であれば、管理コンソールにログインして作業をしなくてはならなかった操作の多くが、コマンドライン(いわゆる黒い画面w)から操作ができるようになります。もっとわかりやすくいえば、Twilioっていうコマンドができたのです。
$ twilio
unleash the power of Twilio from your command prompt
VERSION
twilio-cli/1.6.1 darwin-x64 node-v12.12.0
USAGE
$ twilio [COMMAND]
COMMANDS
api advanced access to all of the Twilio APIs
autocomplete display autocomplete installation instructions
debugger explore debug events generated during your Twilio use
email sends emails to single or multiple recipients using Twilio SendGrid
feedback provide feedback to the CLI team
help display help for twilio
login add a new profile to store Twilio Project credentials and configuration
phone-numbers manage Twilio phone numbers
plugins list installed plugins
profiles manage credentials for Twilio profiles
何ができるの?
Twilio CLIを使うと、Twilioが提供しているAPIの機能の多くが、コマンドから実行できます。たとえば、電話番号を購入したり、電話をかけたり、FAXを送信することもできます。
また、いくつかTwilio CLIにはプラグインが用意されていて、それらを利用することで、例えばTwilio上で生成されたログをリアルタイムに画面に表示したり、FunctionやAssetsなど、従来は管理コンソールでしか操作ができなかったサーバーレスの開発をローカルで行い、デプロイをすることができます。
それぞれの機能の詳しい内容は次回以降に紹介するとして、今回はセットアップについて解説をします。
セットアップ
各OSごとにセットアップ方法が異なりますので注意してください。
Mac OS X
もっとも簡単なインストール方法は、Homebrewを使うことです。もしインストールされていない場合は、Homebrewのサイトから予めインストールをしておいてください。
Homebrewがインストールされていれば、あとは以下のコマンドでTwilio CLIのインストールが可能です。
brew tap twilio/brew && brew install twilio
また、すでにインストール済みのTwilio CLIをアップデートするには、以下のコマンドを利用します。
brew upgrade twilio
Windows
CLIのセットアップには、Node.jsのバージョン8以降が必要になります。バージョンの調べ方は以下のとおりです。
node -v
もし、Node.jsがインストールされていない、もしくはバージョンが低い場合は、Node.jsのダウンロードページからWindowsのインストーラーをダウンロードして、セットアップを完了させておいてください。
Node.jsがインストールできていれば、以下のコマンドを使ってTwilio CLIのインストールが可能です。
npm install twilio-cli -g
また、すでにインストール済みのTwilio CLIをアップデートするには、以下のコマンドを利用します。
npm install twilio-cli@latest -g
Linux
主要なLinux系OSにもインストールは可能ですが、こちらはセットアップ方法が少々面倒なので、Linuxで使いたい方はこちらのドキュメントを参考にしてください。
セットアップ後の作業
上記手順でセットアップは完了しますので、試しに以下のコマンドを入力してみましょう。
twilio
こんな感じでコマンドの一覧が表示されれば、とりあえずセットアップはできています。
しかし、コマンドが多くて覚えるのが大変ですし、毎回フルスペルを入力するのも面倒ですよね。
そこで、入力作業を軽減するためのオートコンプリート機能(入力途中でTABキーを使って入力補完をする機能)をセットアップしましょう。
※ここからの作業はMac OS X(bashシェルを利用)で解説します。
- 以下のコマンドを入力します。
twilio autocomplete
使っているシェルプログラムの種類によって、表示される内容がことなりますが、概ね上記のように次に何をするべきかが表示されます。
bashを使っている場合は、上記の指示通りに以下のコマンドを入力します。
printf "$(twilio autocomplete:script bash)" >> ~/.bashrc; source ~/.bashrc
何も表示されずに実行が終了しますが、このコマンドによって個人のルートディレクトリにある(なければ新規作成される).bashrcファイルに数行追加されます。
試しに、以下のコマンドの入力途中でTABキーを2回押すと、コマンドの入力補完や、サブコマンドの一覧表示がされることを確認しましょう。
ちなみに、Mac OS Xで.bashrcを記述しても、ターミナル起動時には自動的に読み込まれないため、ルートディレクトリに.bash_profileを作成し(すでにあればそれを開いて)以下のコマンドを記載します。
if [ -f ~/.bashrc ] ; then
. ~/.bashrc
fi
プロファイルの割り当て
インストール直後のCLIは、どのTwilioアカウントにも紐付いていません。そのため、まずはアカウントとの紐付けを行いましょう。
アカウントを紐付けるためには、紐付けたいTwilioアカウントの管理コンソールにログインします。
ダッシュボードページから、紐付けたいアカウントのACCOUNT SIDとAUTH TOKENを調べておきます。
では、アカウントを紐付けていきます。
以下のコマンドを入力します。
twilio profiles:add
続けて以下の質問がくるので、それぞれ答えます。
質問文 | 解説 |
---|---|
? Shorthand identifier for your profiles: | プロファイルを識別するための名前(例:Main) |
? The Account SID for your Twilio Project: | 紐付けたいアカウントのAccountSid(ACから始まる文字列) |
? Your Twilio Auth Token for your Twilio Project: | 上記AccountSidに対するAuthToken |
もしこの時点で、以下のようなエラーが出た場合、PCのコンピュータ名が64文字以上になっている可能性があります。試しに文字数を少なく設定して再度試してみましょう。
» Could not create an API Key.
プロファイルの割り当てが成功しているかどうかは、次のコマンドで確認できます。
twilio profiles:list
こんな感じで割り当てられたプロファイルが表示されればOKです。
Twilio CLIでは、複数のプロファイルを作ることができます。プロファイルを追加するには、先程のtwilio profilies:add
を使います。
このように、プロジェクトを複数持っている場合は、それぞれのプロファイルを切り替えながら利用することができます。
プロファイルの切り替えは、以下のコマンドで行います。
twilio profiles:use プロファイル名
まとめ
今回はセットアップについて解説をしました。
Twilio CLIを使えば、管理コンソールに入らなくてもいろいろな作業ができるので、デベロッパーの皆さんはぜひ使ってみてください。
次回は、Twilio CLIのいくつか代表的な使い方をご紹介したいと思います。
Twilio(トゥイリオ)とは
https://twilio.kddi-web.com
Twilioは音声通話、メッセージング(SMS/チャット)、ビデオなどの 様々なコミュニケーション手段をアプリケーションやビジネスへ容易に組み込むことのできるクラウドAPIサービスです。初期費用不要な従量課金制で、各種開発言語に対応しているため、多くのハッカソンイベントやスタートアップなどにも、ご利用いただいております。