Home of the Squeezebox™ & Transporter® network music players.
Page 1 of 102 1231151101 ... LastLast
Results 1 to 10 of 1020
  1. #1
    Senior Member philchillbill's Avatar
    Join Date
    Jan 2019
    Location
    The Netherlands
    Posts
    821

    [Announce] 'MediaServer' certified Alexa skill for LMS

    Note: this intro post is always up-to-date

    There's a new certified multimodal Alexa skill to control LMS in the Amazon skills store. It's called MediaServer and you can find it under the category 'Music & Audio' in the Alexa app or web-portal. Because this is a certified skill, it's available to anybody with an Alexa/Echo device without any kind of developer or beta accounts.

    A downloadable installer automatically sets up the required password-protected https proxy to your LMS instance. Available for pCP, Linux, MacOS and Windows, it's not an LMS plugin as such but instead deploys (free) ngrok to tunnel to LMS using TCP over SSH — very secure!. There is no port-opening in your router with this approach.

    MediaServer has been extensively tested on a library with 70K+ songs — how well it will work for you will (logically) depend on how good your tags are. It uses a freemium model, and is available in English for both the en-US (for the USA) and en-GB Amazon stores (26 countries in EU). Altogether, it supports 122 intents, of which 74 are in the free-to-use class.

    In addition to controlling all your players by name, the skill can 'stream' LMS audio over WiFi to your Echos as audio-sink. New: Lossless URLs saved in your LMS favorites now stream without unnecessary transcoding directly to your Echo.

    Name:  nowplaying.png
Views: 476
Size:  178.8 KB

    Cover art and/or textual metadata are displayed on your Echo's screen (if present) for all commands. This uses 6 different APL templates that provide visual feedback from Alexa — great when the music is loud and it's hard to hear her responses. This is also useful as a training aid as you can see Alexa's misinterpretations in all their textual glory.

    Some example commands (see also https://mediaserver.smartskills.tech...#section-4-1):

    Play the album 'Phaedra'
    Play the album 'Ghost Stories' by Coldplay
    Play the compilation 'American Road Trip'
    Play the single 'Sunny Days' by Armin van Buuren
    Play the song 'Dancing in the Dark'
    Play the song 'Chasing Cars' by Snow Patrol
    Play something by The Corrs
    Play songs about 'Girls'
    Play songs featuring Eddie Vedder
    Play a random album by Steve Winwood
    Play a random single by Madonna
    Play some Classic Rock
    Play my 'Supperclub' playlist
    Play a random playlist
    Play the track 'Run Like Hell' from the album 'Pulse'
    Play the 'Live & Dangerous' rendition of 'The Boys are Back in Town'
    Play favorite number 3
    Play favorite 'JAZZ FM'
    Play favorite 'Podcasts' item 7
    Play favorite folder 'Audiobooks' item 12
    Play favorite 3 . 2 . 5 (dot)
    Play my newest album by Pearl Jam
    Play index 3 from 'Musique' by Daft Punk

    *Using 'Stream" instead of 'Play' in the above commands will direct the LMS audio to your Echo itself instead of a Squeezebox player.
    Each Echo has its own /stream.mp3 endpoint and can play something distinct, independent of what your other Echos are playing.


    What's playing on 'Touch'?
    What's up next on 'Transporter'?
    What's the duration of this song / playlist?
    What's the 'Bedroom' player status?

    Add this track to my 'Fitness' playlist
    Bookmark this track
    Blacklist this song
    Clear the playlist

    Follow me to the 'Lounge'
    Transfer playback from 'Livingroom' to 'Study'
    Transpose 'Bedroom' and 'Bathroom' players

    What sync groups exist?
    Synchronize the 'Bedroom', 'Bathroom', 'Office' and 'Nursery' players
    Synchronize everything
    Include the 'Guestroom' player in the group
    Remove 'Library' player from the group
    Ungroup my players

    List my favorites
    List level 2 favorites
    List the favorites in folder 'Podcasts'

    Sleep the 'Bedroom' player in 8 mins 30 seconds
    Sleep this player after the current song
    Cancel sleep mode for the 'Livingroom' player

    Tee Up the album 'Erotica' by Madonna
    Append 'Solsbury Hill' by Peter Gabriel
    Add 'Mr. Blue Sky' by ELO
    Insert 'Cradle of Love' from the album 'Charmed Life'
    Append 'High Hopes' from the album 'The Division Bell'
    Add 'Legs' from the album 'Eliminator'

    List the songs on the album 'Rumors' by Fleetwood Mac
    What albums contain 'Roxanne' by the Police?
    List my new albums
    Search new items for ZZ Top
    Do I have 'Giants' by Chicane?
    Do I have '101 Driving Songs'?
    What Paul Young albums do I have?
    What Sheryl Crow singles do I have?
    What genres do I have?
    What playlists do I have?

    Resume playback
    Pause
    Stop Playback
    Skip / Next Track
    Previous Track
    Goto track 12
    Skip ahead 2 minutes
    Skip back 44 seconds
    Seek directly to 17 minutes and 12 seconds

    Set the volume to 60
    Increase the volume by 10
    Decrease the volume by 25
    Mute the 'Livingroom' player
    Unmute 'piCorePlayer5'

    Turn On the 'Library' player
    Power Off 'Bedroom'
    Power Down everything

    Activate shuffle
    Shuffle again
    Enable shuffle-by-album on the 'Kitchen' player
    Enable shuffle-by-song for the 'Bedroom' player
    Deactivate shuffle
    Enable / Disable Repeat
    Turn On repeat-playlist mode
    Enable repeat-song mode
    Deactivate repeat for the 'Basement' player

    What alarms do I have on the 'Bedroom' player?
    Enable my 7 AM alarm
    Cancel my 7:30 AM alarm
    Change my 7 AM alarm to 8:30 AM

    Discover my players
    List my players
    Assume the 'Livingroom' player
    I'm within earshot of 'Diningroom'
    Rename 'Touch' player to 'Bedroom' player
    Enable / disable artwork display
    What's new?

    Your Online Music Library from LMS 8.x is fully supported and e.g. Spotify playlists or Albums (present in 'your' library) can all be requested by voice, either with or without "Spotify: ..." in the utterance.

    Subscription: Certain of the above commands require a monthly subscription which is handled as an ISP (In-Skill Purchase) by Alexa and costs $2.99/£2.99 per month (to cover AWS hosting fees). A 7-day trial is free for first-time subscribers. All subscriptions can be cancelled at any time by voice (there's no minimum contract). Say "Alexa, tell Media Server I want full access" and follow the spoken instructions. You will need to have enabled voice purchasing in the Alexa App (ask "Alexa, how do I enable voice purchasing?").

    Help on the easy-setup procedure, plus an exhaustive A-Z phraseology reference, can be found at https://mediaserver.smartskills.tech/faq
    Last edited by philchillbill; 2021-09-05 at 01:43. Reason: Updated for Aug 2021 changes (V4.6). Added MacOS installer reference.

  2. #2
    Senior Member Apesbrain's Avatar
    Join Date
    Jun 2005
    Location
    East Coast, USA
    Posts
    1,772
    Very cool! But I need it for Google Home.

  3. #3
    Senior Member
    Join Date
    Apr 2005
    Location
    UK/London
    Posts
    4,769
    Interesting approach.
    The https section at https://smartskills.tech/mediaserver/#tab2 does a good job of describing things.
    It does mean that no LMS addon is required to be added into the local LMS.
    Will be interesting to see how many people go through the steps.
    Paul Webster
    http://dabdig.blogspot.com
    Author of "Now Playing" plugins covering Radio France (FIP etc), PlanetRadio (Bauer - Kiss, Absolute, Scala, JazzFM etc), KCRW, ABC Australia, CBC/Radio-Canada and RTE Ireland
    and, via the extra "Radio Now Playing" plugin, AllZIC Radio, Caroline Flashback, Cesky rozhlas, Frequence3, JukeRadio, KlassikRadio.de, Linn Radio, Mother Earth, Naim Radio, Nova.fr, RadioBlues Flac, Radio Espace, Somehow Jazz, Supla Finland

  4. #4
    Babelfish's Best Boy mherger's Avatar
    Join Date
    Apr 2005
    Location
    Switzerland
    Posts
    20,602

    [Announce] 'MediaServer' *certified*Alexa skill for LMS

    But doesn't this require to expose your LMS to the internet? Don't be
    soothed by the use of https: if there's no password protection
    whatsoever, then I and John Doe would be able to control your players,
    too. https only protects the transfer from your door to the recipient (or
    the other way around), but not the door itself.

    Which brings us back to this:
    https://forums.slimdevices.com/showt...o-the-internet!

    --

    Michael
    Last edited by mherger; 2019-09-25 at 10:24.

  5. #5
    Senior Member philchillbill's Avatar
    Join Date
    Jan 2019
    Location
    The Netherlands
    Posts
    821
    Yes Michael, but a reverse proxy or ssl tunnel DOES implement password protection. It’s certainly not the same as exposing your LMS directly to the outside. The online docs for the skill explain this very clearly.


    Note: As of Feb 2021 there's a completely automated installation procedure for the ngrok proxy - see the announcement at https://forums.slimdevices.com/showt...e-Alexa-skills
    Last edited by philchillbill; 2021-02-19 at 01:47. Reason: Added note regarding easy-setup

  6. #6
    Senior Member
    Join Date
    Jan 2010
    Location
    Hertfordshire
    Posts
    7,815
    Quote Originally Posted by philchillbill View Post
    Yes Michael, but a reverse proxy or ssl tunnel DOES implement password protection. It’s certainly not the same as exposing your LMS directly to the outside. The online docs for the skill explain this very clearly.


    Sent from my iPhone using Tapatalk
    Is there a username/password in the Serveo set up? The instructions say to leave them blank.

    Sent from my SM-G900F using Tapatalk

  7. #7
    Senior Member
    Join Date
    Feb 2011
    Location
    Cheshire, UK
    Posts
    6,217
    This looks very interesting. The serveo tunnel setup is from the local end so I presume no port opening is required?
    Jim
    https://jukeradio.double6.net


    VB2.4 storage QNAP TS419p (NFS)
    Living Room Joggler & Pi4/Khadas -> Onkyo TXNR686 -> Celestion F20s
    Office Joggler & Pi3 -> Denon RCD N8 -> Celestion F10s
    Dining Room SB Radio
    Bedroom (Bedside) Pi Zero+DAC ->ToppingTP21 ->AKG Headphones
    Bedroom (TV) & Bathroom SB Touch ->Denon AVR ->Mordaunt Short M10s + Kef ceiling speakers
    Guest Room Joggler > Topping Amp -> Wharfedale Modus Cubes

  8. #8
    Senior Member philchillbill's Avatar
    Join Date
    Jan 2019
    Location
    The Netherlands
    Posts
    821
    Quote Originally Posted by slartibartfast View Post
    Is there a username/password in the Serveo set up? The instructions say to leave them blank.
    Serveo has the option to use SSH public key authentication (PKA) but that involves public/private rsa keys which are not a traditional username and password and explains why they are to be left blank. Their site explains PKA. You can use serveo without PKA to create an unsecured tunnel, and combine it with apache to reverse-proxy towards your LMS machine with basic auth enforced. More involved but very secure. At least there's no need then to get an SSL cert and DDNS name and open ports. If you did things that way, the server path to fill in would still be serveo but you WOULD then fill in the username and password that you configured for the secondary apache.

    However, ngrok is by far the easiest option and it's very secure.
    Last edited by philchillbill; 2019-09-25 at 12:09.

  9. #9
    Senior Member
    Join Date
    Feb 2011
    Location
    Cheshire, UK
    Posts
    6,217
    Quote Originally Posted by philchillbill View Post
    Serveo has the option to use SSH public key authentication (PKA) but that involves public/private rsa keys which are not a traditional username and password and explains why they are to be left blank. Their site explains PKA. You can use serveo without PKA to create an unsecured tunnel, and combine it with apache to reverse-proxy towards your LMS machine with basic auth enforced. More involved but very secure. At least there's no need then to get an SSL cert and DDNS name and open ports. If you did things that way, the server path to fill in would still be serveo but you WOULD then fill in the username and password that you configured for the secondary apache.

    However, ngrok is by far the easiest option and it's very secure.
    My router - Draytek Vigor - supports SSL Web Proxy with user/pass.
    Https://mypublicipaddress:443 proxies to http://lmsip:9000
    Presumably this would also work?
    Jim
    https://jukeradio.double6.net


    VB2.4 storage QNAP TS419p (NFS)
    Living Room Joggler & Pi4/Khadas -> Onkyo TXNR686 -> Celestion F20s
    Office Joggler & Pi3 -> Denon RCD N8 -> Celestion F10s
    Dining Room SB Radio
    Bedroom (Bedside) Pi Zero+DAC ->ToppingTP21 ->AKG Headphones
    Bedroom (TV) & Bathroom SB Touch ->Denon AVR ->Mordaunt Short M10s + Kef ceiling speakers
    Guest Room Joggler > Topping Amp -> Wharfedale Modus Cubes

  10. #10
    Babelfish's Best Boy mherger's Avatar
    Join Date
    Apr 2005
    Location
    Switzerland
    Posts
    20,602

    [Announce] 'MediaServer' *certified*Alexa skill for LMS

    > Serveo has the option to use SSH public key authentication but that
    > involves public/private rsa keys which are not a traditional username
    > and password and explains why they are to be left blank.


    It's my understanding that this is not being used to protect access to
    the host, but the connection when using a custom domain of yours.

    IMHO ngrok is kind of a cloud based reverse proxy with additional
    features, whereas serveo is much simpler, but mostly a port forwarding
    service. No added http features besides the https wrapper. But your LMS
    would be as exposed to the internet as if you did forward the port on
    your router.

    --

    Michael

Tags for this Thread

Posting Permissions

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