SlideShare una empresa de Scribd logo
1 de 22
Descargar para leer sin conexión
Bot Serviceだけじゃない!
Azureで加速させるLINE開発
平林 拓将(ひらりん)
himarin269 / himanago
Cogbot 勉強会 Special ★ LINE から話せる楽しいチャットボットを作ろう!LT 大会
2019/4/20
自己紹介
• Name
• 平林 拓将(ひらりん)
• Work
• テクニカルトレーナー/アーキテクト
• Like
• C# と Azure と LINE!
• Social
• Twitter:@himarin269
• GitHub:himanago
• Blog:http://himanago.hatenablog.com/
プロフィール画像迷走中
(Linux使いではありません)
DEMO
腹話術~おしゃべりClova~
LINEからの入力でClovaに好きな言葉を
しゃべらせることができる腹話術スキル!
できること
• スキルとBotが連携し、LINEで入力した内容をそのまましゃべらせる
活用例
≪はげましてもらう≫ ≪子どもと遊ぶ≫
できること
• LINE上でセリフの事前登録が可能(テンプレート作成)
リッチメニューから
作成開始
メッセージを送ると
セリフがリストに
追加される
クイックリプライで
作成終了
すごいところ
どんなセリフでも
自由なタイミングで
しゃべるよ!
対話が原則のClovaスキルの常識を覆す!
その場で何でもしゃべってくれる!
いつまでも続くスキルのセッション!
→ 話しかけなくてもClovaだけがしゃべりだす
→ 自由な言葉を言わせることができる
→ セッションが勝手に切れず長時間遊べる
アーキテクチャ
CEK
Messaging API
Azure Functions
Clova
LINE これだけ!!
Azure Functionsとは
で使えるサーバーレスのサービスは
※サーバーを意識せずに使えるコード実行環境
(AWSでいうLambda)
は?
ClovaとLINEを連携させた
長時間でステートフルな機能を、
DBとかを使った永続化なしに
サーバーレスの関数だけで
実現できるわけないじゃん!
できちゃうのがAzure Functions!
そう、拡張機能「Durable Functions」ならね
Durable Functionsでできること
関数チェーン
ファンアウト/ファンイン
非同期 HTTP API
監視
人による操作
複雑&ステートフルなワークフローをシンプルに実装可能
"Durable"(=永続的/持続的)な処理をシンプルな関数コードの組み合わせだけで作れる!
Durable Functionsの基本
• 3種類の関数を作って使う
OrchestrationClient Orchestrator関数 Activity関数
• 外部から呼び出し/実行される
関数本体で、CEKやMessaging
APIからのHTTPリクエストを
で呼び出されるもの
• Orchestratorを起動する役割を
持つ
• Activityを呼び出し、オーケス
トレーションを担当する
• ランダム値やI/O処理、非同期
APIの呼び出しを直接行うこと
は禁止(Activityにやらせる必
要がある)
• Orchestratorからの実行指示で
起動する関数
• アプリケーションの機能を担当
する
Activity関数
Activity関数
履歴などの実行情報をストレージに書き込んで勝手に管理してくれる!
各関数で使用する代表的なメソッド
• 関数同士を連携させて"Durable"な処理を作る部品が揃っている!
関数 メソッド名 処理内容
OrchestrationClient StartNewAsync Orchestratorを開始する。
TerminateAsync Orchestratorを終了する。
GetStatusAsync Orchestratorの状態を取得する。
RaiseEventAsync 任意の名前のイベントを起こす。
Orchestrator関数 CallActivityAsync Activityを呼び出して実行する。パラメータで好きな値を
渡せる(タプルやコレクションも使えるのでかなり自由)。
CallActivityWithRetryAsync 失敗した場合にリトライするCallActivityAsync。
CallSubOrchestratorAsync 別のOrchestratorを実行する。
CallSubOrchestratorWithRetryAsync 失敗した場合にリトライするCallSubOrchestratorAsync。
ContinueAsNew 今回実行した際の情報をパラメータとして渡して状態を
維持し、自身を再実行する。
WaitForExternalEvent 指定した名前のイベントが起きるまで待機する。
GetInput 呼び出し元から渡されたパラメータを取得する。
Activity関数 GetInput 呼び出し元から渡されたパラメータを取得する。
しくみ解説~テンプレート作成
OrchestrationClient
Orchestrator
・Postback(作成開始)
・テキスト
・Postback(作成終了)
WaitForExternalEvent
Activity
・セリフリストの作成
(ContinueAsNewで再実行)
・返信Activityの呼び出し
(リストとReplyTokenを渡す)
完成したテンプレートを返信
RaiseEventAsync
面倒なことはすべておまかせ!真のサーバーレス体験!
イベントの管理
状態の保持
コード(テンプレート作成のOrchestrator)
外部イベントの
発生を待機
セリフリストに追加し、
そのリストを引数にして
自身を再帰的に実行
作成完了かどうかを
文字列の頭で判定し、
Botの返信Activityをコール
さらにCEK裏技「無音無限ループ」
• CEKのAudioPlayerのイベントを利用して、スキルを起動したまま
無限にClovaを待機させるしくみが作れる
"PlayFinished"
「無音」再生指示
無音mp3の再生指示を出すことで無限ループを作る
(何らかの条件を満たした場合に無音再生以外の指示を出すことで無限ループから抜ける)
無限
ループ・・・
Durable Functionsと相性がいい!
しくみ解説~ Botで操る腹話術
OrchestrationClient Orchestrator
起動時 or 読み上げ終了時
WaitForExternalEvent
RaiseEventAsync
LINE Botとの連携も自在な"Durable Session"
• 状態を確認し、完了するまで
無音無限ループで待機させる
OrchestrationClient
GetStatusAsync
無音mp3のPlayFinished時
無音mp3の再生指示
• 完了していたらセリフをしゃべらせ、
Orchestratorを再実行
コード(腹話術スキルのエンドポイント)
無音mp3の再生指示
再生終了
イベント
Orchestratorの進行状況を
チェックし、完了していたら
(=LINEからメッセージを受信
したら)その内容を受け取り
Clovaに言わせる
Cogbot勉強会なので…
• Cognitive Servicesを使って翻訳機能に対応
しようとしたのですが間に合いませんでした!
追記:帰宅後完成させました!
Cognitive Servicesの
Translator Text APIで翻訳
CustomStatusとして言語
(enなどの文字列)を保持
設定されている言語を取得
C#8.0のswitch式
(まだプレビュー)
まとめ
• Durable Functionsすごい
• コードのみで実現できる範囲を広げる真のサーバーレス
• LINE BotやClovaスキルの可能性を大きく広げる
• Azureはいいぞ
• ノンコーディングでいろいろできるLogic Appsも神
https://github.com/himanago/ClovaVentriloquism
★ソースコードはこちら(最新のものをマージ済み)
https://youtu.be/G2oJxSzdV4U
★デモ動画撮りました

Más contenido relacionado

La actualidad más candente

愛があれば発信できる!WordPressで作る焼き鳥ポータルサイト~公式テーマ・プラグインと子テーマの活用~|WordCamp Tokyo 2015
愛があれば発信できる!WordPressで作る焼き鳥ポータルサイト~公式テーマ・プラグインと子テーマの活用~|WordCamp Tokyo 2015愛があれば発信できる!WordPressで作る焼き鳥ポータルサイト~公式テーマ・プラグインと子テーマの活用~|WordCamp Tokyo 2015
愛があれば発信できる!WordPressで作る焼き鳥ポータルサイト~公式テーマ・プラグインと子テーマの活用~|WordCamp Tokyo 2015
Yoshinori Kobayashi
 

La actualidad más candente (20)

XamarinStudio勉強会 2014/09/08
XamarinStudio勉強会 2014/09/08XamarinStudio勉強会 2014/09/08
XamarinStudio勉強会 2014/09/08
 
作ろう!LINEスタンプ 〜スタンプクリエイターの語り場〜
作ろう!LINEスタンプ 〜スタンプクリエイターの語り場〜作ろう!LINEスタンプ 〜スタンプクリエイターの語り場〜
作ろう!LINEスタンプ 〜スタンプクリエイターの語り場〜
 
愛があれば発信できる!WordPressで作る焼き鳥ポータルサイト~公式テーマ・プラグインと子テーマの活用~|WordCamp Tokyo 2015
愛があれば発信できる!WordPressで作る焼き鳥ポータルサイト~公式テーマ・プラグインと子テーマの活用~|WordCamp Tokyo 2015愛があれば発信できる!WordPressで作る焼き鳥ポータルサイト~公式テーマ・プラグインと子テーマの活用~|WordCamp Tokyo 2015
愛があれば発信できる!WordPressで作る焼き鳥ポータルサイト~公式テーマ・プラグインと子テーマの活用~|WordCamp Tokyo 2015
 
I understand completely line api
I understand completely line apiI understand completely line api
I understand completely line api
 
「楽しいことだけやる」のがプログラミングの勉強のコツ
「楽しいことだけやる」のがプログラミングの勉強のコツ「楽しいことだけやる」のがプログラミングの勉強のコツ
「楽しいことだけやる」のがプログラミングの勉強のコツ
 
Xamarin 概要 @ 2014/10/18 わんくま同盟 東京勉強会 #92
Xamarin 概要 @ 2014/10/18 わんくま同盟 東京勉強会 #92Xamarin 概要 @ 2014/10/18 わんくま同盟 東京勉強会 #92
Xamarin 概要 @ 2014/10/18 わんくま同盟 東京勉強会 #92
 
趣味プログラマの先輩からのアドバイス
趣味プログラマの先輩からのアドバイス趣味プログラマの先輩からのアドバイス
趣味プログラマの先輩からのアドバイス
 
プログラミング同好会とすごい合同勉強会
プログラミング同好会とすごい合同勉強会プログラミング同好会とすごい合同勉強会
プログラミング同好会とすごい合同勉強会
 
Swift afterbeginner
Swift afterbeginnerSwift afterbeginner
Swift afterbeginner
 
Niigatarb#3
Niigatarb#3Niigatarb#3
Niigatarb#3
 
Xamarinとmvvm crossとf#と
Xamarinとmvvm crossとf#とXamarinとmvvm crossとf#と
Xamarinとmvvm crossとf#と
 
LaravelでDBを使用しないbasic認証を簡単につくるtips
LaravelでDBを使用しないbasic認証を簡単につくるtipsLaravelでDBを使用しないbasic認証を簡単につくるtips
LaravelでDBを使用しないbasic認証を簡単につくるtips
 
Swiftのプロパティオブザーバを使い倒す
Swiftのプロパティオブザーバを使い倒すSwiftのプロパティオブザーバを使い倒す
Swiftのプロパティオブザーバを使い倒す
 
WordPress tokyo2015 - 公式プラグインでお金を稼ぐことができるか?
WordPress tokyo2015 - 公式プラグインでお金を稼ぐことができるか?WordPress tokyo2015 - 公式プラグインでお金を稼ぐことができるか?
WordPress tokyo2015 - 公式プラグインでお金を稼ぐことができるか?
 
普段こういうこと気にしながら、こんな風に作ってます。
普段こういうこと気にしながら、こんな風に作ってます。普段こういうこと気にしながら、こんな風に作ってます。
普段こういうこと気にしながら、こんな風に作ってます。
 
カスタムトランジションやアニメーションを活用した「写真を生かすUI」のサンプル
カスタムトランジションやアニメーションを活用した「写真を生かすUI」のサンプルカスタムトランジションやアニメーションを活用した「写真を生かすUI」のサンプル
カスタムトランジションやアニメーションを活用した「写真を生かすUI」のサンプル
 
マスコットアプリ─ キャラアプリ─ 開発 with Xamarin
マスコットアプリ─ キャラアプリ─ 開発 with Xamarinマスコットアプリ─ キャラアプリ─ 開発 with Xamarin
マスコットアプリ─ キャラアプリ─ 開発 with Xamarin
 
なぜ私はソニックガーデンのプログラマに転身できたのか?(Short ver.)
なぜ私はソニックガーデンのプログラマに転身できたのか?(Short ver.)なぜ私はソニックガーデンのプログラマに転身できたのか?(Short ver.)
なぜ私はソニックガーデンのプログラマに転身できたのか?(Short ver.)
 
WP REST API の活用事例と今後
WP REST API の活用事例と今後WP REST API の活用事例と今後
WP REST API の活用事例と今後
 
ブラウザだけで学ぶWebアプリ開発【デザイン編】
ブラウザだけで学ぶWebアプリ開発【デザイン編】ブラウザだけで学ぶWebアプリ開発【デザイン編】
ブラウザだけで学ぶWebアプリ開発【デザイン編】
 

Similar a Bot Serviceだけじゃない!Azureで加速させるLINE開発~Clova腹話術スキルの紹介~

Similar a Bot Serviceだけじゃない!Azureで加速させるLINE開発~Clova腹話術スキルの紹介~ (20)

Azure&C#によるClovaスキル+LINE Bot短期開発
Azure&C#によるClovaスキル+LINE Bot短期開発Azure&C#によるClovaスキル+LINE Bot短期開発
Azure&C#によるClovaスキル+LINE Bot短期開発
 
サーバーレスWebアプリケーションを作ろう~AWSと比べてみる~
サーバーレスWebアプリケーションを作ろう~AWSと比べてみる~サーバーレスWebアプリケーションを作ろう~AWSと比べてみる~
サーバーレスWebアプリケーションを作ろう~AWSと比べてみる~
 
365 に Video がやって来る ヤァ!ヤァ!ヤァ!
365 に Video がやって来る ヤァ!ヤァ!ヤァ!365 に Video がやって来る ヤァ!ヤァ!ヤァ!
365 に Video がやって来る ヤァ!ヤァ!ヤァ!
 
オープンソースBotフレームワークではじめるChatOps
オープンソースBotフレームワークではじめるChatOpsオープンソースBotフレームワークではじめるChatOps
オープンソースBotフレームワークではじめるChatOps
 
LINE Bot 開発のための Azure Logic Apps 入門
LINE Bot 開発のための Azure Logic Apps 入門LINE Bot 開発のための Azure Logic Apps 入門
LINE Bot 開発のための Azure Logic Apps 入門
 
Clova「おしゃべり禁止モード」
Clova「おしゃべり禁止モード」Clova「おしゃべり禁止モード」
Clova「おしゃべり禁止モード」
 
CLR/H #clrh104 あなたのアプリにスパイスを! ~ コグニティブと対話 Botのプチレシピ
 CLR/H #clrh104 あなたのアプリにスパイスを! ~ コグニティブと対話 Botのプチレシピ CLR/H #clrh104 あなたのアプリにスパイスを! ~ コグニティブと対話 Botのプチレシピ
CLR/H #clrh104 あなたのアプリにスパイスを! ~ コグニティブと対話 Botのプチレシピ
 
SharePoint モダンサイト ライブ ビルディング
SharePoint モダンサイト ライブ ビルディングSharePoint モダンサイト ライブ ビルディング
SharePoint モダンサイト ライブ ビルディング
 
SharePoint Online へのアクセスを制限しよう
SharePoint Online へのアクセスを制限しようSharePoint Online へのアクセスを制限しよう
SharePoint Online へのアクセスを制限しよう
 
Go 言語を語ってみるか
Go 言語を語ってみるかGo 言語を語ってみるか
Go 言語を語ってみるか
 
【デブサミ夏A5】LINE開発におけるGitHub Enterprise導入
【デブサミ夏A5】LINE開発におけるGitHub Enterprise導入【デブサミ夏A5】LINE開発におけるGitHub Enterprise導入
【デブサミ夏A5】LINE開発におけるGitHub Enterprise導入
 
Bot Framework で会話のログを取る
Bot Framework で会話のログを取るBot Framework で会話のログを取る
Bot Framework で会話のログを取る
 
私のPython学習法lt
私のPython学習法lt私のPython学習法lt
私のPython学習法lt
 
_s + bootstrapで始めるWordPressテーマ開発入門
_s + bootstrapで始めるWordPressテーマ開発入門_s + bootstrapで始めるWordPressテーマ開発入門
_s + bootstrapで始めるWordPressテーマ開発入門
 
FirebaseでN高生証明botを作ってみた
FirebaseでN高生証明botを作ってみたFirebaseでN高生証明botを作ってみた
FirebaseでN高生証明botを作ってみた
 
今時のオンプレなgithubクローン環境構築
今時のオンプレなgithubクローン環境構築今時のオンプレなgithubクローン環境構築
今時のオンプレなgithubクローン環境構築
 
Xamarinとhockey app
Xamarinとhockey appXamarinとhockey app
Xamarinとhockey app
 
免許皆伝!Microsoft Teams ライブイベント実践的超絶技巧!
免許皆伝!Microsoft Teams ライブイベント実践的超絶技巧!免許皆伝!Microsoft Teams ライブイベント実践的超絶技巧!
免許皆伝!Microsoft Teams ライブイベント実践的超絶技巧!
 
第4回concrete5京都勉強会 〜まだまだ遅くない!基礎からガッチリ使いこなそうconcrete5〜
第4回concrete5京都勉強会 〜まだまだ遅くない!基礎からガッチリ使いこなそうconcrete5〜第4回concrete5京都勉強会 〜まだまだ遅くない!基礎からガッチリ使いこなそうconcrete5〜
第4回concrete5京都勉強会 〜まだまだ遅くない!基礎からガッチリ使いこなそうconcrete5〜
 
Bot × Office 365 〜 Microsoft Bot Framework と Microsoft Graph API を使った業務システムの新...
Bot × Office 365 〜 Microsoft Bot Framework と Microsoft Graph API を使った業務システムの新...Bot × Office 365 〜 Microsoft Bot Framework と Microsoft Graph API を使った業務システムの新...
Bot × Office 365 〜 Microsoft Bot Framework と Microsoft Graph API を使った業務システムの新...
 

Más de 拓将 平林

Más de 拓将 平林 (13)

意外な相性!?Azure Cosmos DB × LINE で作る安心のメッセージ配信システム
意外な相性!?Azure Cosmos DB × LINE で作る安心のメッセージ配信システム意外な相性!?Azure Cosmos DB × LINE で作る安心のメッセージ配信システム
意外な相性!?Azure Cosmos DB × LINE で作る安心のメッセージ配信システム
 
Azure × LINE でクラウドを楽しもう
Azure × LINE でクラウドを楽しもうAzure × LINE でクラウドを楽しもう
Azure × LINE でクラウドを楽しもう
 
LINE API 紹介&LINE API Use Case(Azure編)
LINE API 紹介&LINE API Use Case(Azure編)LINE API 紹介&LINE API Use Case(Azure編)
LINE API 紹介&LINE API Use Case(Azure編)
 
[REV UP] あなたならどう使う?最新Azureレシピ for LINE Platform
[REV UP] あなたならどう使う?最新Azureレシピ for LINE Platform[REV UP] あなたならどう使う?最新Azureレシピ for LINE Platform
[REV UP] あなたならどう使う?最新Azureレシピ for LINE Platform
 
15分でわかる!Azure Static Web Apps
15分でわかる!Azure Static Web Apps15分でわかる!Azure Static Web Apps
15分でわかる!Azure Static Web Apps
 
[Ignite The Tour Osaka] OPS20:インシデントに対応する (Respomding to incidents)
[Ignite The Tour Osaka] OPS20:インシデントに対応する (Respomding to incidents)[Ignite The Tour Osaka] OPS20:インシデントに対応する (Respomding to incidents)
[Ignite The Tour Osaka] OPS20:インシデントに対応する (Respomding to incidents)
 
JAZUG に参加してMicrosoft MVP になった話
JAZUG に参加してMicrosoft MVP になった話JAZUG に参加してMicrosoft MVP になった話
JAZUG に参加してMicrosoft MVP になった話
 
Azure Application GatewayでオンプレDMZをクラウドへ拡張する
Azure Application GatewayでオンプレDMZをクラウドへ拡張するAzure Application GatewayでオンプレDMZをクラウドへ拡張する
Azure Application GatewayでオンプレDMZをクラウドへ拡張する
 
Micronaut on Azure 試してみた
Micronaut on Azure 試してみたMicronaut on Azure 試してみた
Micronaut on Azure 試してみた
 
Xamarin.Forms with VUI(JXUG 2019/8/31)
Xamarin.Forms with VUI(JXUG 2019/8/31)Xamarin.Forms with VUI(JXUG 2019/8/31)
Xamarin.Forms with VUI(JXUG 2019/8/31)
 
Azureのサーバーレスで限界を超えよう~スマートスピーカースキル開発を題材に~
Azureのサーバーレスで限界を超えよう~スマートスピーカースキル開発を題材に~Azureのサーバーレスで限界を超えよう~スマートスピーカースキル開発を題材に~
Azureのサーバーレスで限界を超えよう~スマートスピーカースキル開発を題材に~
 
[JAZUG 7周年総会]社内でIoT&AIな農業系チャットボット開発講座をやってみて
[JAZUG 7周年総会]社内でIoT&AIな農業系チャットボット開発講座をやってみて[JAZUG 7周年総会]社内でIoT&AIな農業系チャットボット開発講座をやってみて
[JAZUG 7周年総会]社内でIoT&AIな農業系チャットボット開発講座をやってみて
 
最近Azure上でXamarinを触り始めた話
最近Azure上でXamarinを触り始めた話最近Azure上でXamarinを触り始めた話
最近Azure上でXamarinを触り始めた話
 

Último

Último (11)

新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 

Bot Serviceだけじゃない!Azureで加速させるLINE開発~Clova腹話術スキルの紹介~