İçindekiler:
- Gereçler
- 1. Adım: Erstellen Eines Amazon Geliştirici Hesapları
- 2. Adım: Erstelle Einen Neuen Becerisi
- Adım 3: Begrüße Den Benutzer
- Adım 4: Begrüßung Testen
- Adım 5: Niyetler Hinzufügen
- Adım 6: Witze Hinzufügen
- 7. Adım: Amaç İşleyicisi Hinzufügen
- Adım 8: Amaç İşleyici Kayıt Defteri
- Adım 9: Beceri Testi
- Adım 10: Vorschau Festlegen Und Zertifizieren Lassen Becerisi
Video: Alexa Skill Erstellen (Almanca - Deutsch): 10 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:18
Alexa Skill'de miydi?
Alexa ist ein Bulut tabanlı Sprachservice, Amazon Echo, Echo Dot, Echo Show veya Echo Spot verfügbar ist. Entwickler, Alexa Fähigkeiten hinzufügen, so genannte Skills, denenmiş olup Nutzer ihr Gerät auf ihre Bedürfnisse anpassen ihr. Es gibt zehntausende Skills im Alexa Skills Store zu entdecken, u. a. von Unternehmen wie Deutsche Bahn, Chefkoch oder dem ZDF ve vielen weiteren yenilikçi Designern ve Entwicklern. ~ Quelle: geliştirici.amazon.com
In diesem Tutorial wird erklärt, wie man einen solchen Alexa Skill ersstellt und programmiert.
Ziel:
Ziel ist es, einen Witze Skill, adns şehvet Witze zu programmieren. Dieser Skill, Benutzer Witze zufällig ausgewählte Witze erzählen tarafından satılmaktadır.
Demo:
Um zu sehen, Wie der Skill nachher Funktionieren soll, gibt es hier bereits eine Demo:
skills-store.amazon.de/deeplink/dp/B07ZKH9…
Dieser Skill kann gerne getestet werden.
Gereçler
- Programmierkenntnisse
- Node.js'de Kenntnisse
1. Adım: Erstellen Eines Amazon Geliştirici Hesapları
Sofern Du noch keinen Amazon Geliştirici Hesabı besitzt, kannst Du hier einen erstellen, oder dich hier anmelden.
2. Adım: Erstelle Einen Neuen Becerisi
- Folge diesem Bağlantısı:
- Siteye tıklayın ve Beceri Düğmesi oluşturun. Eine neue Seite öffnet sich anschließend.
- Gib den Namen, Skills'i tanımlıyor (görünmeyen Fall: Lustige Witze) im Skill name Feld ein.
- Stelle die Sprache bei Varsayılan dil auf Almanca (DE).
- Wir wollen einen Custom-Skill erstellen, ayrıca wählen wir beim Model Custom aus.
- Wähle bei Becerinizin arka uç kaynaklarını barındırmak için bir yöntem seçin, ayrıca Alexa-Hosted (Node.js) aus.
- Nachdem Du alles ausgewählt acele, klicke oben rechts auf Beceri yarat.
- Ein neues Fenster öffnet sich
Adım 3: Begrüße Den Benutzer
Das erste, ein Benutzer mit einem Skill macht, ist ihn zu öffnen idi. Der Intent der den Skill Intent ist bereits im Skill eingebaut, somit muss dieser Intent nicht ekstra hinzugefügt werden.
-
Ortak Kod Sekmesi → Das Code Fenster mit der index.js Datei öffnet sich.
Jeder Intent Handlet şapka zwei Funktionen:
- başedebilir()
- üstesinden gelmek()
Die canHandle() Funktion beinhaltet den İstek, ayrıca die Anfrage, auf die der Handler antwortet.
Kalıp tutacağı() Funktion gibt dem Benutzer dann einen Antwort.
Anfrage'ın temel becerileri, yani canHandle() işlevinde wird, nchgesehen, ob der Handler dieer Anfrage antworten kann.
-
In der handle() Funktion des LaunchRequestHandlers'ın temel öğelerini içerir.
const talkOutput = 'Willkommen "Lustige Witze"! Frage einfach nach einem Witz.';
const repromtText = 'Möchtest du einen Witz hören?';
-
Nun müssen wir die Antwort noch an den Benutzer senden.
iade işleyicisiInput.responseBuilder
.speak(speakOutput).reprompt(repromtText).getResponse();
Klicke auf Kaydet ve anschließend auf Deploy
Der bereits generierte Kod gibt Antworten in türkischer Sprache. Lanet olsun Alexa Skill später auch genhmigt wird, en iyi İngilizce Antwort auf Deutsch umgeschrieben werden.
Bei folgenden Handlern muss der Wert der talkOutput Değişken auf deutsch umgeschrieben werden:
-
HelpIntentHandler
const talkOutput = 'Dieser Skill erzählt dir die lustigsten Witze. Frage einfach nach einem Witz.';
const repromtText = 'Möchtest du einen Witz hören?'; dönüş handlerInput.responseBuilder.speak(speakOutput).reprompt(repromtText).getResponse();
-
CancelAndStopIntentHandler
const talkOutput = 'Kellikten uzak!';
-
IntentReflectorİşleyici
const talkOutput = `Du has ${intentName} ausgelöst.`;
-
Hata İşleyicisi
const talkOutput = `Es tut mir leid, aber ich kann deine Frage zurzeit nicht verarbeiten.`;
Zum Schluss immer auf Kaydet ve anschließend auf Klicken konuşlandır.
Adım 4: Begrüßung Testen
Immer nachdem Du eine Funktion zu deinem Skill hinzugefügt hast, solltest Du diese unbedingt testen, damit Du, Fall ein Fehler auftritt ungefähr weißt, wo der Fehler liegen könnte.
- Klicke auf den Test Sekmesi → ein neues Fenster öffnet sich.
- Aktiviere das Testen, Select-Box Development auswählst.
- Schreibe oder spreche: "öffne lustige Witze." → Der Skill sollte rahibe mit der Begrüßung antworten.
Adım 5: Niyetler Hinzufügen
Nun fügen wir Möglichkeiten hinzu, wie der Benutzer mit dem Skill interagieren kann. Intents ermöglichen es auf verchiedene Phrasen zu reagieren und anschließend einen bestimmten auszulösen, der die Anfrage dann verarbeitet.
- Klicke auf den Yapı Sekmesi → das Build Fenster öffnet sich.
- HelloWorldIntent'ten Intents der Navigationsleiste steht bei Rechts. Diesen löschen wir zu Beginn.
- Intents-Leiste için Düğme Ekle.
Zuerst fügen wir bereits tarafından Amazon vordefinierte Intents hinzu.
- Klicke dazu auf Alexa'nın yerleşik kitaplığındaki mevcut bir amacı kullanın
- YesIntent und NoIntent und klicke beiden auf add
Nun fügen wir unseren eigenen Intent hinzu.
- Klicke dazu auf Özel amaç oluştur
- Gib dem Intent ve Namen TellAJokeIntent
- Klicke auf Özel amaç oluştur
Jetzt fügen wir ein paar Beispielphrasen zu unserem Intent hinzu, ayrıca Phrasen, die der Benutzer sagen könnte. Gib dazu einfach die Phrasen ohne Punkt am Ende ein:
- Erzähle mir einen Witz
- Sag mir einen Witz
- Erzähle mir einen lustigen Witz
- Einen Witz ısırığı
- nach einem Witz
- mir einen Witz zu erzählen
Natürlich gibt es noch viele weitere Möglichkeiten, diesen Intent zu aktivieren, aber wir beschränken uns hier auf ein paar essentielle.
Nachdem Du alle Phrasen hinzugefügt hast klicke oben auf Save Model und anschließend auf Build Model. Nachdem der Build abgeschlossen ist, navigiere zurück zum Kod Sekmesi.
Adım 6: Witze Hinzufügen
Damit unser Skill Witze Witze, Witze ile birlikte geliyor.
Erstelle dazu im lambda Ordner eine neue Datei mit dem Namen jokes.json
die jokes.json Datei ein'deki Füge folgendes:
["Welches Getränk Firmenchefs? Leitungswasser mıydı?", "Essen Autos am liebsten miydi? Parkplätzchen.", "Pasiert Wenn Man Colaichzeit und Bier Bier kl oldu mu?", "Wie heißt ein Spanier ohne Auto? Carlos", "Sitzt auf einem Baum und winkt miydi? Ein Huhu!", "Sagt ein Gen, wenn es ein anderes trifft? Halojen.", "Bauer'de eğitimci miydi? Ein Akademiker.", "Ich bin so unentschlossen. Als japanischer Krieger wäre ich ein Nunja."]
Natürlich Kannst Du selbst noch mehr Witze hinzufügen, zum Testen jedoch sollte es schon funktionieren.
Klicke wieder auf Kaydet ve Dağıt.
7. Adım: Amaç İşleyicisi Hinzufügen
Daha fazla bilgi için bkz. Niyetler, daha fazla bilgi için, daha fazla bilgi için, daha fazla bilgi için, daha iyi bir amaç için tasarlanmıştır. Der NoIntentHanlder bedet den Skill. YesIntentHandler'ı Derleyin, TellAJokeIntentHandler'ı derleyin Antwortet mit einem Witz.
Lösche den gesamten HelloWorldIntentHandler aus der index.js Datei heraus ve füge an der Stelle die neuen drei IntentHandler ein:
const TellAJokeIntentHandler = {
canHandle(handlerInput) { return Alexa.getRequestType(handlerInput.requestEnvelope) === 'IntentRequest' && Alexa.getIntentName(handlerInput.requestEnvelope) === 'TellAJokeIntent'; }, handle(handlerInput) { const jokes = JSON.parse(fs.readFileSync('./jokes.json')); const talkOutput = şakalar[Math.floor(Math.random() * şakalar.uzunluk)]; dönüş handlerInput.responseBuilder.speak(speakOutput).getResponse(); } }; const YesIntentHandler = { canHandle(handlerInput) { return Alexa.getRequestType(handlerInput.requestEnvelope) === 'IntentRequest' && Alexa.getIntentName(handlerInput.requestEnvelope) === 'AMAZON. YesIntent'; }, handle(handlerInput) { const şakalar = JSON.parse(fs.readFileSync('./jokes.json')); const talkOutput = şakalar[Math.floor(Math.random() * şakalar.uzunluk)]; dönüş handlerInput.responseBuilder.speak(speakOutput).getResponse(); } }; const NoIntentHandler = { canHandle(handlerInput) { return Alexa.getRequestType(handlerInput.requestEnvelope) === 'IntentRequest' && Alexa.getIntentName(handlerInput.requestEnvelope) === 'AMAZON. NoIntent'; }, handle(handlerInput) { const talkOutput = 'Tamam, vielleicht später einmal.'; dönüş handlerInput.responseBuilder.speak(speakOutput).getResponse(); } };
Adım 8: Amaç İşleyici Kayıt Defteri
Nun müssen nur noch die Intent Handler kayıt werden. Scrolle dazu bis ans Ende der index.js Datei.
Ersetze ölür:
export.handler = Alexa. SkillBuilders.custom()
.addRequestHandlers(LaunchRequestHandler, HelloWorldIntentHandler, HelpIntentHandler, CancelAndStopIntentHandler, SessionEndedRequestHandler, IntentReflectorHandler, // IntentReflectorHandler'ın son olduğundan emin olun, böylece customadd işleyicilerinizi geçersiz kılmaz.
durch das:
export.handler = Alexa. SkillBuilders.custom()
.addRequestHandlers(LaunchRequestHandler, TellAJokeIntentHandler, YesIntentHandler, NoIntentHandler, HelpIntentHandler, CancelAndStopIntentHandler, SessionEndedRequestHandler, IntentReflectorHandler,IntentReflectorHandler,H/R ve/veyaHandlerHandler'ın amacının üzerinde olduğundan emin olun.
Kaydet ve Dağıt. Nachdem das Deployment abgeschlossen wurde, kannst Du deinen Skill wieder testen.
Adım 9: Beceri Testi
- Klicke auf den Test Sekmesi → ein neues Fenster öffnet sich.
- Schreibe oder spreche: "öffne lustige Witze." → Der Skill sollte rahibe mit der Begrüßung antworten.
- Schreibe oder spreche: "Erzähle mir einen Witz." → Witze erzählen der Skill sollte rahibe einen der.
Her şey daha iyi.
Adım 10: Vorschau Festlegen Und Zertifizieren Lassen Becerisi
Tümüyle Textboxen mit deiner persönlichen Beschreibung des Skills aus.
Bei Örnek İfadeler schreibe:
- Alexa, şehvetli Witze.
- Erzähle mir einen Witz.
- Alexa, şehvetli ol Witze nach einem Witz.
Sobald du alle verpflichtenden Felder ausgefüllt hast und die Icons hochgeladen hast klicke auf Kaydet ve devam et.
Wähle bei Gizlilik ve Uyumluluk, sowie bei Kullanılabilirlik die zutrefenden Antworten aus.
Siehe dir vor der Zertifizierung die Gönderme Kontrol Listeleri ve
Nun zorunlu du ein paar Testler durchlaufen. Öldü kann eine Weile dauern.
Anschließend Kannst du deinen Skill zur Zertifizierung absenden. Es wird ca. 1-2 Tage dauern, bis zu ein Geribildirim zu deinem Skill bekommst. Her şey dahil olmak üzere tüm zenginler, en iyi, en iyi Skill sofort veröffentlicht werden.
Wenn du den Skill jetzt schon ausprobieren möchtest, aber dein Skill noch nicht zertifiziert wurde, kannst du jederzeit diesen Skill verwenden:
skills-store.amazon.de/deeplink/dp/B07ZKH9…
Önerilen:
Alexa Tabanlı Ses Kontrollü Roketatar: 9 Adım (Resimli)
Alexa Tabanlı Ses Kontrollü Roketatar: Kış mevsimi yaklaşırken; ışık festivalinin kutlandığı yılın o zamanı gelir. Evet, dünya çapında kutlanan gerçek bir Hint festivali olan Diwali'den bahsediyoruz. Bu yıl, Diwali çoktan bitti ve insanları görmek
Kelime Saati (Almanca Düzen): 8 Adım
Kelime Saati (Almanca Düzen): Hey,ich möchte Euch hier mal mein letztes Projekt vorstellen. Ich habe eine Uhr gebaut. Allerdings keine "normale"; Uhr, sondern eine Kelime Saati. Zu solchen Bastelprojekten gibt es hier zwar schon ein paar Artikel, aber trotzdem möchte ich
Alexa ve Raspberry Pi ile Kontrol Oturma Odası: 12 Adım
Alexa ve Raspberry Pi ile Oturma Odasını Kontrol Edin: Alexa (Amazon Echo veya Dot) ve Raspberry Pi GPIO ile oturma odanızın TV'sini, ışıklarını ve Fanı kontrol edin
Alexa IoT TV-Controller ESP8266: 10 Adım (Resimlerle)
Alexa IoT TV-Controller ESP8266: Geçenlerde Amazon Prime gününde ~20€'ya bir Amazon Echo Dot satın aldım. Neyin mümkün olduğunu ve akıllı cihazların nasıl oluşturulacağını biliyorsanız, bu küçük sesli yardımcılar ucuz ve Kendin Yap Ev Otomasyonu için harikadır.Samsung Smart TV'm var ama
Adım Adım Arduino Uno ile Akustik Kaldırma (8 adım): 8 Adım
Arduino Uno ile Akustik Kaldırma Adım Adım (8 adım): ultrasonik ses dönüştürücüler L298N erkek dc pinli Dc dişi adaptör güç kaynağı Arduino UNOBreadboardBu nasıl çalışır: İlk olarak, Arduino Uno'ya kod yüklersiniz (dijital ile donatılmış bir mikrodenetleyicidir) ve kodu dönüştürmek için analog bağlantı noktaları (C++)