Indholdsfortegnelse:
- Trin 1: Log på Cloud9 og Amazon Developer Console
- Trin 2: Konfigurer Alexa Skill i Amazon Dev Console
- Trin 3: Interaktionsmodel
- Trin 4: Til Cloud9
- Trin 5: Koden
- Trin 6: Link Cloud9 til Alexa
- Trin 7: Test
Video: Gør Alexa-færdigheder med Cloud9- Intet kreditkort eller hardware påkrævet: 7 trin (med billeder)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:29
Hej, i dag viser jeg dig, hvordan du opretter din egen Amazon Alexa -færdighed ved hjælp af Cloud9. For dem af jer, der ikke ved det, er Cloud9 en online IDE, der understøtter mange forskellige sprog, og det er hundrede procent gratis - intet kreditkort kræves. En Alexa -færdighed er som en app, men for Alexa -enheder.
Jeg har altid elsket programmering og stemmeassistenter, men begyndte først for nylig at programmere Amazon Echo. Mine problemer er, at jeg ikke kender mange node.js, så jeg programmerer i python til denne vejledning, og som gymnasieelev har jeg ikke et kreditkort, hvilket betyder, at jeg ikke kan bruge AWS lamda. Måden jeg løste dette problem på var at bruge Cloud9.
Jeg håber du nyder denne vejledning. Hvis du sidder fast noget sted, prøv billederne, da jeg har forsøgt at tilføje tip på de rigtige steder, og hvis du stadig sidder fast, er du velkommen til at tilføje et spørgsmål eller en kommentar.
(Tak til HeikoAL på Pixabay for forsidebilledet)
Trin 1: Log på Cloud9 og Amazon Developer Console
For at gøre vores færdigheder skal vi oprette hovedlogikken for færdigheden i python på Cloud9 og den måde, den integreres med Alexa på Amazon Developer Console.
1. Cloud9
Du har sandsynligvis allerede brug for en Cloud9 -konto for at dette kan fungere, for nylig overtog Amazon Cloud9 og integrerede det i AWS, men det ser ud til at være muligt at logge ind med Github, Bitbucket eller Google på den gamle platform, hvilket er hvad vi skal gøre.
Besøg dette websted: https://c9.io/login og login.
2. Amazon Developer Console
Besøg nu https://developer.amazon.com og log ind i øverste højre hjørne. Klik nu på Alexa og derefter på dine Alexa Dashboards øverst til højre. Du bør se en ældre skærm som den ovenfor til højre. Vi skal nu klikke på Kom godt i gang i boksen Alexa Skills Kit.
Trin 2: Konfigurer Alexa Skill i Amazon Dev Console
Nu skal vi opsætte færdigheden i Amazon -serveren. Hvis du allerede ved, hvordan du gør dette, behøver du ikke læse dette, og du kan gå videre til næste trin.
Klik på Tilføj en ny færdighed, og du skulle blive præsenteret for en skærm som den ovenfor.
I radioknapperne øverst skal vi vælge Custom Interaction Model
Vælg nu sproget på din færdighed. Det er vigtigt at vælge engelsk UK, hvis din amazon -konto har en britisk adresse, da test ikke virker på en ægte ekko -enhed, hvis du vælger USA. Det kan dog stadig fungere på ekkoisme.
Nu skal du indtaste navnet og påkaldelsesnavnet på din færdighed. Jeg vil anbefale, at disse er de samme for nemheds skyld. Navnet er, hvad en bruger ville se i Alexa -appen, og påkaldelsesnavnet er, hvad en bruger ville sige, når den udløser færdigheden, for eksempel: Alexa, spørg "Invokationsnavn" om vejret. For min første færdighed kaldte jeg dem begge Test.
Vores dygtighed vil ikke bruge de sidste tre ting, så de kan stå alene.
Nu skal du klikke på Gem og derefter. Dev -konsollen formaterer muligvis lidt her, men den mister ikke data.
Trin 3: Interaktionsmodel
Du skal nu være på fanen interaktionsmodel i konsollen. Det er her, vi fortæller Alexa, hvordan vi gerne vil have det til at fortolke vores kommandoer. Vælg indstillingen Launch Skill Builder Beta.
Vi er nu nødt til at oprette en hensigt med vores færdigheder, som er som en funktion, den udfører. Klik på knappen Tilføj en hensigt, og indtast et passende navn. Dette kan være alt og behøver ikke at være kendt af brugeren, men vi får brug for det til programmeringen senere. Jeg har navngivet min HelloWorld.
Nu skal vi tilføje nogle ytringer, som er ting, en bruger kan sige, hvis de ville påberåbe sig dette. Jeg har skrevet "for en hilsen" og "for en goddag" i denne boks. Sørg for at trykke enter mellem. For at aktivere denne hensigt vil en bruger sige "Alexa, spørg test om en hilsen."
Når dette er afsluttet, skal vi nu trykke på gem model og bygge model øverst. Sørg for at gemme først og derefter bygge. Bygningen kan tage et par minutter.
Endelig skal vi klikke på knappen Konfiguration øverst til venstre.
Trin 4: Til Cloud9
På dette tidspunkt skal vi vende tilbage til Cloud9 og bygge bagenden til vores dygtighed.
Opret et nyt arbejdsområde i dit dashboard, og indtast et mindeværdigt navn. Du kan tilføje en beskrivelse, hvis du ønsker det, men det er ikke nødvendigt. Du skal også vælge Python som sprog. Tryk nu på Opret arbejdsområde. Det vil tage noget tid at indlæse, men i sidste ende skal du blive præsenteret for en skærm som ovenstående. Dette er dit arbejdsområde.
Cloud9 -arbejdsområder er ubuntu linux -maskiner, der fungerer på en meget lignende måde som en hindbærpi. De har den ene fordel, at de er vært. Inden vi kan skrive vores kode ind i dette miljø, skal vi udføre et par kommandoer for at gøre den klar.
1. Opgrader pip: sudo -H pip2 install -opgrader pip
2. Installer kolbe: sudo pip install kolbe
3. Installer Flask-Ask, biblioteket, der har grænseflader til Alexa: sudo pip install flask-ask
Nu kan vi skrive vores program. Klik på det grønne plus øverst, og vælg Ny fil. Tryk på Fil, Gem, og indtast et passende navn med.py i slutningen, f.eks. HelloAlexa.py. Tryk nu på Gem. I det næste trin indtaster vi koden til vores program.
Trin 5: Koden
Nu er det nødvendigt at indtaste følgende kode, i stedet for HelloWorld skal du bruge dit hensigtsnavn, som du har oprettet tidligere:
fra kolbeimport Flask, render_templatefra kolbe_askimport Ask Ask, statement
import os
app = kolbe (_ navn_)
ask = Ask (app, '/')
@ask.intent ('HelloWorld')
def hej ():
returerklæring ("Hej verden.")
hvis _name_ == "_main_":
host = os.getenv ('IP', '0.0.0.0')
port = int (os.getenv ('PORT', 8080))
app.debug = Sandt
app.run (vært = vært, port = port)
Lad os gennemgå koden:
De tre første linjer importerer vores nødvendige moduler, Flask-Ask, til Amazon Alexa og Flask, som er en forudsætning for Flask-Ask. De næste to linjer opretter app og spørger, der ligner master -variablerne i vores program. For at få adgang til de bits, vi ønsker at få adgang til, har vi brug for dem. Linje 6 er en dekoratør. Det siger, når vi modtager et opkald til den webadresse, som vores program kører på, hvis url'en indeholder "HelloWorld", kører følgende kodeblok. Funktionen under dekoratøren kører ikke nogen kode, den returnerer bare værdien Hej, verden. Kommandoen statement () er nødvendig for at konvertere strengen til en form, Alexa kan forstå. Endelig er resten af koden en måde at sikre, at vores program kører korrekt på Cloud9. Det siger dybest set: hvis vi kører denne kode direkte, som i ikke som et modul, vil koden lytte på port 8080. App.debug -linjen sikrer, at koden ikke stopper for tidligt. Hvis du nogensinde laver en anden applikation som denne på Cloud9, skal du altid huske de sidste 5 linjer, ellers får du fejlen "Ingen applikation kører her". De porte, Cloud9 bruger, er 8080, 8081 og 8082, så nogen af disse ville have været fine.
Sørg for at gemme din kode og fortsæt derefter til næste trin.
Trin 6: Link Cloud9 til Alexa
Nu skal vi knytte vores Cloud9 -kode til vores Alexa -app i Dev -portalen.
Tryk på den grønne run -knap i hjørnet. Kopier og indsæt nu linket øverst på din terminal i din webbrowser. Se billedet, hvis du ikke kan finde det. Hvis du ser en orange skærm med knappen Åbn programmet, skal du klikke på den. Du bør se en hvid skærm, der siger metode ikke tilladt på den. Dette lyder måske dårligt, men alt dette betyder, at Flask-Ask er konfigureret korrekt, så kun Alexa-tjenesten kan besøge denne side. Hvis dette har fungeret fint, skal du vende tilbage til Dev Console i Amazon og sørge for, at du er på konfigurationsfanen. Tryk nu på HTTPS og indsæt den URL, du lige havde i tekstboksen, der dukker op. Du kan ignorere resten af indstillingerne, bare tryk på Gem og Næste. Du bør nu se en lille boks, der spørger dig om certifikater. Vælg den anden mulighed, "Mit udviklingsendepunkt er et underdomæne for et domæne, der har et wildcard-certifikat fra en certifikatmyndighed", og tryk nu på Gem og derefter på Næste.
Du burde være på teststadiet nu. Hvis du er, er det et stort fremskridt til den næste fase. Hvis ikke, skal du kontrollere, at du har fulgt instruktionerne korrekt.
Trin 7: Test
Du skulle nu se en side som den ovenfor. Hvis boksen i, hvor der står Please Complete the Interaction Model, er indstillet til Disabled, skal du aktivere den. Vi kan starte med at teste dygtigheden her, og derefter kan vi prøve med en ægte ekko -enhed. Gå ned til servicesimulatorafsnittet, og indtast et af de ytringer, du har oprettet tidligere. Tryk nu på Spørg test. Du skal se lidt blå tekst på begge sider. Den højre hånd skal indeholde ordene "Hej, verden" eller en anden tekst, som du sætter dine evner til at reagere med. Hvis din højre hånd indeholder en fejl, skal du kontrollere, at din kode stadig kører, og at du har indtastet den korrekt.
Når det virker, kan du gå videre til at teste det med en ægte ekko -enhed. Sørg for, at ekkoenheden er logget ind med den samme konto, og så skal du kunne prøve det. Husk at sige "Alexa, spørg Test" og derefter din ytring. Hvis du ikke har en ekko -enhed, kan du bruge ekkosimulatoren https://echosim.io/welcome Du skal logge ind med din Amazon Developer -konto.
Tak fordi du læste min Instructable. Jeg håber, det fungerede for dig. Hvis du har spørgsmål, skal du skrive en kommentar, og hvis du kunne lide den, kan du stemme på mig i stemmeaktiveret konkurrence og første gang forfatterkonkurrence.
Tak!
Anbefalede:
ELEGOO Kit Lab eller hvordan man gør mit liv som udvikler lettere: 5 trin (med billeder)
ELEGOO Kit Lab eller lettere at gøre mit liv som udvikler lettere: Projektets mål Mange af os har problemer med mock-up omkring UNO-controllerne. Ofte bliver ledningsføring af komponenter vanskelig med mange komponenter. På den anden side kan programmering under Arduino være kompleks og kan kræve mange
Stemmestyret hjemmeautomatisering (som Alexa eller Google Home, ingen wifi eller Ethernet påkrævet): 4 trin
Stemmestyret hjemmeautomatisering (som Alexa eller Google Home, ingen wifi eller Ethernet påkrævet): Det er dybest set sms -baserede arduino -styrede relæer med opsætning af Google -assistent til at sende meddelelser på stemmeanvisning. Det er meget let og billigt og fungerer som Alexa -reklamer med dine eksisterende elektriske apparater (hvis du har Moto -X smartp
Kreditkort IPhone -stativ: 6 trin (med billeder)
Kreditkort IPhone -stativ: Hvis du har et medlemskort, der er udløbet og bare fylder plads, kan du omdanne det til din egen iPhone- eller iPod -stativ med få udskæringer. Jeg brugte en Dremel til at få jobbet udført her, men du kan nemt gøre det samme med en saks
Kreditkort IPhone -stativ: 4 trin (med billeder)
Kreditkort IPhone -stativ: Er din iPhone træt af bare at ligge på dit skrivebord? Vil du have det til at komme op og komme videre med sit liv? Derefter skiller du dig hurtigt ud fra et gammelt kreditkort eller et andet medlemskort af plast. Det eneste du skal bruge er et par minutter og en saks. Jeg
Gør billeder sømløse kun vandret eller lodret (for "The GIMP").: 11 trin (med billeder)
Gør billeder sømløse kun vandret eller lodret (for "The GIMP") .: Hvis du prøver "Make seamless" plug-in i GIMP, vil det gøre billedet sømløst både vandret og lodret på samme tid. Det tillader dig ikke at gøre det problemfrit i kun en dimension. Denne instruktive vil hjælpe dig med at lave