Author Topic: Configuring Elk phone ring sensor during limited period.  (Read 3878 times)

Deane Johnson

  • Sr. Member
  • ****
  • Posts: 271
    • View Profile
Configuring Elk phone ring sensor during limited period.
« on: March 30, 2012, 11:45:46 am »
We operate a home based business and occasionally the phone rings while we're watching a movie during the evening.  Since it's a dark front projection theater, the phone needs to stop the movie and turn up the lights.

I have purchased two Elk phone ring sensors and have hooked them up to X-10 PowerFlash modules.  So far, they work perfect, outputting an X-10 lights ON signal when the phone rings.

I have configured a basic Rule that responds to the X-10 command and pauses the DVD player and turns the lights up.  Works well every time.

Now the issue.  I only want it to work while watching a movie.  I'm looking for ideas on how to have it non-functioning at all other times.

There are a couple of possible ways I can think of.  One would be to somehow have the rule turned on when I run the Start Theater Rule sequence.  Another possibility would be to have it only work during the two hour period we usually watch a movie each evening.

Trouble is, I have no idea how to accomplish one of these approaches.  Anybody got any ideas?

Thanks

Deane

John Hughes

  • Administrator
  • Hero Member
  • *****
  • Posts: 2851
    • View Profile
    • Codecore Technologies
Re: Configuring Elk phone ring sensor during limited period.
« Reply #1 on: April 01, 2012, 08:56:19 pm »
Do you have a way to detect when you start the movie? If so you could set a global variable at that time... then you would clear (or change) the variable when you pause or stop the movie.

Then in your "Rule that responds to the X-10 command" add a condition that checks the value of the global variable.
John Hughes
Codecore Technologies

Deane Johnson

  • Sr. Member
  • ****
  • Posts: 271
    • View Profile
Re: Configuring Elk phone ring sensor during limited period.
« Reply #2 on: April 02, 2012, 02:59:10 am »
Everything in the home theater is now directly controlled by Elve.  There is a command from the remote (iPad) labelled "Theater On".  It runs a Rule that turns on all of the equipment, sets the lights, etc.

No doubt it would be ideal for setting a global variable as suggested.

Following the movie there is a Rule triggering command labeled "Theater Off" that could disable the global variable.

Deane Johnson

  • Sr. Member
  • ****
  • Posts: 271
    • View Profile
Re: Configuring Elk phone ring sensor during limited period.
« Reply #3 on: April 02, 2012, 11:08:11 am »
I think I have my Rule set up correct.  It leads with the line "Run the following indented actions if   value of variable name PhoneRing is the same as true.  The Action string ends with End of conditional list of actions.

However, the Rule is not finding the Global Variable to determine if it is indeed "true".  I get two error messages, but the main message seems to be this:

An error occurred while executing the script TouchScreen.Button2.OnMouseClick.
ScriptEvaluatorException: The name 'PhoneRing' does not exist in the current context.


In the Devices window, the Associated Rules tab indicates "There are no rules associated with this device."

In my Button Properties - Event Actions for the "Theater On" button located on the Touch Screen (in builder), the final entry is "Set Global Variables variable value of variable named PhoneRing to true."

Somehow, it seems I am not creating a variable named PhoneRing for the Rule to poll.

Is there somewhere I need to declare a Global Variable?

John Hughes

  • Administrator
  • Hero Member
  • *****
  • Posts: 2851
    • View Profile
    • Codecore Technologies
Re: Configuring Elk phone ring sensor during limited period.
« Reply #4 on: April 02, 2012, 12:52:48 pm »
I think I have my Rule set up correct.  It leads with the line "Run the following indented actions if   value of variable name PhoneRing is the same as true.  The Action string ends with End of conditional list of actions.
That sounds correct.

Quote
However, the Rule is not finding the Global Variable to determine if it is indeed "true".  I get two error messages, but the main message seems to be this:

An error occurred while executing the script TouchScreen.Button2.OnMouseClick.
ScriptEvaluatorException: The name 'PhoneRing' does not exist in the current context.

Your button should set the variable even if it does not exist so I would not expect to see that error. I will test that here to make sure it works.  Howecer you can probably avoid this issue by editing your global variables driver and adding the variable name with an initial value of false. This will cause the variable to be set to false as soon as the driver starts.

Quote
In the Devices window, the Associated Rules tab indicates "There are no rules associated with this device."

In my Button Properties - Event Actions for the "Theater On" button located on the Touch Screen (in builder), the final entry is "Set Global Variables variable value of variable named PhoneRing to true."

Somehow, it seems I am not creating a variable named PhoneRing for the Rule to poll.

Is there somewhere I need to declare a Global Variable?
The line you added should set the variable. Can you post the script for both your rule, and for your Theater On button?
John Hughes
Codecore Technologies

Deane Johnson

  • Sr. Member
  • ****
  • Posts: 271
    • View Profile
Re: Configuring Elk phone ring sensor during limited period.
« Reply #5 on: April 02, 2012, 01:12:17 pm »
Script for Theater On button.

lighting.TurnOnLight(21);
lighting2.TurnOffLight(111);
ir.AV7005.ON();
lighting2.TurnOnLight(196);
lighting2.TurnOnLight(148);
lighting.TurnOnLight(22);
lighting.TurnOnLight(20);
Scenes.Easyrisealldown();
lighting.SetLightLevel(4, 60);
vars.SetVariableValue(PhoneRing, true);

Script for Rule:

if ( PhoneRing == true )
{
   lighting2.SetLightLevel(97, 50);
   ir.DVD.Pause();
   lighting.SetLightLevel(4, 60);
   lighting2.TurnOnLight(108);
   lighting2.SetLightLevel(107, 50);
}


Complete Error Message:

Date:     4/2/2012
Time:     2:51 PM
Severity: Error
Source:   MasterService
Computer: DEANE
Context Type: Script
Context Name: rule 'Phone Ring 333-4247'
Description:
An error occurred while executing the script rule 'Phone Ring 333-4247'.
ScriptEvaluatorException: The name 'PhoneRing' does not exist in the current context.

CodecoreTechnologies.Elve.DriverFramework.Scripting.ScriptEvaluatorException: The name 'PhoneRing' does not exist in the current context.
   at Common.ScriptEvaluator.ScriptEvaluator.equality()
   at Common.ScriptEvaluator.ScriptEvaluator.bitwiseAnd()
   at Common.ScriptEvaluator.ScriptEvaluator.bitwiseExclusiveOr()
   at Common.ScriptEvaluator.ScriptEvaluator.bitwiseInclusiveOr()
   at Common.ScriptEvaluator.ScriptEvaluator.logicalAnd()
   at Common.ScriptEvaluator.ScriptEvaluator.logicalOr()
   at Common.ScriptEvaluator.ScriptEvaluator.factor()
   at Common.ScriptEvaluator.ScriptEvaluator.multiplicative()
   at Common.ScriptEvaluator.ScriptEvaluator.additive()
   at Common.ScriptEvaluator.ScriptEvaluator.bitwiseShift()
   at Common.ScriptEvaluator.ScriptEvaluator.relational()
   at Common.ScriptEvaluator.ScriptEvaluator.equality()
   at Common.ScriptEvaluator.ScriptEvaluator.bitwiseAnd()
   at Common.ScriptEvaluator.ScriptEvaluator.bitwiseExclusiveOr()
   at Common.ScriptEvaluator.ScriptEvaluator.bitwiseInclusiveOr()
   at Common.ScriptEvaluator.ScriptEvaluator.logicalAnd()
   at Common.ScriptEvaluator.ScriptEvaluator.logicalOr()
   at Common.ScriptEvaluator.ScriptEvaluator.variableAssignment()
   at Common.ScriptEvaluator.ScriptEvaluator.ifKeyword()
   at Common.ScriptEvaluator.ScriptEvaluator.tryKeyword()
   at Common.ScriptEvaluator.ScriptEvaluator.newKeyword()
   at Common.ScriptEvaluator.ScriptEvaluator.objectMemberAndArrayMember()
   at Common.ScriptEvaluator.ScriptEvaluator.postIncrementDecrement()
   at Common.ScriptEvaluator.ScriptEvaluator.factor()
   at Common.ScriptEvaluator.ScriptEvaluator.multiplicative()
   at Common.ScriptEvaluator.ScriptEvaluator.additive()
   at Common.ScriptEvaluator.ScriptEvaluator.bitwiseShift()
   at Common.ScriptEvaluator.ScriptEvaluator.relational()
   at Common.ScriptEvaluator.ScriptEvaluator.equality()
   at Common.ScriptEvaluator.ScriptEvaluator.bitwiseAnd()
   at Common.ScriptEvaluator.ScriptEvaluator.bitwiseExclusiveOr()
   at Common.ScriptEvaluator.ScriptEvaluator.bitwiseInclusiveOr()
   at Common.ScriptEvaluator.ScriptEvaluator.logicalAnd()
   at Common.ScriptEvaluator.ScriptEvaluator.logicalOr()
   at Common.ScriptEvaluator.ScriptEvaluator.variableAssignment()
   at Common.ScriptEvaluator.ScriptEvaluator.evaluateBlock()
   at Common.ScriptEvaluator.ScriptEvaluator.evaluate(ScriptParser parser, ScriptVariableCollection variables, GlobalFunctionEvaluatorDelegate globalFunctionEvaluator, ScriptObjectTypeInfoCollection objectInfos, ScriptFunctionInfoCollection scriptFunctionInfos)
   at Common.ScriptEvaluator.ScriptEvaluator.Evaluate(ScriptParser parser, ScriptVariableCollection variables, GlobalFunctionEvaluatorDelegate globalFunctionEvaluator, ScriptObjectTypeInfoCollection objectInfos, ScriptFunctionInfoCollection scriptFunctionInfos)
   at Common.ScriptEvaluator.ScriptEvaluator.Evaluate(String s, ScriptPosition position, ScriptVariableCollection variables, GlobalFunctionEvaluatorDelegate globalFunctionEvaluator, ScriptObjectTypeInfoCollection objectInfos, ScriptFunctionInfoCollection scriptFunctionInfos)
   at Common.ScriptEvaluator.ScriptEvaluator.Evaluate(String s, ScriptVariableCollection variables, GlobalFunctionEvaluatorDelegate globalFunctionEvaluator, ScriptObjectTypeInfoCollection objectInfos, ScriptFunctionInfoCollection scriptFunctionInfos)
   at Common.ScriptEvaluator.ScriptEvaluator.Evaluate(String s, ScriptVariableCollection variables, GlobalFunctionEvaluatorDelegate globalFunctionEvaluator, ScriptObjectTypeInfoCollection objectInfos)
   at Common.ScriptEvaluator.ScriptEvaluator.EvaluateNow(String s, ScriptVariableCollection variables, GlobalFunctionEvaluatorDelegate globalFunctionEvaluator, ScriptObjectTypeInfoCollection objectInfos)
   at MasterService.ScriptRunner.RunNow(String scriptName, String script, ScriptVariableCollection extraScriptVariables, Boolean throwError)
Location in script: line 1, column 6.
if ( PhoneRing == true )
     ^


John Hughes

  • Administrator
  • Hero Member
  • *****
  • Posts: 2851
    • View Profile
    • Codecore Technologies
Re: Configuring Elk phone ring sensor during limited period.
« Reply #6 on: April 02, 2012, 01:44:07 pm »
Your RULE is specifying a local script variable, not a global variable.  You need to change your condition to reference  your global variable driver's PhoneRing variable.

Select the 1st parameter in the condition line, then in the Action List Item parameter editor popup window, select the 'From Device' tab. Then expand the global variables driver item and select Get Variable Value. Click Ok.

Then back in you list you will see "var1" name in the condition line. Click it and change it to PhoneRing.
John Hughes
Codecore Technologies

Deane Johnson

  • Sr. Member
  • ****
  • Posts: 271
    • View Profile
Re: Configuring Elk phone ring sensor during limited period.
« Reply #7 on: April 02, 2012, 06:07:02 pm »
No joy.  I've gone over the instructions multiple times and find it hard to believe I've made a mistake.

My Rule line now reads:

"Run the following indented actions if the Global Variables PhoneRing variable value is the same as true"

The resulting script is:

if ( vars.GetVariableValue(@"PhoneRing") == true )
{
   lighting2.SetLightLevel(97, 50);
   ir.DVD.Pause();
   lighting.SetLightLevel(4, 60);
   lighting2.TurnOnLight(108);
   lighting2.SetLightLevel(107, 50);
}

In the Devices window:

Enabled is checked
Persist Variables value is "yes"
On the Associated Rules tab under Configured Device Rules there is the message "There are no rules associated with this device"


The script for the Event Actions on the Touch Screen button are:

lighting.TurnOnLight(21);
lighting2.TurnOffLight(111);
ir.AV7005.ON();
lighting2.TurnOnLight(196);
lighting2.TurnOnLight(148);
lighting.TurnOnLight(22);
lighting.TurnOnLight(20);
Scenes.Easyrisealldown();
lighting.SetLightLevel(4, 60);
vars.SetVariableValue(PhoneRing, true);



The error logs shows:

Date:     4/2/2012
Time:     7:53 PM
Severity: Error
Source:   MasterService
Computer: DEANE
Context Type: Script
Context Name: TouchScreen.Button2.OnMouseClick
Description:
An error occurred while executing the script TouchScreen.Button2.OnMouseClick.
ScriptEvaluatorException: The name 'PhoneRing' does not exist in the current context.

CodecoreTechnologies.Elve.DriverFramework.Scripting.ScriptEvaluatorException: The name 'PhoneRing' does not exist in the current context.
   at Common.ScriptEvaluator.ScriptEvaluator.getFunctionParameters()
   at Common.ScriptEvaluator.ScriptEvaluator.objectMemberAndArrayMember()
   at Common.ScriptEvaluator.ScriptEvaluator.postIncrementDecrement()
   at Common.ScriptEvaluator.ScriptEvaluator.factor()
   at Common.ScriptEvaluator.ScriptEvaluator.multiplicative()
   at Common.ScriptEvaluator.ScriptEvaluator.additive()
   at Common.ScriptEvaluator.ScriptEvaluator.bitwiseShift()
   at Common.ScriptEvaluator.ScriptEvaluator.relational()
   at Common.ScriptEvaluator.ScriptEvaluator.equality()
   at Common.ScriptEvaluator.ScriptEvaluator.bitwiseAnd()
   at Common.ScriptEvaluator.ScriptEvaluator.bitwiseExclusiveOr()
   at Common.ScriptEvaluator.ScriptEvaluator.bitwiseInclusiveOr()
   at Common.ScriptEvaluator.ScriptEvaluator.logicalAnd()
   at Common.ScriptEvaluator.ScriptEvaluator.logicalOr()
   at Common.ScriptEvaluator.ScriptEvaluator.variableAssignment()
   at Common.ScriptEvaluator.ScriptEvaluator.evaluateBlock()
   at Common.ScriptEvaluator.ScriptEvaluator.evaluate(ScriptParser parser, ScriptVariableCollection variables, GlobalFunctionEvaluatorDelegate globalFunctionEvaluator, ScriptObjectTypeInfoCollection objectInfos, ScriptFunctionInfoCollection scriptFunctionInfos)
   at Common.ScriptEvaluator.ScriptEvaluator.Evaluate(ScriptParser parser, ScriptVariableCollection variables, GlobalFunctionEvaluatorDelegate globalFunctionEvaluator, ScriptObjectTypeInfoCollection objectInfos, ScriptFunctionInfoCollection scriptFunctionInfos)
   at Common.ScriptEvaluator.ScriptEvaluator.Evaluate(String s, ScriptPosition position, ScriptVariableCollection variables, GlobalFunctionEvaluatorDelegate globalFunctionEvaluator, ScriptObjectTypeInfoCollection objectInfos, ScriptFunctionInfoCollection scriptFunctionInfos)
   at Common.ScriptEvaluator.ScriptEvaluator.Evaluate(String s, ScriptVariableCollection variables, GlobalFunctionEvaluatorDelegate globalFunctionEvaluator, ScriptObjectTypeInfoCollection objectInfos, ScriptFunctionInfoCollection scriptFunctionInfos)
   at Common.ScriptEvaluator.ScriptEvaluator.Evaluate(String s, ScriptVariableCollection variables, GlobalFunctionEvaluatorDelegate globalFunctionEvaluator, ScriptObjectTypeInfoCollection objectInfos)
   at Common.ScriptEvaluator.ScriptEvaluator.EvaluateNow(String s, ScriptVariableCollection variables, GlobalFunctionEvaluatorDelegate globalFunctionEvaluator, ScriptObjectTypeInfoCollection objectInfos)
   at MasterService.ScriptRunner.RunNow(String scriptName, String script, ScriptVariableCollection extraScriptVariables, Boolean throwError)
Location in script: line 10, column 23.

vars.SetVariableValue(PhoneRing, true)
                      ^



John Hughes

  • Administrator
  • Hero Member
  • *****
  • Posts: 2851
    • View Profile
    • Codecore Technologies
Re: Configuring Elk phone ring sensor during limited period.
« Reply #8 on: April 02, 2012, 08:25:35 pm »
Your rule is now good.

Your action is incorrect...

vars.SetVariableValue(PhoneRing, true);

IT SHOULD BE:

vars.SetVariableValue("PhoneRing", true);

Notice the missing quotes.

What tab did you use to enter PhoneRing when editing the condition? I suspect you used the variable tab... which again is a local variable name.  Please let me know.
John Hughes
Codecore Technologies

Deane Johnson

  • Sr. Member
  • ****
  • Posts: 271
    • View Profile
Re: Configuring Elk phone ring sensor during limited period.
« Reply #9 on: April 03, 2012, 03:34:16 am »
I used the Custom Value tab which is the one that pops up when you click on it.

It doesn't allow me to add quotation marks anywhere.  It won't take them, it will only take letters.

When I look at the Action List in "Preview Script", it shows quotation marks, as shown in the script in the earlier post above.

John Hughes

  • Administrator
  • Hero Member
  • *****
  • Posts: 2851
    • View Profile
    • Codecore Technologies
Re: Configuring Elk phone ring sensor during limited period.
« Reply #10 on: April 03, 2012, 12:52:11 pm »
When I look at the Action List in "Preview Script", it shows quotation marks, as shown in the script in the earlier post above.

That's odd because when you run the script the error doesn't show quotes. Are you specifying that the value is a string?
Code: [Select]
vars.SetVariableValue(PhoneRing, true)
                      ^

You can just replace that action line item with a new Script action. Paste the following code into the script editor:
Code: [Select]
vars.SetVariableValue("PhoneRing", true)
John Hughes
Codecore Technologies

Deane Johnson

  • Sr. Member
  • ****
  • Posts: 271
    • View Profile
Re: Configuring Elk phone ring sensor during limited period.
« Reply #11 on: April 03, 2012, 02:10:20 pm »
It appears that we may have joy.  I don't want to get too excited until I've operated it for a few days, but running a couple of cycles of tests it appears to function as intended, that is, when the Theater On is activated, the Rule is also turned ON and when the Theater Off is activated, the Rule is withheld from executing.

I pasted your bottom code line into the Script Editor for the button Action List in the Touch Screen Editor.  It did not have quotation marks before, it does now.  That appears to have provided the solution.

Since I was as my earliest point in setting this up originally, I may very well have used the Local Variable option which then caused the problem.

Even though it appears at this point to be working properly, I am still getting the following error message.  In addition to what we have been addressing here, I have also checked the "ignore successive executions" for a period of 60 seconds.  This is necessary to avoid a second ring from toggling the player pause back on.  That feature appears to be working properly.

John, above all, remember that at my age I don't remember what I did 2 minutes ago, but I appreciate your patience. 

Date:     4/3/2012
Time:     3:47 PM
Severity: Error
Source:   MasterService
Computer: DEANE
Context Type: Script
Context Name: TouchScreen.Button21.OnMouseClick
Description:
An error occurred while executing the script TouchScreen.Button21.OnMouseClick.
ScriptEvaluatorException: No overload for method 'vars.SetVariableValue' takes '2' arguments.

CodecoreTechnologies.Elve.DriverFramework.Scripting.ScriptEvaluatorException: No overload for method 'vars.SetVariableValue' takes '2' arguments.
   at Common.ScriptEvaluator.ScriptEvaluator.objectMemberAndArrayMember()
   at Common.ScriptEvaluator.ScriptEvaluator.postIncrementDecrement()
   at Common.ScriptEvaluator.ScriptEvaluator.factor()
   at Common.ScriptEvaluator.ScriptEvaluator.multiplicative()
   at Common.ScriptEvaluator.ScriptEvaluator.additive()
   at Common.ScriptEvaluator.ScriptEvaluator.bitwiseShift()
   at Common.ScriptEvaluator.ScriptEvaluator.relational()
   at Common.ScriptEvaluator.ScriptEvaluator.equality()
   at Common.ScriptEvaluator.ScriptEvaluator.bitwiseAnd()
   at Common.ScriptEvaluator.ScriptEvaluator.bitwiseExclusiveOr()
   at Common.ScriptEvaluator.ScriptEvaluator.bitwiseInclusiveOr()
   at Common.ScriptEvaluator.ScriptEvaluator.logicalAnd()
   at Common.ScriptEvaluator.ScriptEvaluator.logicalOr()
   at Common.ScriptEvaluator.ScriptEvaluator.variableAssignment()
   at Common.ScriptEvaluator.ScriptEvaluator.evaluateBlock()
   at Common.ScriptEvaluator.ScriptEvaluator.evaluate(ScriptParser parser, ScriptVariableCollection variables, GlobalFunctionEvaluatorDelegate globalFunctionEvaluator, ScriptObjectTypeInfoCollection objectInfos, ScriptFunctionInfoCollection scriptFunctionInfos)
   at Common.ScriptEvaluator.ScriptEvaluator.Evaluate(ScriptParser parser, ScriptVariableCollection variables, GlobalFunctionEvaluatorDelegate globalFunctionEvaluator, ScriptObjectTypeInfoCollection objectInfos, ScriptFunctionInfoCollection scriptFunctionInfos)
   at Common.ScriptEvaluator.ScriptEvaluator.Evaluate(String s, ScriptPosition position, ScriptVariableCollection variables, GlobalFunctionEvaluatorDelegate globalFunctionEvaluator, ScriptObjectTypeInfoCollection objectInfos, ScriptFunctionInfoCollection scriptFunctionInfos)
   at Common.ScriptEvaluator.ScriptEvaluator.Evaluate(String s, ScriptVariableCollection variables, GlobalFunctionEvaluatorDelegate globalFunctionEvaluator, ScriptObjectTypeInfoCollection objectInfos, ScriptFunctionInfoCollection scriptFunctionInfos)
   at Common.ScriptEvaluator.ScriptEvaluator.Evaluate(String s, ScriptVariableCollection variables, GlobalFunctionEvaluatorDelegate globalFunctionEvaluator, ScriptObjectTypeInfoCollection objectInfos)
   at Common.ScriptEvaluator.ScriptEvaluator.EvaluateNow(String s, ScriptVariableCollection variables, GlobalFunctionEvaluatorDelegate globalFunctionEvaluator, ScriptObjectTypeInfoCollection objectInfos)
   at MasterService.ScriptRunner.RunNow(String scriptName, String script, ScriptVariableCollection extraScriptVariables, Boolean throwError)
Location in script: line 10, column 6.

vars.SetVariableValue(vars.SetVariableValue("PhoneRing", false)
     ^


John Hughes

  • Administrator
  • Hero Member
  • *****
  • Posts: 2851
    • View Profile
    • Codecore Technologies
Re: Configuring Elk phone ring sensor during limited period.
« Reply #12 on: April 03, 2012, 02:21:36 pm »
Your action list still has an issue. It looks like you have the script embedded within another action.

Make sure that the last action (above the end of condition) is the script... and that the script is the only thing on the line.

There is a link in the rule's toolbar that will show a report of the rule. I would suggest pasting that here so I can see exactly what you have set up.
John Hughes
Codecore Technologies

Deane Johnson

  • Sr. Member
  • ****
  • Posts: 271
    • View Profile
Re: Configuring Elk phone ring sensor during limited period.
« Reply #13 on: April 03, 2012, 02:51:04 pm »
I can never get the "copy" feature on the tool bar to let me paste anywhere but in another Action list, but I can use the "Preview Script" to allow me to copy and paste at will.

Here is the Action List for the Theater On Button in Touch Screen Editor.  I see two "true" statements in it, might be the problem.

lighting.TurnOnLight(21);
lighting2.TurnOffLight(111);
ir.AV7005.ON();
lighting2.TurnOnLight(196);
lighting2.TurnOnLight(148);
lighting.TurnOnLight(22);
lighting.TurnOnLight(20);
Scenes.Easyrisealldown();
lighting.SetLightLevel(4, 60);
vars.SetVariableValue(vars.SetVariableValue("PhoneRing", true)
   , true);


And the Action List for the Rule in Management Studio:

if ( vars.GetVariableValue(@"PhoneRing") == true )
{
   lighting2.SetLightLevel(97, 50);
   ir.DVD.Pause();
   lighting.SetLightLevel(4, 60);
   lighting2.TurnOnLight(108);
   lighting2.SetLightLevel(107, 50);
}


John Hughes

  • Administrator
  • Hero Member
  • *****
  • Posts: 2851
    • View Profile
    • Codecore Technologies
Re: Configuring Elk phone ring sensor during limited period.
« Reply #14 on: April 03, 2012, 04:04:57 pm »
I only need the Theater On Button info.

There is an icon in the toolbar that reads something like "Generate a report...".
Click that button.
A new window will appear. You can click the "Copy to Clipboard" to get a copy of the text.

If you are saying that the copy does not work then simply use the mouse to highlight all the text in the report, right click the selection and select copy.

Then paste that into a forum post.

I can reproduce your issue by doubling embedding a Set Variable Value action within another Set Variable Action which is what I think you are doing. This should be apparent by looking at your action list.  Just delete the entire action item so that the last thing in the list is the set light level action. Then either re-add the script I sent you or you could just create a new Set variable action from the menus.
John Hughes
Codecore Technologies