Changes between Version 2 and Version 3 of WikiStart


Ignore:
Timestamp:
2014-02-24 03:02:11 (11 years ago)
Author:
aechelon
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • WikiStart

    v2 v3  
    1 HarmonyHubControl 
     1Logitech Harmony Hub 
    22========= 
    33 
    4 A Qt-based C++ executable to control the Logitech Harmony Hub/Link  
    5 without need of the Logitech Harmony App or Remote. 
    6  
    7 HarmonyHubControl was developed using the pyharmony library as a guide.   
    8 It was written in C++ using Qt to allow simpler packaging than pyharmony 
    9 and to reduce the number of dependencies. 
    10  
    11 HarmonyHubControl was developed particularly to ease Harmony Hub/Link  
    12 integration within home automation systems. 
    13  
    14 Special thanks to jterrace and petele for laying down the groundwork for  
    15 this work to occur by implementing pyharmony. 
    16  
    17  
    18  
    19 Protocol 
    20 -------- 
    21  
    22 As the harmony protocol is based on xmpp (the Jabber protocol).   
    23 A thorough description of the exchanges between the executable, Logitech's 
    24 Harmony Web service, and the Harmony Hub can be found in the included  
    25 PROTOCOL.md file, or in the original pyharmony GitHub repositories at:  
    26  
    27 https://github.com/jterrace/pyharmony/ 
    28 and 
    29 https://github.com/petele/pyharmony/ 
    30  
    31  
    32  
    33 Functionality 
    34 -------------- 
    35  
    36 HarmonyHubControl provides the ability to perform the following functions 
    37 without requiring the Logitech Harmony App or Remote. 
    38  
    39 * Authenticate using Logitech's web service 
    40 * Authenticate to the local harmony device. 
    41 * Query for the harmony's entire configuration information. 
    42 * Request a list of activities and devices from the harmony 
    43 * Request the currently selected activity 
    44 * Start an activity by ID 
    45  
    46  
    47  
    48 Requirements 
    49 ------------ 
    50  
    51 In order to successfully use the executable, it is expected that the following 
    52 are in place: 
    53  
    54 A Harmony Hub/Link that is pre-configured and working properly on the local network 
    55 Your Logitech Harmony login email and password.  These are the same ones used in 
    56 the app or online to edit the Harmony's configuration. 
    57  
    58 The IP address of the Harmony is required. 
    59  
    60  
    61  
    62 Usage 
    63 ----- 
    64  
    65 The command line for HarmonyHubControl is as follows: 
    66  
    67     HarmonyHubControl.exe [email] [password] [harmony_ip] [command (optional)]\n"); 
    68      
    69 where the [email] and [password] parameters are the login credentials used to log  
    70 into your Logitech Harmony account to update the device configuration.  These are 
    71 also the same credentials used with the Harmony app. 
    72  
    73 [harmony_ip] is the IP address of the harmony device on your network 
    74  
    75  
    76 [command] can be any of the following: 
    77  
    78         get_current_activity_id 
    79         list_devices 
    80         list_activities 
    81         start_activity [ID] 
    82         get_config 
    83  
    84  
    85 Typical example usage would be as follows: 
    86  
    87 1) Query the device for a list of activities: 
    88  
    89         HarmonyHubControl.exe your_email@your_email_server.com your_password 192.168.0.XXX list_activities 
    90  
    91 2) Start an activity based on the activity identifiers listed in step 1: 
    92  
    93         HarmonyHubControl.exe your_email@your_email_server.com your_password 192.168.0.XXX start_activity 
    94  
    95 For full argument information simply run the executablewith no parameters. 
    96  
    97  
    98  
    99 Building from Source 
    100 -------------------- 
    101  
    102 Building the executable from source requires an install of Qt. The only version tested is 5.2.0 on  
    103 Microsoft Visual Studio 2010 on Windows (x86) 
    104  
    105 Once Qt is installed, a visual studio project file can be generated using qmake: 
    106  
    107         qmake -tp vc HarmonyHubControl.pro 
    108  
    109 The application has no dependencies beside Qt, therefore Qmake should configure the project file  
    110 automatically to allow compiling and running the application.   
    111  
    112  
    113  
    114 To-do 
    115 -------------------- 
    116  
    117 Finish the "issue_command" interface to allow individual commands to be sent to devices. 
    118 Re-organize the code into a library 
     4The Logitech Harmony Hub Vera plugin allows Vera3 and VeraLite home automation controllers to manage and control a Logitech Harmony Hub/Link.  The plug-in consists of a C++ executable based on the HarmonyHubControl software found on SourceForge.com, cross-compiled for the Vera3/VeraLite, as well as the necessary XML and Luup files required for the Vera UI.