Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Tom_G_2010

Pages: [1] 2
1
@jitterjames

I thought I'd come back here and post a Thank You for your assistance yesterday in trouble shooting this issue and post the solution in case others hit this issue.

First, THANK YOU!  Your willingness to work on this with me is greatly appreciated!!!

Second, I was going to type up what you did but I'm not sure I got it right because yesterday evening Windows did an update, crashed my pc and I had to run recovery to get the machine to run again.  After completing the recovery, the bug was back but I can't replicate the fix so I must not have correctly understood what you did.

If you don't mind, could you post what you did to clear the bug.

Double Thanks!!!
Tom G.

2
PM Sent, THANKS!

3
What's running in Vox Commando and showing in my actual logs is the correct access token.

When posting I mask my access tokens.

4
Here's the log from one execution of the command:

Code: [Select]
1/25/2025 6:22:34 PM 207 Something was recognized
1/25/2025 6:22:34 PM 207 Rulename: root # Semantics: 3
1/25/2025 6:22:34 PM 207 Group: Device Montor Speech: Maggie What Color is Ambient Lighting
1/25/2025 6:22:34 PM 208 semanticID: 171
1/25/2025 6:22:34 PM 208 kvp: prefix | Maggie
1/25/2025 6:22:34 PM 208 kvp: command | 171
1/25/2025 6:22:34 PM 208 kvp: payload1 | <171:Ambient Lighting>710
1/25/2025 6:22:34 PM 208 no regex match found
1/25/2025 6:22:34 PM 208 id from payload value: 171
1/25/2025 6:22:34 PM 210 semanticID: 171
1/25/2025 6:22:34 PM 210 kvp: prefix | Maggie
1/25/2025 6:22:34 PM 210 kvp: command | 171
1/25/2025 6:22:34 PM 210 kvp: payload1 | <171:Ambient Lighting>710
1/25/2025 6:22:34 PM 210 no regex match found
1/25/2025 6:22:34 PM 210 id from payload value: 171
1/25/2025 6:22:34 PM 210 alternate:Maggie What Color is Ambient Lighting
1/25/2025 6:22:34 PM 220 A prefix is required to execute this command.
1/25/2025 6:22:34 PM 246 addHistoryItem [vcevent] VC.Prefix.End

1/25/2025 6:22:34 PM 250 doCommand:What Color
1/25/2025 6:22:34 PM 250 Action claims to be threadsafe.
1/25/2025 6:22:34 PM 250 action repeat set to: 1
1/25/2025 6:22:34 PM 250 Action:  Scrape
1/25/2025 6:22:34 PM 250 Param1:http://192.168.123.123/apps/api/543/devices/710/attribute/colorName?access_token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
1/25/2025 6:22:34 PM 250 addHistoryItem [action] Scrape:http://192.168.123.123/apps/api/543/devices/710/attribute/colorName?access_token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

1/25/2025 6:22:34 PM 300 Action RESULT:
1/25/2025 6:22:34 PM 300 Action is NOT threadsafe: Results.RegEx
1/25/2025 6:22:34 PM 300 action repeat set to: 1
1/25/2025 6:22:34 PM 300 Action:  Results.RegEx
1/25/2025 6:22:34 PM 300 Param1:"value":"(.*?)"
1/25/2025 6:22:34 PM 300 addHistoryItem [action] Results.RegEx:"value":"(.*?)"

1/25/2025 6:22:34 PM 308 addHistoryItem [error] Results.RegExUnexpected error:
System.NullReferenceException: Object reference not set to an instance of an object.
   at VoxCommando.ResultsVars.RegExMyResults(String[] parsedParams, Boolean useSingleLine)
   at eval_g.eval_ᜃ(macroElement A_0, List`1 A_1, Int32 A_2)
   at eval_g.eval_ᜂ(macroElement A_0, List`1 A_1, Int32 A_2)
1/25/2025 6:22:34 PM 314 Unexpected error in action: Results.RegEx
System.NullReferenceException: Object reference not set to an instance of an object.
   at VoxCommando.ResultsVars.RegExMyResults(String[] parsedParams, Boolean useSingleLine)
   at eval_g.eval_ᜃ(macroElement A_0, List`1 A_1, Int32 A_2)
   at eval_g.eval_ᜂ(macroElement A_0, List`1 A_1, Int32 A_2)
1/25/2025 6:22:34 PM 314 Action claims to be threadsafe.
1/25/2025 6:22:34 PM 314 action repeat set to: 1
1/25/2025 6:22:34 PM 314 Action:  TTSMS.Speak
1/25/2025 6:22:34 PM 314 error replacing variables: {Match.1}
1/25/2025 6:22:34 PM 314 Param1:{Match.1}
1/25/2025 6:22:34 PM 314 addHistoryItem [action] TTSMS.Speak:{Match.1}

1/25/2025 6:22:34 PM 319 Action from plugin: C:\VOX COMMANDO\Plugins\TTSMS\TTSMS.dll
1/25/2025 6:22:34 PM 320 Action INFO: speaking (asynchronous): {Match.1}
1/25/2025 6:22:34 PM 324 Action is NOT threadsafe: OSD.ShowText
1/25/2025 6:22:34 PM 324 action repeat set to: 1
1/25/2025 6:22:34 PM 324 Action:  OSD.ShowText
1/25/2025 6:22:34 PM 325 Param1:{"id":"710","attribute":"colorName","value":"Red"}
1/25/2025 6:22:34 PM 325 addHistoryItem [action] OSD.ShowText:{"id":"710","attribute":"colorName","value":"Red"}

1/25/2025 6:22:34 PM 355 Action INFO: OK
1/25/2025 6:22:34 PM 356 addHistoryItem [vcevent] tts.start

1/25/2025 6:22:36 PM 4 addHistoryItem [vcevent] tts.end

1/25/2025 6:22:37 PM 852 addHistoryItem [vcevent] VC.NotRecognized

1/25/2025 6:22:38 PM 351 guessed text:Is The ?? (Device Montor)
1/25/2025 6:22:39 PM 471 addHistoryItem [vcevent] VC.NotRecognized

I see what looks like regex related error in the middle of the log but I'm not sure how to interpret them.

5
I built the following and the OSD shows the sting coming back with the color at the end of it, but the TTS is speaking the variable name "Match One" instead of the variable result "Red."

Code: [Select]
            <command id="171" name="What Color" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
                <action>
                    <cmdType>Scrape</cmdType>
                    <params>
                        <param>http://192.168.123.123/apps/api/543/devices/{1}/attribute/colorName?access_token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</param>
                    </params>
                    <cmdRepeat>1</cmdRepeat>
                </action>
                <action>
                    <cmdType>Results.RegEx</cmdType>
                    <params>
                        <param>"value":"(.*?)"</param>
                    </params>
                    <cmdRepeat>1</cmdRepeat>
                </action>
                <action>
                    <cmdType>TTSMS.Speak</cmdType>
                    <params>
                        <param>{Match.1}</param>
                    </params>
                    <cmdRepeat>1</cmdRepeat>
                </action>
                <action>
                    <cmdType>OSD.ShowText</cmdType>
                    <params>
                        <param>{LastResult}</param>
                    </params>
                    <cmdRepeat>1</cmdRepeat>
                </action>
                <phrase>What Color is</phrase>
                <payloadFromXML phraseOnly="False" use2partPhrase="False" phraseConnector="by" Phrase2wildcard="anyone" optional="False">Hubitat Device List.xml</payloadFromXML>
            </command>

I tested the regex syntax in the Expression Helper, and it returns 1:"value":"Red"

I did a couple tests with fixed device IDs to be sure it wasn't my payload table.
All of them returned a string with either the lights color or null for none RGB bulbs.
But the TTS always comes back "match one".

Did I botch something in my setup?

6
Hi, after several years away from Vox Commando I'm back at it. I have switch, color, hue, and level controls all working between VC and my Hubitat. I'll have a few questions about how to streamline things later but for now I'm trying to wrap my head around reading things back from Hubitat.

If I use my browser to send http://192.168.123.123/apps/api/543/devices/123/attribute/colorName?access_token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx to Hubitat. Hubitat returns  {"id":"123","attribute":"colorName","value":"Red"}

What I want to do is send that to Hubitat and based on response from Hubitat have VC speak the color using TTS.

Will Scrape pickup hubitat's response or do I need to use Get?  I've tried a few different things but can't figure out how to pick up that response and parse the color from it.  I looked at the Wiki and several forum posts, but I haven't been able to figure it out yet.

Any help would be greatly appreciated.

Thanks!
Tom G.\.

7
VoxCommando Basics and Core Features / Re: Help with my To Do list
« on: January 09, 2021, 12:41:32 PM »
...you may be able to fix things using the action VC.SetCulture
See https://voxcommando.com/mediawiki/index.php?title=Actions#SetCulture

VC.SetCulture en-US for the Win!

I now have a British voice speaking dates in a US format.  Thanks!!!

8
VoxCommando Basics and Core Features / Re: Help with my To Do list
« on: January 05, 2021, 02:17:14 PM »
The simplest solution is probably just to use the {LongDate} variable, since it writes out the full date as: "January 5, 2021" instead of "01-05-2021"

If you need even more control you can use the {DtCustom.*} variable.  Documentation can be found here: https://voxcommando.com/mediawiki/index.php?title=Variables#Date.2FTime

I logged in on my lunch break and did some testing. {LongDate} didn't work, it resulted in reading out May 1st in long form as today's date.  With the time I had available for lunch I couldn't figure out a way to leverage {DTCustom.___} to invert the two values without a lot of logic to deal with day and month value ranges. So, I ran a few tests using US and UK voices that confirmed the voice files do have regional settings baked in that override the related regional pc config settings.

To make it work I added a SetVoiceName command before and after they Speak {LongDate} command.  The first switches the voice to a US voice so the date gets spoken correctly.  Then after the date is spoken the second switches the voice back to the preferred UK voice.  It's not ideal in that everyone here dislikes the US voices, but at least they only have to put up with it for Date requests.

THANKS! For all the help!
Tom G.

9
VoxCommando Basics and Core Features / Re: Help with my To Do list
« on: January 05, 2021, 11:10:34 AM »
I'm not sure what you mean by "voice files"

By that I meant I downloaded additional voices from Microsoft. Among them the English UK voice called Microsoft Hazel.  If that is the cause of the reversed month and day then I'll go with the longer date format as you suggest since no one at home likes the English US voices.

For the record, the only short date format that makes sense in my opinion is YYYY/MM/DD.  I wish the planet would adopt this format.  There is never any ambiguity about it and it has the bonus of being sorted correctly.  :bignod

I'm completely with you on a global standard for date formats.  In the military units I was in the solution was to use 2 digit numeric date, spelled out or abbreviated month, and a 4 digit numeric year: 05 January 2021.  With the month in alpha and the two numeric segments different lengths even when the order was changed it was still perfectly clear what the date was.

10
VoxCommando Basics and Core Features / Re: Help with my To Do list
« on: January 05, 2021, 09:40:00 AM »
I believe I've corrected the issue with the Accuweather plugin.  At least for me there was an odd case where the moonrise or moonset was null (maybe because the mooncycle is more than 24 hours?) but it should be handled gracefully now.  You can download the new version here: https://voxcommando.com/home/downloads/

It appears to be working now.  Prior to the fix I was getting multiple nulls.  Now everything I've tested so far return correct values.  All I have left to do on this punch list item is season to taste.

THANKS!
Tom G.

PS: On one of the other items I'm getting an interesting behavior that leads to another question: Do voice files carry hard coded regional settings?  I have all my pc regional settings set for US with the correct time zone, in my case East Coast. I have everything regarding language on the pc and in VC set to US English with only one exception.  I prefer the spoken voice to be a British female voice so I used Microsoft Hazel.

The date on my pc shows as Tuesday 5 January 2021 or 1/5/2021 but when VC speaks the date via TTS it says May 1st 2021.  Is this a result of my using the English UK voice file or am maybe missing a setting someplace.  I hope I can correct this or do something custom to get the correct date spoken without having to give up on that voice file.

11
VoxCommando Basics and Core Features / Re: Help with my To Do list
« on: January 04, 2021, 07:57:10 PM »
Regarding your desire to eliminate Alexa from your home: Are you trying to get rid of Alexa completely for privacy or some other reasons, or do you just want to reduce your reliance on it because a local solution is faster and more reliable?

There are a several reasons I'm looking to eliminate Alexa and you've hit the top ones: 1.Reduced Cloud Dependance; 2.Privacy; 3.Speed.

Of the strengths you noted Alexa has over VC (open searches, math question, trivia questions, etc) the only one I hear my wife or kids use regularly is math, but we can live without that.  Your overall point though about Alexa's strengths has me pondering isolating an echo in a soundproof box with a mic and speaker inside that can be momentarily enabled by a VC command...   ???  "VC ask Alexa When is Father's day"  :o

I see you also replied about the weather and there are other replies as well.  THANKS! Off to do some reading.

12
VoxCommando Basics and Core Features / Help with my To Do list
« on: January 02, 2021, 10:32:26 AM »
I've had great success so far with getting VC setup to handle my home automation.  I have all my Hubitat controlled
 lights switches and plugs working through VC.  I'm now adding the thermostats and entertainment center devices and I don't anticipate any issues there.

The goal in my case is to eliminate the need for the echo dots I have throughout the house. To get to that point I have a hardware challenge to overcome and a few functionality challenges. I'm hoping by listing them out here I can get some advice and pointers on resources to help get my over the goal line

Hardware Challenge
Multiple input devices.  I am testing a mic array from Seeed Studio https://www.seeedstudio.com/ReSpeaker-USB-Mic-Array-p-4247.html  that seems to be working well so far.  But, to cover my entire house I will need to place at least 4 mics.  I don't see anyway in Windows or VC to select multiple mics.  If it's there I looked right past it.  However, I am wondering if there might be a software based mixer that I could use to aggregate all the mic inputs and then make the mixers output the input source for VC.

Software Challenges
I have been asked by the family to make sure VC can handle all the common functions they presently use the echo dots for.  These include:

  • Asking for Weather information
  • Asking for Time
  • Managing a shopping list that can be accessed from their phones
  • Managing timers and alarms
  • Basic Math

I have the weather plugin loaded and running but I haven't figured out how to use the TTS plugin to speak the weather when VC is asked.  As for the rest of the list, I have not started on those items other than looking for resources to see if they are possible and if so, how.

Any advice or pointers would be greatly appreciated!!!
Happy New Year!!!
Tom G.

13
It is now possible to run Windows 10 on a Pi and as a result run VC on a Pi.

I came across the info on how to load Win10 on a Pi and with the availability of an 8Gb version of the Pi 4 it appears to have more than enough memory to run VC.  I am on day 4 with my VC-Pi running continuous and it is still stable and responsive.  My input device is a mic array that I purchased from Seeed Studio and the output is via a bluetooth linked speaker.

https://www.youtube.com/watch?v=Pe1iSROz5OM

https://www.seeedstudio.com/ReSpeaker-USB-Mic-Array-p-4247.html

14
VoxCommando Basics and Core Features / Re: Logic in Commands
« on: December 26, 2020, 03:20:02 PM »
Thanks for the info!  I now have it working using a payload XML list!

15
VoxCommando Basics and Core Features / Re: Logic in Commands
« on: December 25, 2020, 01:38:32 PM »
Thanks!!!

I'll dig into this after the festivities wind down.  Any sooner and the WAF will plummet into negative numbers .

Pages: [1] 2