Re: Using Amazon Alexa device as LMS player

meep <meep.a166an-NUepA2SMhDQqspMVqqL2D+4xXEVPTSb/[email protected]>
Newsgroups gmane.music.equipment.slimdevices.devel
Organization Logitech Squeezebox Forums
Message-ID <[email protected]>
wildgoose wrote: 
> Hi, @pngaudioguy, any updates? I am also interested in getting LMS to
> play on my echo speakers. It would be a perfect use in my office as I
> have an echo studio and I really want to be able to make use of it when
> I am working, rather than wearing headphones.
> 
> If you have gotten the code, but don't have time to work on it yet,
> maybe we can work together. It would be a cool thing to develop, and
> doesn't look that complicated on the Alexa side:
> developer.amazon.com/en-US/docs/alexa/music-skills/understand-the-music-skill-api.html
> 
> I do need to find some programming information on LMS side, since I've
> never done anything with it. I think the important part is to figure out
> how to get Alexa to play somthing from LMS, and have it shows up as a
> player in LMS.
> 
> What I want is to be able to say "Alexa, open BLABLA skill", and have it
> open and automatically starts to play something from my LMS. Then I can
> open the LMS Material frontend on my phone, and play whatever playlist I
> want to it. Simple interactions like "next", "previous", "repeat",
> "shuffle", "stop" should also work, but that can be P1, not P0.


Hi Folks

OP here.

Just got an email notification of this comment in my inbox and thought
I'd respond.

Unfortunately, for me, this project died due to work & family
commitments. 

It had progressed very well. There was an outstanding community of about
10 active testers working with me, as well as up to 50 other occasional
testers. We got the skill / plugin to an advanced alpha stage. It was
not feature complete, and several bugs remained, but at the time I had
to stop, another month or 2 would have gotten us to first release. I
just realised at the time that I would be unable to support or improve
the software and gradually lost the free time I would have needed to
make progress. I regret it somewhat, but there are bills to be paid and
hungry mouths to feed. I also grew increasingly frustrated with Amazon
for their strategy of releasing features to the US market only. The idea
was for a global skill (I'm in Europe), and I got really fed up with not
being able to use some of the directly relevant features they were
bringing out.

At this stage, I would consider rteleasing anything I have to one or
more developers seriously interested in taking up the challenge. I'd be
happy to advise and support as necessary.

It terms of how it all works, there are a few components. I haven't kept
up with the evolution of skill development, so I'm sure there have been
advances, and I'm not sure this would still be the best approach today;

THE ALEXA SKILL
The skill itself if a very basic framework, the minimum necessary to get
a skill up and running on Amazon. This contains XML outlining all the
commands as well as a good deal of translation for German.

THE SKILL LOGIC
The logic of the skill itself is built in NodeRed. (chosen as I was
interested in learning it at the time). This was installed on a LAMP AWS
instance utilising MySQL and an MQTT Broker.  This architecture was
evolved mainly to separate the application logic from the Alexa skill
platform. The idea being that it would be fairly straightforward to port
the application to Google in the future. MQTT was chosen as the
communications protocol between the Skill and the LMS as it negated the
requirement for end users to open ports on their network - an important
security concern.

THE WEBSITE
The HabTunes website was also built on the AWS server and utilised the
same database. They idea was that users needed to be registered members
of the website and would sync accounts with the skill. 

THE PLUGIN
The LMS plugin is written in Perl. (I had to learn that language as well
to get things up and running). This is probably the untidiest part of
the whole effort as its not well designed (I was learning) or
documented. However, it does work very well and is the most complete
part of the project in that there's very little left to do and it's
elegant in that it supports additional and extended logic implemented in
the NodeRed skill core without many amends. (I think all that needed to
be done was add to the list of accepted commands any time I added
support for calling a new LMS command). The plugin also implements an
MQTT client that is efficient & solid.

Overall, there's a bunch of interacting technologies, platforms and
software that more or less works. It would be interesting to resurrect
things and see how the Echo platform has advanced.

To really get going again, the project could do with someone very well
versed in LAMP setup, configuration and maintenance. This is an area
that always needed a revamp and I just didn't have the skills or
understanding to do more than muddle through a basic set up.

Any takers?



'' (http://www.hab-tunes.com)

ALEXA LMS SKILL: http://www.hab-tunes.com | Twitter: '#habtunes'
(https://twitter.com/search?q=%23habtunes&src=typd&lang=en)
Personal HA BLOG: http://mediaserver8.blogspot.com 

Squeezebox x2 | Squeezebox Radio x 2  | Squeezebox Duet x2
------------------------------------------------------------------------
meep's Profile: http://forums.slimdevices.com/member.php?userid=12744
View this thread: http://forums.slimdevices.com/showthread.php?t=110155
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.