2018/12/11追記
東京リージョンが開設され、フリーダイヤル0120が使えるようになりました。
はじめに
まず**「無料」といってもAmazon Connectの利用料はかかります。
あくまで電話を発信する人(利用者)が無料で利用できる方法**になります。
会社でAWSアカウントを運用しているような場合は有用かもしれません。
どういうときに使う?
- 会社携帯を持っておらず、私用携帯で業務をしている場合
- 通話録音などAmazon Connectの付加機能を使いたい場合
-
恋人との長電話を会社に負担させたい場合←ダメです
フローの作成
こんな感じにします。
ちなみにAmazon Connectは日本の電話番号が取れるシドニーリージョンを使ってください。
顧客の入力を保存する
電話番号の最初のゼロは除いて入力するようアナウンスで流します。
携帯電話番号は11桁なので、最初のゼロを除いた「10」を最大桁数としています。
この場合、10桁入力するとすぐに次のブロックに遷移します。
「03」や「06」から始まる番号は10桁なので、入力は9桁になりますが、この場合は9桁入力後に5秒待てば次のブロックに遷移します。
問い合わせ属性の設定
宛先キーは任意の名前でよいです。
タイプは**「システム」、属性は「保存済みの顧客の入力」**とします。これで先ほど入力した番号がキーにセットされます。
プロンプトの再生
<speak>
<prosody rate="x-slow">
0
<say-as interpret-as="digits">$.Attributes.outboundno</say-as>
</prosody>
ですね。電話をかけます
</speak>
テキスト入力でもある程度はできるのですが、**SSML(音声合成マークアップ言語)**を使いました。
最初の「0」は補完です。
**「$.Attributes.宛先キー」でさきほどの入力を取ってくることができますが、そのままだと「◯億◯万◯千」みたいに1つの数字として解釈してしまうので、「say-as interpret-as="digits"」**によって桁区切りでの読み上げを行ってます。
「prosody rate="x-slow"」で読み上げ速度を遅くしています。これはそのまま数字を読み上げると結構スピードが早く聞き取りが難しかったためです。
また、Pollyは「0」を「れい」と読んでしまいます。できれば「ゼロ」と読ませたかったのですが、レキシコン(発音のカスタマイズ機能)が現時点では日本語対応してないようだったので諦めました。
電話番号への転送
こんな形でセットするだけです。ここでも**「$.Attributes.宛先キー」**を使います。
フリーダイヤルと問い合わせフローの紐付け
「0800」から始まるフリーダイヤルを取得し、作成・公開したフローと紐付けます。
電話してみる
フリーダイヤルにかけてテストしてみてください。
ちなみに相手先には**「通知不可能」「非通知」といった形で表示されますので、これを拒否しているような番号にはかけられない**です。
料金はどうなってるの?
冒頭に書いたように、AWSオーナー側には当然料金が発生します。
- AWSオーナーの料金負担
- フリーダイヤル確保料(0.48 USD/日)
- インバウンド通話料(0.2114 USD/分)
- アウトバウンド通話料(0.1203 USD/分)
- ユーザーの料金負担
- なし
AmazonConnectに電話が入ってきた時点でインバウンドの料金が発生します。また、最後に外線転送をしているのでその後はインバウンド・アウトバウンドの両方の料金がかかります。
月に1時間ほどこの仕組みを利用して通話した場合、AWSオーナーは約34ドル(1ドル112円換算で約3,800円)支払う計算になります。
月に10時間だとすると約213ドル(約23,900円)です。
プランにもよりますが携帯電話の通話料は30秒あたり20円が目安です。
1時間だと2,400円ですが、10時間だと24,000円なので、長時間使う場合や円高の場合はAmazonConnectに分がある場合もありますね。
最後に
ラムダなしで実装できました。
このままだとフリーダイヤル番号を知っていると誰でも使えてしまうので、必要であればフローの最初に発信者番号チェックして利用者を制限したりするのもよいと思います。
かける番号がある程度決まっているなら、あらかじめ転送さきに登録しておいてIVRで選択させるのもありですね。