INHOUDSOPGAWE:
- Stap 1: Stel u Google -rekeningtoestemmings in
- Stap 2: Skep u aksie
- Stap 3: Aksie -aanroeping
- Stap 4: Voeg u eerste aksie by
- Stap 5: Opleidingsfrases vir u voorneme
- Stap 6: Entiteite
- Stap 7: Aksie en parameters
- Stap 8: Vervulling
- Stap 9: Welkom voorneme
- Stap 10: U Python -webdiens
- Stap 11: Toets u aksie
- Stap 12: Laat u aksie vry
Video: Skep pasgemaakte aksies vir Google Assistant: 12 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:25
Aangesien die potensiaal van Google Assistant soos dit in Google I/O 18 sowel as Volvo Cars in hul infotainmentstelsel aangebied word, kon ek nie weerstaan om dit te probeer nie. Ek het een van my ouer projekte, VasttraPi, hergebruik en dit met Google Assistant verbind. As u meer oor die projek wil lees, sal ek baie bly wees as u na die verwante artikel op my blog kyk: Aangepaste aksies vir Google Assistant.
In hierdie instruksies gaan ons oor die stappe wat nodig is om u eie Google Assistant -aksie te begin, wat met u bediener sal kommunikeer en met u sal praat, met die komende vertrekke. Hou in gedagte dat ons die SDK nie gaan gebruik nie, aangesien ons dit heeltemal in Google Assistant bedryf en nie ons eie toestel nie. In die algemeen word dit eenvoudig gehou. U aksie sal bruikbaar wees op toestelle wat Google Assistant ondersteun, soos telefone, tablette, huisassistente en draagbare items, en u kan dit selfs deel soos met 'n app in die Play Store!
Een van die belangrikste voordele van die skep van so iets bo die gebruik van dienste soos IFTTT, is dat u persoonlike antwoorde op u bediener kan skep wat deur Google Assistant gelees sal word. In IFTTT is die kommunikasie wat my betref eenrigting.
Die volgende onderwerpe sal behandel word:
- Skep u eerste aksieprojek
- Skep u persoonlike voorneme
- Skep u persoonlike entiteit
- Stel 'n webhook in om u aksie te vervul
- Die opstel van 'n eenvoudige REST -bediener, geskryf in Python met Flask, wat die antwoorde of 'vervulling' bied
- Toets u aksieprojek
- Stel u aksieprojek vry
Hier vind u nie baie besonderhede of teorie oor die verskillende funksies en konsepte van Google Assistant nie. As u daarin belangstel, stel ek sterk voor dat u die amptelike handleiding volg of na hierdie video kyk.
Stap 1: Stel u Google -rekeningtoestemmings in
Voordat ons begin, moet ons seker maak dat Google Assistant die regte toestemmings het.
- Gaan na aktiwiteitskontroles
-
Maak seker dat die volgende aangeskakel is:
- Web- en programaktiwiteit
- Toestelinligting
- Stem- en klankaktiwiteit
Stap 2: Skep u aksie
- Gaan na Actions Console en klik op "Voeg/invoer projek"
- Kom ons noem hierdie Actions-projek 'plaaslike-verkeersbeplanner'.
- Klik op "Skep projek".
- Kies nie 'n kategorie op die volgende bladsy nie en klik op "Slaan oor".
- U behoort nou op die hoof Actions Console -bladsy te wees.
Stap 3: Aksie -aanroeping
Bepaal hoe u Google Assistant wil aktiveer om met u aksie te begin.
- Klik op "Besluit hoe u aksie ingeroep moet word" onder "Vinnige opstelling".
- Noem dit "My plaaslike verkeersbeplanner" en klik op "Stoor".
-
Klik op die "UPDATE SAMPLE INVOCATIONS" -opdrag wat verskyn het nadat u op stoor geklik het.
U kan hierdie opsie ook vind onder "Gidsinligting"
- Voeg 'Vra my plaaslike verkeersbeplanner' by as 'n nuwe oproep en klik op 'Stoor'.
Stap 4: Voeg u eerste aksie by
- Klik op "Actions" in die linkerbalk.
- Klik op "Voeg u eerste aksie by".
- Kies 'Aangepaste bedoeling' en klik dan op 'Bou'.
- U word na die Dialogflow -bladsy geneem, waar u die hooflogika sal implementeer.
Stap 5: Opleidingsfrases vir u voorneme
- Kies u tydsone en klik op "Skep".
- Laat die bestaande voornemens op die volgende bladsy staan en klik op "SKEP VOORWERP".
- Gee die bedoeling 'n redelike naam, dit wil sê "vertrek".
- Gaan na "Opleidingsfrases" en klik op "Voeg opleidingsfrases by".
-
Gebruik die volgende frases om u model op te lei, sodat dit kan interpreteer wat u dit vertel:
- Ek is nou tuis
- Ek is voorlopig tuis
- Ek is tans by ons woonstel
- Ek sit by die huis
- Tans is ek naby die werk
- ek is by die werk
- Ek is op kantoor
- Werk
- Tuis
Stap 6: Entiteite
Noudat u gespesifiseer het wat min of meer as 'n inset verwag moet word, moet ons definieer watter dele van die insette vir ons sakelogika van belang is, sodat dit aan ons bediener gehaal en uitgelig kan word. In ons geval wil ons weet of die gebruiker tuis of by die werk is, sodat ons terug kan reageer met die vertrek vanaf die spesifieke stasie. Kom ons kyk hoe ons dit kan doen.
- As u dubbelkliek op een of meer woorde van die opleidingsfrases, kry u 'n lys van vooraf gedefinieerde entiteite. U kan hier meer lees oor elkeen van hulle. In die algemeen is die mees geskikte een @sys.location, maar ek dink dit is die beste en maklikste as ons ons eie entiteit skep wat ons moet noem @current-location.
- Klik op die opsie "entiteite" aan die linkerkant.
- Klik op "CREATE ENTITY".
-
Stel die naam op "huidige ligging" en definieer twee verwysingswaardes saam met die sinonieme daarvan:
-
huis
huis, huis, woonstel, krip
-
werk
werk, kantoor, Aptiv, kode myne (lol net 'n grap)
-
- Klik op "Stoor. Vir 'n ekstra effek kan u ook klik op" Laat outomatiese uitbreiding toe "om Google Assistant meer vryhede te gee om meer sinonieme met u verwysingswaardes te pas.
Stap 7: Aksie en parameters
Tyd om die sleutelwoorde in u opleidingsfrases betekenis te gee.
- Klik op "Voornemens" en navigeer dan na u aangepaste voorneme, dws "vertrek" as u my naamvoorstelle gevolg het.
- Rol af na "Opleidingsfrases".
- Dubbelklik op die woorde wat u huidige ligging aandui en kies die @huidige ligging-etiket in die opspringvenster.
- Rol af na "Aksies en parameters", klik op "bestuur"
- As alles reg gedoen is, sal u nuwe entiteit daar verskyn.
- Merk die kassie "Vereis", wat 'n nuwe kolom "Aanwysings" laat verskyn. Aanwysings is wat die gebruiker sal hoor as niks wat aan die verwagting voldoen, verskaf is nie.
- Klik op "Definieer aanwysings" en voeg iets in soos "Ek het nie u ligging verstaan nie. Waar is u op die oomblik?".
Stap 8: Vervulling
Dit is nou tyd om u webdiens aan die Google Assistant -aksie te koppel. U haak sal gebel word wanneer hierdie spesifieke bedoeling geaktiveer word en die vervulling van hierdie aksie moet veroorsaak. Daarvoor wil ons ook ons voorneme stel om die aksie te voltooi nadat dit vervul is.
- Gaan na "Antwoorde" en klik op "ADD RESPONSE".
- Moenie antwoorde byvoeg nie, aktiveer net 'Stel hierdie bedoeling as einde van die gesprek' in.
- Rollees af na "Vervulling", klik op "GELEENTHEID INSKAKEL" en skakel dan die "Aktiveer oproep vir webhook vir hierdie bedoeling" aan.
- Klik op "Stoor" en gaan dan na die opsie "Vervulling" aan die linkerkant.
-
Aktiveer die opsie "Webhook" en voeg die URL in wat deur u webbediener "geluister" word.
Elke keer as die bedoeling geaktiveer word, stuur dit 'n POST -versoek na u webwerf met die hoofkant van die versoek met 'n JSON -voorwerp met die huidige ligging van die gebruiker
- Klik op Stoor.
- Nou is ons gereed om ons webdiens te skep, maar laat ons eers seker maak dat ons aksie ons op die regte manier verwelkom.
Stap 9: Welkom voorneme
Om die gebruikerservaring aan te pas, moet ons 'n gepaste groet vir ons skep wanneer ons ons aksie aktiveer.
- Gaan na "Intents" en klik dan op "Default Welcome Intent".
- Blaai af na "Antwoorde", verwyder die bestaande en voeg by wat u wil hê, en hoe u u kan verwelkom sodra dit begin is.
- Klik op "Save".
Stap 10: U Python -webdiens
Kom ons maak 'n vinnige en vuil Python -bediener met behulp van Flask. Geen skermkiekies vir hierdie stap nie, maar dit moet redelik eenvoudig wees.
- Maak 'n nuwe oortjie oop en skep 'n rekening op pythonanywhere.com
- Verifieer u e -posadres.
- Stel u webtoepassing op deur op "Webblad oop te maak".
- Klik op 'Voeg 'n nuwe webapp by' en kies 'Flask' as u Python -webraamwerk.
- Kies Python 3.6 en klik op "Volgende".
- Kies die pad waarop u 'flask_app.py' wil woon. Ek het dit direk in my tuisgids geplaas as '/home/your-username/flask_app.py'.
- Gaan terug na die hoofblad deur op die Python -logo in die linker boonste hoek te klik.
- Onder lêers, klik op "flask_app.py" om dit te begin redigeer.
- As die webteksredakteur oopmaak, plak die volgende kode en klik op "Stoor". Die algemene idee is dat ons bediener 'n aksie sal uitvoer (bv. Lees of skryf), afhangende van die ontleedde JSON wat van Google Asssistant afkomstig is. /vervulling wat aan die gebruiker voorgelees moet word.
- Klik weer op 'Open webtab' en dan op die groen 'Herlaai -knoppie'.
- Teen hierdie tyd behoort u u eie Python-webbediener te hê op "https://your-username.pythonanywhere.com/departures".
Stap 11: Toets u aksie
OK, nou is jy amper klaar. Kom ons toets die hele stapel nou en laat hierdie 'Hallo wêreld' -voorbeeld werk!
- Klik op "Integrasies" in die balk aan die linkerkant.
- Klik op "Integrasie -instellings" onder die opsie Google Assistant.
- Onder "Implisiete oproep", voeg die naam van u voorneme by, dit wil sê "vertrek", sodat dit direk geaktiveer kan word deur iets soos "Hey Google, praat met my plaaslike verkeersbeplanner oor vertrek van die huis af".
- Aktiveer "Outo-voorskou" -veranderings.
- Klik op "toets" wat 'n nuwe bladsy oopmaak.
- Tik 'Praat met my plaaslike verkeersbeplanner'.
- U moet u optrede beroep, wat u moet verwelkom met een van die voorheen ingestelde reaksies met welkome bedoeling.
- Tik dan "Ek is by die werk". U moet met u Python -bediener gekontak word en die antwoord sal deur Google Assistant gelees word.
Cool is dit nie? Stel u nou voor wat u met u Google Assistant kan doen met sensore, aktuators en ander API's.
Stap 12: Laat u aksie vry
Nadat u u aksie getoets het en dit in 'n goeie toestand is, is dit tyd om die liefde met die wêreld te deel, of as dit nie sin maak nie, met u vriende en familie.
- Gaan terug na u Actions -konsole en kies die optrede van u plaaslike verkeersbeplanner.
- Onder "Maak gereed vir implementering", klik op "Voer inligting in wat nodig is om u aksie in die Actions -gids op te neem".
- Voer 'n kort beskrywing, 'n langer beskrywing, 'n klein logo, u kontakbesonderhede, 'n skakel na 'n privaatheidsbeleid in (as u dit nie in die openbaar wil deel nie, plaas 'n skakel na u webwerf of iets) en 'n kategorie.
- Rol op en klik op "Stoor".
- Klik op die opsie "Los" in die linkerbalk.
- Hier kan u kies in watter toestand u aksie is. As u nie die reaksie 'Kom ons kry die toetsweergawe van My plaaslike verkeersbeplanner' wil hoor nie, moet u 'n volwaardige openbare bekendmaking maak. Dit verg egter 'n hersiening deur Google en sal nie in hierdie tutoriaal behandel word nie. In plaas daarvan kan u dit steeds met tot 20 mense deel deur 'n Alpha -weergawe te kies en dit as Alpha -testers by te voeg.
- Voeg alfa -toetsers by deur 'n skakel aan hulle te stuur of hul e -posse by te voeg.
- Klik op "SEND IN VIR ALPHA", merk die blokkies, klik op "SEND IN" en u is klaar!
Nou is u aksie lewendig en kan u en u vriende toegang daartoe kry. Hê pret!
As u belangstel in die kode wat ek gebruik het, kyk dan na die projek op GitHub.
Aanbeveel:
Skep pasgemaakte kaarte vir u Garmin GPS: 8 stappe (met foto's)
Skep pasgemaakte kaarte vir u Garmin GPS: as u 'n Garmin GPS het wat ontwerp is vir stap- en ander buitelugaktiwiteite (insluitend die GPSMAP-, eTrex-, Colorado-, Dakota-, Oregon- en Montana -reeks), hoef u nie tevrede wees met die kaalbene-kaarte wat vooraf gelaai was. E
Hoe om pasgemaakte, 3D -afdrukstutte vir armbesering te ontwerp: 8 stappe (met foto's)
Hoe om pasgemaakte, 3D-afdrukstutte vir armbeserings te ontwerp: kruis geplaas op my webwerf by piper3dp.com. Dit kan ongemak en velprobleme vir die pasiënt veroorsaak tydens die genesingsproses, soos jeuk, uitslag en
Pasgemaakte RGB LED vir 52pi ICE -koeltoring: 5 stappe
Aangepaste RGB -LED vir 52pi ICE -koeltoring: 52pi het 'n redelik kranksinnige verkoelingoplossing vir Raspberry Pi 3B+/4B+ -borde gekry. Die ICE -koeltoring! Hierdie ding lyk nie net soos 'n dier nie, maar dit koel ook u Raspberry Pi 4 -bord baie goed af (koel maatstawwe)
Pasgemaakte bindmiddelbladorganiseerder vir handelskaarte of klein onderdele: 7 stappe
Pasgemaakte bindmiddelbladorganiseerder vir handelskaarte of klein onderdele: Ek het gesoek na 'n beter bergingstegniek vir my elektroniese komponente, want tot nou toe het ek die boksorganiseerder gebruik om my weerstande en klein kapasitors te organiseer, maar dit het nie genoeg selle om elke waarde te stoor nie in 'n ander sel, so ek het 'n paar
Pasgemaakte 3D -afdrukbehuizing vir die Atari Punk -konsole: 5 stappe
Aangepaste 3D -afdrukbehuizing vir die Atari Punk Console: Vir diegene onder u soos ek wat belangstel in die wêreld van selfdoenelektronika en analoog sintetiseerders, maar geïntimideer word deur die koste en ingewikkelde aard van elektronika, is die Atari Punk Console (APC) 'n uitstekende toegangspunt tot hierdie veld. Dit is