Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

スマートスピーカーのバックエンドで Azure を使う方法

537 views

Published on

スマートスピーカーを遊びたおす会 vol3 でした LT の資料です。

Published in: Technology
  • Be the first to comment

  • Be the first to like this

スマートスピーカーのバックエンドで Azure を使う方法

  1. 1. #linebootawards #スマートスピーカーを遊びたおす会 スマートスピーカーのバックエンドで Azure を使う方法 大田 一希 Twitte:@okazuki
  2. 2. #linebootawards #スマートスピーカーを遊びたおす会 自己紹介 名前:大田 一希 好き:🍖、C#、モンハン 苦手:型の無い言語 Twitter:@okazuki Blog:かずきのBlog@hatena (https://blog.okazuki.jp) 仕事: 富士通系 SIer に 10 年ちょっと 現在は日本マイクロソフトで プレミアフィールドエンジニア
  3. 3. #linebootawards #スマートスピーカーを遊びたおす会 今日の LT のゴール Microsoft のクラウドサービスの Microsoft Azure で スマートスピーカーのバックエンドを作るときの ポイントをおさえてもらう
  4. 4. #linebootawards #スマートスピーカーを遊びたおす会 Microsoft Azure とは 数百のサービス がある Microsoft のクラウドサービス
  5. 5. #linebootawards #スマートスピーカーを遊びたおす会 今回紹介するサービス App Service の中の ◦ Web App ◦ PHP、node (バージョン指定可能)、C#、Python、Docker をデプロイ可能 ◦ Function App(Azure Functions) ◦ node (6.5)、C#、F# を動かせる AWS Lambda、GCP Cloud Functions と似たもの ※ Azure Functions v2 (現在 preview) から node のバージョン選択可能
  6. 6. #linebootawards #スマートスピーカーを遊びたおす会 自由度が高いもの Web App ◦ express で開発したアプリが普通に動く (node.js, python, C#, Java, docker) デプロイ! Azure Web app
  7. 7. #linebootawards #スマートスピーカーを遊びたおす会 デプロイ時のポイント 1 web.config というファイルでエントリーポイントを指定 参考 1:web.config のサンプル https://github.com/tjanczuk/iisnode/blob/master/src/samples/configuration/web.config 参考 2:Clova Extensions Kit のチュートリアルを Azure で動かす手順 https://blog.okazuki.jp/entry/2018/09/05/194531 中略
  8. 8. #linebootawards #スマートスピーカーを遊びたおす会 デプロイ時のポイント 2 アプリフォルダを zip で固めて以下の URL からデプロイ ◦ https://<app_name>.scm.azurewebsites.net/ZipDeploy ◦ git push でデプロイ、CIからデプロイなども対応 ドロップ!
  9. 9. #linebootawards #スマートスピーカーを遊びたおす会 Demo CLOVA EXTENSION
  10. 10. #linebootawards #スマートスピーカーを遊びたおす会 サーバーレスにしたい Function App(Azure Functions) ◦ Microsoft Azure のサーバーレスのプラットフォーム
  11. 11. #linebootawards #スマートスピーカーを遊びたおす会 express って使えるの? 大体のスマートスピーカーのライブラリは express に依存? ◦ azure-function-express を適用すれば使える ◦ https://www.npmjs.com/package/azure-function-express
  12. 12. #linebootawards #スマートスピーカーを遊びたおす会 はじめかた 例:Google Assistant に対応させる方法 ◦ func init # プロジェクト作成 func new # 関数作成(ここで作成したものにコードを書く) npm init –y # package.json 作成 npm i express # 各種ライブラリのインストール npm i azure-function-express npm i dialogflow npm i dialogflow-fulfillment npm i actions-on-google ◦ Azure Functions Core Tools の操作(環境のセットアップ) https://docs.microsoft.com/ja-jp/azure/azure-functions/functions-run-local ◦ コード例: https://gist.github.com/runceel/937783d7dd41d933f8cbbf033957c125
  13. 13. #linebootawards #スマートスピーカーを遊びたおす会 Demo GOOGLE ASSISTANT
  14. 14. #linebootawards #スマートスピーカーを遊びたおす会 サーバーレスにしたい 課題 ◦ コンサンプションプラン(使った分だけ動くプラン)だと コールドスタートでタイムアウトに!? ◦ 一度動き始めると快適 ◦ App Service Plan だと快適(月数千円) HELP!! ◦ LINE Clova の clova-cek-sdk-nodejs は動かせませんでした… ◦ Function App まで処理は来るけど何もログが出ないままタイムアウトになる azure-function-express が 3 日前にアップデートされてた!! 後で追試します!!
  15. 15. #linebootawards #スマートスピーカーを遊びたおす会 サーバーレスにしたい 課題 ◦ コンサンプションプラン(使った分だけ動くプラン)だと コールドスタートでタイムアウトに!? ◦ 一度動き始めると快適 ◦ App Service Plan だと快適(月数千円) HELP!! ◦ LINE Clova の clova-cek-sdk-nodejs は動かせませんでした… ◦ Function App まで処理は来るけど何もログが出ないままタイムアウトになる azure-function-express が 3 日前にアップデートされてた!! 後で追試します!!
  16. 16. #linebootawards #スマートスピーカーを遊びたおす会 C# でもいいよ 起動が早いのは C# のほうが早い ◦ JSON を受け取って、JSON を返すだけなので何言語でもいい ◦ C# 用 SDK ◦ Clova CEK SDK C#(野良) https://github.com/kenakamu/clova-cek-sdk-csharp ◦ Dialogflow 無い??
  17. 17. #linebootawards #スマートスピーカーを遊びたおす会 まとめ Microsoft Azure でスマートスピーカーのバックエンドを作るなら ◦ Web App ◦ 既存コード + web.confi ◦ Function App ◦ azure-function-express + 公式 SDK or SDK は諦めて自分で JSON を処理 ◦ JavaScript 以外に C# でも開発できるので興味があったら是非
  18. 18. #linebootawards #スマートスピーカーを遊びたおす会 リンク 1 Function App での開発 ◦ CLI ツール ◦ https://docs.microsoft.com/ja-jp/azure/azure-functions/functions-run-local ◦ 配備 ◦ https://docs.microsoft.com/ja-jp/azure/azure-functions/deployment-zip-push ◦ azure-function-express ◦ https://www.npmjs.com/package/azure-function-express Web App ◦ Node.js アプリの作成 ◦ https://docs.microsoft.com/ja-jp/azure/app-service/app-service-web-get-started-nodejs
  19. 19. #linebootawards #スマートスピーカーを遊びたおす会 リンク 2 関連 Blog 記事 ◦ Google Assistant アプリの開発のバックエンドに Azure Functions を使おう ◦ https://blog.okazuki.jp/entry/2018/09/03/182959 ◦ Clova Extensions Kit のチュートリアルを Azure で動かす手順 ◦ https://blog.okazuki.jp/entry/2018/09/05/194531
  20. 20. #linebootawards #スマートスピーカーを遊びたおす会 ありがとうございました!

×