Ich verwende eine Blaupause von Amazon, um eine Alexa-Feed-Fähigkeit zu entwickeln. In diesem Entwurf werden RSS-Feeds von einer URL aus aufgerufen und in das JSON-Format umgewandelt und auf Amazon S3 gespeichert.Alexa Skill FeedHelper.js - wie kann ich die Gehäuse-URL bekommen?
Diese Datei ist verantwortlich, dass die Aktion zu tun (und es funktioniert gut für die Standardelemente)
https://github.com/alexa/skill-sample-nodejs-feed/blob/master/lambda/custom/feedHelper.js
Ich brauche jetzt auch das Gehäuse URL, weil ich einen Podcast spielen möchten. Ich dachte, es durch Zugabe von folgenden in die feedHelper.js in Linie 63 arbeiten:
if (item['enclosure']) {
feedItem['enclosureUrl'] = item['enclosure'].attributes['url'];
}
Aber die JSON, die mit Hilfe dieser Datei auf S3 erzeugt wird, hat noch kein Gehäuse Element drin. Habe ich es überhaupt richtig genannt?
Ich versuchte auch schon:
if (item['enclosure']) {
feedItem['enclosureUrl'] = item['enclosure'].url;
}
und
if (item['enclosure']) {
feedItem['enclosureUrl'] = item['enclosure']['url'];
}
Das andere Problem ist, dass die Audioverbindung mit https verbunden: // und Amazon HTTP nicht akzeptieren ... Aber wenn ich diese Adresse manuell in der Browserleiste mit https vorstelle, funktioniert der Download. Also kann ich hoffentlich das HTTP vom Tag des Gehäuses in https ändern, wie hier beschrieben?
http://code.dblock.org/2017/02/09/alexa-skill-to-play-your-podcast.html
So oben zusammenfassen: Ich brauche dieses Element aus einem RSS-Feed
<enclosure type="audio/mpeg" url="http://feeds.soundcloud.com/stream/file.mp3" length="7087881"/>
im JSON geschrieben werden, die mit dem feedHelper.js
Derzeit erstellt wird, Ich habe trotz des obigen Codes kein Enclosure-Element im JSON generiert.
Hat jemand eine Idee?
Vielen Dank!