Git Product home page Git Product logo

streamdeck-sonos's Introduction

Sonos Plugin for Elgato Stream Deck

Plugin which allows to control Sonos speakers and get live feedback.

Features

  • Code written in JavaScript
  • Cross-platform (macOS, Windows)
  • Play / Pause with Live Feedback (Album Cover, Artist, Title, Time)
  • Previous & Next Track
  • Change Input Source (Line In, TV, Queue)
  • Play URL from Spotify, TuneIn, Tidal, Deezer and Apple Music
  • Play Sonos Favorites
  • Change Repeat & Shuffle Mode
  • Change Volume

Limitations

The plugin is written in JavaScript which makes it Cross-Platform compatible and can be trusted to not perform anything dangerous.

However, this also comes with some limitations:

  • Speaker Auto Discovery cannot be performed.
    The IP address of the speaker to control has to be entered manually but the IP can be easily retrieved from the Sonos App.
  • Writing to Files not possible.
  • Accessing the clipboard not possible.
  • Can't listen to Push Notifications.
    The plugin has to poll for status changes.

Installation

Download the plugin from the Releases section.

If you double-click the com.genericmale.sonos.streamDeckPlugin file on your machine, Stream Deck will install the plugin.

Development

To generate the installation package, download the DistributionTool from the Elgato Developer Documentation and run it in the project root folder:

.\DistributionTool.exe -b -i src\com.genericmale.sonos.sdPlugin -o release

A simple bash script is provided to generate all the images.
The script requires ImageMagick to be installed and uses the Material Design Icons.

streamdeck-sonos's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

streamdeck-sonos's Issues

Issues with controlling since app update

HI,

does anyone else experience not being able to control their speaker groups anymore since the latest (new app) update?

Neither of my groups ips will work as it seems. Just getting an "!" whenever I press a button.

Thanks!

Publish to Stream Deck Store

Hi! I work with the Elgato Team and would love to get your plugin in the Stream Deck store. I apologize, I know an issue on GitHub is not the best way to contact you, but I couldn't find an email or socials. Feel free to shoot an email over to [email protected] and let us know if there is anything we can help with getting the plugin into the store!

Feature Request: Scrolling Titles

Since the display on buttons are quite small, you can only really show about 10 characters at most at time. It would great if the title is too wide, that it could slowly scroll horizontally, from right to left, pause for a second, then scroll back, pause, and repeat.

P.S. Thank you taking the time to create a Sonos plugin for the Stream Deck. It works quite well for me (I had to restart StreamDeck before it began working). This should absolutely be in the store. ❤️

Play/Pause Issue

Seems like the last update from Sonos broke the play/pause feature. Volume +/- and mute still works but play/pause no longer works. love the plugin and use it daily! Thank you for your work.

does't work

Install OK
Buttons OK
See Title
can't control Sonos box
as i See Title of Song, so I think I right insert the right IP ADRESS
Any other Software needed?
German System

Configuration not saved

Hi,

It seems that the configuration regarding the speaker IP is not being saved/is erased each time streamdeck desktop is restarted.
Are you seeing this issue as well?

Thanks

control more than one room

Thank you very much for the amazing plugin. It works really well and I like it a lot.

I do have one question though.
How is it possible to control two rooms, for example? If I create two profiles in the streamdeck software and have the buttons with 192.168.0.10 for the living room and 192.168.0.11 for the study, for example, all the buttons always change their IP address. This means it is not possible to control different rooms. What am I doing wrong? Or is it not possible at all with this plugin?

Stream Deck + support

Will this be updated to support the Stream Deck+? Specifically I was looking for a way to control my Sonos volume with the dials. Thanks

Stream Deck + not working at all - Anyone else with M1 Silicone have this issue?

It was very easy to download and install plugin. I am also able to add Sonos buttons and the ip addess for my Sonos Amp via the Elgato app for Stream Deck +. But when I try to use plugin the buttons light up with a yellow triangle/exclamation point icon.

Wondering if issue is that I am using M1 Macbook pro, or maybe plugin doesn't work with Sonos Amps?

Any assistance or advice would be much appreciated!

Installation not possible

I double clicked the plugin on my windows 11 desktop "com.genericmale.sonos.streamDeckPlugin". But nothing happens and I can't see the plugin on my stream deck software. How do I have to install this plugin?

Sonos speaker is randomly starting

Since adding this to my stream deck and setting up a bunch of buttons, I've found that my sonos will start playing again randdomly when i'm not in the room nor pressing the stream deck buttons. It's like my computer is waking up from sleep and the stream deck starts making calls.

Play Favorites: Apple Music User Station

When using Play Favorites, choosing most stations seems to work on, but for some reason when I choose to play the Apple created user station, in my case s Station, it doesn't work, and I get the yellow exclamation icon on the Stream Deck.

All other stations seem to work ok, just not this one.
Screenshot 2022-10-18 104019

Cannot Change Source

Hi - Thanks for building this. I'm eager for it to work because this is functionality I'd love to have from my stream deck.

I installed and now see the plugin in the Stream Deck configuration.

I added a button for "Change Source."

I set the Speaker IP (which I got from the mobile app).

I select the source I want from the dropdown.

When I press the button I get the error icon (yellow !).

The same happened when I created buttons for play/pause, next track, and volume up.

Sonos Amp
Sonos OS: S2
Version 14.8 (build 68329170)

CleanShot 2022-05-26 at 07 55 24@2x

Speakers Joined for Stereo have multiple IPs

I cant this to work at all and there seems to be no troubleshooting docs or a config file to adjust ports and such. I did install the sonos windows app after adding the plugin but no luck. :(

image

I'm stumped...

Anyway, the plugin wants an ip address but I have two sonos speakers joined for stereo but they each have their own IP address not sure this would work to control both speakers. Maybe Sonos handles it on the back end.

Cover not working on stream deck

Hi

I have Sonos on my Stream Deck. It shows me only the Play icon. I would like the cover. The checkbox "Show on button" is active.

What can I do, to show the Cover?

Screenshot 2024-01-31 145009

Best
feron

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.