npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

homebridge-mysqueezebox

v0.0.3

Published

mysqueezebox plugin for homebridge: https://github.com/nfarina/homebridge

Downloads

5

Readme

homebridge-mysqueezebox

Homebridge plugin for sending commands to your Squeezebox or compatible through MySqueezebox or Logitech Media Server.

This plugin exposes a Squeezebox as one or more HomeKit accessories which look like dimmable lightbulbs. The way I use it, turning on a “light” starts something playing with an oncommand, and by default turning the "light" off will turn off the Squeezebox, though you can specify a different offcommand if you wish. With Siri, it's relatively natural to say “Turn on thing I want to listen to”, and you can easily incorporate the Squeezebox in HomeKit scenes, for example if you want music to wake up/go to sleep by. Adjust the lightbulb's brightness to control the Squeezebox’s playback volume.

As of version 0.0.3, you can either control your player via MySqueezebox (specify an email and password) or a local Logitech Media Server (specify a serverurl, embedding your username and password if you have one). playerid is the MAC address of your Squeezebox, which you can find in the Player > General section of MySqueezebox, or Settings > Information on Logitech Media Server.

Sample usage

Here are some anonymized snippets from my Homebridge config.json:

MySqueezebox

    "accessories": [
        {
            "accessory": "MySqueezebox",
            "name": "Bedroom Line In",
            "playerid": "PLAYERID",
            "oncommand": ["setlinein", "linein"],
            "email": "EMAIL",
            "password": "PASSWORD"
        },
        {
            "accessory": "MySqueezebox",
            "name": "Bedroom Radio Paradise",
            "playerid": "PLAYERID",
            "oncommand": ["playlist","play","http://stream-dc1.radioparadise.com/mp3-192","Radio Paradise"],
            "email": "EMAIL",
            "password": "PASSWORD"
        },

Logitech Media Server

    "accessories": [
        {
            "accessory": "MySqueezebox",
            "name": "Bedroom Line In",
            "playerid": "PLAYERID",
            "oncommand": ["setlinein", "linein"],
            "serverurl": "http://USERNAME:PASSWORD@LMSHOST:LMSPORT"
        },
        {
            "accessory": "MySqueezebox",
            "name": "Bedroom Radio Paradise",
            "playerid": "PLAYERID",
            "oncommand": ["playlist","play","http://stream-dc1.radioparadise.com/mp3-192","Radio Paradise"],
            "serverurl": "http://USERNAME:PASSWORD@LMSHOST:LMSPORT"
        },

If you're trying to figure out what to include for an oncommand, the JSON RPC interface used by this plugin is quite similar to the Logitech Media Server command-line interface; this is a good reference.

Note that MySqueezebox website sends your email and password in clear text. Don't use any password you care about, or use a local Logitech Media Server instead.

Known issues

MySqueezebox cookies last for a year; the plugin doesn't attempt to deal with cookie expiration or re-login.