Innehållsförteckning:

Skapa anpassade åtgärder för Google Assistant: 12 steg
Skapa anpassade åtgärder för Google Assistant: 12 steg

Video: Skapa anpassade åtgärder för Google Assistant: 12 steg

Video: Skapa anpassade åtgärder för Google Assistant: 12 steg
Video: Störig granne 2024, Juli
Anonim
Image
Image
Ange behörigheter för ditt Google -konto
Ange behörigheter för ditt Google -konto

När jag såg potentialen hos Google Assistant som den presenterades i Google I/O 18 samt Volvo Cars i deras infotainmentsystem kunde jag inte låta bli att testa den. Jag återanvände ett av mina äldre projekt, VasttraPi och kopplade det till Google Assistant. Om du vill läsa mer om projektet skulle jag bli glad om du tittar på den relaterade artikeln på min blogg: Anpassade åtgärder för Google Assistant.

I den här instruktionsboken går vi igenom de steg som är nödvändiga för att starta din egen Google Assistant -åtgärd som kommer att kommunicera med din server och prata tillbaka till dig med en lista över kommande avgångar. Tänk på att vi inte kommer att använda SDK eftersom vi kör detta helt i Google Assistant och inte vår egen enhet. Sammantaget kommer det att hållas enkelt. Din åtgärd kommer att vara användbar på enheter som stöder Google Assistant, till exempel telefoner, surfplattor, hemassistenter och wearables, och du kan till och med dela den som du skulle med en app i Play Store!

En av de främsta fördelarna med att skapa något sådant här över att använda tjänster som IFTTT är att du kan skapa anpassade svar på din server som kommer att läsas av Google Assistant. I IFTTT är kommunikationen så långt det gäller mig enkelriktad.

Följande ämnen kommer att behandlas:

  • Skapa ditt första åtgärdsprojekt
  • Skapa ditt anpassade avsikt
  • Skapa din egen enhet
  • Ställa in en webhook för att uppfylla din handling
  • Konfigurera en enkel REST -server, skriven i Python med Flask, som ger svar eller "uppfyllelse"
  • Testar ditt Action -projekt
  • Släpp ditt Action -projekt

Här hittar du inte många detaljer eller teori om de olika funktionerna och koncepten i Google Assistant. Om du är intresserad av dem föreslår jag starkt att du följer den officiella handledningen eller tittar på den här videon.

Steg 1: Ange dina behörigheter för ditt Google -konto

Innan vi börjar måste vi se till att Google Assistant har rätt behörighet.

  1. Gå till Aktivitetskontroller
  2. Se till att följande är aktiverat:

    1. Webb- och appaktivitet
    2. Enhetsinformation
    3. Röst- och ljudaktivitet

Steg 2: Skapa din åtgärd

Skapa din handling
Skapa din handling
Skapa din handling
Skapa din handling
  1. Gå till Actions Console och klicka på "Lägg till/importera projekt"
  2. Låt oss kalla detta åtgärdsprojekt för "lokal trafikplanerare".
  3. Klicka på "Skapa projekt".
  4. Välj inte en kategori på nästa sida och klicka på "Hoppa över".
  5. Du borde vara på huvudsidan för åtgärdskonsolen nu.

Steg 3: Åkallande av åtgärder

Åkallande av handling
Åkallande av handling
Åkallande av handling
Åkallande av handling

Bestäm hur du vill aktivera Google Assistant för att starta din åtgärd.

  1. Klicka på "Bestäm hur din åtgärd ska åberopas" under "Snabbinställning".
  2. Kalla det "Min lokala trafikplanerare" och klicka på "Spara".
  3. Klicka på "UPPDATERA PROVINVOKATIONER" -prompten som dök upp efter att du klickat på spara.

    Du kan också hitta det här alternativet under "Kataloginformation"

  4. Lägg till "Fråga min lokala trafikplanerare" som ett nytt anrop och klicka på "Spara".

Steg 4: Lägg till din första åtgärd

Lägg till din första åtgärd
Lägg till din första åtgärd
Lägg till din första åtgärd
Lägg till din första åtgärd
  1. Klicka på "Åtgärder" i det vänstra fältet.
  2. Klicka på "LÄGG TILL DIN FÖRSTA ÅTGÄRD".
  3. Välj "Anpassad avsikt" och klicka sedan på "Bygg".
  4. Du kommer till Dialogflow -sidan där du kommer att implementera huvudlogiken.

Steg 5: Utbildningsfraser för din avsikt

Utbildningsfraser för din avsikt
Utbildningsfraser för din avsikt
  1. Välj din tidszon och klicka på "Skapa".
  2. På nästa sida, lämna befintliga avsikter och klicka på "SKAPA AVSIKT".
  3. Ge avsikten ett rimligt namn, dvs "avgångar".
  4. Gå till "Träningsfraser" och klicka på "Lägg till träningsfraser".
  5. Använd följande fraser för att träna din modell så att den kan tolka det du berättar för den:

    1. Jag är hemma just nu
    2. För tillfället är jag hemma
    3. Jag är i vår lägenhet just nu
    4. Jag sitter hemma
    5. För närvarande är jag nära jobbet
    6. jag är på jobbet
    7. Jag är på kontoret
    8. Arbete
    9. Hem

Steg 6: Enheter

Enheter
Enheter
Enheter
Enheter

Nu har du specificerat vad som mer eller mindre kan förväntas som en ingång, vi måste definiera vilka delar av ingången som är av intresse för vår affärslogik så att de kan extraheras och markeras för vår server. I vårt fall vill vi veta om användaren är hemma eller på jobbet, så att vi kan svara tillbaka med avgångarna från den specifika stationen. Låt oss se hur vi kan göra det.

  1. Om du dubbelklickar på ett eller flera ord i träningsfraserna får du en lista med fördefinierade enheter. Du kan läsa mer om var och en av dem här. Sammantaget är den mest lämpliga @sys.location men jag tror att det är bäst och enklast om vi skapar vår egen enhet som vi ska kalla @current-location.
  2. Klicka på alternativet "Enheter" till vänster.
  3. Klicka på "SKAPA ENTITET".
  4. Ställ in namnet på "aktuell plats" och definiera två referensvärden tillsammans med deras synonymer:

    1. Hem

      hem, hus, lägenhet, spjälsäng

    2. arbete

      arbete, kontor, Aptiv, kodgruvor (lol skojar bara)

  5. Klicka på "Spara. För extra effekt kan du också klicka på" Tillåt automatisk expansion "för att ge Google Assistant ytterligare friheter att försöka matcha fler synonymer med dina referensvärden.

Steg 7: Åtgärd och parametrar

Åtgärd och parametrar
Åtgärd och parametrar
Åtgärd och parametrar
Åtgärd och parametrar
Åtgärd och parametrar
Åtgärd och parametrar
Åtgärd och parametrar
Åtgärd och parametrar

Dags att ge lite mening åt sökorden i dina träningsfraser.

  1. Klicka på "Avsikter" och navigera sedan till ditt anpassade avsikt, dvs "avgångar" om du har följt mina namnförslag.
  2. Rulla ner till "Träningsfraser".
  3. Dubbelklicka på orden som anger din nuvarande plats och välj taggen @current-location från popup-fönstret.
  4. Rulla ner till "Åtgärder och parametrar", klicka på "hantera"
  5. Om allt gjordes korrekt ser du din nya enhet listas där.
  6. Markera rutan "Obligatorisk" som gör att en ny kolumn "Frågor" visas. Prompts är vad användaren ska höra om ingenting som matchar förväntningarna har levererats.
  7. Klicka på "Definiera uppmaningar" och infoga något i stil med "Jag förstod inte din plats. Var är du för tillfället?".

Steg 8: Uppfyllelse

Uppfyllelse
Uppfyllelse
Uppfyllelse
Uppfyllelse
Uppfyllelse
Uppfyllelse

Nu är det dags att ansluta din webbtjänst till Google Assistant Action. Din krok kommer att kallas när denna specifika avsikt utlöses och bör ge upphov till att denna åtgärd uppfylls. Innan dess vill vi också fastställa vår avsikt att avsluta åtgärden efter att ha fullgjorts.

  1. Gå till "Svar" och klicka på "LÄGG TILL ANSVAR".
  2. Lägg inte till några svar, aktivera bara "Ange denna avsikt som samtalets slut".
  3. Rulla ner till "Uppfyllelse", klicka på "AKTIVERA FULLFÖLJNING" och slå sedan på "Aktivera webbhook -anrop för denna avsikt".
  4. Klicka på "Spara" och gå till alternativet "Uppfyllelse" till vänster.
  5. Aktivera alternativet "Webhook" och infoga webbadressen som "lyssnar" av din webbserver.

    När avsikten utlöses kommer den att skicka en POST -begäran till din webbplats med förfrågan som innehåller ett JSON -objekt med den aktuella platsen för användaren

  6. Klicka på Spara.
  7. Nu är vi redo att skapa vår webbtjänst, men innan det, låt oss se till att vår åtgärd välkomnar oss på ett korrekt sätt.

Steg 9: Välkomstavsikt

Välkommen Intent
Välkommen Intent
Välkommen Intent
Välkommen Intent

För att anpassa användarupplevelsen bör vi skapa en lämplig hälsning för oss när vi utlöser vår handling.

  1. Gå till "Avsikter" och klicka sedan på "Standard välkomstavsikt".
  2. Rulla ner till "Svar", ta bort de befintliga och infoga vad du vill att din åtgärd ska välkomna dig när den har startats.
  3. Klicka på "Spara".

Steg 10: Din Python -webbtjänst

Din Python -webbtjänst
Din Python -webbtjänst

Låt oss göra en snabb och smutsig Python -server med hjälp av Flask. Inga skärmdumpar för detta steg, men det borde vara ganska rakt fram.

  1. Öppna en ny flik och skapa ett konto på pythonanywhere.com
  2. Verifiera din epost.
  3. Konfigurera din webbapplikation genom att klicka på "Öppna webbflik".
  4. Klicka på "Lägg till en ny webbapp" och välj "Flask" som ditt Python -webbramverk.
  5. Välj Python 3.6 och klicka på "Nästa".
  6. Välj den väg du vill att din "flask_app.py" ska bo på. Jag placerade den direkt inuti min hemmapp som "/home/your-username/flask_app.py".
  7. Gå tillbaka till huvudsidan genom att klicka på Python -logotypen i det övre vänstra hörnet.
  8. Under filer, klicka på "flask_app.py" för att börja redigera den.
  9. När webbtextredigeraren öppnas klistrar du in följande kod och klickar på "Spara". Den övergripande tanken är att beroende på den analyserade JSON som kommer från Google Asssistant kommer vår server att utföra en åtgärd (t.ex. läsa eller skriva) och rapportera tillbaka det som ett svar /uppfyllelse som bör läsas för användaren.
  10. Klicka på "Öppna webbflik" igen och sedan på den gröna "Ladda om -knappen".
  11. Nu borde du ha en egen Python-webbserver som körs på "https://your-username.pythonanywhere.com/departures".

Steg 11: Testa din handling

Testa din handling
Testa din handling
Testa din handling
Testa din handling
Testa din handling
Testa din handling
Testa din handling
Testa din handling

OK, du är ganska klar nu. Låt oss testa hela stacken nu och få det här "Hej världen" -exemplet att fungera!

  1. Klicka på "Integrationer" i fältet till vänster.
  2. Klicka på "Integrationsinställningar" under alternativet Google Assistant.
  3. Under "Implicit påkallelse lägger du till namnet på din avsikt, dvs" avgångar "så att det kan utlösas direkt genom att säga något som" Hej Google, prata med min lokala trafikplanerare om avgångar hemifrån ".
  4. Aktivera "Automatisk förhandsgranskning".
  5. Klicka på "Test" som öppnar en ny sida.
  6. Skriv "Prata med min lokala trafikplanerare".
  7. Din åtgärd bör åberopas, vilket bör hälsa dig med ett av de tidigare inställda välkomnande avsikten.
  8. Skriv sedan "Jag är på jobbet". Din Python -server bör kontaktas och svaret kommer att läsas av Google Assistant.

Coolt är det inte? Föreställ dig nu vad du kan göra genom att interagera med sensorer, ställdon och andra API: er via din Google Assistant.

Steg 12: Släpp din åtgärd

Släpp din handling
Släpp din handling
Släpp din handling
Släpp din handling
Släpp din handling
Släpp din handling

När du är klar med att testa din handling och det är i gott skick är det dags att dela kärleken med världen eller, om det inte är vettigt, med dina vänner och familj.

  1. Gå tillbaka till din åtgärdskonsol och välj din lokala trafikplanerare.
  2. Under "Gör dig redo för distribution" klickar du på "Ange information som krävs för att visa din åtgärd i åtgärdskatalogen".
  3. Ange en kort beskrivning, en längre beskrivning, en liten logotyp, dina kontaktuppgifter, en länk till sekretesspolicy (om du inte vill dela detta offentligt lägger du bara en länk till din webbplats eller något) och en kategori.
  4. Rulla upp och klicka på "Spara".
  5. Klicka på "Släpp" -alternativet i den vänstra fältet.
  6. Här kan du välja i vilket tillstånd din åtgärd är. Om du inte vill höra svaret "Låt oss få testversionen av Min lokala trafikplanerare" måste du göra ett fullvärdigt offentligt meddelande. Men det kräver en granskning av Google och kommer inte att täckas i den här självstudien. Istället kan du fortfarande dela detta med upp till 20 personer genom att välja en Alpha -version och lägga till dem som Alpha -testare.
  7. Lägg till eventuella alfatestare genom att antingen skicka dem en länk eller lägga till deras e -postmeddelanden.
  8. Klicka på "SKICKA FÖR ALFA", kryssa i rutorna, klicka på "SKICKA" och du är klar!

Nu är din Action live och kan nås av dig och dina vänner. Ha så kul!

Om du är intresserad av koden jag använde, ta en titt på projektet på GitHub.

Rekommenderad: