PDA

View Full Version : Best Way to Globally customise menus



nolan
2008-05-07, 17:40
I've got 3 Squeezeboxes around the house and I'm looking for the best way to setup the same custom menu structure for each?

It's nothing complex but I like to remove the menus I don't use and just have the ones I use all the time, i.e. Album, Artist & AlienBBC at the root level.

What's the best way to achieve this? I've previously done it manually but it's frustrating when these settings get lost due to server upgrades (or more likely just me fiddling with things) so I figure there must be a quicker way of doing this....

peterw
2008-05-07, 17:57
Right now, I fear that editing the .pref files might be best.

I've given some thought to a plugin that would make this stuff easier (http://forums.slimdevices.com/showthread.php?t=40924) but have not written anything yet.

JJZolx
2008-05-07, 20:26
Right now, I fear that editing the .pref files might be best.

I've given some thought to a plugin that would make this stuff easier (http://forums.slimdevices.com/showthread.php?t=40924) but have not written anything yet.

IMO, some type of player management needs to become a part of the main server settings rather than implemented as a plugin. As SqueezeCenter bills itself more and more as a multi-zone music solution this ability becomes essential. Nobody should be editing prefs files except in rare situations and these types of requests have become increasingly common.

Some enhancement requests have been filed and some interest expressed from the powers that be, but obviously Logitech's developer resources are spread pretty thin. This isn't the type of thing that is handled well by a third party plugin, with users needing to rely on plugin updates as new versions of the server come out. It needs to always work. This feature also needs to deal with new versions of hardware players as they come out, with new settings and new defaults for each one, so relying on a plugin developer to keep up would be a poor choice.

peterw
2008-05-07, 20:55
IMO, some type of player management needs to become a part of the main server settings rather than implemented as a plugin.
...
Some enhancement requests have been filed and some interest expressed from the powers that be, but obviously Logitech's developer resources are spread pretty thin...

OK, well, why doncha start writing patches to the server core?


This isn't the type of thing that is handled well by a third party plugin, with users needing to rely on plugin updates as new versions of the server come out. It needs to always work. This feature also needs to deal with new versions of hardware players as they come out, with new settings and new defaults for each one, so relying on a plugin developer to keep up would be a poor choice.

I'm not aware of any technical reason this couldn't be done in a plugin. As for whether the plugin is Official or Third Party, well, I don't much care. I don't think Logitech will adopt this as an Official plugin or set of features unless they perceive a high demand -- after all, including this with the official release means they'd need to invest $$$ testing and supporting it. New hardware causing trouble? I think you're getting a little pessimistic, even by your standards. ;-)

JJZolx
2008-05-07, 21:18
As for whether the plugin is Official or Third Party, well, I don't much care.

Users care when plugins are not kept current or don't work in the development branch that they're following. Core features are less likely to remain broken for long, let alone abandoned by a plugin developer that has found other things to do.

I don't want to discourage anyone from developing any plugin they like. I just want to express my feelings that this is a long needed feature of the server itself. Like I said before, I think that this is already acknowledged, just not highest priority at the moment.

mherger
2008-05-07, 22:29
> This isn't the type of thing that is handled
> well by a third party plugin, with users needing to rely on plugin
> updates as new versions of the server come out.

IMHO this is would be a _great_ opportunity for a plugin developer. If it's well done, it can eventually end up in the main distribution, as so many plugins did (RandomMix, SongScanner, new Favorites, old ShoutcastBrowser...). We have to prioritize resources. As much as we like the idea of that feature, I'm sorry it's not high enough on our schedule (most of us developers probably have more players to manage than the paying client ;-)). We would _love_ to see this happen.

> work. This feature also needs to deal with new versions of hardware
> players as they come out, with new settings and new defaults for each
> one, so relying on a plugin developer to keep up would be a poor
> choice.

If you provide that very cool plugin to our community, then you can be sure to get all the information needed to keep it up to date with new products before they hit the stores. Eg. kdf and triode have been part of the core development for years. And I knew about Transporter and its two displays in time to get MusicInfoSCR working on it weeks before they were shipped. And as you know there has been a long beta period for the Controller, too.

--

Michael

mherger
2008-05-07, 22:43
> IMHO this is would be a _great_ opportunity for a plugin developer. If it's well done, it can eventually end up in the main distribution, as so many plugins did (RandomMix, SongScanner, new Favorites, old ShoutcastBrowser...).

Oh, I almost forgot to mention the often asked for "switch server" feature. I had a plugin doing this (ServerSwitcher). Yesterday I built it in to SC 7.1.

--

Michael

kdf
2008-05-07, 22:45
On 7-May-08, at 10:29 PM, Michael Herger wrote:

>> This isn't the type of thing that is handled
>> well by a third party plugin, with users needing to rely on plugin
>> updates as new versions of the server come out.
>
> IMHO this is would be a _great_ opportunity for a plugin developer.
> If it's well done, it can eventually end up in the main
> distribution, as so many plugins did (RandomMix, SongScanner, new
> Favorites, old ShoutcastBrowser...).

yet, I can certainly see that it would be very hard to write a plugin
that would simply merge into the server in a ways that would be nice
to see as an integrated solution. Imagine a button on the settings
pages that simply says "set as default". Then any new player uses
those settings as default. Maybe another pulldown that selects a
player but has the "apply to player x" as options.

Then again, it's a simple ui for a global copy of prefs from one
player to another. One page, two pulldowns and maybe an output section
showing the raw prefs for the chosen source and destination client.

-k

mherger
2008-05-07, 23:08
> yet, I can certainly see that it would be very hard to write a plugin
> that would simply merge into the server in a ways that would be nice
> to see as an integrated solution.

Rather than have this button on every page I'd see one separate page where you can select which settings you want to replicate.

--

Michael

nolan
2008-05-08, 03:39
Thanks guys, I didn't realise there wouldn't be a simple answer to this :)

Thinking about it, if the player settings dropdown had a 'master' section and then the individual player sections had an 'inherit master settings' or similar then this would achieve what I want.

Shame I'm not much of a developer :(

peterw
2008-05-09, 21:06
On 7-May-08, at 10:29 PM, Michael Herger wrote:
[color=green]
> IMHO this is would be a _great_ opportunity for a plugin developer.
> If it's well done, it can eventually end up in the main
> distribution, as so many plugins did (RandomMix, SongScanner, new
> Favorites, old ShoutcastBrowser...).

...

Then again, it's a simple ui for a global copy of prefs from one
player to another. One page, two pulldowns and maybe an output section
showing the raw prefs for the chosen source and destination client.


OK, see http://www.tux.org/~peterw/slim/SettingsManager.html :-)

I'd still like to implement a couple ideas I laid out in http://forums.slimdevices.com/showthread.php?t=40924
1) an API for other plugins (SaverSwitcher could really use that!)
2) the ability to drill down and choose specific settings rather than simply full namespaces as the plugin currently allows
Pretty much all the other ideas are in the plugin now.
Plus it could use some Web cleanup & JavaScript helpers.

I'd love to hear feedback.

-Peter

Mnyb
2008-05-10, 00:32
Why not a user configurable "template" for players not yet connected especially "internet" players as softsqueeze or winamp itunes whatever, when your connecting from the outside world (not your home net ). Not only for the menus, there other player settings i like to have on my remote conection.

The server seem to remember some settings for my remote streaming's but it is not user configurable.

And again that old one about file format preferences for every player.

peterw
2008-05-10, 05:35
Why not a user configurable "template" for players not yet connected especially "internet" players as softsqueeze or winamp itunes whatever, when your connecting from the outside world (not your home net ). Not only for the menus, there other player settings i like to have on my remote conection.

SettingsManager will automatically apply "Local Default" settings to new SoftSqueeze clients, and "Web Default" to new WinAmp, etc. connections. I just tweaked the info Web page to clarify that. SettingsManager can copy virtually all "per-player" settings (minus some that don't make sense like setting the player name, current volume, and power status). You just need to set up one player's config the way you like it and use SettingsManager to copy its settings to Local Default or Web Default as appropriate.

-Peter

nolan
2008-05-10, 15:28
OK, see http://www.tux.org/~peterw/slim/SettingsManager.html :-)

I'd still like to implement a couple ideas I laid out in http://forums.slimdevices.com/showthread.php?t=40924
1) an API for other plugins (SaverSwitcher could really use that!)
2) the ability to drill down and choose specific settings rather than simply full namespaces as the plugin currently allows
Pretty much all the other ideas are in the plugin now.
Plus it could use some Web cleanup & JavaScript helpers.

I'd love to hear feedback.

-Peter

That's excellent. I've just used it to clone the setup on my players and I like the fact that it can clone the player settings plus the random mix settings.

The only thing that confused me was when I ticked the 'server' box and overwrote my player name settings but that was quickly resolved!

peterw
2008-05-10, 17:17
The only thing that confused me was when I ticked the 'server' box and overwrote my player name settings but that was quickly resolved!

Eek. Yeah, that's a bug -- it should know better than to copy that, and a number of other settings. I just released "7a3" which seems to have that bug fixed.

Sorry for the trouble, and thanks for letting me know!