Slide 1

Slide 1 text

OK Google, SwiftͰ εϚʔτεϐʔΧʔ͸࣮૷Ͱ͖Δʁ iOSDC Japan 2018 / day3 / LT / Track A

Slide 2

Slide 2 text

OK Google, SwiftͰ εϚʔτεϐʔΧʔ͸࣮૷Ͱ͖Δʁ iOSDC Japan 2018 / day3 / LT / Track A

Slide 3

Slide 3 text

Alexa, SwiftͰ εϚʔτεϐʔΧʔ͸࣮૷Ͱ͖Δʁ iOSDC Japan 2018 / day3 / LT / Track A

Slide 4

Slide 4 text

ࣗݾ঺հ • GitHub/twitter: motokiee • Mercari: iOS ιϑτ΢ΣΞΤϯδχΞ • iOSDC Japan 2016 / 2017 / 2018 ίΞελοϑ

Slide 5

Slide 5 text

WEB+DB PRESS Vol.106ͷ Android/iOSΞϓϦઃܭಛूΛ ϝϧΧϦͷΤϯδχΞਞͰ ࣥච͠·ͨ͠ʢಡΜͰωʣ

Slide 6

Slide 6 text

Alexaͷ࢓૊Έ

Slide 7

Slide 7 text

AlexaͰ։ൃՄೳͳεΩϧ ● ΧελϜεΩϧ ● εϚʔτϗʔϜεΩϧ ● ϑϥογϡϒϦʔϑΟϯάεΩϧ ● ϏσΦεΩϧ

Slide 8

Slide 8 text

AlexaͰ։ൃՄೳͳεΩϧ ● ΧελϜεΩϧ ● εϚʔτϗʔϜεΩϧ ● ϑϥογϡϒϦʔϑΟϯάεΩϧ ● ϏσΦεΩϧ

Slide 9

Slide 9 text

ΧελϜεΩϧͷߏ੒ཁૉ ● ݺͼग़໊͠ ● Πϯςϯτ ● αϯϓϧ ● εϩοτ ● Ξηοτ(Optional) ● ը૾ ● Ի੠ϑΝΠϧ ● ಈըϑΝΠϧ ● ΠϯςϯτΛॲཧ͢ΔαʔϏεͷ
 ΤϯυϙΠϯτ

Slide 10

Slide 10 text

Ϗʔϧത࢜ɺϐϧεφʔʹ͍ͭͯڭ͑ͯ ݺͼग़໊͠ Slot αϯϓϧൃ࿩: {slot}ʹ͍ͭͯڭ͑ͯ Πϯςϯτ: doctorBeer

Slide 11

Slide 11 text

ΧελϜεΩϧͷߏ੒ཁૉ ● ݺͼग़໊͠ ● Πϯςϯτ ● αϯϓϧ ● εϩοτ ● Ξηοτ(Optional) ● ը૾ ● Ի੠ϑΝΠϧ ● ಈըϑΝΠϧ ● ΠϯςϯτΛॲཧ͢ΔαʔϏεͷ
 ΤϯυϙΠϯτ

Slide 12

Slide 12 text

Voice Intent Alexa Service Alexa Device AWS Lambda Response Response

Slide 13

Slide 13 text

AWS Lambdaͷઃఆ: τϦΨʔͷઃఆ

Slide 14

Slide 14 text

Alexa Developer Consoleͷઃఆ

Slide 15

Slide 15 text

࢓૊Έ͕Θ͔ͬͨͱ͜ΖͰ

Slide 16

Slide 16 text

Α͏΍͘ຊ୊

Slide 17

Slide 17 text

Voice Intent Alexa Service Alexa Device AWS Lambda Response Response

Slide 18

Slide 18 text

͜Ε(Lambda) ΛSwiftͰॻ͚͹͍͍!!

Slide 19

Slide 19 text

Ի੠ Intent Alexa Skills Kit Alexa σόΠε AWS Lambda

Slide 20

Slide 20 text

͔͠͠!!

Slide 21

Slide 21 text

Q: AWS Lambda ͕αϙʔτ͢Δݴޠ͸ԿͰ͔͢? AWS Lambda Ͱ͸ɺNode.js (JavaScript)ɺPythonɺJava (Java 8 ޓ׵)ɺC# (.NET Core)ɺ͓Αͼ Go Ͱهड़͞Εͨίʔυ͕αϙʔτ͞Ε͍ͯ·͢ɻωΠςΟ ϒϥΠϒϥϦ΋ؚΊɺίʔυʹ͸طଘͷϥΠϒϥϦΛؚΊΔ͜ͱ͕Ͱ͖·͢ɻৄ ͘͠͸ɺNode.jsɺPythonɺJavaɺC#ɺ͓Αͼ Go ͷ࢖༻ʹؔ͢ΔυΩϡϝϯτ Λ͝ཡ͍ͩ͘͞ɻ https://aws.amazon.com/jp/lambda/faqs/

Slide 22

Slide 22 text

Swiftαϙʔτ͞Εͯͳ͍ʙ

Slide 23

Slide 23 text

Ͱ΋ͳΜͱ͔͢Δํ๏͸͋Δʂ

Slide 24

Slide 24 text

LambdaͰSwiftΛ࢖͏

Slide 25

Slide 25 text

Node.js͔ΒSwiftΛݺͼग़͢

Slide 26

Slide 26 text

choefele/swift-lambda-appΛ࢖͏ ● LambdaͰ࣮ߦՄೳͳϑΝΠϧ(zip)Λੜ੒ ● AlexaSkillʹඞཁͳػೳΛ࣮૷ͨ͠SwiftϥΠϒϥϦ choefele/AlexaSkillsKit Λ࢖࣮ͬͯ૷ ● Alexaͷؔ਺ͷαϯϓϧ͕ఏڙ͞Ε͍ͯΔ ● ੜ੒͞Εͨ.zipϑΝΠϧΛS3ʹΞοϓϩʔυ͠ɺؔ਺ͱඥ෇͚ $ ./run-integration-tests.sh

Slide 27

Slide 27 text

͋ͱ͸׳Ε਌͠ΜͩSwiftͰॻ͚͹OK

Slide 28

Slide 28 text

Demo

Slide 29

Slide 29 text

ੜ੒͞ΕͨzipΛS3ʹΞοϓϩʔυ͠ɺؔ਺ίʔυʹઃఆ

Slide 30

Slide 30 text

Alexa Developer Console͔Β γϛϡϨʔλͰςετՄೳ

Slide 31

Slide 31 text

No content

Slide 32

Slide 32 text

SwiftͰAlexa Skill࡞Ζ͏ͥ!!

Slide 33

Slide 33 text

͓ΘΓ

Slide 34

Slide 34 text

ࢀߟࢿྉ ● https://github.com/choefele/swift-lambda-app ● https://github.com/choefele/AlexaSkillsKit ● https://medium.freecodecamp.org/building-alexa-skills-in- swift-3d596aa0ee95