You have it backwards
LOL i get it now, im thinking exactly backwards, i need to set a time fram in which it can speak not when its restricted
Helpful to give @bptworld a quick and easy way to have context for what your posting...just throwing up logs requires him to parse back to figure things out. Since he's doing this for free/fun, we should try to make it as easy as possbile for him.
I don't see any errors in that log.
Please help me help you. I need to see a debug log including the error. That will show me what led up to the error.
Thanks
The app looks great.
Any chance of extending the integrations to include squeezebox players accessible in HE via the Squeezebox Connect app & driver?
I had a quick look at the source for this and it looks like it's using the speechSynthesis and musicPlayer capabilities so it should work with the squeezebox connect out of the box I think. Have you tried it out?
Haven't tried yet...but I will soon.
Yup, any device that uses either of those capabilities will work with Follow Me.
Noticed you have Dev by your name.. I take pull requests too! (if you need something special )
Just noticed I have two Follow Me child instances in Apps Code.
Is that normal, or should I remove one?
Nope, should only have one.
Is it normal for FM to cycle slowly through all the speakers instead of speaking simultaneously on all devices? I'm also seeing that if one of my Home Minis is included, it causes the entire group to delay. I'd think that if one device doesn't respond well, that it would be singularly delayed and not cause the entire operation to fail or take forever.
Yes. If you are using Google/Nest devices, do a broadcast and see what happens. it will popcorn all over the place and that has nothing to do with HE or FM.
The behavior seems systematic though, and you can watch the debug logs go through each speaker slowly -- since when I just select them all individually in a rule, I get near-instant action on all devices simultaneously.
I also get near-instant performance when I create individual FM groups for each speaker, then select those FM in rules.
I guess what I really need is a "disable speaker with switch" on the Chromecast integration driver. I'm just tired of having to add in all the logic per-rule to prevent nighttime activity.
That I can't help you with.
Yeah the main reason I wanted to use FollowMe was for setting volume in real-time, and placing time-based restrictions. Is there any way to convince the driver to attempt simultaneous speech, or is that deliberate?
It methodically seems to crawl through each speaker, instead of simultaneously. When an alert comes through from an existing rule that references each speaker individually, the logs show them popping up with nearly the same timestamp, and I can hear them all play at the same time.
I have played with the FM settings for a while, and this is the fastest I've ever experienced. Setting as Nest, allowing 4 minute initialization, and enabling queuing. Turning off queuing makes the delay much worse.
dev:12512020-10-19 07:24:35.455 am debug
FM Whole Home (Standard) Active
dev:12512020-10-19 07:24:35.453 am debugIn sendFollowMeSpeaker - tbl Count: 112 - line Count: 77 - Total Count: 189
dev:12512020-10-19 07:24:35.450 am debugIn sendFollowMeSpeaker - sName: FM Whole Home (Standard) - sStatus: true
dev:1322020-10-19 07:24:32.261 am infoKitchen Sonos playing: testing by Hubitat from TTS
dev:1322020-10-19 07:24:32.231 am infoKitchen Sonos is stopped
dev:1322020-10-19 07:24:31.818 am infoKitchen Sonos is playing
dev:1322020-10-19 07:24:31.663 am infoKitchen Sonos audio level is 60%
dev:1322020-10-19 07:24:31.419 am infoKitchen Sonos playing: testing by Hubitat from TTS
dev:1322020-10-19 07:24:31.209 am infoKitchen Sonos audio level is 75%
dev:4202020-10-19 07:24:31.024 am infoSteve's Bathroom Max volume is 50
dev:4202020-10-19 07:24:26.034 am infoSteve's Bathroom Max volume is 75
dev:1962020-10-19 07:24:25.835 am infoUpstairs Mini volume is 45
dev:1962020-10-19 07:24:20.766 am infoUpstairs Mini volume is 75
dev:4192020-10-19 07:24:20.554 am infoSteve's Bedroom Mini volume is 45
dev:4192020-10-19 07:24:15.276 am infoSteve's Bedroom Mini volume is 75
dev:1952020-10-19 07:24:14.977 am infoKitchen Mini volume is 45
dev:1952020-10-19 07:24:09.903 am infoKitchen Mini volume is 75
dev:1942020-10-19 07:24:09.721 am infoGuest Bed Mini volume is 45
dev:1942020-10-19 07:24:04.670 am infoGuest Bed Mini volume is 75
dev:5452020-10-19 07:24:04.427 am infoGarage Mini volume is 70
dev:5452020-10-19 07:23:59.357 am infoGarage Mini volume is 75
dev:12512020-10-19 07:23:59.246 am debug
FM Whole Home (Standard) Speaking
dev:12512020-10-19 07:23:59.240 am debugIn sendFollowMeSpeaker - tbl Count: 112 - line Count: 78 - Total Count: 190
dev:12512020-10-19 07:23:59.238 am debugIn sendFollowMeSpeaker - sName: FM Whole Home (Standard) - sStatus: speaking
dev:12512020-10-19 07:23:59.217 am debug
and this is what it looks like when I use RM to hit all speakers at once:
dev:4202020-10-19 07:36:57.452 am infoconnected...
dev:4202020-10-19 07:36:56.735 am debuginitialize...
dev:1962020-10-19 07:36:56.714 am infoconnected...
dev:1962020-10-19 07:36:56.229 am debuginitialize...
dev:4192020-10-19 07:36:56.213 am infoconnected...
dev:4192020-10-19 07:36:55.490 am debuginitialize...
dev:1952020-10-19 07:36:55.455 am infoconnected...
dev:1952020-10-19 07:36:54.977 am debuginitialize...
dev:1942020-10-19 07:36:54.966 am infoconnected...
dev:1942020-10-19 07:36:54.460 am debuginitialize...
dev:5452020-10-19 07:36:54.436 am infoconnected...
dev:5452020-10-19 07:36:53.911 am debuginitialize...
dev:4202020-10-19 07:36:48.602 am warndescription logging is: false
dev:4202020-10-19 07:36:48.592 am warndebug logging is: false
dev:4202020-10-19 07:36:48.588 am infoupdated...
dev:1962020-10-19 07:36:44.306 am warndescription logging is: true
dev:1962020-10-19 07:36:44.304 am warndebug logging is: true
dev:1962020-10-19 07:36:44.302 am infoupdated...
Perhaps as a workaround I could build an RM that watches the virtual speech device, then essentially replays that text on actual speakers.
This actually works, but I have to find a way to parse one of your device attribute fields. Like * latestMessage : **{"method":"speak","message":"testing","priority":"X:X:X","speakLevel":null,"returnLevel":null,"title":""}
Didn't work
Not possible, it has to check each child app one at a time. Speech will popcorn.
That string is for use with Follow Me, was not meant to be used by any other app or process.
Oh yeah I understand that. I was just trying to use the FM device since I already had it installed. I would need to find/write a virtual speech device driver, or just set a variable instead of pushing text to a device.
Hi,
I am getting the error below for most of my Chromecast devices, is this just because they are not enabled because the motion sensor attached to them in Follow Me was not triggered during the voice alert?
2020-10-19 11:23:58.860 am errorgroovy.lang.MissingMethodException: No signature of method: user_app_BPTWorld_Follow_Me_Child_195.lastSpokenHandler() is applicable for argument types: (com.hubitat.hub.domain.Event) values: [com.hubitat.hub.domain.Event@1034940] (lastSpokenHandler)