Indholdsfortegnelse:
- Trin 1: Angiv dine Google -kontotilladelser
- Trin 2: Opret din handling
- Trin 3: Tilkaldelse af handling
- Trin 4: Tilføj din første handling
- Trin 5: Træningssætninger til din hensigt
- Trin 6: Enheder
- Trin 7: Handling og parametre
- Trin 8: Opfyldelse
- Trin 9: Velkommen Intent
- Trin 10: Din Python Web Service
- Trin 11: Test din handling
- Trin 12: Slip din handling
Video: Opret tilpassede handlinger til Google Assistant: 12 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:27
Da jeg så potentialet i Google Assistant, som det blev præsenteret i Google I/O 18 samt Volvo Cars i deres infotainmentsystem, kunne jeg ikke lade være med at prøve det. Jeg genbrugte et af mine ældre projekter, VasttraPi og tilsluttede det med Google Assistant. Hvis du vil læse mere om projektet, vil jeg blive glad, hvis du tager et kig på den relaterede artikel på min blog: Tilpassede handlinger til Google Assistant.
I denne instruktion går vi over de trin, der er nødvendige for at starte din egen Google Assistant -handling, som kommunikerer med din server og taler tilbage til dig og viser kommende afgange. Husk, at vi ikke kommer til at bruge SDK, da vi kører dette fuldstændigt i Google Assistant og ikke vores egen enhed. Generelt vil det blive holdt enkelt. Din handling kan bruges på enheder, der understøtter Google Assistant, f.eks. Telefoner, tablets, hjemmeassistenter og wearables, og du kan endda dele den, som du ville med en app i Play Butik!
En af de største fordele ved at skabe sådan noget i forhold til at bruge tjenester som IFTTT er, at du kan oprette tilpassede svar på din server, som vil blive læst af Google Assistant. I IFTTT er kommunikationen så vidt mig angår envejs.
Følgende emner vil blive behandlet:
- Oprettelse af dit første Action -projekt
- Oprettelse af din tilpassede hensigt
- Oprettelse af din tilpassede enhed
- Indstilling af en webhook til at opfylde din handling
- Opsætning af en simpel REST -server, skrevet i Python med Flask, som giver svarene eller "opfyldelse"
- Test af dit Action -projekt
- Frigør dit Action -projekt
Her finder du ikke mange detaljer eller teori om de forskellige funktioner i Google Assistant og koncepter. Hvis du er interesseret i dem, foreslår jeg på det kraftigste, at du følger den officielle vejledning eller ser denne video.
Trin 1: Angiv dine Google -kontotilladelser
Inden vi begynder, skal vi sikre, at Google Assistant har de relevante tilladelser.
- Gå til Aktivitetskontroller
-
Sørg for, at følgende er aktiveret:
- Web- og appaktivitet
- Enhedsoplysninger
- Stemme- og lydaktivitet
Trin 2: Opret din handling
- Gå til Actions Console, og klik på "Tilføj/importer projekt"
- Lad os kalde dette Actions-projekt "lokal trafikplanlægger".
- Klik på "Opret projekt".
- På den næste side skal du ikke vælge en kategori og klikke på "Spring over".
- Du skulle være på hovedsiden Handlingskonsol nu.
Trin 3: Tilkaldelse af handling
Bestem, hvordan du vil aktivere Google Assistant til at starte din handling.
- Klik på "Beslut, hvordan din handling skal aktiveres" under "Hurtig opsætning".
- Kald det "Min lokale trafikplanlægger" og klik på "Gem".
-
Klik på "UPDATE SAMPLE INVOCATIONS" -prompten, der dukkede op efter at have klikket på gem.
Du kan også finde denne mulighed under "Directory Information"
- Tilføj "Spørg min lokale trafikplanlægger" som en ny indkaldelse, og klik på "Gem".
Trin 4: Tilføj din første handling
- Klik på "Handlinger" i linjen til venstre.
- Klik på "TILFØJ DIN FØRSTE HANDLING".
- Vælg "Brugerdefineret hensigt", og klik derefter på "Byg".
- Du bliver ført til siden Dialogflow, hvor du vil implementere hovedlogikken.
Trin 5: Træningssætninger til din hensigt
- Vælg din tidszone, og klik på "Opret".
- Lad den eksisterende hensigt være på den næste side, og klik på "Opret hensigt".
- Giv hensigten et rimeligt navn, dvs. "afgange".
- Gå til "Træningssætninger" og klik på "Tilføj træningssætninger".
-
Brug følgende sætninger til at træne din model, så den kan fortolke, hvad du fortæller den:
- Jeg er hjemme lige nu
- Foreløbig er jeg hjemme
- Jeg er i vores lejlighed i øjeblikket
- Jeg sidder derhjemme
- I øjeblikket er jeg tæt på arbejde
- jeg er på arbejde
- Jeg er på kontoret
- Arbejde
- Hjem
Trin 6: Enheder
Nu har du angivet, hvad der mere eller mindre skal forventes som input, vi er nødt til at definere, hvilke dele af input der er interessante for vores forretningslogik, så de kan udtrækkes og fremhæves for vores server. I vores tilfælde vil vi vide, om brugeren er hjemme eller på arbejde, så vi kan svare tilbage med afgange fra den specifikke station. Lad os se, hvordan vi kan gøre det.
- Hvis du dobbeltklikker på et eller flere ord i træningssætningerne, får du en liste over foruddefinerede objekter. Du kan læse mere om hver enkelt af dem her. Samlet set ville den mest egnede være @sys.location, men jeg synes, det er bedst og nemmest, hvis vi opretter vores egen enhed, som vi skal kalde @nuværende-placering.
- Klik på "Entities" i venstre side.
- Klik på "Opret ENTITY".
-
Indstil navnet til "nuværende placering", og definer to referenceværdier sammen med deres synonymer:
-
hjem
hjem, hus, lejlighed, krybbe
-
arbejde
arbejde, kontor, Aptiv, kodeminer (lol bare sjov)
-
- Klik på "Gem. For ekstra effekt kan du også klikke på" Tillad automatisk udvidelse "for at give Google Assistant yderligere friheder til at prøve at matche flere synonymer med dine referenceværdier.
Trin 7: Handling og parametre
Tid til at give en vis mening til søgeordene inde i dine træningssætninger.
- Klik på "Hensigter" og naviger derefter til din tilpassede hensigt, dvs. "afgange", hvis du har fulgt mine navneforslag.
- Rul ned til "Træningssætninger".
- Dobbeltklik på de ord, der angiver din nuværende placering, og vælg @nuværende-lokationstagget fra pop op-vinduet.
- Rul ned til "Handlinger og parametre", klik på "administrer"
- Hvis alt blev udført korrekt, vil du se din nye enhed blive opført der.
- Marker afkrydsningsfeltet "Påkrævet", som får en ny kolonne, "Prompts", til at blive vist. Prompts er, hvad brugeren skal høre, hvis der ikke er leveret noget, der matcher forventningen.
- Klik på "Definer prompts" og indsæt noget i stil med "Jeg forstod ikke din placering. Hvor er du i øjeblikket?".
Trin 8: Opfyldelse
Nu er det tid til at tilslutte din webtjeneste til Google Assistant Action. Din krog vil blive kaldt, når denne specifikke hensigt udløses, og den bør producere opfyldelsen af denne handling. Inden da vil vi også sætte vores intention om at afslutte handlingen efter at være blevet opfyldt.
- Gå til "Svar", og klik på "TILFØJ ANSVAR".
- Tilføj ikke nogen svar, aktiver bare "Indstil denne hensigt som afslutning på samtalen".
- Rul ned til "Opfyldelse" klik på "AKTIV FULLFØLGING", og tænd derefter for "Aktiver webhook -opkald for denne hensigt".
- Klik på "Gem", og gå derefter til indstillingen "Opfyldelse" i venstre side.
-
Aktiver indstillingen "Webhook", og indsæt den webadresse, der bliver "lyttet" af din webserver.
Når hensigten udløses, sender den en POST -anmodning til dit websted med brødteksten i anmodningen, der indeholder et JSON -objekt med brugerens aktuelle placering
- Klik på Gem.
- Nu er vi klar til at oprette vores webtjeneste, men før det skal vi sørge for, at vores handling byder os velkommen på en ordentlig måde.
Trin 9: Velkommen Intent
For at tilpasse brugeroplevelsen bør vi oprette en passende hilsen til os, når vi udløser vores handling.
- Gå til "Intents", og klik derefter på "Standard Welcome Intent".
- Rul ned til "Svar", fjern de eksisterende og indsæt, hvad du vil have din handling, hvordan du byder dig velkommen, når den er startet.
- Klik på "Gem".
Trin 10: Din Python Web Service
Lad os lave en hurtig og beskidt Python -server ved hjælp af Flask. Ingen skærmbilleder til dette trin, men det skal være ret lige frem.
- Åbn en ny fane, og opret en konto på pythonanywhere.com
- Bekræft din e -mail.
- Konfigurer din webapplikation ved at klikke på "Åbn webfane".
- Klik på "Tilføj en ny webapp", og vælg "Kolbe" som din Python -webramme.
- Vælg Python 3.6, og klik på "Næste".
- Vælg den sti, du vil have din "flask_app.py" til at bo på. Jeg placerede den direkte inde i min hjemmemappe som "/home/your-username/flask_app.py".
- Gå tilbage til hovedsiden ved at klikke på Python -logoet i øverste venstre hjørne.
- Under filer skal du klikke på "flask_app.py" for at begynde at redigere den.
- Når webteksteditoren åbnes, skal du indsætte følgende kode og klikke på "Gem". Den overordnede idé er, at afhængigt af den analyserede JSON, der kommer fra Google Asssistant, vil vores server udføre en handling (f.eks. Læse eller skrive) og rapportere det tilbage som et svar /opfyldelse, der skal læses for brugeren.
- Klik på "Åbn web -fanen" igen og derefter på den grønne "Genindlæs -knap".
- På nuværende tidspunkt burde du have din egen Python-webserver kørende på "https://your-username.pythonanywhere.com/departures".
Trin 11: Test din handling
OK, du er stort set færdig nu. Lad os teste hele stakken nu og få dette "Hej verden" -eksempel til at fungere!
- Klik på "Integrationer" fra linjen i venstre side.
- Klik på "Integrationsindstillinger" under indstillingen Google Assistant.
- Under "Implicit påkaldelse tilføj navnet på din hensigt, dvs." afgange ", så det kan udløses direkte ved at sige noget som" Hey Google, tal med min lokale trafikplanlægger om afgange hjemmefra ".
- Aktiver ændringer af "Automatisk forhåndsvisning".
- Klik på "Test", som åbner en ny side.
- Skriv "Tal med min lokale trafikplanlægger".
- Din handling bør påberåbes, hvilket skal hilse på dig med et af de tidligere indstillede velkomne hensigtssvar.
- Skriv derefter "Jeg er på arbejde". Der skal kontaktes din Python -server, og svaret læses af Google Assistant.
Fedt er det ikke? Forestil dig nu, hvad du kan gøre ved at interagere med sensorer, aktuatorer og andre API'er via din Google Assistant.
Trin 12: Slip din handling
Når du er færdig med at teste din handling, og den er i god stand, er det tid til at dele kærligheden med verden eller, hvis det ikke giver mening, med dine venner og familie.
- Gå tilbage til din handlingskonsol, og vælg din lokale trafikplanlæggerhandling.
- Under "Gør dig klar til implementering" skal du klikke på "Indtast oplysninger, der kræves for at opføre din handling i mappen Handlinger".
- Indtast en kort beskrivelse, en længere beskrivelse, et lille logo, dine kontaktoplysninger, et link til privatlivspolitik (hvis du ikke vil dele dette offentligt, skal du blot lægge et link til dit websted eller noget) og en kategori.
- Rul op og klik på "Gem".
- Klik på "Release" -indstillingen fra linjen i venstre side.
- Her kan du vælge, hvilken tilstand din handling er i. Hvis du ikke vil høre svaret "Lad os få testversionen af Min lokale trafikplanlægger", skal du foretage en fuldgyldig offentliggørelse. Det kræver dog en gennemgang af Google og vil ikke blive dækket af denne vejledning. I stedet kan du stadig dele dette med op til 20 personer ved at vælge en Alpha -udgivelse og tilføje dem som Alpha -testere.
- Tilføj alfatestere ved enten at sende dem et link eller tilføje deres e -mails.
- Klik på "SEND TIL ALPHA", marker afkrydsningsfelterne, klik på "SEND", og du er færdig!
Nu er din handling live og kan tilgås af dig og dine venner. Hav det sjovt!
Hvis du er interesseret i den kode, jeg brugte, kan du tage et kig på projektet på GitHub.
Anbefalede:
Opret brugerdefinerede kort til din Garmin GPS: 8 trin (med billeder)
Opret brugerdefinerede kort til din Garmin GPS: Hvis du har en Garmin GPS designet til vandreture og andre udendørs aktiviteter (herunder GPSMAP, eTrex, Colorado, Dakota, Oregon og Montana -serien, blandt et par andre), behøver du ikke at nøjes med bare-ben-kortene, der kom forudindlæst på den. E
Opret MS Access Database Software til at forberede løn i din virksomhed: 6 trin
Opret MS Access Database Software til at forberede løn i din virksomhed: Jeg giver dig den korte instruktion om at oprette et lønsystem ved hjælp af MS -adgang til at generere månedslønninger og udskrive lønsedler let med dette. På denne måde kan du holde hver måned lønoplysninger under databasen og kan redigere eller gennemgå sent
Opret dine egne duel -diske til brug i en Battle Arena: 4 trin
Opret dine egne duel -diske til brug i en Battle Arena: Jeg har altid været halvt fascineret af duel -diske, der findes i Yugioh -tegneserien. Hvor fedt ville det være at tilkalde et væsen ved at bruge et kortspil og derefter få dem til at kaste det ud i en slags holografisk kamparena? Her vil jeg gå over h
Tilpassede kabinetter til elektronik og Arduino: 7 trin
Brugerdefinerede kabinetter til elektronik og Arduino: Efter et år er jeg tilbage med en anden instruktør om at skabe brugerdefinerede kabinetter til elektroniske projekter og Arduino. I denne vejledning bruger jeg en freeware CAD -software kaldet FreeCAD. Downloadlinket er her. Download Link: https: //www.freec
Importer tilpassede 3D -modeller til din Minecraft -verden: 9 trin (med billeder)
Importer tilpassede 3D -modeller til din Minecraft -verden: Dette er en komplet guide til at forklare processen med at importere 3D -modeller til din Minecraft -verden. Der er tre grundlæggende dele, jeg vil opdele processen i: Konfigurere dig Minecraft, importere/eksportere din 3D -model og bringe modellen