Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
「画像DE路線当てBot」で学ぶBot開発 / cogbot#8
Search
HikaruMaruyama
August 30, 2017
Programming
1
710
「画像DE路線当てBot」で学ぶBot開発 / cogbot#8
HikaruMaruyama
August 30, 2017
Tweet
Share
More Decks by HikaruMaruyama
See All by HikaruMaruyama
OSS CMS「Drupal 10」 エッセンシャル:最新版でのWeb開発の魅力を探る #oscnagoya
hmaruyama
0
260
スタイリッシュでモダンな「Gin」管理テーマの紹介 #drupal_haneda
hmaruyama
0
210
DrupalのWeb Profiler #drupal_haneda
hmaruyama
0
320
非エンジニアから開発者まで!DrupalPodを使用したDrupal環境の作成
hmaruyama
1
320
Drupal認定試験にチャレンジしよう!アクイア認定プログラムのご紹介 / introduction of Acquia Drupal Certification Program
hmaruyama
0
970
「Docker/Kubernetes実践コンテナ開発入門」学習のポイント #dockerbg / 20191108
hmaruyama
0
130
enebularでobnizを Lチカ してみた #enebular / 20181122
hmaruyama
0
570
駅すぱあとWebサービス連携ハンズオンパート ノンプログラミングでClovaスキルハンズオン&お茶会 #linebootawards #Clova_CEK / 20180919
hmaruyama
1
620
Agent Friends Xperia Ear Duoで誰でも コミュニケーションにコミット #linebootawards / 20180826
hmaruyama
0
110
Other Decks in Programming
See All in Programming
NPOでのDevinの活用
codeforeveryone
0
830
A2A プロトコルを試してみる
azukiazusa1
2
1.4k
WebViewの現在地 - SwiftUI時代のWebKit - / The Current State Of WebView
marcy731
0
120
A full stack side project webapp all in Kotlin (KotlinConf 2025)
dankim
0
120
イベントストーミング図からコードへの変換手順 / Procedure for Converting Event Storming Diagrams to Code
nrslib
2
810
#QiitaBash MCPのセキュリティ
ryosukedtomita
1
1.3k
「Cursor/Devin全社導入の理想と現実」のその後
saitoryc
0
820
なんとなくわかった気になるブロックテーマ入門/contents.nagoya 2025 6.28
chiilog
1
270
Discover Metal 4
rei315
2
130
スタートアップの急成長を支えるプラットフォームエンジニアリングと組織戦略
sutochin26
1
5.6k
AI駆動のマルチエージェントによる業務フロー自動化の設計と実践
h_okkah
0
150
Team operations that are not burdened by SRE
kazatohiei
1
310
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
Embracing the Ebb and Flow
colly
86
4.7k
Agile that works and the tools we love
rasmusluckow
329
21k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
820
The Cult of Friendly URLs
andyhume
79
6.5k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Transcript
ୈ8ճ Cogbotษڧձ גࣜձࣾϰΝϧݚڀॴ ؙࢁͻ͔Δ ʮը૾DE࿏ઢͯBotʯ ͰֶͿBot։ൃ
Profile ؙࢁͻ͔Δ גࣜձࣾϰΝϧݚڀॴ ςΫχΧϧΤόϯδΣϦετ ਆಸݝ૬ݪࢢࡏॅ IJLBSVNBSVZBNB !NBSVZBNBIJBLSV IUUQIJJJJJJJIJLBSVIBUFOBEJBSZDPN
None
ઃཱ : 1976/7/26 ॴࡏ : ౦ژਿฒ۠ߴԁࣉ ैۀһ: 159໊(2017/4ݱࡏ)
1988 ࠃॳͷҊιϑτ Ӻ͢ͺ͋ͱ ͕ੜ͠·ͨ͠ɻ ݸਓར༻͚ͩͰͳ͘ɺ ϏδωεγʔϯͰଟ͘ͷ ࠾༻࣮͕͋Γ·͢ɻ Έͳ͞Μ͝ଘ Yahoo࿏ઢਤ
Ӻ͢ͺ͋ͱͷΤϯδϯͰ͢ɻ “Ҋ”ͷձࣾͰ͢
Ӻ͢ͺ͋ͱΛ࣠ʹ ༷ʑͳࣄۀΛల։͍ͯ͠·͢
ຊͷຊɿ Microsoft Bot framework ͦͷଞॾʑΛ༻͍ͨ Bot։ൃͷݟڞ༗
Ռ
΄Μͱ͜͏Γ͔ͨͬͨorz
ͬͨπʔϧ • Bot࣮ • Bot Builder SDK for Node.js •
࿏ઢΛఆ͢Δ෦ • cognitive services custom vision service • ӺΛऔಘ͢Δ෦ • Ӻ͢ͺ͋ͱWebαʔϏε • BotͷσϓϩΠઌ • azure • σϓϩΠͨ͠BotΛWebͰ؆୯ʹެ։͢Δ • microsoft bot framework
ؙࢁͷεςʔλε • ॳΊͯ৮Δ • azure • microsoft bot framework •
গ͠৮ͬͨ͜ͱ͕͋Δ • nodejs • ʮৄ͍͠ʯͱࣗ৴Λ࣋ͬͯݴ͑Δ • Ӻ͢ͺ͋ͱwebαʔϏε
গ͠ઢ…
Ӻ͢ͺ͋ͱ WebαʔϏε
“Ӻ͢ͺ͋ͱ”͕࣋ͭ ༷ʑͳػೳใΛ WebAPIͱͯ͠ఏڙ͠·͢ ͲΜͳαʔϏεʁ
ҊαʔϏεͪΖΜ ަ௨අਫ਼ࢉγεςϜɺ ෆಈ࢈ٻਓαΠτͰΑ͘ݟΔ ʮ௨ۈ/௨ֶ͔Β୳͢ʂʯͰ ΘΕΔ͜ͱ͕ଟ͍Ͱ͢ɻ ࣗࣾαʔϏεͷཪͰଟʑɻ ͲͷΑ͏ʹར༻͞Ε͍ͯΔͷʁ
ຊʹΓ·ͯ͠…
࡞खॱ 1. custom vision serviceͷઃఆ 2. Bot BuilderΛ༻͍ͨBot࣮ 3. BotΛazureʹσϓϩΠ
4. microsoft bot frameworkͷઃఆ
1. custom vision service ͷઃఆ • ҎԼͷURLͰΞΧϯτΛ࡞͠·͢ • https://azure.microsoft.com/ja-jp/services/ cognitive-services/custom-vision-service/
• େ࠼ࢠ͞Μͷqiitaهࣄ͕ຊʹΘ͔Γ͔ͬͨ͢Ͱ͢ • http://qiita.com/annie/items/ 293525901020685ad5f6 • ͜ΕΛΈͳ͕Βϙνϙνઃఆ͍͚ͯͩ͘͠
2. Bot BuilderΛ༻͍ͨ Bot࣮ • Bot Buildernodejs, C#͔બͰ͖ΔͷͰɺ ͓͖ͳํΛ •
ಓͷΓ͍ͷͰɺ͜͜αΫοͱ • ·ͣ࠷ॳɺެࣜυΩϡϝϯτʹॻ͍ͯ͋Δ௨Γ ʹ࣮ߦͯ͠ΈΔͷ͕٢ • https://docs.microsoft.com/en-us/bot- framework/nodejs/bot-builder-nodejs-quickstart • ͜͜ʹՌ(ιʔείʔυ)Λஔ͍ͯ·͢ • https://github.com/hmaruyama/train-finder-bot
2. Bot BuilderΛ༻͍ͨ Bot࣮ • ωοτ্ʹnodejsͷใ͕গͳ͍(ѹతC#) • nodejsͰcustom vision apiΛݺͼग़͢ࡍʹศརͳϥΠϒϥϦ
ͳ͍͔ͳʔͱௐ͍ͯͨΒɺcognitive servicesͷSDK͕ ͋Δ͜ͱΛൃݟ • https://github.com/joshbalfour/node-cognitive-services • ͔͠͠custom vision·ͩະରԠͩͬͨ • custom vision apiɺը૾Λఆ͢ΔAPIΛݺͼग़͢ࡍʹɺ ը૾ϑΝΠϧ·ͨը૾URLΛPOST͢Δೋͭͷํ๏͕͋Δ͕ɺ ը૾ϑΝΠϧͰૹΔํ๏͕nodejsͰͲ͏Δͷ͔Θ͔Βͳ͔ͬͨ
2. Bot BuilderΛ༻͍ͨ Bot࣮ • nodejsͷதͰӺ͢ͺ͋ͱwebαʔϏε ݺͼग़͍ͨ͠ͷͰɺΞΫηεΩʔΛൃߦ͢Δ • https://ekiworld.net/service/lp/webservice/ •
Ӻ͢ͺ͋ͱwebαʔϏεʹɺnodejsͰ͑Δ ศརͳϥΠϒϥϦ༻ҙ͍ͯ͠ͳ͍ͷͰɺ ࣗͰؤு࣮ͬͯ͢Δ
3. BotΛazureʹσϓϩΠ • azureແྉͰΞΧϯτΛ࡞Ͱ͖·͢ • https://azure.microsoft.com/ja-jp/free/ • μογϡϘʔυʹϩάΠϯͨ͠ΒɺʮWebAppʯΛ࡞ • ࡞࣌ʹOSΛબͰ͖ΔΜ͚ͩͲɺ
ʮWindowsʯʹ͢Δͷ͕ແͩͦ͏ • σϓϩΠํ๏Ұ൪؆୯ͦ͏ͳʮϩʔΧϧGitϦϙδτϦʯΛબ͠·ͨ͠ • σϓϩΠ͕ྃͨ͠ΒɺҎԼͷURLΛୟ͍ͯ ͪΌΜͱϨεϙϯε͕ฦΔ͔֬ೝ • http://{{࡞ͨ͠ϦιʔεͷURL}}/api/messages • git push͢Δ͚ͩͰͳΜͰnode্ཱ͕͕ͪΔͷ͔·ͩཧղͰ͖͍ͯͳ͍
4. microsoft bot framework ͷઃఆ • ҎԼͷURLͰΞΧϯτΛ࡞͠·͢ • https://dev.botframework.com/ •
ϩάΠϯͰ͖ͨΒBotΛొ͠·͢ • Botొ࣌ͷΤϯυϙΠϯτ”https”ͳ͜ͱʹҙ • ઌ΄ͲazureͰ࡞ͨ͠ϦιʔεURLhttpsʹ ରԠ͍ͯ͠ΔΆ͍ • https://{{࡞ͨ͠ϦιʔεͷURL}}/api/messages • Botొ࣌ʹදࣔ͞ΕΔMicrosoft App IDͱpassword ޙ΄Ͳར༻͢ΔͷͰͲ͔͜ʹίϐʔ͓ͯ͘͠
• Botొ͕ࡁΜͩΒɺazureͷμογϡϘʔυʹ ͬͯڥมΛઃఆ͢Δ • ʮΞϓϦέʔγϣϯઃఆʯʹͯBotొ࣌ʹ දࣔ͞ΕͨMicrosoft App IDͱpasswordΛ ڥมʹొ •
ڥม໊ιʔείʔυʹهड़ͯ͋͠Γ·͢ 4. microsoft bot framework ͷઃఆ
• bot frameworkʹϩάΠϯ͢Δͱɺskypeslackɺfacebook messangerͳͲҠΓͦ͠͏ͳΞΠςϜ͕ ฒΜͰ͍·͕͢ɺ͜͜Ұ൪؆୯ͦ͏ͳʮWebChatʯΛબ • WebChatΛΫϦοΫ͢ΔͱɺγʔΫϨοτΩʔͱ htmlຒΊࠐΈίʔυ(iframeλά)͕༻ҙ͞Ε͍ͯ·͢ • ٙɿγʔΫϨοτΩʔͳͥೋͭଘࡏ͢Δʁʁ
• iframeλάͷதʹURL͕هड़͞Ε͍ͯΔͷͰɺ URLΛϒϥβͰ։͖·͢ɻͦͷࡍʹ”YOUR_SECRET_HERE” ͷ෦γʔΫϨοτΩʔʹஔ͖͑Δ 4. microsoft bot framework ͷઃఆ
Ͱ͖ͨʂ
ײ • ؆୯ʹBot͕࡞Ͱ͖·ͨ͠ʂ...ͱݴ͍͍ͨͱ͜Ζ ͚ͩͲɺࢥ͍௨Γʹߦ͔ͳ͍໘͕ଟʑ͋ͬͯ ৺͕ંΕͦ͏ͩͬͨ • ׳ΕΔ·ͰਐΊΔͨͼʹ͕͔͔࣌ؒΓͦ͏ • ࣮ࡍͭ·͍ͮͨ࣌Γ߹͍ʹฉ͍ͯղܾ͍ͯͨ͠ •
ͦΕ͕ͳ͔ͬͨΒࠓൃදͰ͖͍ͯͳ͔͔ͬͨ • ࠷ॳΛΓӽ͑Εɺָ͍͠Bot࡞ʹ ࣌ؒΛׂ͚ͦ͏⽃ • ༨ྗ͕͋Εৄ͍͠खॱΛϒϩάʹ·ͱΊΔ͔Ͱ͢
·ͱΊ • ΤίγεςϜͷ͓͔͛Ͱɺগͳ͍ίʔυྔͰ ৭Μͳ͜ͱ͕αΫοͱͰ͖Δ • ͦͷΘΓʹɺ༷ʑͳαʔϏεΛར༻͢Δ͜ͱ ʹͳΔͨΊɺαʔϏεಠࣗͷ༷खॱΛ ཧղ͢Δඞཁ͕͋Δ
·ͱΊ • ͭ·͍ͮͨ࣌ʹɺ ૬ஊͰ͖ΔॴΛ࡞͓ͬͯ͘ͱ҆৺ • ΈΜͳͰॿ͚߹͍͖͍ͬͯͯͨ͠Ͱ͢Ͷ • ͦͷ࣮ݱʹɺ͜ͷίϛϡχςΟ͕ ͏·͘׆༻Ͱ͖ΔΜ͡Όͳ͍͔ͱࢥ͍·͢
ࠂ
ʮ࿏ઢDEిंͯBotʯ Λ͓ʹɺϋϯζΦϯΛ։࠵͢Δ͜ͱ͕ܾఆ 2017/9/26 19:00 ~ ৄࡉܾ·Γ࣍ୈɺ CogbotίϛϡχςΟ facebookάϧʔϓͳͲͰ ͓ΒͤͰ͖Εͱࢥ͍·͢ɻ