Home of the Squeezebox™ & Transporter® network music players.
Page 7 of 7 FirstFirst ... 567
Results 61 to 68 of 68
  1. #61
    Senior Member philchillbill's Avatar
    Join Date
    Jan 2019
    Location
    The Netherlands
    Posts
    703
    Why not just buy a used Squeezebox Radio for the kitchen and be able to treat it as a regular player in all respects, including perfect syncing?

    An angle you might not have considered with having to pay for a subscription for an Alexa skill is that the cloud hosting has to be paid for somehow. Logitech may be paying to keep the MySqueezebox.com servers running but they're not footing the bill for my skills hosting. Sure there are free tiers on AWS but e.g. provisioning realistic database capacity for a whole community of users falls outside that. Just saying...

  2. #62
    Junior Member
    Join Date
    Jan 2018
    Posts
    4
    Another cheap bluetooth option. Just make sure you get the right esp32 variant - https://github.com/sle118/squeezelite-esp32

  3. #63
    Quote Originally Posted by pngaudioguy View Post
    Thanks for the ideas. I now have enough interaction on here that I'm allowed to send PM's, so I've messaged the originator of this thread asking about his code.
    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.

  4. #64
    Senior Member meep's Avatar
    Join Date
    Aug 2007
    Location
    Ireland
    Posts
    232
    Quote Originally Posted by wildgoose View Post
    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

    (Update: this post actually relates to another thread entirely - my mistake : https://forums.slimdevices.com/showt...opment-thread))

    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 releasing 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?
    Last edited by meep; 2021-05-07 at 02:32. Reason: posted in incorrect thread


    ALEXA LMS SKILL: http://www.hab-tunes.com | Twitter: #habtunes
    Personal HA BLOG: http://mediaserver8.blogspot.com

    Squeezebox x2 | Squeezebox Radio x 2 | Squeezebox Duet x2

  5. #65
    Wow, impressive! This is a lot more elaborate than I thought. I was just thinking about a simple Python lambda backend that talks to LMS via an ngrok tunnel (which I have done trying the other Alexa skill before I realized it needs subscription).

    On Alexa side, I know one can develop a regular skill with customized interaction models, but there's complexity that comes with that, especially the need to localize and translate a lot of the stuff. Thereís also music skills where I believe we donít need to mess with the interaction models as much, just need to implement a set of music related SPIs (play/next/previous/shuffle/loop/etc), so thatís what I was thinking as a starting point. The interaction models should just work in all locales that this is supported. (So we donít need to translate next/previous/play, or different ways people can say that in various locales).

    The documentation also mentions we need to upload our catalogs (so Alexa understands what you are requesting when you say "play X"). I am not interested in uploading any catalogs, but I do care about my own play lists. I assume, since most of the big music providers (Pandora, Spotify, etc), are using this framework, and they support customerís own playlists (and much more), there should be a way for us to make it work with our custom playlist too.

    Is there any reason the above won't work? I know it's not ideal, setting up a tunnel, and deploy a custom skill yourself (amazon developer account), but it does get rid of the requirement for someone to hosting some services somewhere, since that costs money, and it's not obvious who would be footing that bill.

    Unfortunately, for me, this project died due to work & family commitments.
    I hear you, and I am sort of in the same boat too.

    .. This was installed on a LAMP AWS instance utilising MySQL and an MQTT Broker...
    Do you have any high level docs by any chance for the different components? (ie, what's the purpose of the plugin? what does the LAMP/MQTT broker do in terms of getting this to work with Alexa? why do we need a database?).

    To really get going again, the project could do with someone very well versed in LAMP setup, configuration and maintenance.
    Is there a cost for hosting this service?

    If this is already sort of working, I'll be happy to test it out. Feel free to PM me.

    Thanks.

  6. #66
    Senior Member meep's Avatar
    Join Date
    Aug 2007
    Location
    Ireland
    Posts
    232
    Quote Originally Posted by wildgoose View Post
    Wow, impressive! This is a lot more elaborate than I thought. I was just thinking about a simple Python lambda backend that talks to LMS via an ngrok tunnel (which I have done trying the other Alexa skill before I realized it needs subscription).

    On Alexa side, I know one can develop a regular skill with customized interaction models, but there's complexity that comes with that, especially the need to localize and translate a lot of the stuff. Thereís also music skills where I believe we donít need to mess with the interaction models as much, just need to implement a set of music related SPIs (play/next/previous/shuffle/loop/etc), so thatís what I was thinking as a starting point. The interaction models should just work in all locales that this is supported. (So we donít need to translate next/previous/play, or different ways people can say that in various locales).

    The documentation also mentions we need to upload our catalogs (so Alexa understands what you are requesting when you say "play X"). I am not interested in uploading any catalogs, but I do care about my own play lists. I assume, since most of the big music providers (Pandora, Spotify, etc), are using this framework, and they support customerís own playlists (and much more), there should be a way for us to make it work with our custom playlist too.

    Is there any reason the above won't work? I know it's not ideal, setting up a tunnel, and deploy a custom skill yourself (amazon developer account), but it does get rid of the requirement for someone to hosting some services somewhere, since that costs money, and it's not obvious who would be footing that bill.



    I hear you, and I am sort of in the same boat too.



    Do you have any high level docs by any chance for the different components? (ie, what's the purpose of the plugin? what does the LAMP/MQTT broker do in terms of getting this to work with Alexa? why do we need a database?).



    Is there a cost for hosting this service?

    If this is already sort of working, I'll be happy to test it out. Feel free to PM me.

    Thanks.

    Hi @wildgoose

    First, major apologies. I actually responded to this thread thinking it was another entirely. It's been a while since I've been posting here and just jumped in feet first without checking, so apologies to OP here for hijacking.

    My own skill / plugin referred to above takes a very different approach. Read all about it here, where you'll find video demos etc.: https://forums.slimdevices.com/showt...opment-thread)

    I'll answer your queries here, but if you wish to continue the discussion. maybe jump to my own project thread?

    Your proposed model will likely work well. However, it will require users to do a lot of local configuration & pfaffing about, so only suitable for peeps with some technical ability. My approach had been to make it consumer level accessible, so, a website you register with, account link the Alexa skill and install an LMS plugin (that can be updated). In this approach, its a lot more user friendly, though a loit more development work.

    I don't have any high level docs at all, though I can answer your questions....

    The purpose of the plug-in is to implement the MQTT client. This receives commands from the skill logic (running on an external node-red server) and translates them to LMS API calls for transport control. As noted, the plug-in apporach allows for all of tghis to be neatly packaged for users and facilitates code updates as required through the LMS plugin update process.

    LAMP is the host service for the skill logic. It implements all the branching and command implementation in Node-Red and uses the MQTT broker to communicate with the user LMS.

    The database is used for user management, persistent data storage etc. For example, the skill maintains a count of commands issued by individual users as well as details of the various ssqueezebox devices on their account etc.

    Yes, all this incurs costs. This skill would likely have been a paid / subscription model to cover hosting costs etc.

    If you have a look through the other thread, you'll see how far I got. Now that I've started talking about it again, I might just resurrect it......


    ALEXA LMS SKILL: http://www.hab-tunes.com | Twitter: #habtunes
    Personal HA BLOG: http://mediaserver8.blogspot.com

    Squeezebox x2 | Squeezebox Radio x 2 | Squeezebox Duet x2

  7. #67
    Senior Member
    Join Date
    Apr 2005
    Location
    UK/London
    Posts
    4,324
    Quote Originally Posted by wildgoose View Post
    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.
    As far as I remember, I made the code available to pngaudioguy in early December 2020 but I heard nothing since.
    I also explained the technique to PhilChillBill and he went on to make a significant number of improvements to it in his MediaServer skill.

    My suggestion - try it out with MediaServer skill (first week is free) and see if you like the way that it works before investing your own time in reinventing wheel for the sake of a fee of $3 per month (if you were to cost your own time out ... then you don't pay for many development hours with that).
    Paul Webster
    http://dabdig.blogspot.com
    Author of "Now Playing" plugins covering Radio France (FIP etc), PlanetRadio (Bauer - Kiss, Absolute, Scala, JazzFM etc), KCRW, Supla Finland, ABC Australia, CBC/Radio-Canada and RTE Ireland

  8. #68
    Ah, how ironic. After everything I said about Music Skills, it appears the ASK SDK does not yet support music skills. Well, it just means I need to write more boiler plate codes but should still be doable.

    Quote Originally Posted by Paul Webster View Post
    As far as I remember, I made the code available to pngaudioguy in early December 2020 but I heard nothing since.
    I also explained the technique to PhilChillBill and he went on to make a significant number of improvements to it in his MediaServer skill.

    My suggestion - try it out with MediaServer skill (first week is free) and see if you like the way that it works before investing your own time in reinventing wheel for the sake of a fee of $3 per month (if you were to cost your own time out ... then you don't pay for many development hours with that).
    That's very kind of you. And I'll be asking you for it too once I get the basic music skill thing working (playing anything from some internet link somewhere.. so I can see whether the music skill is what I think it is.

    The squeezebox eco-system survived this long because of open source, and all the contributions the community has made over the time. I have a desire to have this capability available for free, even if it takes some tinkering to get it working for each person that wants it. This will open the doors for others to continue improve and refine it, rather than starting from scratch again. I prefer to have a free option available to everyone.

    Quote Originally Posted by meep View Post
    Your proposed model will likely work well. However, it will require users to do a lot of local configuration & pfaffing about, so only suitable for peeps with some technical ability. My approach had been to make it consumer level accessible, so, a website you register with, account link the Alexa skill and install an LMS plugin (that can be updated). In this approach, its a lot more user friendly, though a loit more development work.
    I see. Reading your other thread, now everything makes more sense. I'll circle back to this once I have something working. Right now I want to build a simple solution with music skill, and see where it gets me. Probably not everything will work, but I want to see what works and what doesn't, and what I can do without adding too much complexity right now.

    Thanks!
    Last edited by wildgoose; 2021-05-08 at 06:01.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •