Hogyan hallgathatja meg Google Voice hangpostáját a Google Home-on

Ez az oktatóanyag bemutatja, hogyan olvassa be Google Home eszközével a Google Voice legújabb hangpostáját a Tasker, az AutoWeb és az AutoVoice segítségével.

Amikor a Google Home először megjelent, számos funkció hiányzott (és még mindig hiányzik). Továbbra sem tudja beállítani a naptári eseményeket, elolvasni a szöveges üzeneteket, létrehozni egy teendőlistát és így tovább. Ha azonban van ráérzése, szinte az összes funkciót önállóan is megvalósíthatja, köszönhetően a AutoVoice és Tasker. Annak érdekében, hogy bemutassam, mennyire kreatív lehet a Google Home és az AutoVoice segítségével, megmutatom, hogyan készítheti el Google Home-ját olvassa el legújabb Google Voice hangpostáját. Jelenleg fekete mágiának tűnhet, de remélhetőleg ennek az oktatóanyagnak a végére minden értelmet nyer.

Az AutoVoice segítségével hangos parancsokat küldhet a Google Home eszközről telefonjára, amely értelmezi ezeket a parancsokat, és végrehajt bizonyos műveleteket a Taskeren keresztül. A legjobb az egészben, hogy természetes nyelvű parancsokat küldhet telefonjára, köszönhetően a

API.ai, feltéve, hogy 0,99 USD/hó előfizetési szolgáltatásra regisztrál az AutoVoice szolgáltatásra az API.ai szerver üzemeltetési költségeinek ellensúlyozására. Ez azt jelenti, hogy nem kell olyan robotosan/pontosan beszélnie, amikor a Google Home-jával beszél, és az AutoVoice továbbra is felismeri a küldeni kívánt parancsot.

Az AutoVoice és a Google Home integráció egy ideje béta állapotban van, de a Az AutoVoice 3.0 kiadása lehetővé teszi a Tasker beépülő modul minden felhasználójának, hogy élvezze a Google Home integrációt. Most, hogy az AutoVoice széles körben elérhető a felhasználók számára, és a legtöbb törést elhárították, elkezdem bemutatni néhány dolgot, amit az AutoVoice és a Tasker segítségével készítettem. Az első Google Home útmutatóm, a legújabb Google Voice hangposta elolvasása a legösszetettebb feladatom megosztani, de jó jelölt, hogy megmutassa, hogy a Taskerrel csak a saját korlátja van képzelet.

A legújabb hangpostaüzenetemet hallgatom a Google Home-on.

Ajánlott irodalom: Nézze meg a mi korábbi oktatóanyagok, ahol megmutatjuk, hogyan lehet megoldani azokat a gyakori problémákat, amelyekhez kevesen fordultak hozzá.


Követelmények

Az AutoVoice egy puha követelmény a projekt működéséhez. Használhatja az IFTTT-t a feladat elindításához, de ehhez olyan megoldást kell használnia, amely egy másik alkalmazást, például Csatlakozik vagy Pushbullet parancsokat küldeni a Taskernek, mivel az IFTTT nem integrálódik közvetlenül a Taskerrel. Továbbá, és a legfontosabb figyelmeztetés az AutoVoice használatának mellőzésére, hogy a hangutasítások rugalmatlanok lesznek IFTTT használata esetén. Ez azt jelenti, hogy minden egyes alkalommal teljesen pontosan kell kimondania a parancsot, különben a parancs nem indul el. Ez problémát jelenthet a jövőben, ha rengeteg Tasker/Google Home integrációt kezd létrehozni (én 28 jelenleg), vagyis minden egyes alkalommal pontosan a kívánt parancsokat kell megjegyeznie és reprodukálnia.

Szükséged lesz:

  • AutoVoice ($2.49)
  • AutoVoice természetes nyelvi előfizetés (0,99 USD/hó)
  • Tasker ($2.99)
  • AutoWeb Béta
  • AutoCast béta ($0.99)

Készítmény

Mielőtt belevágnánk ennek a hűvös integrációnak a húsába, tennünk kell néhány előkészületet, hogy ez megfelelően működjön. Ezt a beállítást részenként fogom megközelíteni.

1. rész – Az AutoVoice beállítása

Már hosszasan írtam az AutoVoice beállításáról a Google Home segítségével, ezért kérem hivatkozzon korábbi cikkemre itt. Az egyetlen változás, amelyet igazán meg kell jegyezni, az az, hogy többé nincs szüksége az AutoVoice bétaverziójára, mivel az integráció mostantól az AutoVoice stabil frissítésével működik. Azt is javaslom, hogy olvassa el a rövid oktatóanyagot arról, hogy egy Tasker-profil reagáljon az AutoVoice parancsra, mivel itt is ugyanezt fogjuk tenni. A lényeg az, hogy ebben a beállítási folyamatban négy fő dolog van:

  1. Engedélyezze az AutoVoice szolgáltatást a Google Home alkalmazásban.
  2. Hozzon létre egy API.ai-fiókot, és szerezze be az API-kulcsokat
  3. Adja hozzá ezeket az API-kulcsokat az AutoVoice Natural Language beállításához
  4. Iratkozzon fel az AutoVoice Natural Language előfizetési szolgáltatásra

Ezeket a lépéseket ismételten sokkal részletesebben vázoltam korábbi cikkemben, ezért azt javaslom, hogy olvassa el.

2. rész – A Google Voice beállítása

Szükségünk van egy módra a Google Voice hangpostaüzeneteinek eléréséhez, hogy a Tasker ki tudja bontani a hangposta tartalmát. Ezt úgy érjük el, hogy az összes hangpostaüzenetet az Ön összekapcsolt Gmail-fiókjába továbbítjuk. Ez a Google Voice natív funkciója, és mindössze egyetlen gombot kell megnyomnia a Google Voice alkalmazásban.

Miután ezt megtette, minden új hangpostaüzenetet fog kapni az e-mailben. Amint láthatja, az e-mail tartalmazza a hangposta átiratát, valamint a hangposta tényleges hangjára mutató hivatkozást. Ezt az e-mailt a saját céljainkra fogjuk használni.

3. rész – Az AutoWeb beállítása

Az e-mail tartalmának kibontásához hozzá kell férnünk az e-mail tartalmához a Gmail API. Ezt az AutoWeb alkalmazással fogjuk megtenni, amely a kezdetek közelében volt linkelve. Nyissa meg az AutoWebet, és érintse meg a „Webszolgáltatások tallózása” lehetőséget. Görgessen le a Gmail API-hoz, és érintse meg az importáláshoz. Az importálás után az AutoWeb meg fogja kérni, hogy hitelesítse az API-val használni kívánt Gmail-fiókot. Válaszd ki a ugyanaz a Gmail-fiók, amelybe a hangpostaüzeneteket továbbítják.

Most összekapcsolta telefonját Gmail-fiókjával a Gmail API használatával!

4. rész – Az AutoCast beállítása

Mielőtt elküldhetnénk a hangposta hangját a Google Home-ra, be kell állítanunk az AutoCast funkciót, hogy csatlakozhasson a Google Home-hoz. Nyissa meg az AutoCast, és válassza a „Cast-eszközök kezelése” lehetőséget. Üsd a "+" ikonra a felső sávban, és válassza ki Google Home eszközét.

Végre készen állunk a beállításra.


A legújabb Google Voice-hangposta olvasása a Google Home-on

AutoVoice

Az első dolog, amit tennünk kell, az AutoVoice Natural Language parancs létrehozása. Ez meglehetősen egyszerű.

  1. Nyissa meg az AutoVoice-ot
  2. Érintse meg a Természetes nyelv elemet
  3. Érintse meg a Parancsok elemet
  4. Érintse meg a + ikonra új parancs hozzáadásához
  5. Adja meg a hangutasítások listáját, vesszővel elválasztva, és tartalmazza a hangutasítás annyi változatát, amennyit Ön szerint kimondhat a parancs kiváltásához.
  6. A válaszokhoz megadhat annyi választ, vagy akár egyet sem, hogy a Google Home felolvassa Önnek, amikor kimondja ezt a parancsot.
  7. Ha végzett, adjon nevet ennek a parancsnak. Itt bármi működni fog.

Annak ellenére, hogy számos parancs- és válaszvariációt ad meg, nem kell aggódnia amiatt, hogy ezeket a parancsokat pontosan úgy kell kimondania, ahogy írva van. Az API.ai automatikusan elemzi, amit beszél, és a természetes nyelvi algoritmusai segítségével a kimondott parancsot az itt felsorolt ​​parancsok egyikéhez igazítja.

Alternatív megoldásként, ha csak a saját beállításomat szeretné letölteni, megteheti a következő linken. Úgy gondolom, hogy az importáláshoz egyelőre be kell jelentkeznie az API.ai oldalra, és ott importálnia kell.

Töltse le az AutoVoice Natural Language Intent programot

Hogy őszinte legyek, ennek a beállításnak az AutoVoice része meglehetősen egyszerű, mivel nem foglalkozunk változókkal/paraméterekkel vagy kontextusokkal a beszélt parancsban. A tényleges bonyolult rész a következő részből származik, ahol a Tasker reagál az AutoVoice Natural Language parancsra.

Tasker

Íme egy lépésről lépésre bemutatott útmutató arról, hogy mit teszünk a profil létrehozása érdekében.

  1. Nyissa meg a Taskert, és nyomja meg a gombot + ikonra új profil létrehozásához.
  2. Lépjen az Esemény --> Plugin --> AutoVoice --> Natural Language menüpontra.
  3. Érintse meg a ceruza ikont az AutoVoice konfigurációs képernyőjének megnyitásához.
  4. Nyomja meg a "Parancsok" gombot, és válassza ki a korábban létrehozott parancs nevét.
  5. Nyomja meg a fenti pipa ikont, majd nyomja meg a vissza gombot, hogy visszatérjen a Tasker főképernyőjére.
  6. A Tasker megkéri, hogy hozzon létre egy új feladatot. Adhat nevet, ha akar, de nyomja meg a pipa ikont új feladat létrehozásához.

Miután a Feladatszerkesztő képernyőn van, létrehozzuk az alább látható feladatot. Új műveletek létrehozásához érintse meg a gombot + ikon alul középen. Bármely Tasker-szakértő itt kibonthatja az alábbi kapcsolót, hogy megjelenítse a profil és a feladat leírását, amelyet saját maga követhet.

Kezdőlap – Hangposta olvasása

 Profile: Home - Read Voicemail (165)
Event: AutoVoiceNaturalLanguage[ Configuration: Commands: read my last voicemail ]
Enter: Read Voicemail (164)
A1: AutoCastSpeak[ Configuration: Device: Bedroom Home Timeout (Seconds):60 ]
A2: AutoWeb Web Service [ Configuration: API: Gmail
API Action: List messages
Include spam trash: false
User ID: me
Search: from:voice-noreply@google.com
MaxResults: 5 Timeout (Seconds):120 ]
A3: Wait[ MS: 0 Seconds: 1 Minutes: 0 Hours: 0 Days: 0 ]
A4: AutoWeb Web Service [ Configuration: API: Gmail
API Action: Get Message
Format: full
UserID: meTimeout (Seconds):120 ]
A5: For [ Variable:%headers Items:1:%payload_headers_name(#) ]
A6: Variable Set [ Name:%referenceTo:%headers Recurse Variables:OffDo Maths:Off Append:Off ] If [ %payload_headers_name(%headers) ~ Subject ]
A7: EndFor
A8: Java Function [ Return: decodedbody Class Or Object:Base64 Function:decode
{byte[]} (String, int) Param:%bodydata(1) Param:8 Param: Param: Param: Param: Param: ]
A9: Java Function [ Return:%body Class Or Object:StringFunction:new
{String} (byte[], String) Param: decodedbody Param: UTF-8 Param: Param: Param: Param: Param: ]
A10: Variable Split [ Name:%body Splitter: https://www.google.com/voice/fm/ Delete Base:Off ]
A11: VariableSplit[ Name:%body2 Splitter:> Delete Base: Off ]
A12: HTTP Get [ Server: Port: https://www.google.com Path:/voice/fm/%body21 Attributes: Cookies: User Agent: Timeout: 10 Mime Type: audio/* Output File:/sdcard/Tasker/voicemail.mp3 Trust Any Certificate: Off ]
A13: Variable Set [ Name:%voicemail To:%payload_headers_value(%reference) Recurse Variables:OffDo Maths:Off Append:Off ]
A14: Variable Split [ Name:%voicemail Splitter: from Delete Base:Off ]
A15: Variable Split [ Name:%voicemail2 Splitter: at Delete Base:Off ]
A16: Test Phone [ Type: Contact Name Data:%voicemail21 Store Result In:%name Continue Task After Error:On ]
A17: Variable Set [ Name:%voicemail To:%voicemail1 from %nameat %voicemail22 Recurse Variables:OffDo Maths:Off Append:Off ] If [ %nameSet ]
A18: Variable Set [ Name:%voicemail To:%voicemail1 from %voicemail21 at %voicemail22 Recurse Variables:OffDo Maths:Off Append:Off ] If [ %name !Set ]
A19: AutoCast Speak [ Configuration: Device: Bedroom Home
Text: %voicemailTimeout (Seconds):60 ]
A20: Wait[ MS: 0 Seconds: 5 Minutes: 0 Hours: 0 Days: 0 ]
A21: AutoCast [ Configuration:
Starting Casting Screen
Persistent Notification: true
Cast Device: Bedroom Home
Screen: Full Screen Media
Audio: /storage/emulated/0/Tasker/voicemail.mp3
Audio Volume: 100
Audio Position: 0
Audio AutoPlay: true Timeout (Seconds):3000 ]

Olvass tovább

Az alábbi, lépésről lépésre bemutatott útmutató megmutatja, hogyan replikálhatja a feladatot, a jobb oldali képernyőképen látható. A feladat ennek a beállításnak a lényege, és meglehetősen összetett. Így működik az, hogy a profil aktiválása után az első néhány művelet (A2-A4) megkeresi és lekéri a Gmail-fiók a [email protected] címről érkező üzenetekhez, amely a Google által használt automatikus e-mail szolgáltatás Hang. Ezután megkeressük a tárgyfejlécet (A5-A7), így információt kaphatunk arról, hogy ki és mikor küldte a hangpostát. Ezután kibontjuk a Gmail üzenet üzenettörzsét, amely 64-es alapkóddal van kódolva, így Java függvényt kell használnunk (A8-A9). Miután lekértük a dekódolt üzenetet, megkeressük az URL-t, amely a hangposta hangfájljához (A10-A11) hivatkozik, és végül letöltjük a fájlt mp3 formátumban (A12). Az A13-A18 egyszerűen megkeresi a hangpostát elhagyó telefonszám elérhetőségét, ha van ilyen. Végül az A19-A21 felolvassa, hogy kitől és mikor küldték a hangpostaüzenetet, valamint a rögzített hangposta hangját.

  1. Plugin --> AutoCast --> AutoCast Speak. Eszköz: válassza ki Google Home-ját. (Itt nincs szükség szövegre, ez csak a Google Home-hoz való csatlakozáshoz szükséges.)
  2. Plugin --> AutoWeb. API: Gmail. API-művelet: Üzenetek listázása. Felhasználói azonosító: én. Keresés: feladó: [email protected]. Maximális eredmény: 5. Kimenet: Id.
  3. Feladat --> Várj. Várjon 1 másodpercet.
  4. Plugin --> AutoWeb. API: Gmail. API-művelet: Üzenet lekérése. Formátum: teljes. Felhasználói azonosító: én. Üzenetazonosító: % segély (1). Kimenet: Törzsadatok, hasznos teherfejlécek neve, és A hasznos teherfejlécek értéke.
  5. Feladat --> For. Változó: %headers. Elemek: 1:%payload_headers_name(#)
  6. Variables --> Variables Set. Név: %referencia. Nak nek: %headers. Jelölje be az If értékét, és állítsa If értékre %payload_headers_name(%headers) ~ Tárgy.
  7. Feladat --> Befejezés.
  8. Kód--> Java függvény. Az osztályhoz/objektumhoz válassza a lehetőséget Base64. Funkció: {byte[]} dekódolása (karakterlánc, int). Paraméter (karakterlánc): %bodydata (1). Paraméter (int): 8. Visszatérés: dekódolt test.
  9. Kód --> Java függvény. Az osztályhoz/objektumhoz válassza a lehetőséget Húr. Funkció: új {String} (byte[], karakterlánc). Paraméter (byte[]): dekódolt test. Paraméter (karakterlánc): UTF-8. Visszatérés: %test.
  10. Változók --> Változó felosztása. Név: %test. Elosztó: https://www.google.com/voice/fm/
  11. Változók --> Változó felosztása. Név: %body2. Elosztó: >
  12. Net --> HTTP Get. Szerver port: https://www.google.com Pálya: /voice/fm/%body21 MIME típusa: hang/* Kimeneti fájl: /sdcard/Tasker/voicemail.mp3
  13. Változók --> Változókészlet. Név: %hangposta. Nak nek: %payload_headers_value(%reference)
  14. Változók --> Változó felosztása. Név: %hangposta. Elosztó: tól től
  15. Változók --> Változó felosztása. Név: %voicemail2. Elosztó: nál nél
  16. Telefon --> Telefon tesztelése. Típus: Kapcsolattartó neve. Adat: %hangposta21. Tárolási eredmény itt: %név. Mindenképpen ellenőrizze a feladat folytatása hiba után.
  17. Változók --> Változókészlet. Név: %hangposta. Nak nek: %voicemail1 tőle: %name itt: %voicemail22. Ellenőrizze, hogy van-e alul, és állítsa be, ha %name beállítva.
  18. Változók --> Változókészlet. Név: %hangposta. Nak nek: %voicemail1 tőle: %voicemail21 itt: %voicemail22. Ellenőrizze, hogy van-e alul, és állítsa be, ha %name nincs beállítva.
  19. Plugin --> AutoCast --> Speak. Eszköz: válassza ki Google Home-ját. Szöveg: %hangposta
  20. Feladat --> Várj. Várjon 5 másodperc. Ez egy konfigurálható késleltetés hogy mindig legyen elegendő idő az új hangposta bejelentése és a hangposta hangjának lejátszása között. Ha ez túl rövid, növelheti ezt az időt. Játsszon ezzel az értékkel, hogy megtudja, mi csökkenti a késleltetést elfogadható szintre.
  21. Plugin --> AutoCast --> AutoCast. Átküldő eszköz: válassza ki újra Google Home-ját. Válassza ki teljes képernyős média mint a Képernyő. Lépjen a Teljes képernyős médiaelemekre, majd a Hang elemre, és az Audio ("lejátszandó dal") mezőbe /sdcard/Tasker/voicemail.mp3. Válassza ki Automatikus lejátszás.

Ez az! Most már csak annyit kell tennie, hogy elindítsa ezt a feladatot, hogy elküldje a parancsot a Google Home eszközére. Ezt úgy teheti meg, hogy "Szia/OK Google, hadd beszéljek az AutoVoice-szal", majd kimondja a parancs egyik változatát, amikor az AutoVoice azt mondja, hogy mondja ki a parancsot. Vagy kimondhatja a parancsot egyszerre, mondván:Szia/OK Google, kérje meg az AutoVoice-ot, hogy [parancs]"mint ahogy az elején látható videóban is tettem.


Profil letöltése

Az alábbi linkről letöltheti az általam készített Tasker profilt/feladatot. Ha ezt választja, feltétlenül lépjen be és módosítsa a két „AutoCast” műveletet úgy, hogy azok az Ön adott Google Home eszközére vonatkozzanak. Győződjön meg arról is, hogy a Profilomban megnevezett AutoVoice természetes nyelvi parancs megegyezik az Ön által megadottal. Ha nem, egyszerűen módosítsa a Profilt úgy, hogy a parancsodra mutasson. Csak néhány másodpercet vesz igénybe.

Töltse le a Kezdőlap - Hangposta Tasker-profil olvasása

Miután letöltötte a fenti XML-fájlt, mentse el bárhová az eszközén. Nyissa meg a Taskert, és tiltsa le a Kezdő módot a beállításokban. Ezután térjen vissza a főképernyőre, és tartsa lenyomva a Profilok fület felfelé koppintson, amíg meg nem jelenik egy felugró ablak az „Importálás” lehetőséggel. Nyomja meg ezt, és navigáljon oda, ahová a .prf.xml fájlt mentette, és válassza ki az importáláshoz.

Remélem hasznosnak találtad ezt az oktatóanyagot. Élveztem az API-val és a Taskerrel való trükközést, amíg nem tudtam működni. Tudom, hogy nem túl elegáns, de ez leginkább azt mutatja be, hogy milyen hatékonyan integrálhatja Google Home-ját különféle webszolgáltatásokkal és telefonjával. Remélhetőleg ez arra ösztönöz, hogy valami olyasmit alkosson, amiről korábban nem hitte, hogy lehetséges!