[RELEASE] Follow Me - Speaker control with priority messaging, volume controls, voices and sound files!

Follow me can only use what it receives. As you have seen it is receiving a message:null so it can't speak. You mentioned Home Tracker. Go ahead and post a log and a screenshot of how you have HT setup over on that thread and I can take a look.

Thanks

So yes, I did initially determine that there was an issue from HT, but my issue exists even when using the Follow Me device page, specifically the "Device Notifcation" button with argument "hello" (see latest message output below), so I am thinking that the issue is more with the distribution of the message rather than the generation of it.

latestMessage : {"method":"deviceNotification","message":null,"priority":"X:X","speakLevel":null,"returnLevel":null,"title":""}

Using the button of the same name on the Echo Speaks device yields the intended result and my echo dot speaks "hello".

Update: So, I have been looking through the driver code and I managed to make the message no longer null. For example, in the deviceNotification method, when theMessage is generated by using the composeMessageMap method by passing state.speechReceivedFULL, if I change that to just speechReceivedFULL it now registers that my argument is non-null and is correctly what I typed in and then it seems to speak properly, so the issue may be with the state. object call, maybe a 2.2.4 change? It seems like based on what message method is called, the message is sometimes stored in the state, sometimes just stored locally and that discrepancy is screwing stuff up.

Note: Either changing the variable passed to be the local speechReceivedFULL variable or creating a state.speechReceivedFULL variable in the first place has the exact same result, but having them mismatched seems to break things.

Also, could you explain what that X:X argument passed to composeMessageMap is supposed to be? It seems to be passed into the priority spot, but I am guessing it is a notifier that default values from the app should be used.

Another thing I noticed, and this may get fixed over time, and I will update if it does, but if I test speech using Echo Speaks device, it works fine, then I try and send a device notification via the Follow Me driver connected to that same device, it errors out with the null's and then when I go back into the Echo Speaks device, it no longer can speak until it is reinitialized on the Echo Speaks side which is very odd.

New version:
2.2.5 - 11/27/20 - Adjustments


Fixed discrepancies

It's part of the Follow Me app Priority features

No idea, no echo's here.

Any way of disabling the following messages in the logs?

In sendFollowMeSpeaker - tbl Count: 480 - line Count: 75 - Total Count: 555

There 6 six of them (differnet tbl/line counts) that show up.

I cannot seem to find anywhere in the main app and child app to disable them.

Turn the logging off in each device.

Are you referring to the Child App for each device? I turned off Debug in the FollowMe device. In each child app the is an "Enable Debug Logging" option and thy have always been turned off.

Go to your Devices page, search for 'follow me driver'. Whatever devices come up, turn off 'Enable logging' and hit 'Save Preferences'.

New version on GitHub...

2.3.0 - 01/05/21 - Adjustments to Speech Queue, more logging options, cosmetic changes

1 Like

Parts of this are not working. I have priority speakers set up and sounds set up, but it speaks the variables for priority instead of using them (posted the log below)...

It's just a test rule right now. If switch on/off notify message "A" for on and notify message "B" for off. Notifications are sent to "Follow Me Variables" created using the app. But you can see follow me is running and even passing the audio sound URL with the priority variables in the text, but it just reads the text instead of playing sounds or changing voices.

[app:240](http://10.10.10.54/logs#app240)2021-01-11 22:29:13.236 [info](http://10.10.10.54/installedapp/configure/240)In letsTalk - Ready for next message

[app:240](http://10.10.10.54/logs#app240)2021-01-11 22:29:13.197 [debug](http://10.10.10.54/installedapp/configure/240)In letsTalk - deviceNotification Received - speaker: Google Hub - [F:1:0]Testing witch is on

[app:240](http://10.10.10.54/logs#app240)2021-01-11 22:29:13.191 [debug](http://10.10.10.54/installedapp/configure/240)In afterVolume - Setting volume to 40

[app:240](http://10.10.10.54/logs#app240)2021-01-11 22:29:11.152 [debug](http://10.10.10.54/installedapp/configure/240)In afterVolume (2.3.0) - it: Google Hub

[dev:10](http://10.10.10.54/logs#dev10)2021-01-11 22:29:00.577 [info](http://10.10.10.54/device/edit/10)Google Hub is idle

[dev:10](http://10.10.10.54/logs#dev10)2021-01-11 22:28:58.209 [info](http://10.10.10.54/device/edit/10)Google Hub is playing

[app:240](http://10.10.10.54/logs#app240)2021-01-11 22:28:56.106 [debug](http://10.10.10.54/installedapp/configure/240)In beforeVolume - Setting volume to 40

[app:240](http://10.10.10.54/logs#app240)2021-01-11 22:28:54.572 [debug](http://10.10.10.54/installedapp/configure/240)In beforeVolume (2.3.0) - it: Google Hub

[app:240](http://10.10.10.54/logs#app240)2021-01-11 22:28:54.569 [debug](http://10.10.10.54/installedapp/configure/240)In priorityVoicesHandler - Speaker: Google Hub - priorityVoice: X - Voice: Brian - Message: [F:1:0]Testing witch is on - uriMessage: http://10.10.10.54/tts/e5de38e8e5dc1f52a1c0dbf5e30c9c4a.mp3

[app:240](http://10.10.10.54/logs#app240)2021-01-11 22:28:54.564 [debug](http://10.10.10.54/installedapp/configure/240)In priorityVoicesHandler - Received - speaker: Google Hub - priorityVoice: X - lastSpoken: [F:1:0]Testing witch is on

[app:240](http://10.10.10.54/logs#app240)2021-01-11 22:28:54.561 [debug](http://10.10.10.54/installedapp/configure/240)In letsTalk - Sending to priorityVoicesHandler - it: Google Hub - priorityVoice: X - theMessage: [F:1:0]Testing witch is on

[app:240](http://10.10.10.54/logs#app240)2021-01-11 22:28:54.558 [debug](http://10.10.10.54/installedapp/configure/240)In letsTalk - deviceNotification Received - speaker: Kitchen Speaker - [F:1:0]Testing witch is on

[app:240](http://10.10.10.54/logs#app240)2021-01-11 22:28:54.554 [debug](http://10.10.10.54/installedapp/configure/240)In afterVolume - Setting volume to 32

[dev:8](http://10.10.10.54/logs#dev8)2021-01-11 22:28:54.454 [info](http://10.10.10.54/device/edit/8)Kitchen Speaker volume is 32

I seem to have found one issue. You cannot have "0" in the speaker variable, nor can you send notifications to 2 devices at once or even stack send; all resulted in not sending sound or proper voice.

I continued working on this and created a google speaker group for multiple speakers to be the "Notifications" group. But now it only half works... Here is my simple rule:

IF (ztesting switch(on) is on(T) [TRUE]) THEN
    Notify Follow Variables: '[N:1:1]Test switch is %value%.'
ELSE-IF (NOT ztesting switch(on) is on(T) [FALSE]) THEN
    Notify Follow Variables: '[N:1:1]Test switch is %value%.'
END-IF

If switch turns on::1 everything is splendid (plays chime, right voice, and says switch is on), but when it turns off it says switch is of speaks "[N:1:1] Test switch is off"

I just copy pasta the notification 1 works, but not the other.... Any help would be great. Thank you.

Fixed. Also, please read post #1 on posting logs. Please always use screenshots, so my eyes don't go crazy trying to figure it out with all the scrolling up/down and side to side. Screenshots are MUCH easier. :eyes: :eyes:

Yes, you can have 0.

The reason of picking a Priority speaker is to send it to just a specific speaker. If you want multiple speakers (the whole point of Follow Me), then don't choose a Priority Speaker.

I have no idea what 'stack send' means. :man_shrugging:


New version on GitHub...
Lots of little adjustments.

Thanks

Okay, I I think I missed that, most places what actual raw logs, but I'll do a screenshot for the new issues.

I don't know why, but a 0 in the speaker section always failed, so I had to put a 1 or 2 and then I could get it to half work....

I did not know you didn't have to have a priority speaker list. I did not select one with the updated driver and child app code.

I was stacking notify messages in Rule Machine.



So I updated the child app code and driver and created a new app and variable with the new code, but now it does not do anything. I set up everything like before, except I didn't select any priority speakers like you said above and I also change the notification message to [N:1:0] like you also suggested (I want it to play on all the selected speakers always).

Here's the log screenshot

New version...

2.3.2 - 01/13/21 - Fixed a typo :upside_down_face:

3 Likes

thank you. It's now speaking, but there are 2 issues now still.

  1. No change in voices or volume when using "priority messaging"
    * Priority voice in logs just says "x"
  2. No audio jingle playing before message
    * Logs say it's sending though... it did work when it was only triggering half the time, but not now.

Need to see the raw message sent in the log. I have no idea if it's working or not without seeing that line.

Also, I updated the app to have an 'App Description' section. Please copy and paste that section here.

Thanks

Here's the test app and the log.

Second request...

I have been playing with this for 2day and cannot get it to work and a look at you hit hub 1000000 times looking for an Install guide

I'm 99% it my fault, I install and made a virtual device for my office speak but it doesn't work volume does not adjust nor there speach and I have qued speach.

My office speaker work fine with built in app, but I really want to use you app to pre adjust volume

My mistake. I didn't even realize it was there.

trying everything here still nothing