Audio Announcement of Alarms

I was wondering if there were any plans to make FPMI announce alarms through the speakers. The reason i ask is we want to be anle to announce our alarms over our radio system, because we dont have operators manning the control screens at all times. Any ideas, i was thinking of finding a text to speech program, and running it though a command, but is there any way we can have this implemented in the program itself?

This post describes how to play audio files in a FactoryPMI client that are stored in the database as a BLOB. You could probably build up quite a few phrases by combining pre-recorded segments. I don’t think we’ve yet considered voice enunciation as a standard FSQL/FPMI feature.

Yes, but close, but not quite what i want. I think what i want to do is use a program like SpeakAlound, make another table to use with SQLTags, and whenever a new alarm comes in, use a Text to Speach command prompt program to speak the returne alarm text. i think i have a way to do it, just havent implemented it yet. Stay tuned

I’ll take another look around. If you see an LGPL or equivalent Java (preferably Java Bean) project on Sourceforge we can probably make it into a plugin.

Might make sense as part of FactorySQL’s alarming. In that case we’d be looking for a .NET voice enunciation API - preferably a free one.

Obviously, a brand new feature request takes more time.

I was thinking of using a command line call to get it accomplished. I cant remember what product it was, but you can call a command line with swift -t “This is the text”, or something like that. I will use some logic to detect a new alarm, then have that alarms id reference another table, which contains the text to be spoken, then use a call to run swift -t “%s” or something like that

That should work fine. You’d want to do it on the FactorySQL (or any central computer). Keep in mind that individual FactoryPMI client machines have a much lower guarantee of having that application, audio hooked up, etc - unless you take care to make it so.

Yeah, i only want it to annunciate from the computer tied into the radio system, so ill just do an IP check. Ill post when after I implement

Here’s some links that might be of interest…

The link above contains links to the following which I thought might be pertinent:

We actually did experiment with a tts plugin, I think it was based off FreeTTS - and it worked. Hadn’t heard any demand for it though (until this thread)

Yeah, we want to use it because we dont have any way of letting operators to check what the alarm was unless they come inside the control room to check. We announce an audible buzzer. We want to tie our main server into the radio system so they know if it can wait for action or if its urgent. Ill beta test if you need haha

I’m looking into what we can throw together for a FSQL plugin… should be pretty easy, as Microsoft’s speech sdk is free and has been around forever. I’ve worked with it before and it’s pretty straight forward. I’m thinking a plugin with a function that simply announces whatever you pass to it. I can picture a really cool setup with a group with a number of action items that select a not-yet-annunciated alert, generates a message, calls speak, and then writes back to the DB that the alert has been announced. The group could be set to execute on a trigger (-> alarm available?) and set to execute every second or something, so it would essentially just loop through and announce any alarms that it needed to.

Since the alarms would be coming from a query, you could do all sorts of cool things like “announce medium severity alerts that aren’t clear, haven’t been acknowledged, and are more than 5 minutes old… and announce any higher severity alerts immediately”. Anyhow, basically I’m just letting my mind wander while I wait for the SDK to download :laughing:

Will keep you updated,

Yeah that kind of what i had in mind. I could make another table that is relational to the sqltag tables, then have a way to monitor for new alarms, but i havent put that much thought into it yet. Thanks for the help

To follow up… I got a basic plugin working. However, I’m trying to figure out a good way to bundle it up, since it requires the Microsoft Speech interface, and they don’t have a simple redistributable installer. Instead, they give you all the components you need to build your own installer. A bit strange, but ok…

I’ll probably post something up here later today for you to play around with.


Check this out and see how it works for you. It’s very basic as-is, let me know if there’s anything that could make it better. Maybe eventually we’ll actually put it up in the plugins section.

FactorySQL (6.72 MB)

I can get this to play on the FSQL server machine, but not on remote clients. What am I missing?

Unfortunately, you’re not missing anything- it’s a FactorySQL plugin, so it’s going to run only on that machine.

When it comes to playing sound on the client, you’re stuck with the sound player component in PMI, or calling to an external application as discussed in this thread.



Are there any plans to incorporate a “Text-to-Speech” plug-in with FPMI???

I did an experiment a few years ago along these lines, and successfully got FreeTTS working in FactoryPMI. I suppose a plugin could be made, but don’t hold your breath - we’re a bit swamped at the moment.

I imagine you are, concerning the new release and all… We’re all paid up and anticipating it… I hope all of my excitement is not for nothing lol…

Are there any updates to this? I guess the zip package will not work with the new ignition?
Would be nice to access TTS through scripting which looks like has be done already…