LmceRemote

From LinuxMCE
Revision as of 22:12, 28 February 2010 by Caiman (Talk | contribs) (Availability)

Jump to: navigation, search

LMCE Remote

LMCE Remote is an iPhone application which can be used to:

  • load available lights from LMCE
  • display the lights status
  • set each light on or off

Screenshots

LmceRemoteLights.jpg LmceRemoteSettings.jpg

The light and room names on this screenshot are in French, but they are retrieved directly from LMCE. They will appear just as you entered them in the lightning wizard.

Intent

Please note, this is not, and is not intended to be a full Orbiter. The goal of this app is to be lightweight so that it remains very responsive even when used over a 3G connection.

Architecture

There were three possible approaches to connect to LMCE:

  • Connect directly to the DCE router
    • Pros:
      • seemed to be the cleanest approach, closed to a real orbiter
    • Cons:
      • need to implement the DCE protocol
      • it is unclear how to obtain a list of the available scenarios through this protocol
      • remote access is difficult because of the lack of authentication mechanism
  • Connect to the web interface
    • Pros:
      • easy to implement for simple actions
      • easier remote access as the web server is often made available externally
    • Cons:
      • requires parsing HTML for more advanced actions and is prone to errors
      • requires double authentication when used for remote access (apache auth, then lmce auth)
  • Implement a WebService
    • Pros:
      • can access all required information in Lmce databases
      • very lean and network efficient
      • easily made available externally with apache authentication
    • Cons:
      • The user needs to install the WebService on the core before it can be used

I have chosen to go for the WebService approach.

Availability

At the moment, the app is in a functionning state (for the features mentioned above). It is however not yet available to the public. Expect it on the app store soon for a small fee.

Beta testers are welcome after they have installed the web service and have it working (check with http://dcerouter/lmce-ws/index.rb?cmd=getLights) In that case, PM me your iPhone device ID

Want to help?

If you want to contribute, packaging the WebService and making it easy to install is the best thing you can do. LMCE needs a good web service. LmceRemote comes with a basic web service that is sufficient for the purposes of this app. But having a clean and robust web service shipped together with LMCE would be fantastic. I am looking for someone who can help package my temporary web service in a nice .deb, and resolve the dependencies (there are some issues with ruby gems). You can pm me (caiman) on the forum.

Upcoming features

Some additional features are being considered for short term:

  • Add a tab with scenarios
  • Add a tab to set security mode