Comments (7)
Thank you for noticing! Normally, this should be handled by the Amazon Services. However, I think it might be possible to do an extra lookup using an external API. I will check into this in the next few days.
As this also relates to bands like twenty one pilots, I've closed issue #5 .
from plexmusicplayer.
It did but I thought I would list it as a separate issue. I have verified this with the plex service directly. I was able to reverse engineer the url for plex:
https://.ee51a749bffb4ba6a60b868cba10a375.plex.direct:32400/search?query=native&X-Plex-Token=&type=9
Some other things I noticed. When I search for native (as listed above), plex actually returns two responses (native and native tongue), but the python service says nothing is found. So I am not sure how your service works if multiples are found. I would love to help refine some of the searching however I am not that familiar with python (quick learner though). What is the entry point to this service so I can follow the flow? Also, I was looking at the intents and there are 3 for play , how does the python script identify if it is an album, artist, or track? Any other help to start me off?
from plexmusicplayer.
Normally, if multiple responses are returned, the first response listed will be used.
Also, it is the Amazon service that determines if the requested query is an album, song or artist. If you want to specify this yourself, you can say, for example: Alexa, ask Plex to play tracks from {artist}.
As for the entry point, you should check out the methods file. Here, I specified the different methods for parsing the XML data given back by Plex, as you have accessed yourself.
from plexmusicplayer.
Yea I saw that. I wanted to followed the request from the alexa service to heroku and didn't know what end point it was calling in heroku (and how it relates back to your code). That way I could follow the data flow and method calls to get a better understand of what was going on. I'm not exactly sure how this relates back to Amazon service too.
from plexmusicplayer.
If you want to know how the communication works between the Echo devices, Amazon services and your own server, you should definitely read up on this blog post that I wrote. It explains the communication flow in detail.
from plexmusicplayer.
I created a tdelesio branch and fixed this issue. I am now converting numbers back to words and also removing white space. I tested with One Republic. Amazon takes that phrase and converts it to 1 republic. I then take the "1 republic" and search it against the plex db. If no results are found, i convert "1 republic" to "one republic" and requery. If still no results are found, I trim the white space and recall plex with "onerepublic" which is how it is stored there. I don't know if you want to review the changes prior to a merge with master, but check it out.
from plexmusicplayer.
Great!! I've merged both branches together! Thank you for the contribution, I appreciate it!
from plexmusicplayer.
Related Issues (20)
- It should be possible to add tracks to the current playlist
- Better handling of requests that fetch large amounts of tracks HOT 3
- Pause and resume HOT 3
- "I was not able to find Aerosmith in your library." HOT 6
- Prevent Bad Requests on PlaybackStarted, PlaybackStopped and PlaybackFinished requests
- Unable to find my library HOT 1
- Different results for two songs in the same album HOT 16
- Playing all tracks by an artist should shuffle songs HOT 1
- *Almost* working via Centos7+httpd+wsgi+ssl+python2.7 HOT 11
- Can't get playback working on 2nd Gen Dot HOT 1
- Started only playing one song from the queue. HOT 9
- I was not able to find {artist} in your library.
- Cannot find anything in library, and errors on status
- Songs keep stopping HOT 2
- Display current artist \ album \ song on Echo Show
- I am impressed by this HOT 5
- newb help
- Suggest to loosen the dependency on fuzzywuzzy
- Heroku alternative
- Using waitress might prove to be too slow HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from plexmusicplayer.