Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
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
720
「画像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
270
スタイリッシュでモダンな「Gin」管理テーマの紹介 #drupal_haneda
hmaruyama
0
240
DrupalのWeb Profiler #drupal_haneda
hmaruyama
0
340
非エンジニアから開発者まで!DrupalPodを使用したDrupal環境の作成
hmaruyama
1
340
Drupal認定試験にチャレンジしよう!アクイア認定プログラムのご紹介 / introduction of Acquia Drupal Certification Program
hmaruyama
0
1k
「Docker/Kubernetes実践コンテナ開発入門」学習のポイント #dockerbg / 20191108
hmaruyama
0
150
enebularでobnizを Lチカ してみた #enebular / 20181122
hmaruyama
0
580
駅すぱあとWebサービス連携ハンズオンパート ノンプログラミングでClovaスキルハンズオン&お茶会 #linebootawards #Clova_CEK / 20180919
hmaruyama
1
640
Agent Friends Xperia Ear Duoで誰でも コミュニケーションにコミット #linebootawards / 20180826
hmaruyama
0
130
Other Decks in Programming
See All in Programming
Level up your Gemini CLI - D&D Style!
palladius
1
160
Combinatorial Interview Problems with Backtracking Solutions - From Imperative Procedural Programming to Declarative Functional Programming - Part 1
philipschwarz
PRO
0
120
関数の挙動書き換える
takatofukui
4
760
Microservices rules: What good looks like
cer
PRO
0
420
FluorTracer / RayTracingCamp11
kugimasa
0
180
251126 TestState APIってなんだっけ?Step Functionsテストどう変わる?
east_takumi
0
290
CSC305 Lecture 17
javiergs
PRO
0
260
connect-python: convenient protobuf RPC for Python
anuraaga
0
350
ハイパーメディア駆動アプリケーションとIslandアーキテクチャ: htmxによるWebアプリケーション開発と動的UIの局所的適用
nowaki28
0
310
ViewファーストなRailsアプリ開発のたのしさ
sugiwe
0
360
【Streamlit x Snowflake】データ基盤からアプリ開発・AI活用まで、すべてをSnowflake内で実現
ayumu_yamaguchi
1
110
TypeScriptで設計する 堅牢さとUXを両立した非同期ワークフローの実現
moeka__c
6
2.9k
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
95
14k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Speed Design
sergeychernyshev
33
1.3k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.1k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.1k
Facilitating Awesome Meetings
lara
57
6.6k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.3k
Into the Great Unknown - MozCon
thekraken
40
2.2k
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άϧʔϓͳͲͰ ͓ΒͤͰ͖Εͱࢥ͍·͢ɻ