この記事では、TwilioとLaravelを使用して、天気予報電話アプリケーションの構築を示しています。 この2部構成のシリーズは、パート1の音声相互作用に焦点を当てており、SMS機能はパート2に追加されます。
ユーザーはTwilio番号を呼び出し、郵便番号を入力し、現在の天気予報を受け取ります。 音声メニューを使用すると、特定の週の予測を取得できます。
Laravel内で効率的なAPI相互作用のために、TwilioのPHP SDKおよびGuzzle HTTPクライアントを活用します。
laravelのHTTPポストルートを使用して、ユーザーの入力と予測のリクエストを管理します。
cd ~/Code composer create-project --prefer-dist laravel/laravel Laravel 5.4.* cd Laravel composer require "twilio/sdk:^5.7" composer require "guzzlehttp/guzzle:~6.0"
音声相互作用のルートを定義します:
routes/web.php
サービスレイヤー(Route::group(['prefix' => 'voice', 'middleware' => 'twilio'], function () { Route::post('enterZipcode', 'VoiceController@showEnterZipcode')->name('enter-zip'); Route::post('zipcodeWeather', 'VoiceController@showZipcodeWeather')->name('zip-weather'); Route::post('dayWeather', 'VoiceController@showDayWeather')->name('day-weather'); Route::post('credits', 'VoiceController@showCredits')->name('credits'); });
、および。
app/Services/WeatherService.php
WeatherService
https://api.weather.gov
コントローラー(getWeather
retrieveNwsData
を使用して気象データの取得を処理します。 方法には、getPoint
、getTimeZone
、getTimestamp
、およびgetCredits
が含まれます。 これらのメソッドは、コールを通してユーザーをガイドするTwilio Twiml応答を返します。
Middleware(
環境変数(.env
):twilio authトークン(TWILIO_APP_TOKEN
)およびGeonamesユーザー名(GEONAMES_USERNAME
)。
ngrok:ngrokを使用して、Twilio Webhookコールのためにローカル開発サーバーをインターネットに公開します。 ホストヘッダーを正しく処理するには、オプションを使用することを忘れないでください。
-host-header
音声とSMS機能を備えたTwilioの電話番号を取得します。 Twilioアカウント設定でWebHook URLを構成して、NGROKに曝露したルートを指す。
結論:この記事の詳細は、機能的な音声ベースの気象アプリケーションを作成します。パート2では、これをSMS機能を含むように拡張します。 githubリポジトリ(元のテキストで提供されていないリンク)には、完全なコードが含まれます。
faqs(元のテキストから、再フォーマット):
元のテキストのFAQセクションは広範であり、Laravelを異なる通信サービス(Twilio、Plivo、Sinch)と統合するさまざまな側面をカバーしています。 質問は提供されたテキストを書き直すためだけに尋ねるので、私はこのセクションを簡潔に省略しました。 ただし、このセクションを含めたい場合は、お知らせください。以上がこんにちは、ララヴェル?電話を通してPHPと通信!の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。