Difference between revisions of "LmceRemote"

From LinuxMCE
Jump to: navigation, search
(Architecture)
Line 15: Line 15:
 
There were three possible approaches to connect to LMCE:
 
There were three possible approaches to connect to LMCE:
  
=== Connect directly to the DCE router ===
+
* Connect directly to the DCE router
Pros:
+
** Pros:
- seemed to be the cleanest approach, closed to a real orbiter
+
*** seemed to be the cleanest approach, closed to a real orbiter
Cons:
+
** Cons:
- need to implement the DCE protocol
+
*** need to implement the DCE protocol
- it is unclear how to obtain a list of the available scenarios through this 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
+
*** remote access is difficult because of the lack of authentication mechanism
  
=== Connect to the web interface ===
+
* Connect to the web interface
Pros:
+
** Pros:
- easy to implement for simple actions
+
*** easy to implement for simple actions
- easier remote access as the web server is often made available externally
+
*** easier remote access as the web server is often made available externally
Cons:
+
** Cons:
- requires parsing HTML for more advanced actions and is prone to errors
+
*** 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)
+
*** requires double authentication when used for remote access (apache auth, then lmce auth)
  
=== Implement a web service ===
+
* Implement a web service
Pros:
+
** Pros:
- can access all required information in Lmce databases
+
*** can access all required information in Lmce databases
- very lean and network efficient
+
*** very lean and network efficient
- easily made available externally with apache authentication
+
*** easily made available externally with apache authentication
Cons:
+
** Cons:
- The user needs to install the web service on the core before it can be used
+
*** The user needs to install the web service on the core before it can be used
  
 
I have chosen to go for the web service approach.
 
I have chosen to go for the web service approach.

Revision as of 17:40, 28 February 2010

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

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 web service
    • 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 web service on the core before it can be used

I have chosen to go for the web service approach.

Upcoming features

Some additional features are being seriously considered:

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