[UPDATED] - Message Central - Make your home speak




OK.. this looks like the problem

%group1% contains your messages...

%group2% must contain a random message using the %device% variable

For your use..
Just use %group1% and MC will randomly pick one of the messages in group1


Same result.

app:24412018-12-19 09:25:00.285 am errorjava.lang.NullPointerException: null on line 3413 (timeTalkNow)
--- Live Log Started, waiting for events ---


Hmmm.. seems like it's not just using your configured messages.

Please use %group3% and edit that (instead of %group1%) with your two messages

I know that there is no %device% variables in that group.


It's funny, but this is the only bit of code in Message Central that I didn't write.

I may remove it and go back to the old, fixed number of random messages.


Worked on %group3%

app:24412018-12-19 09:42:13.200 am infoFurther Logging Disabled
app:24412018-12-19 09:42:13.198 am infoInitialised with settings: [messageAction:Voice Message (MusicPlayer), trigger:Time, wakeCount:2, postCount:10, preCount:2, postCount1:5, runTime:2018-12-19T09:42:00.000-0500, quietVolume:false, messageTime:%group3%, multiVolume:false, speaker:[Kitchen Overhead Sonos], msgDelay:0, weather1:Outdoor Module, switches:[Its_Cold], hour24:false, timeYes:false, dayYes:true, enableSwitchYes:false, presenceYes:false, modesYes:true, sunrisesetYes:false, debugMode:false, days:[Monday, Tuesday, Wednesday, Thursday, Friday], enableSwitch:No_School, enableSwitchMode:false, volume1:85, pause1:false, preMsg02:It’s %temp% degrees outside and %time%., preMsg01:It’s %time% and its %temp% degrees outside.  , pollorNot:false, modes:[Day], postMsg03:Get ready for school and remember, the smartest students always ask questions., postMsg04:1 plus 1 equals 11 so says Matthew.  Get ready for school, so says your smart house!, postMsg05:The TV will automatically start playing the movie frozen in 5 minutes.  Brush your teeth and get ready for school. , postMsg06:Put your dishes in the sink and get ready for school., postMsg10:Finish up your breakfast and put the dishes in the sink.  It’s time for school. , postMsg01:Brush your teeth and put on deoderant.  Get ready for school., postMsg02:Get ready for school and make sure to take a reading counts quiz today., postMsg07:Make sure you pack a snack, put your dishes in the dishwasher and get ready for school. , postMsg08:The house is pretty smart, but it can’t brush your teeth for you.  Get ready for school., postMsg09:A boy who is read for school with deoderant on, teeth brushed and a cleaned off table will be rewarded at committee., wakeMsg01:It's time to wake up! %time% %temp%, wakeMsg02:Please Wake Up!  %time% %temp%]
app:24412018-12-19 09:42:08.722 am infoFurther Logging Disabled


Yep, thought it would.
I'm going to change the defaults and only list 5 (without any %device% variables) in the next release which will be quite soon.

You will still be able to add more but it seems to be reading the defaults


So for now I can just use the same rule and move my phrases from group1 and group2 over to group3 and group4?


If you just have a group of random phrases that you want to use then just use one group
Only if you want a phrase from each group in the same message would you user the %groupx% variable twice.
I can't see any time I would use more than one group at a time in any one message

Don't forget,
Each child will have it's own random phrases.



The flow of the app would be

%group3% %group4%

Where %group3% would play time and temperature in one of two different ways and %group4% would play a random message.


Assuming you configured the random time messages in group3 first then yes.


Guys, I just released an update to look at addressing the random message issue
I have removed most of the default messages and cleaned the code up a little to remove references to %device% just in case they are not being used.

Try hitting your update button :slight_smile:



I using a Christmas tree switch to test this. The message I get is not one of the ones I entered. I get "what's up." What am I doing wrong? My programming is below




Is this a new creation or an edit of an existing child?
You may need to create new to remove all the ‘old’ random messages.



I deleted the child. It is the only one I have in Message Central. I've deleted and recreated several times. First time was with only 3 messages, but it sent default #4. So I deleted it and then recreated with 5 custom messages but it still sent one of the defaults.

I do like that now when go into a group it does show what the defaults are, before this update it did not.


I too am having problems after the updates.

I created a rule to trigger on contact closed to play %group1% %group2%

Group 1 has two messages. Hi and Bye
Group 2 has two message. Hello and Goodbye

When the contact closed I get the following log.

pm[debug]( (App Version: 13.6.0) - All OK! - Playing message 2: 'welcome home live long and prosper.'


Here are logs from creating the Child.

Here are logs when I trigger the switch I'm testing with. It sent the default "What's Up", even though that phrase is not in the log entry above.


@drew @JDogg016

I have realised that there is some serious issues with this 'random' feature
I am rewriting a complete block of code as I really don't like the way it is forcing default messages.

I'm going to have a couple of groups which will be blank until you enter the phrases you want
They will have a maximum of 10 phrases per group as that is manageable.

Anyway.. bear with me for a couple of days and I'll get it sorted.



That sounds great. It can wait till sometime next year. Go enjoy the time with family and friends!


I can't leave it like this... it will be done in the next day or so. :slight_smile: