Slide 1

Slide 1 text

৽࣌୅ͷϗʔϜମݧ εϚʔτϗʔϜɺPMSɺϝΠϯΞϓϦͷڠಇ

Slide 2

Slide 2 text

- @wa_kinchan - 2020/12 ೖࣾ - ࠷ۙ͸ओʹ SmartHome - Backend, Infra, Network, iOS - KNX Partner 2 Yusuke KUROIWA ME

Slide 3

Slide 3 text

εϚʔτϗʔϜͷ։ൃͷཪ࿩΍Πϯϑϥʹͭ ͍ͯॻ͍͍ͯ·͢ɻͥͻಡΜͰ͍ͩ͘͞ʂ ͖ΐ͏࿩͖͠Εͳ͍ɺ΄͔ͷ΋ιϑτ΢ΣΞ ؔ࿈ͷهࣄΛॻ͍͍ͯ·͢ʂ org https://note.com/notahotel_inc me https://note.com/wakinchan 3 ࠷ۙ note ॻ͖·ͨ͠ʂ ࿩͖͠Εͳ͍શ༰͸ͪ͜Β

Slide 4

Slide 4 text

ओͳαʔϏεҰཡ 4 Main App Operation Tool Smarthome WEB3

Slide 5

Slide 5 text

ओͳαʔϏεҰཡ 5 Main App Operation Tool Smarthome WEB3

Slide 6

Slide 6 text

ओͳαʔϏεҰཡ 6 Main App Operation Tool Smarthome WEB3

Slide 7

Slide 7 text

฻Β͠Λͭ͘Δ ✕ ҆৺ɾ҆શΛͭ͘Δ 7 εϚʔτϗʔϜνʔϜͷ໾ׂ

Slide 8

Slide 8 text

8 ࣨ಺ʹεΠον΍ϦϞίϯ͸ͳ͘ɺ͢΂ͯ͸ Home Controller͔Βૢ࡞ɻ
 ੈքதɺͲ͜ͷNOT A HOTELʹߦͬͯ΋ɺ ·ΔͰࣗ୐ͷΑ͏ʹ໎͏͜ͱͳ͘͢΂ͯͷػ ثͷૢ࡞͕Ͱ͖·͢ɻ ϊʔεΠον

Slide 9

Slide 9 text

9 - ͢΂ͯΛΦϯϥΠϯ੍ޚ͢Δ͜ͱͰɺܧଓ తͳΞοϓσʔτ͕ՄೳʹͳΔ͚ͩͰ͸ͳ ͘ɺՈ͕ιϑτ΢ΣΞͷΑ͏ʹਐԽ͠ଓ͚ ·͢ɻ - ྫ͑͹ɺ෦԰ΛͰΔͱΤϨϕʔλ͕΍ͬͯ ͘Δɺى͖Δ࣌ؒʹ߹ΘͤͯࣗಈͰΧʔς ϯ͕։͖ɺর໌͕ͭ͘ɺ༧໿࣌ؒલʹςε ϥͷۭௐ͕ࣗಈͰͭ͘ɻͦΜͳମݧ͕࣮ݱ Ͱ͖·͢ɻ Φʔτϝʔγϣϯ

Slide 10

Slide 10 text

Widgets SmarthomeͰఏڙ͢Δػೳ 10 Automation

Slide 11

Slide 11 text

11

Slide 12

Slide 12 text

γεςϜߏ੒ 12 εϚʔτϗʔϜ

Slide 13

Slide 13 text

HomeController iPad / Web Smarthome ͷγεςϜߏ੒ Logic Machine On Premise NOT A HOTEL Smarthome Cloud service MainApp / PMS iOS / Web 13

Slide 14

Slide 14 text

Ϋϥ΢υͱΦϯϓϨͷͦΕͧΕ໾ׂ 14 Logic Machine On Premise NOT A HOTEL Smarthome Cloud service HomeController iPad / Web Φʔτϝʔγϣϯ ෳ਺ίϚϯυͷϋϯυϦϯά MainApp / PMS iOS / Web ܯใɾҟৗͷ؂ࢹɾϋϯυϦϯά VPN ϩάͷऔಘͱอଘ ίϚϯυͷड৴ ઀ଓػثͷ੍ޚ ϑΟʔυόοΫͷૹ৴ ػثঢ়ଶͷऔಘ ϑΟʔυόοΫͷૹ৴

Slide 15

Slide 15 text

UniFi Dream Machine Pro Router smarthome-app-api Cloud Run VPN Cloud VPN smarthome-reciver-apigw Cloud Run main-app-api Cloud Run Smarthome ͷγεςϜߏ੒ 15 IPSec VPN Devices On Premise KNX/EIB Database Cloud Spanner Feedback Google Cloud Platform HomeController
 iPad / Web gRPC REST MainApp iOS / Web Dnsmasq DNS DHCP server Logic Macghine KNX server PMS
 Web smarthome-internal-api Cloud Run gRPC REST operation-app-api Cloud Run REST Firebase Auth Authentication Others: BigQuery / Tasks / Scheduler / Run Jobs / Logging / Error reporting Command

Slide 16

Slide 16 text

։ൃମ੍ 16 εϚʔτϗʔϜ

Slide 17

Slide 17 text

17 - PO / Design 1໊ CXO - PdM 1໊ - iOS 2໊ - Backend / Web / ઃඋ 1໊ - Backend / Infra 1໊ - Backend / ઃඋ / ԿͰ΋܎ 1໊ ࢲ ։ൃϝϯόʔ 7໊ εϚʔτϗʔϜͷ։ൃମ੍ εϚʔτϗʔϜνʔϜΈΜͳͰ KNXύʔτφʔࢿ֨Λऔಘ͓ͨ͠ॕ͍ͷֆ

Slide 18

Slide 18 text

18 - ݈߁తʹຖே9࣌νʔϜͰேձ - εϓϦϯτ͸2ि - ຖिՐ༵೔ʹάϧʔϛϯά - ZenHub ͰΧϯόϯ؅ཧ - iOS ϦϦʔε͸ݪଇ2िʹҰճ - API / Infra ϦϦʔε͸దٓ ि2ճఔ౓ εΫϥϜΆ͍։ൃ εϚʔτϗʔϜͷ։ൃମ੍

Slide 19

Slide 19 text

19 - εϚʔτϗʔϜγεςϜ࣮૷ - αʔϏεؒ࿈ܞ։ൃ - Lifecycle ؍఺ͷઃඋෆྑʹର͢ΔରԠ - ͓٬༷ɾӡӦ͔Βͷ্͕Δ FB վળ - ݐஙͷجຊઃܭ͔࣌Βઃඋͷཁ݅ௐ੔ - KNX ͷ࢓༷ઃܭɾ࣮૷ - ཁ࣮݅ݱͷͨΊͷػثબఆؚΉௐࠪ - ωοτϫʔΫ࿦ཧઃܭɾઃஔ ϦΞϧͱີ઀ͨ͠ۀ຿ εϚʔτϗʔϜͷ೔ৗۀ຿

Slide 20

Slide 20 text

20 - εϚʔτϗʔϜγεςϜ࣮૷ - αʔϏεؒ࿈ܞ։ൃ - Lifecycle ؍఺ͷઃඋෆྑʹର͢ΔରԠ - ͓٬༷ɾӡӦ͔Βͷ্͕Δ FB վળ - ݐஙͷجຊઃܭ͔࣌Βઃඋͷཁ݅ௐ੔ - KNX ͷ࢓༷ઃܭɾ࣮૷ - ཁ࣮݅ݱͷͨΊͷػثબఆؚΉௐࠪ - ωοτϫʔΫ࿦ཧઃܭɾઃஔ ϦΞϧͱີ઀ͨ͠ۀ຿ εϚʔτϗʔϜͷ೔ৗۀ຿

Slide 21

Slide 21 text

21 Φʔφʔ༷ɾ͓٬༷ɾӡӦͷ͢΂ͯͷ໨ઢͰɺ NOT A HOTEL ͷѹ౗తͳମݧΛ࣮ݱ͢Δͨ Ίɺ౷߹తʹαʔϏε։ൃΛ͢Δඞཁ͕͋Δɻ εϚʔτϗʔϜ͸ɺεϚʔτϗʔϜγεςϜʹ ดͨ͡ੈքͰ͸ͳ͘ɺࣾ಺ͷଞͷγεςϜ (MainAppɺPMSɺAI) ͱαʔϏεؒͰͷ࿈ܞ Λ͍ͯ͠Δɻ “NOT A HOTEL” Λͭ͘Δ NOT A HOTEL αʔϏεؒ࿈ܞ SmartHome MainApp PMS

Slide 22

Slide 22 text

- ݖݶ͕͋ΔϢʔβʔͷΈɺ
 ϋ΢εͷղৣ͕Ͱ͖Δ - ਗ਼૟ɾΠϯεϖΫγϣϯ࣌ͷղৣ - ͓٬༷ͷϋ΢εҊ಺࣌ͷղৣ - ఺ݕɾ޻ࣄ౳ʹΑΔղৣ - ղৣϩά͸ Slack ௨஌ - Operation API 㲗 Smarthome API Ͱ࣮ݱ - ࠓޙ͸ϚϯγϣϯܕͷҊ݅͸ɺΤϨϕʔ λʔͳͲ΋ૢ࡞ՄೳʹͳΔ༧ఆ 22 ӡӦελοϑ޲͚ʹղৣػೳΛఏڙ PMS ͱεϚʔτϗʔϜ

Slide 23

Slide 23 text

UniFi Dream Machine Pro Router smarthome-app-api Cloud Run VPN Cloud VPN smarthome-reciver-apigw Cloud Run main-app-api Cloud Run Operation API 㲗 Smarthome API Ͱ࣮ݱ 23 IPSec VPN Devices On Premise KNX/EIB Database Cloud Spanner Feedback Google Cloud Platform HomeController
 iPad / Web gRPC REST MainApp iOS / Web Dnsmasq DNS DHCP server Logic Macghine KNX server PMS
 Web smarthome-internal-api Cloud Run gRPC REST operation-app-api Cloud Run REST Firebase Auth Authentication Others: BigQuery / Tasks / Scheduler / Run Jobs / Logging / Error reporting Command

Slide 24

Slide 24 text

- νΣοΫΠϯ࣌ɺ͙͢ʹϋ΢ε͕ղৣ - νΣοΫΠϯ࣌ɺΦʔφʔ༷͸ࣗ਎͕อ༗ ͍ͯ͠Δϋ΢ε಺ͷΦʔφʔΫϩʔθοτ ͕ࣗಈղৣ - ଺ࡏதɺΞϓϦ͔Β͍ͭͰ΋ղৣ - Ұॹʹ଺ࡏ͢ΔϢʔβʔ΁ͷΩʔγΣΞ - νΣοΫΞ΢τ͢Δͱղৣݖݶണୣ - Main API 㲗 Smarthome API Ͱ࣮ݱ 24 ѹ౗తͳղৣମݧΛ໨ࢦͯ͠ MainApp ͱεϚʔτϗʔϜ

Slide 25

Slide 25 text

UniFi Dream Machine Pro Router smarthome-app-api Cloud Run VPN Cloud VPN smarthome-reciver-apigw Cloud Run main-app-api Cloud Run Main API 㲗 Smarthome API Ͱ࣮ݱ 25 IPSec VPN Devices On Premise KNX/EIB Database Cloud Spanner Feedback Google Cloud Platform HomeController
 iPad / Web gRPC REST MainApp iOS / Web Dnsmasq DNS DHCP server Logic Macghine KNX server PMS
 Web smarthome-internal-api Cloud Run gRPC REST operation-app-api Cloud Run REST Firebase Auth Authentication Others: BigQuery / Tasks / Scheduler / Run Jobs / Logging / Error reporting Command

Slide 26

Slide 26 text

iOS ΤϯδχΞ͕ϋοΧιϯͰɺຊؾΛͩ͠ ͯ̍೔ͭͬͨ͘ɺϥΠϒΞΫςΟϏςΟɻݱ ࡏ։ൃத (ඍௐ੔)ɻ ଺ࡏதʹɺසൟʹར༻͢Δղৣػೳ͕ɺϩο Ϋը໘ʹදࣔ͞ΕΔɻ 26 ϋοΧιϯͰ͏·Εͨղৣମݧͷ޲্ MainApp ͱεϚʔτϗʔϜ

Slide 27

Slide 27 text

ݱࡏ։ൃத - MainApp ͔ΒϗʔϜίϯτϩʔϧͱςεϥͷ ༧໿ͱૢ࡞ ίϯτϩʔϧ෦͸ Web Ͱ։ൃ - Android ΞϓϦΛ0͔Β։ൃதͷͨΊ - Smarthomeͷࡉ͔͍ཁ݅ΛϓϥοτϑΥʔϜ ͕૿͑Δͱ؅ཧ޻਺ͱ͕૿Ճ͢ΔͨΊ 27 ͓٬༷ͷεϚϗͰ͢΂ͯΛίϯτϩʔϧ MainApp ͱεϚʔτϗʔϜ

Slide 28

Slide 28 text

γʔϜϨεͳαʔϏεΛ։ൃ͠·͢ʂ 28 ͢΂ͯ͸ “NOT A HOTEL” Λͭ͘ΔͨΊʹ

Slide 29

Slide 29 text

Ұॹʹ “NOT A HOTEL” Λͭ͘Γ·ͤΜ͔ʁ 29 ͢΂ͯ͸ “NOT A HOTEL” Λͭ͘ΔͨΊʹ

Slide 30

Slide 30 text

Appendix 30 Appendix

Slide 31

Slide 31 text

͢΂ͯͷػثϩάΛ֬ೝͰ͖Δ - ૢ࡞ϩά (COMMAND) - ϑΟʔυόοΫϩά (FEEDBACK) ֬ೝ - ਖ਼͘͠ػث͕ಈ࡞͍ͯ͠Δ͔֬ೝ - Lifecycle Management Ͱػثͷϩάௐࠪ - ఀిࢼݧ౳Ͱར༻ 31 ػثͷϩά σʔλ׆༻

Slide 32

Slide 32 text

͢΂ͯͷϝʔλʔ͸KNX࿈ܞ͍ͯ͠Δ ϦΞϧλΠϜʹޫ೤අͷ֬ೝ͕Մೳ Ψε࿙Εɺ࿙ਫɺͳͲݕ஌Մೳ ϓʔϧͷਫग़ͬ͠ͺͳ͠ͷݕ஌ ࣌ؒผʹݟΔ͜ͱͰɺΑΓৄࡉʹ֬ೝ͕Մೳ 32 ϦΞϧλΠϜʹݟ͑Δޫ೤අ σʔλ׆༻

Slide 33

Slide 33 text

ϋ΢εͰൃੜͨ͠ॏཁͳܯใ͸ Slack ΁௨஌͞ΕΔ ۓٸ౓͕ߴ͍΋ͷʹؔͯ͠͸ɺӡӦελοϑ΁ి࿩Ͱ ௨஌ 33 BMS – Building Management System ͋Μ͠Μɾ͋ΜͥΜ