メニュー

Expand
Rate this page:

Thanks for rating this page!

We are always striving to improve our documentation quality, and your feedback is valuable to us. How could this documentation serve you better?

IVR: PHPおよびLaravelを使用したスクリーニングと録音

IVR Screening and Recording in PHP and Laravel

この Laravel サンプルアプリケーションは、一般的なコールセンターのエクスペリエンスをモデルとしていますが、さらに多くの Reese's Pieces が点在しています。

Stranded aliens can call an agent and receive instructions on how to get off of Earth safely. In this tutorial, we'll show you the key bits of code that allow an agent to send a caller to voicemail, and later read transcripts and listen to voicemails.

このサンプルアプリを自分で実行するには、コードをダウンロードし、GitHub の指示に従ってください

Find more examples and sample IVR code for many web languages on our IVR application page. Also, read how Hulu schedules callbacks with Twilio's IVR features.

ここをクリックしてチュートリアルをはじめましょう!

電話を担当者にルーティングする

When our alien caller chooses a planet, we need to figure out where to route the call. Depending on their input we will route this call to an extension. Extensions are used to look up an agent. Any string can be used to define an extension.

エージェントが見つかったら<Dial>動詞を使用してエージェントの電話番号にダイヤルし、、通話に接続できます。

        
        
        
        
        app/Http/Controllers/ExtensionController.php

        電話を担当者にルーティングする

        app/Http/Controllers/ExtensionController.php

        With this information, we present our aliens with a list of available agents so they can pick one. Let's see how to look up an agent.

        エージェントを検索する

        エージェントを検索する

        When we receive a call from an alien we give them a set of options. In this case the options are:

        • Brodoを呼び出す場合は1を押してください
        • Dagobahを呼び出す場合は2を押してください
        • Ooberを呼び出す場合は3を押してください

        When our alien caller has made their choice we use the key-press to lookup an Agent.

              
              
              
              
              app/Http/Controllers/ExtensionController.php

              内線番号からエージェントを検索する

              app/Http/Controllers/ExtensionController.php

              Now that our user has chosen their agent, our next step is to connect the call to that agent.

              通話をエージェントに転送する

              担当者に電話をかける

              このコードは、通話を担当者に転送するプロセスを開始します。

              url<Number>名詞に渡すことで、エージェントが電話を取った、両者が接続されるにTwilioにAgent/CallルートへのPOSTリクエストを送信するよう指示します。

              基本的には、エージェントのみが聞くことにできるTwiMLをいくつか実行するようにTwilioに指示しています。

                    
                    
                    
                    
                    app/Http/Controllers/ExtensionController.php

                    通話をエージェントに接続する

                    app/Http/Controllers/ExtensionController.php

                    Our agent can now be called, but how does our agent interact with this feature? Let's dig into what is happening in the agent's screening call.

                    エージェントが通話をふるい分ける方法

                    担当者が通話をスクリーニングする

                    When our agent picks up the phone, we use a <Gather> verb to ask them if they want to accept the call.

                    If the agent responds by entering any digit, the response will be processed by our connect-message route. This will <Say> a quick message and continue with the original <Dial> command to connect the two parties.

                          
                          
                          
                          
                          app/Http/Controllers/AgentCallController.php

                          着信通話のエージェントスクリーニングを処理する

                          app/Http/Controllers/AgentCallController.php

                          これで、エージェントは通話を行えるようになりましたが、エージェントが外出中だった場合はどうなるでしょうか。 このような場合は留守録機能をセットアップすると便利です。

                          Set up the agent's voicemail

                          発信者をボイスメールに転送する

                          Twilioがvoicemailコントローラーにリクエストを発行するとき、通話が成功したかどうかを示す<code>DialCallStatus</code>を渡します。 「completed」の場合は電話を切ります。 それ以外の場合は短い指示を読み上げ(<Say>)、それから発信者からの留守録メッセージを録音(<Record>)することが必要です。

                          また、<Record>actionを記述します。 このルートは通話および録音の終了後に呼び出されます。 ルートは「Goodbye」と読み上げ、そして電話を切り(<Hangup>)ます。

                                
                                
                                
                                
                                app/Http/Controllers/AgentCallController.php

                                Now let's take a step back to see how to actually record the call.

                                発信者を録音する

                                発信者を録音する

                                When we tell Twilio to record, we have a few options we can pass to the <Record> verb.

                                ここで音声テキスト化(transcribe)を行うため、またそれが完了した際にエージェントに文字起こしを送信するため、20秒の時点で録音を停止するよう<Record>に指示します。

                                Notice we redirect to a URL that is specific to this agent. This is a convenient way to specify which agent was called to produce the voice message. This way we can also save the associated agent together with the voicemail.

                                      
                                      
                                      
                                      
                                      app/Http/Controllers/AgentCallController.php

                                      通話を録音する

                                      app/Http/Controllers/AgentCallController.php

                                      Legal implications of call recording

                                      If you choose to record voice or video calls, you need to comply with certain laws and regulations, including those regarding obtaining consent to record (such as California’s Invasion of Privacy Act and similar laws in other jurisdictions). Additional information on the legal implications of call recording can be found here.



                                      Notice: Twilio recommends that you consult with your legal counsel to make sure that you are complying with all applicable laws in connection with communications you record or store using Twilio.

                                      Finally, we will see how to view an agent's voicemail.

                                      エージェントの留守録メッセージを表示する

                                      エージェントの留守録メッセージを表示する

                                      Once we look up the agent, all we need to do is display their recordings. We bind the agent, along with their recordings, to a View.

                                      Twilio REST API を介して録音をルックアップできますが、必要なデータはすべて transcribeCallback リクエストにあるので、自分で簡単に格納し、ランドトリップを保存できます。

                                            
                                            
                                            
                                            
                                            app/Http/Controllers/RecordingController.php

                                            エージェントの留守録を表示する

                                            app/Http/Controllers/RecordingController.php

                                            一丁あがり! 実際の担当者、通話スクリーニング、ボイスメールを使って、IVR を実装できました。

                                            関連トピック

                                            関連トピック

                                            Twilio を使う PHP 開発者であれば、他のチュートリアルも調べてみてください。

                                            このチュートリアルのパート 1:ET 電話ホームサービス - IVR 電話ツリー

                                            ビジネスに重要なワークフローを自動化することで、レスポンスレートを上げます。 

                                            アポイントメント リマインダー

                                            近く予定されているアポイントメントがあったときに、お客様にテキストメッセージを送信します。このチュートリアルでは、バックグラウンドジョブからそれを行う方法を示します。

                                            これは役に立ちましたか?

                                            Thanks for checking out this tutorial! If you have any feedback to share with us, we'd love to hear it. Connect with us on Twitter and let us know what you build!

                                            Mario Celi Agustin Camino Andrew Baker Paul Kamp Kat King
                                            Rate this page:

                                            ヘルプが必要ですか?

                                            誰しもが一度は考える「コーディングって難しい」。そんな時は、お問い合わせフォームから質問してください。 または、Stack Overflow でTwilioタグのついた情報から欲しいものを探してみましょう。