Announcer Usage questions

Posted on
Mon Feb 20, 2017 7:31 pm
JustJack offline
Posts: 53
Joined: Feb 16, 2013
Location: Ca

Announcer Usage questions

I'm trying to put together a Python script to do the following:

1. Setup Airfoil to broadcast to a set of speakers.
2. Have Announcer make the announcement.
3. Restore Airfoil to the state it was in before the announcement.

The problem I am seeing is that the script completes all of the setup, announcement and restore before the announcement completes. The Airfoil source is no longer set to 'system audio' when the Play Sound app finally gets around to making the announcement. I'm using an Announcer device that is set to trigger on a variable change. I'm doing this on Indigo 7 and Mac OS X 10.12.3

What's the best way to synchronize the setup, speak, restore phases of an announcement?

Posted on
Mon Feb 20, 2017 9:59 pm
nsheldon offline
Posts: 2469
Joined: Aug 09, 2010
Location: CA

Re: Announcer Usage questions

Hi.

It sounds like everything is working except for the timing of when actions take place.

Unfortunately, that's going to be difficult. I developed the Announcer plugin to work with Play Sound because that was the app I used and because it could take care of all the background sound playback threading that was too time consuming to figure out in Python. The drawback is that there's no real way to see if sound is still playing or not. There's no way to ask Play Sound if it's playing something if it was told to play something in the background (which it always is when using Announcer).

I don't use Airfoil any longer (home setup changed so I don't need it), but when I did, the way I worked around this issue was to put the action that switched the Airfoil speakers back to their original setting into a different Indigo action that was delayed by 15 seconds or so from the initiating trigger. Not particularly elegant, but it was sufficient for my needs.

Sorry I couldn't be of more help on that. Perhaps others will have better solutions.

Posted on
Tue Feb 21, 2017 1:25 pm
JustJack offline
Posts: 53
Joined: Feb 16, 2013
Location: Ca

Re: Announcer Usage questions

Thanks for the quick reply. Not exactly the answer I was hoping for. I guess I need to figure out something.


Sent from my iPad using Tapatalk

Posted on
Thu Apr 27, 2017 11:47 pm
thumpinc offline
Posts: 41
Joined: May 11, 2013

Re: Announcer Usage questions

Hi - I installed announcer in Indigo 7 and it won't work. When I try to set up a device I get:

Traceback (most recent call last):
File "plugin.py", line 160, in validateActionConfigUi
TypeError: unsupported operand type(s) for +=: 'NoneType' and 'unicode'

Any input on how to repair? Thanks!

Posted on
Fri Apr 28, 2017 12:50 am
nsheldon offline
Posts: 2469
Joined: Aug 09, 2010
Location: CA

Re: Announcer Usage questions

Hi.

Sorry to hear you're experiencing errors. Unfortunately, that's not enough information to figure out the issue.

Could you please enable debug logging (Plugins menu -> Announcer -> Configure, then check the Enable debugging checkbox) then reload the Announcer plugin and reproduce the error. Paste in the entire log from where you reloaded Announcer to where you see the error. Thanks.

Posted on
Sun Apr 30, 2017 12:38 am
thumpinc offline
Posts: 41
Joined: May 11, 2013

Re: Announcer Usage questions

Thanks, Here you go:

Apr 29, 2017, 11:36:16 PM
Announcer Debug logging enabled
Updated "MB Bath-Motion" off
Reloading plugin "Announcer 1.1.6"
Stopping plugin "Announcer 1.1.6" (pid 26861)
Announcer Debug runConcurrentThread stopped.
Stopped plugin "Announcer 1.1.6"
Starting plugin "Announcer 1.1.6" (pid 26945)
Announcer Debug Initializing Plugin.
Announcer Debug Subscribing to all variable changes.
Started plugin "Announcer 1.1.6"
Announcer Debug Starting runConcurrentThread.

Apr 29, 2017, 11:36:42 PM
Announcer Debug logging enabled
Announcer Debug NSSpeechSynthesizer voice list: (
"com.apple.speech.synthesis.voice.Alex",
"com.apple.speech.synthesis.voice.alice",
"com.apple.speech.synthesis.voice.alva",
"com.apple.speech.synthesis.voice.amelie",
"com.apple.speech.synthesis.voice.anna",
"com.apple.speech.synthesis.voice.carmit",
"com.apple.speech.synthesis.voice.damayanti",
"com.apple.speech.synthesis.voice.daniel",
"com.apple.speech.synthesis.voice.diego",
"com.apple.speech.synthesis.voice.ellen",
"com.apple.speech.synthesis.voice.fiona",
"com.apple.speech.synthesis.voice.Fred",
"com.apple.speech.synthesis.voice.ioana",
"com.apple.speech.synthesis.voice.joana",
"com.apple.speech.synthesis.voice.jorge",
"com.apple.speech.synthesis.voice.juan",
"com.apple.speech.synthesis.voice.kanya",
"com.apple.speech.synthesis.voice.karen",
"com.apple.speech.synthesis.voice.kyoko",
"com.apple.speech.synthesis.voice.laura",
"com.apple.speech.synthesis.voice.lekha",
"com.apple.speech.synthesis.voice.luca",
"com.apple.speech.synthesis.voice.luciana",
"com.apple.speech.synthesis.voice.maged",
"com.apple.speech.synthesis.voice.mariska",
"com.apple.speech.synthesis.voice.mei-jia",
"com.apple.speech.synthesis.voice.melina",
"com.apple.speech.synthesis.voice.milena",
"com.apple.speech.synthesis.voice.moira",
"com.apple.speech.synthesis.voice.monica",
"com.apple.speech.synthesis.voice.nora",
"com.apple.speech.synthesis.voice.paulina",
"com.apple.speech.synthesis.voice.samantha",
"com.apple.speech.synthesis.voice.sara",
"com.apple.speech.synthesis.voice.satu",
"com.apple.speech.synthesis.voice.sin-ji",
"com.apple.speech.synthesis.voice.tessa",
"com.apple.speech.synthesis.voice.thomas",
"com.apple.speech.synthesis.voice.ting-ting",
"com.apple.speech.synthesis.voice.veena",
"com.apple.speech.synthesis.voice.Victoria",
"com.apple.speech.synthesis.voice.xander",
"com.apple.speech.synthesis.voice.yelda",
"com.apple.speech.synthesis.voice.yuna",
"com.apple.speech.synthesis.voice.yuri",
"com.apple.speech.synthesis.voice.zosia",
"com.apple.speech.synthesis.voice.zuzana"
)
Announcer Debug voice display name: Alex
Announcer Debug voice display name: Alice
Announcer Debug voice display name: Alva
Announcer Debug voice display name: Amelie
Announcer Debug voice display name: Anna
Announcer Debug voice display name: Carmit
Announcer Debug voice display name: Damayanti
Announcer Debug voice display name: Daniel
Announcer Debug voice display name: Diego
Announcer Debug voice display name: Ellen
Announcer Debug voice display name: Fiona
Announcer Debug voice display name: Fred
Announcer Debug voice display name: Ioana
Announcer Debug voice display name: Joana
Announcer Debug voice display name: Jorge
Announcer Debug voice display name: Juan
Announcer Debug voice display name: Kanya
Announcer Debug voice display name: Karen
Announcer Debug voice display name: Kyoko
Announcer Debug voice display name: Laura
Announcer Debug voice display name: Lekha
Announcer Debug voice display name: Luca
Announcer Debug voice display name: Luciana
Announcer Debug voice display name: Maged
Announcer Debug voice display name: Mariska
Announcer Debug voice display name: Mei-Jia
Announcer Debug voice display name: Melina
Announcer Debug voice display name: Milena
Announcer Debug voice display name: Moira
Announcer Debug voice display name: Monica
Announcer Debug voice display name: Nora
Announcer Debug voice display name: Paulina
Announcer Debug voice display name: Samantha
Announcer Debug voice display name: Sara
Announcer Debug voice display name: Satu
Announcer Debug voice display name: Sin-ji
Announcer Debug voice display name: Tessa
Announcer Debug voice display name: Thomas
Announcer Debug voice display name: Ting-Ting
Announcer Debug voice display name: Veena
Announcer Debug voice display name: Victoria
Announcer Debug voice display name: Xander
Announcer Debug voice display name: Yelda
Announcer Debug voice display name: Yuna
Announcer Debug voice display name: Yuri
Announcer Debug voice display name: Zosia
Announcer Debug voice display name: Zuzana
Announcer Debug Starting action config validation for type: announceNow.
Announcer Debug Pre-Speech Audio File not being used.
Announcer Debug Audio File Volume set to 255.
Announcer Debug Speech Volume set to 255.
Announcer Debug Speech Delay set to 2.0.
Announcer Debug Speech Rate not specified. Will use default voice rate.
Announcer Debug Custom message to say: hi
Announcer Debug validateDeviceConfigUi: NSSpeechSynthesizer voice list: (
"com.apple.speech.synthesis.voice.Alex",
"com.apple.speech.synthesis.voice.alice",
"com.apple.speech.synthesis.voice.alva",
"com.apple.speech.synthesis.voice.amelie",
"com.apple.speech.synthesis.voice.anna",
"com.apple.speech.synthesis.voice.carmit",
"com.apple.speech.synthesis.voice.damayanti",
"com.apple.speech.synthesis.voice.daniel",
"com.apple.speech.synthesis.voice.diego",
"com.apple.speech.synthesis.voice.ellen",
"com.apple.speech.synthesis.voice.fiona",
"com.apple.speech.synthesis.voice.Fred",
"com.apple.speech.synthesis.voice.ioana",
"com.apple.speech.synthesis.voice.joana",
"com.apple.speech.synthesis.voice.jorge",
"com.apple.speech.synthesis.voice.juan",
"com.apple.speech.synthesis.voice.kanya",
"com.apple.speech.synthesis.voice.karen",
"com.apple.speech.synthesis.voice.kyoko",
"com.apple.speech.synthesis.voice.laura",
"com.apple.speech.synthesis.voice.lekha",
"com.apple.speech.synthesis.voice.luca",
"com.apple.speech.synthesis.voice.luciana",
"com.apple.speech.synthesis.voice.maged",
"com.apple.speech.synthesis.voice.mariska",
"com.apple.speech.synthesis.voice.mei-jia",
"com.apple.speech.synthesis.voice.melina",
"com.apple.speech.synthesis.voice.milena",
"com.apple.speech.synthesis.voice.moira",
"com.apple.speech.synthesis.voice.monica",
"com.apple.speech.synthesis.voice.nora",
"com.apple.speech.synthesis.voice.paulina",
"com.apple.speech.synthesis.voice.samantha",
"com.apple.speech.synthesis.voice.sara",
"com.apple.speech.synthesis.voice.satu",
"com.apple.speech.synthesis.voice.sin-ji",
"com.apple.speech.synthesis.voice.tessa",
"com.apple.speech.synthesis.voice.thomas",
"com.apple.speech.synthesis.voice.ting-ting",
"com.apple.speech.synthesis.voice.veena",
"com.apple.speech.synthesis.voice.Victoria",
"com.apple.speech.synthesis.voice.xander",
"com.apple.speech.synthesis.voice.yelda",
"com.apple.speech.synthesis.voice.yuna",
"com.apple.speech.synthesis.voice.yuri",
"com.apple.speech.synthesis.voice.zosia",
"com.apple.speech.synthesis.voice.zuzana"
)
Announcer Debug voice display name: Alex
Announcer Debug voice display name: Alice
Announcer Debug voice display name: Alva
Announcer Debug voice display name: Amelie
Announcer Debug voice display name: Anna
Announcer Debug voice display name: Carmit
Announcer Debug voice display name: Damayanti
Announcer Debug voice display name: Daniel
Announcer Debug voice display name: Diego
Announcer Debug voice display name: Ellen
Announcer Debug voice display name: Fiona
Announcer Debug voice display name: Fred
Announcer Debug voice display name: Ioana
Announcer Debug voice display name: Joana
Announcer Debug voice display name: Jorge
Announcer Debug voice display name: Juan
Announcer Debug voice display name: Kanya
Announcer Debug voice display name: Karen
Announcer Debug voice display name: Kyoko
Announcer Debug voice display name: Laura
Announcer Debug voice display name: Lekha
Announcer Debug voice display name: Luca
Announcer Debug voice display name: Luciana
Announcer Debug voice display name: Maged
Announcer Debug voice display name: Mariska
Announcer Debug voice display name: Mei-Jia
Announcer Debug voice display name: Melina
Announcer Debug voice display name: Milena
Announcer Debug voice display name: Moira
Announcer Debug voice display name: Monica
Announcer Debug voice display name: Nora
Announcer Debug voice display name: Paulina
Announcer Debug voice display name: Samantha
Announcer Debug voice display name: Sara
Announcer Debug voice display name: Satu
Announcer Debug voice display name: Sin-ji
Announcer Debug voice display name: Tessa
Announcer Debug voice display name: Thomas
Announcer Debug voice display name: Ting-Ting
Announcer Debug voice display name: Veena
Announcer Debug voice display name: Victoria
Announcer Debug voice display name: Xander
Announcer Debug voice display name: Yelda
Announcer Debug voice display name: Yuna
Announcer Debug voice display name: Yuri
Announcer Debug voice display name: Zosia
Announcer Debug voice display name: Zuzana
Announcer Error Error in plugin execution UiValidate:

Traceback (most recent call last):
File "plugin.py", line 352, in validateActionConfigUi
TypeError: unsupported operand type(s) for +=: 'NoneType' and 'unicode'

Posted on
Sun Apr 30, 2017 3:50 am
nsheldon offline
Posts: 2469
Joined: Aug 09, 2010
Location: CA

Re: Announcer Usage questions

Interesting.

Thanks for posting the debug log. I'll try to figure out what's going on. I suspect it might be related to one of the non-English voices you have installed. As a temporary workaround, you might try disabling all but the English voices in the System Preferences -> Accessibility -> Speech control panel. Not sure if that will actually fix it or not, but you might try just to see.

Posted on
Sun Apr 30, 2017 10:06 pm
nsheldon offline
Posts: 2469
Joined: Aug 09, 2010
Location: CA

Re: Announcer Usage questions

Version 1.1.7 Released.

  • Fixed a bug that would cause the Announcer plugin to crash when trying to create an Announce Now action with the Play Sound application not installed.
  • Updated the plugin update check code to correctly compare version numbers with more than 2 components.

Posted on
Mon May 01, 2017 11:47 pm
thumpinc offline
Posts: 41
Joined: May 11, 2013

Re: Announcer Usage questions

Hi - Thanks for the reply. I went to the Accessibility>Speech panel and it only had four voices installed. All those other voices appear in the popup in Announcer but aren't actually installed on my machine. Any thoughts on what is going on?

EDIT: Now that I saw what voices I had installed, I made sure to select one in the device setup rather than choosing 'default'. I also upgraded to latest version. This appears to have solved my issue and the plugin now works. Thanks for a very useful thing.

Posted on
Tue May 02, 2017 12:14 am
nsheldon offline
Posts: 2469
Joined: Aug 09, 2010
Location: CA

Re: Announcer Usage questions

Great! I'm glad it's working for you now.

Posted on
Sat Oct 21, 2017 10:32 am
Mirko offline
Posts: 79
Joined: Dec 04, 2014

Re: Announcer Usage questions

Hi Nathan,

Since I transfered Indigo from my Mac mini server running 10.6.8 to a brand new Mac Mini running 10.12.6 especially for Indigo 7 only I have had problems with Announcer. When the Mac mini has restarted Announcer works flawless. After a few days (most of the time 2 days) it stops working properly and I have to restart the computer again.
I get the following in the Indigo Event LOG:
(see attachments)

Thanks!

Mirko
Attachments
Announcer 2.jpg
Announcer 2.jpg (280.19 KiB) Viewed 4249 times
Announcer 1.jpg
Announcer 1.jpg (341.11 KiB) Viewed 4249 times

Posted on
Sun Oct 22, 2017 3:17 am
nsheldon offline
Posts: 2469
Joined: Aug 09, 2010
Location: CA

Re: Announcer Usage questions

Hi Mirko.

Odd. The error seems to indicate that the audio file that's supposed to be created by Announcer then sent to the Play Sound application no longer exists. You might try repairing permissions on your drive using Disk Utility. I'll see what I can find on my end too.

Posted on
Mon Oct 23, 2017 8:00 am
Mirko offline
Posts: 79
Joined: Dec 04, 2014

Re: Announcer Usage questions

Hi Nathan,

Thanks for looking into the matter.
I just ran the Disk Utility but in 10.12.6 the Disk Utility is different now. You can only 'run First Aid' and it will 'check the volume for errors. It will then repair the volume if necessary.'
It seemed all OK.
I also checked the path to the audio-files; it's OK
I checked in Announcer if something is wrong with the description of the path to the audio-files: it's OK
Everything seems in its place........

Posted on
Tue Oct 24, 2017 3:13 am
Mirko offline
Posts: 79
Joined: Dec 04, 2014

Re: Announcer Usage questions

Hi Nathan,

This error came this morning. Maybe it helps......

Error (client) timeout waiting for plugin response from com.nathansheldon.indigoplugin.Announcer for request UiGetValues1
Error (client) timeout waiting for plugin response from com.nathansheldon.indigoplugin.Announcer for request CallPluginFunc
Error (client) runDialogForMenuAction() caught exception: NSInvalidArgumentException -- *** -[__NSPlaceholderDictionary initWithObjects:forKeys:count:]: attempt to insert nil object from objects[0]

Posted on
Tue Oct 24, 2017 3:48 am
Mirko offline
Posts: 79
Joined: Dec 04, 2014

Re: Announcer Usage questions

When I hit the 'SAVE'-button another time it went OK, but I had to restart the computer to have Announcer working again
Attachments
Domotica.jpg
Domotica.jpg (149.48 KiB) Viewed 4155 times

Who is online

Users browsing this forum: No registered users and 5 guests