SageTV Community

SageTV Community (http://forums.sagetv.com/forums/index.php)
-   SageTV v7 Customizations (http://forums.sagetv.com/forums/forumdisplay.php?f=47)
-   -   Plugin: InControl For SageTV/HomeSeer (http://forums.sagetv.com/forums/showthread.php?t=50370)

lamanmi 08-23-2010 05:08 PM

Plugin: InControl For SageTV/HomeSeer
 
IMPORTANT - UPGRADE PROCEDURE FROM 1.0.x:
  • Close Sage (server/service) and do a backup of the entire Sage directory, should you need to return to the pervious verison.
  • Close HomeSeer (server/service) and do a backup of the entire HomeSeer directory, should you need to return to the pervious verison.
  • Access HomeSeer Updater and download/isntall InControl version 1.3.1.
  • Go to Sage TV and update the UI Mod plugin for InControl to version 1.3.1 through the Sage Plugin options
  • Select Control from the Sage main menu, you will be prompted to correct any settings that were not previously set.
Description:

InControl is a plugin for HomeSeer and SageTV. It provides a real-time interactive interface between SageTV and Homeseer. With InControl, you are provided with easy to use, graphical interface in SageTV to control and monitor any HomeSeer devices. In addition, you can use HomeSeer to broadcast messages to SageTV.

Features:
  • Control and/or monitor Thermostats in HomeSeer from within SageTV
  • Control and/or monitor any device in HomeSeer from within SageTV
  • Advanced button configuration of your HomeSeer devices
  • Send messages and alerts from HomeSeer to Sage with Events or Scripts
  • Send any SageCommand commands from HomeSeer to Sage with Events or Scripts
  • HomeSeer Devices for each of your Sage Server UI, Clients, extenders to monitor status and control directly from HomeSeer
  • Web based remote control available from the InControl HomeSeer web page
  • Custom graphic library included for SageTV
  • Secure connection with SageTV via HomeSeer user id and password
Requirements:
  • SageTV 7.0.8 or higher
  • InControl For Sage Plugin (available through SageTV plugin library)
  • HomeSeer 2.0 or higher
  • InControl For HomeSeer Plugin (available through HomeSeer store and updater)
  • HomeSeer and SageTV must be on the same PC or connected via a network
Installation:
  • Be sure to download and install the InControl Plugin for HomeSeer first. It is available through the HomeSeer Updater and Store.
  • Once InControl is running on your HomeSeer server, you can download and install the SageTV component through the plugin manager.
  • Please be sure to review the links below for more information.
More Information:Feeback:
  • Enhancment Requests - There are many other features I am planning to add to this plugin. However, please feel free to post any enhancment ideas and I will do my best to add the capability.
  • Defect Reports - Please post any bugs or issues in this forum.
Version Information:

1.4.0
New Features:
  • Added support for thermostats. There are two types of thermostats that can bee added. (1) Thermostats Supporting the HomeSeer Thermostat API - this will automatically determine the thermostat capability and be pre configured. (2) Custom Thermostats (do not support HomeSeer Thermostat API) - this will require custom interfaces using Scripts to the thermostat.
  • Added capability to customize and send any device control buttons to the client
  • Within HomeSeer scripting, there are 2 new commands available, these will return the full path to the currently playing file:
    Code:

    hs.plugin("InControl_Sage").GetSagePlayingByID "<Sage Device id>"
    hs.plugin("InControl_Sage").GetSagePlayingByName "<Sage Device Description in HomeSeer>"

  • Changed send methed to use threads to avoid delay between events
  • Fixed issue with configuration settings being saved in settings.ini instead of hspi_incontrol.ini
  • HTML being sent as Device Strings was causing issues, added logic to strip out HTML
  • Fixed event not being sent properly when activated by client causing event not to trigger
1.3.6
New Features:
  • Within HomeSeer changed logic for sending updates to Sage to include only Sage devices that have logged in to correct delay when firewalls are involved or when a client is powered down.
  • Within Sage, added property "lamansoft/incontrol/IgnorePing" when set to "true" in Sage.Properties, Sage will not ping for the HomeSeer Server. This will allow easier set up when firewalls are involved.
  • Within Sage changed logic when first registering HomeSeer to ask if a Firewall will be used, if so, "lamansoft/incontrol/IgnorePing" will automatically be set to "true"
  • Refined the Message display in Sage when images are sent to optimize the display.
1.3.5
New Features:
  • Added "Stop" as a status that will appear for the Sage HomeSeer device and as an event to trap. NOTE, with this new status, the an idle device will be "On" until a program is watched and stopped, then the idle status will be "Stop".
  • Fixed erronous triggers (Panel Trigger and Panel Trigger2) from appearing
  • Fixed issue where "Stop" was triggering the Sage On event
  • Fixed issue that caused the messages appearing on Sage to display internal system messages replacing the actual message
  • Fixed issue where the HomeSeer device for Sage does not contain all of the values/graphics causing them to appear blank
1.3.4
New Features:
  • Added "Paused" as additional status to the HomeSeer device for display and event triggering and its associated graphics
  • Added ability for showing the title of the media file playing on the HomeSeer Device for Sage in the device status message
  • Added ability to execute Sage API commands from Event Action Or HomeSeer script (http://download.sage.tv/api/index.html):
    a) hs.plugin("InControl_Sage").SendSageAPIByID "<Sage Device id or All Device>","<Sage API>"
    b) hs.plugin("InControl_Sage").SendSageAPIByName "<Sage Device Description in HomeSeer>","<Sage API>"
  • Added EXPERIMENTAL ability to display a picture on the Messages sent to Sage (the path needs to be full path accessible by Sage):
    a) hs.plugin("InControl_Sage").SendSageMessageByID "<Sage id or All Devices>","<String message>","<Timeout in seconds>","<path to picture file>"
    b) hs.plugin("InControl_Sage").SendSageMessageByName "<Sage Description>","<String message>","<Timeout in seconds>","<path to picture file>"
1.3.3
New Features:
  • Fixed bug where "TV" and "Temperature" were not showing as graphic options in the HomeSeer Device setup
  • Fixed bug where Sage TV combo commands were not listed correctly (i.e. Channel Up & Page Up)
1.3.2
New Features:
  • Added timeout (seconds) for how long messages sent to Sage will appear (0 seconds will keep message on screen until a button is pressed):
    Modified "Action" in HomeSeer event to allow entry of timeout
    hs.plugin("InControl_Sage").SendSageMessageByID "<Sage Device id or All Device>","<String message>","<Timeout in seconds>"
    hs.plugin("InControl_Sage").SendSageMessageByName "<Sage Device Description in HomeSeer>","<String message>","<Timeout in seconds>"
  • Added "Channel Up" and "Channel Down" to the Sage Commands (for Events and Devices)
  • Fixed bug where "Delete" a button on the HomeSeer Device was not working properly
  • Fixed bug where "Right" from a location column with many buttons skipped over the devices column.
  • Added UI control in Sage such that if a Location is "Selected" the focus will move over to the first Device
  • Added Sage graphics for "Garage" and "Sprinkler" status
1.3.1
New Features:
  • Enhanced HomeSeer Device creation and communication, including the ability to assign any SageCommand as a HomeSeer Device Button. Please note, you will need to manual remove the old HomeSeer Devices for Sage.
  • Locations and devices are now sorted alphabetically.
  • Within HomeSeer Device setup, now added the ability to send optionally the Device String or Device Value, instead of the Device Status. This will allow devices, such as temperature sensors or other similar devices to pass their status to HomeSeer. In addition, it will also send the default graphic properly.
1.3.0
New Features:
  • Added "Sage Device" configuration in HomeSeer to allow for each Sage Device (Server UI, Client, Extender or Placeshifter) to have its own settings within Sage. In addition, to showing the basic configration, it will also highlight if the device is on/off and/or playing any media. Note, Sage Servers running as a service will NOT have a "Sage Device" in HomeSeer.
  • InControl now allows HomeSeer to control Sage in the following ways:
    a) While in the "InControl" main web page, you can send basic commands to Sage (including Sending a message to Sage, Sleep, Stop, Extender On/Off, Exit-which will close Sage on a PC).
    b) While in the "InControl" main web page, you can bring up a Web Remote with most options to directly control the "Sage Device" of your choice.
    c) Within HomeSeer Event Actions, you can now select "Sage Command" to send most available actions to all or a specific "Sage Device".
    d) Within HomeSeer Event Actions, you can now select "Sage Message" to send a message to all or a specific "Sage Device".
    Each "Sage Device" can be set up with its own name and can be tied to a HomeSeer device
    e) Within HomeSeer scripting, there are 4 new commands available:
    Code:

        hs.plugin("InControl_Sage").SendSageCommandByID "<Sage Device id or All Device>","<Sage Command>"
        hs.plugin("InControl_Sage").SendSageCommandByName "<Sage Device Description in HomeSeer>","<Sage Command>"
        hs.plugin("InControl_Sage").SendSageMessageByID "<Sage Device id or All Device>","<String message>"
        hs.plugin("InControl_Sage").SendSageMessageByName "<Sage Device Description in HomeSeer>","<String message>"

  • While editing a "Sage Device" in HomeSeer, you may now allow it to create a normal HomeSeer device that will show a status of "On", "Off" or "Playing" for any "Sage Device" that is running InControl. This will allow normal HomeSeer Events to monitor the Change in its DeviceValue to trigger actions when Sage is turned on, off or contect starts playing.
  • Added an InControl background to Sage
1.2.0
New Features:
  • Added capability to Control Events with InControl. To select the Events that Sage will see, click on the "Events" link on the main InControl plugin page. The events will by default go to Sage with the group name being the location and the name of the event being the device. This can be changed to provide a more Sage friendly name. (HomeSeer and Sage)
  • Significantly improved and added step by step progress indication as the Sage configuration is being performed. This will significantly assist in selecting the correct settings for HomeSeer and Sage to communicate (Sage)
  • Added port to the Sage Server/Clients listing in the initial InControl screen Sage Listing (HomeSeer)
  • In Options menu, will automatically try changed port if listner is not active, otherwise will prompt to restart Sage. This eliminates the need to restart Sage while trying to find an available port. (Sage)
  • Added configuration parameter to set custom text for the button that appears in HomeSeer (HomeSeer)
  • Added check for Client vs. Server to set RecPort to different numbers (to avoid conflict of Sage running as a service and running Sage Client on the server)
Bug Fixes:
  • Corrected issue where plugin is being set up initially through an extender prevents the settings to be saved correctly for the server.
  • Corrected issue where running Sage as a service and then starting the Sage UI on the same server as the service would conflict in the port they are using.
1.1.0
New Features:
  • Reconfigured SageTV and HomeSeer Pairing process to eliminate false connections and multiple entries in HS
  • Added capability in HomeSeer to clear all Sage connections
  • Modified each Sage UI to access its own Sage properties fileAdded additional debug tracking capability
1.0.9
Bug Fixes:
  • Added additional debug tracking capability
1.0.8
New Features:
  • Initial version

Moskus 08-24-2010 10:11 AM

Quote:

Originally Posted by lamanmi (Post 444126)
1.3.1
New Features:
  • Enhanced HomeSeer Device creation and communication, including the ability to assign any SageCommand as a HomeSeer Device Button. Please note, you will need to manual remove the old HomeSeer Devices for Sage.
  • Locations and devices are now sorted alphabetically.
  • Within HomeSeer Device setup, now added the ability to send optionally the Device String or Device Value, instead of the Device Status. This will allow devices, such as temperature sensors or other similar devices to pass their status to HomeSeer. In addition, it will also send the default graphic properly.

This... is... totally... awesome! Can't.. write... complete... sentences! :D

Moskus 08-24-2010 10:28 AM

Found the first bug:
Deleting buttons doesn't really delete buttons. :confused:


And what is the command for Next/Previous channel?

lamanmi 08-24-2010 04:27 PM

Quote:

Originally Posted by Moskus (Post 444272)
Found the first bug:
Deleting buttons doesn't really delete buttons. :confused:


And what is the command for Next/Previous channel?

Moskus,

Thanks....I found the delete button issue, will get that corrected in next version. For now, it would be best just to delete the entire device and re add the buttons.

For next/previous channel, you can use Up/Down or Page Up/Page Down. They should send the same command. I will add Channel Up/Channel Down next time around.

Michael

mbowling 08-24-2010 10:17 PM

Quote:

Originally Posted by lamanmi (Post 444126)
Enhanced HomeSeer Device creation and communication, including the ability to assign any SageCommand as a HomeSeer Device Button. Please note, you will need to manual remove the old HomeSeer Devices for Sage.

I'm confused. What is this and how is it used?

Moskus 08-25-2010 02:05 AM

Quote:

Originally Posted by lamanmi (Post 444377)
For next/previous channel, you can use Up/Down or Page Up/Page Down. They should send the same command. I will add Channel Up/Channel Down next time around.

That's what I thought. But Page Up/Down didn't work for some strange reason... :confused:

lamanmi 08-26-2010 04:54 PM

1 Attachment(s)
mbowling,


Quote:

Originally Posted by mbowling (Post 444477)
I'm confused. What is this and how is it used?

Basically it lets you add a Sage UI (on the server, a client, or an extender) as a HomeSeer Device (see attached) that then lets you add your own buttons. For example, in the attached I added Play, Stop and Pause. Obviously you can control this from the InControl web page, events or scripts as well, but this allows you to gather all of your HomeSeer devices in one place.

In addition, I have not tried this, but I believe tools such as HSTouch will also pull these "buttons" directly as actions, making interaction with them utilize built in capabilities within HomeSeer.

Michael

lamanmi 08-26-2010 04:55 PM

Quote:

Originally Posted by Moskus (Post 444507)
That's what I thought. But Page Up/Down didn't work for some strange reason... :confused:

Can you try just "Up" and "Down" also? You can also try to these with an event action "Send Sage Command" to see if it works there as well. I should have a new version with the official "Channel Up" and "Channel Down" by next week.

wberry 08-29-2010 07:44 PM

Caller ID in the Message Box.
 
Michael,

Is there a way to get the HSphone variables $CID_NAME and $CID_NUMBER into the message box - so I can have Homeseer's Way2Call send them directly to Sage?

Bill

mbowling 08-30-2010 11:06 AM

Quote:

Originally Posted by wberry (Post 445438)
Is there a way to get the HSphone variables $CID_NAME and $CID_NUMBER into the message box - so I can have Homeseer's Way2Call send them directly to Sage?

I don't use HomeSeer phone so I'm not familiar with the two variables you mentioned. This is how I send caller ID info using the the WAF-NetCallerID HS plugin. This might point you in the right direction.

This is from a VB script using the s_ncid_name NetCallerID variable which contains the caller's name.

hs.plugin("InControl_Sage").SendSageMessageByName "HD200", s_ncid_name & " is calling"

wberry 08-30-2010 04:22 PM

Thanks. I figured it out after you posted your suggestion.
In VBScript with the hsphone variables this did it:

cname = hsp.CIDName(1)
cnumber = hsp.CIDNumber(1)
hs.plugin("InControl_Sage").SendSageMessageByID "All Devices", "You have a call from:" & cname & " " & cnumber

Bill

mbowling 08-30-2010 09:07 PM

I'm glad that worked for you Bill. I put in a request to Michael to change the behavior when a message is displayed. I asked if the pause could be indefinite so I can answer the phone and not worry about the TV show starting to play again after a few seconds. Maybe the pause length can be configurable? Hopefully we will see this in a future version.

lamanmi 09-05-2010 07:28 AM

Quote:

Originally Posted by Moskus (Post 444507)
That's what I thought. But Page Up/Down didn't work for some strange reason... :confused:

Moskos,

I added Channel Up and Down to the option list in the new version. Can you give it a try?

Moskus 09-05-2010 12:04 PM

Yes! I've just installed it. :)

Moskus 09-05-2010 01:41 PM

1) Channel Up/Down didn't work
2) Deleting buttons does remove the row, but it's not removing the actual button...
EDIT: The button disappeared when I restarted HomeSeer, but that shouldn't be necessary...
;)

mbowling 09-11-2010 09:41 AM

1 Attachment(s)
Michael,

I seem to have lost the "Temperature" selection in the "Default graphic" dropdown list. Yesterday, I had to restore an image on my server from about two weeks ago. This put me back to InControl 1.3.1. So I updated to 1.3.2 in the HomeSeer updater. I then noticed that the "Temperature" selection was missing. I tried reinstalling the plugin again doing a "Repair" from the HomeSeer updater, but it didn't help. How can I get the "Temperature" selection back in the list? Screenshot attached.

Moskus 09-12-2010 12:41 PM

I've done some more testing.

"Page Up"/"Channel Up" and "Page Down"/"Channel Down" is the same as pressing the FF2 and Rev2 on the remove. They do not send a Channel Up or Channel Down signal as when I use the remote, or pressing the Page Up/Down keys on my keyboard when using the Placeshifter.


And is there a list somewhere of all available commands?

lamanmi 09-12-2010 03:55 PM

Plugin: InControl For SageTV/HomeSeer - Version 1.3.3
 
1 Attachment(s)
1.3.3
New Features:
  • Fixed bug where "TV" and "Temperature" were not showing as graphic options in the HomeSeer Device setup
  • Fixed bug where Sage TV combo commands were not listed correctly (i.e. Channel Up & Page Up)
The Sage Commands that InControl support are the ones found in the Sage TV Manual (page 212 - "List of All SageTV Commands"). However, they need to be specified exactly as listed in the attached document.

mbowling 09-12-2010 04:13 PM

Quote:

Originally Posted by lamanmi (Post 448905)
Fixed bug where "TV" and "Temperature" were not showing as graphic options in the HomeSeer Device setup

Version 1.3.3 fixed my problem with the "Temperature" selection in the dropdown list. The "TV" selection is also in the list. Thank you!

Moskus 09-13-2010 02:06 AM

Device buttons with actions "Channel Up/Page Up" works! :)

But the scripting functions don't. ;)


All times are GMT -6. The time now is 07:13 PM.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2020, vBulletin Solutions Inc.
Copyright 2003-2005 SageTV, LLC. All rights reserved.