Home of the Squeezebox™ & Transporter® network music players.
Page 1 of 7 123 ... LastLast
Results 1 to 10 of 69
  1. #1

    Yet another Remote Control Plugin - SBNetIO

    I just wanted to share a plugin I developed lately. I use it to switch my amps but it can potentially also be usefull for other scenarios as well.

    The project is hosted at code.google.com and I prepared a web page which contains all necessary information:

    http://code.google.com/p/sbnetio/

    This is both, my first LMS plugin and my first perl project. In the course of development the Denon AVP Plugin was an invaluable source of information.

    Hope it is helpful for one or the other. Bug reports, ideas, questions, etc. are very welcome.

    Günther


    Update: An improved Version 0.2 is available. The plugin now supports http-requests and can pause playback to allow amps to get fully up and un-muted

    Update: An improved Version 0.2.5 is available. The plugin now supports the execution of several commands. Cmd parameter fields now accept semi-colon separated lists of individual commands. Timers can be set to delay cmd execution.
    Last edited by cadfish; 2014-01-21 at 14:42. Reason: Update
    Primary System: LMS on Win 7 PC, 4 SBT, 1 Duet, 2 piCorePlayer (HifiMeDIY Sabre II DAC & HifiBerry DAC), 2 Duet Controller, 2 iPods, 1 iPhone (iPeng), Sony XPeria Mini & ION, Android Tablet (SqueezeControl, OrangeSqueeze, SqueezeCommander) -- Secondary System: Mobile Server based on SqueezePlug on RaspBerry PI

    Visit SBNetIO - yet another remote control plugin.

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

    Yet another Remote Control Plugin -SBNetIO

    Just skimmed your page to get an idea what it was... 433MHz
    communication via Pi... just got a new Pi from a pre-Christmas sale for
    cheap... hmm... interesting! Haven't run the plugin yet, but I could see
    some potential here for my own use!

    > http://code.google.com/p/sbnetio/


    Please edit the "Manual installation" section: don't install plugins
    manually to the InstalledPlugins folder. If ever a user decides to use
    the repository instead (which he should be doing to start with anyway)
    this can cause a lot of confusion. Better unzip it inside the
    installation's Plugins folder. Or remove that section all together.
    Users should stick with the repository. Devs should know where to put
    things to start tinkering ;-)

    --

    Michael

  3. #3
    Hi Michael,

    Quote Originally Posted by mherger View Post
    (...) Or remove that section all together. (...)

    I removed that section - thanks for your comment.


    Quote Originally Posted by mherger View Post
    (...) but I could see some potential here for my own use! (...)
    Would be great if its useful for you - a tiny compensation for all your efforts.

    Günther
    Primary System: LMS on Win 7 PC, 4 SBT, 1 Duet, 2 piCorePlayer (HifiMeDIY Sabre II DAC & HifiBerry DAC), 2 Duet Controller, 2 iPods, 1 iPhone (iPeng), Sony XPeria Mini & ION, Android Tablet (SqueezeControl, OrangeSqueeze, SqueezeCommander) -- Secondary System: Mobile Server based on SqueezePlug on RaspBerry PI

    Visit SBNetIO - yet another remote control plugin.

  4. #4
    This looks to be just what I need. I want to update my home automation system (universal devices ISY) with the status of the players as they change by updating a variable in the ISY using the REST interface of the ISY. I think I can just build scripts for the server to execute curl / wget commands to the ISY. Thanks for sharing. I will tinker with this when back from vacation.

    Couple of questions:

    1) What version of LMS does this run / been tested on?
    2) Is python the only server option built today of are there other languages to select from?

    Again thank you.

  5. #5
    Quote Originally Posted by jwagner010 View Post

    1) What version of LMS does this run / been tested on?
    I'm using LMS 7.7.2 - r33893 - this is the only version the plugin is tested for.


    Quote Originally Posted by jwagner010 View Post

    2) Is python the only server option built today of are there other languages to select from?
    I used python because there are plenty examples to start from. Python is very popular on RPi; there are libraries which make the access to the GPIO pins pretty simple. In my server I did not use them because I forward the commands to 433MHz devices, but another option would be to directly switch connected relays - in that case usage of Python would be more beneficial I think.

    Anyway, you can choose a server written in any language - obviously the plugin does not make any assumptions on the server implementation.

    On the SBNetIO Homepage I added a link to a simple server implemented in Java by the NetIO team:

    http://netio.davideickhoff.de/tutorials#pc

    This can be setup in minutes on a PC for test purposes.

    But I think the real problem is, that the plugin currently does only support TCP communication - so, to use it with your ISY device would require to setup a Pi (or whatever hardware) to launch wget/curl scripts to establich a REST based communication between the plugn and the ISY.

    I think best would be to enhance the plugin to also support http - then the plugin could directly communicate with your ISY device without the need of having a intermediate device.

    Support of http was on my roadmap anyway - but since I had no real use case I havn't done it yet. I would appreciate if you could give me some details on the REST cmds you want send, and the expected reaction. Then I will update the plugin accordingly.

    I will leave for ski vacation today and will be back on Jan. 6th. After my return I can do the needed changes.
    Primary System: LMS on Win 7 PC, 4 SBT, 1 Duet, 2 piCorePlayer (HifiMeDIY Sabre II DAC & HifiBerry DAC), 2 Duet Controller, 2 iPods, 1 iPhone (iPeng), Sony XPeria Mini & ION, Android Tablet (SqueezeControl, OrangeSqueeze, SqueezeCommander) -- Secondary System: Mobile Server based on SqueezePlug on RaspBerry PI

    Visit SBNetIO - yet another remote control plugin.

  6. #6
    Thanks that would be awesome.

    All calls to the ISY use the HTTP GET method with basic authentication (ISY requires the AUTHBASIC header) using following format for the URL:

    xxx.xxx.xxx.xxx: port/rest/vars/set/<var-type>/<var-id>/<value>

    More details at:

    http://wiki.universal-devices.com/in...REST_Interface

    Again thank you. Enjoy the skiing may the powder be deep.
    Last edited by jwagner010; 2013-12-27 at 05:47.

  7. #7
    Hi,

    thanks, - I already found that link, and also that there exist Perl libraries to interface with ISY. I looked into them and got the impression (I'm no Perl guy) that they (at least in part) at the end also rely on the REST http interface.

    So, for special wishes usage of those libraries could be needed - but if you are sure you only need things which are supported by RESt, fine. Thats why I asked ...

    However, addition of http support would be the first step anyways.

    Talk to you next year!!

    Gesendet von meinem MD_LIFETAB_P9516 mit Tapatalk 4
    Primary System: LMS on Win 7 PC, 4 SBT, 1 Duet, 2 piCorePlayer (HifiMeDIY Sabre II DAC & HifiBerry DAC), 2 Duet Controller, 2 iPods, 1 iPhone (iPeng), Sony XPeria Mini & ION, Android Tablet (SqueezeControl, OrangeSqueeze, SqueezeCommander) -- Secondary System: Mobile Server based on SqueezePlug on RaspBerry PI

    Visit SBNetIO - yet another remote control plugin.

  8. #8
    Cadfish,

    Interested in when you think http REST support / functionality will be available in your SBNetIO plugin?

    Regards

    Jason

  9. #9
    Hi,

    I pm'd you on thursday that its available - hm, obviously you didn't get that message.

    Anyways, it is there - I did not announce it yet, because I wanted to wait on your experience.

    Please go to

    http//:code.google.com/p/sbnetio

    and grab Version 0.2.

    I updated the configuration section of the homepage; please take look there for info you may need.

    I checked functionality against a simple homebrewn java based http-server. Right now basic auth is only supported if the username and password are profided through the URL:

    e.g. http://<user>:<passwd>@<IP>:<port>/some_path

    As far as I know from the universal devices forum, isy supports this.

    Please check and let me know your findings - have a nice weekend.

    Gesendet von meinem MD_LIFETAB_P9516 mit Tapatalk
    Primary System: LMS on Win 7 PC, 4 SBT, 1 Duet, 2 piCorePlayer (HifiMeDIY Sabre II DAC & HifiBerry DAC), 2 Duet Controller, 2 iPods, 1 iPhone (iPeng), Sony XPeria Mini & ION, Android Tablet (SqueezeControl, OrangeSqueeze, SqueezeCommander) -- Secondary System: Mobile Server based on SqueezePlug on RaspBerry PI

    Visit SBNetIO - yet another remote control plugin.

  10. #10
    Awesome, I will test it when back home tonight.

    Just interested in how the plugin works. Does it continually poll the LMS for status of players or does it subscribe to LMS and get notifications of player changes only when they occur? The reason I ask is this will impact if my unix server that runs LMS will hibernate when not in use. If plugin is continually running / polling the server will never hibernate.

Posting Permissions

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