[Freeswitch-users] [Freeswitch-dev] C SAY API

Kannaiyan Natesan gbpnkans at gmail.com
Sun Dec 17 08:43:21 PST 2006


Thanks Mike.

Yes. We can add this to the logic.

when you see,

welcome=welcome to freeswitch

the sequencer can look in for

welcome-to-freeswitch.wav

or independent

welcome.wav
to-freeswitch.wav  or  (to.wav & freeswitch.wav)

Logic of sentence formation and search must be built in,

word1 word2 word3 word4 word5

word1 - must be preprocessed

preprocessing modules
      ---- digits  (expand the digits and load with the respective numbers)
      ---- http    ( Add  website.wav & remove http:// in the front )
      ---- $45.78 (expanded to (digithandler) dollars and (digithandler)
cents)
      ---- GBP93.78 (expanded to (digithandler) pounds and (digithandler)
pence)
      ---- etc.,,

(every user can add their own preprocessing module)  or a smart idea for
preprocessing will be good

word1 -> preprocessed -> ppword1

ppword1-ppword2-ppword3-ppword4-ppword5.[availableformats]*
ppword1-ppword2-ppword3-ppword4.[availableformats]* &
ppword5.[availableformats]*

like that. ppword comprises of more than one word.

It makes the job easier and flexible too.

Please do suggest and the problem you will see with this design.

Regards,
Kannaiyan


On 12/17/06, Mike Murdock <mmurdock at coppercom.com> wrote:
>
> I like the concept but I don't think you want to go all the way down to
> storing each word.. Since the phrases will need to be localized anyway you
> can simply use the sequencer in your example to speak "you-have.wav" &
> 1000 & "messages.wav" for english and 1000 & "messages-you-have.wav" for
> tibetian (or whatever). The sequencer would do more than just describe the
> order of the phrases but also the actual phrases files to use. This gives
> you maximum flexability in the sentance construction while not devolving to
> having to record every word separately.
>
> Michael B. Murdock
>
>
> -----Original Message-----
> From: Kannaiyan Natesan [mailto:gbpnkans at gmail.com]
> Sent: Sun 12/17/2006 6:10 AM
> To: freeswitch-users at lists.freeswitch.org
> Cc: freeswitch-dev at lists.freeswitch.org
> Subject: Re: [Freeswitch-users] [Freeswitch-dev] C SAY API
>
> Hi Matt,
>
> It is easy with the architecture which i defined before.
>
> [voicemail.txt]  (forvoicemail app)
> messageleft=You have 1000 messages
>
> [voicemail.txt]
> messageleft=1000 messages you have
>
> Just change only the file in the sequencer. The whole application will
> behave differently.
>
> Just store only the files.
>
> you.have
> have.wav
> messages.wav
>
> Rest the system will read from the sequencer and play the respective
> files.
>
> With Brian West and Anthony written complex code in asterisk, this is not
> a
> big deal to implement for them.
>
> Thanks to Anthony, for atleast asking us for the opinion.
>
> Regards,
> Kannaiyan
>
>
> On 12/17/06, Matt Porter <mporter at voice3g.com> wrote:
> >
> >  You are really going to need some feedback about this one.
> > Its been a terribly long time, and i have forgotten most of the issues
> we
> > faced..
> > but when we ported a unified messaging product many years ago to some of
> > the eastern languages.  It was almost impossible to abstract this
> concept
> > out.
> >
> > Abstracting something like speaking a URL, Phone number, Numeric string
> is
> > perfectly attainable...
> > but constructing a useful working sentence is much more complicated..
> >
> > given "You have 1000 messages", in english.
> >
> >
> > may need to say "1000 messages you have", before it makes any sense in
> > Chinese or Piglatin or whatever.
> >
> >
> > In which case, you end up having to write seperate IVR code for each
> > language anyway.  and having a "multi-lingular say API" is of extremely
> > limited usefulness.
> >
> > I am not bilingual.. heck i never did any good in English class either.
> > Im not trying to throw poo on the idea..  just skeptical about how
> useful
> > this may turn out, for anything but a handful of commonly constructed
> > languages.
> >
> >
> >
> > ----- Original Message -----
> > *From:* Nikolay Kolev <me at nikolay.com>
> > *To:* freeswitch-dev at lists.freeswitch.org ;
> > freeswitch-users at lists.freeswitch.org
> > *Sent:* Saturday, December 16, 2006 6:47 PM
> > *Subject:* Re: [Freeswitch-users] [Freeswitch-dev] C SAY API
> >
> >  The idea is great!
> >
> >
> >
> > OpenPBX seems to have one something similar, but it's unfortunately GPL.
> >
> >
> >
> > BTW, SSM_ITTERATED is misspelled. What would be the difference between
> > SSM_ITERATED and SSM_PRONOUNCED?
> >
> >
> >
> > Nikolay Kolev
> >  ------------------------------
> >
> > *From:* Anthony Minessale [mailto:anthmct at yahoo.com]
> > *Sent:* Friday, December 15, 2006 3:09 PM
> > *To:* freeswitch-dev at lists.freeswitch.org;
> > freeswitch-users at lists.freeswitch.org
> > *Subject:* [Freeswitch-dev] C SAY API
> >
> >
> >
> > Hi,
> >
> >
> >
> > I'm working on a muiti-lingual say api for ivr programmers to be able
> >
> > to generate audio for saying numbers, counting items or expressing
> amounts
> > of things such as currency.  I'd like some input from anyone who has
> some
> > ideas
> >
> > on how to make sure we cover all bases.
> >
> >
> >
> > The basic idea is that we will have an api where each
> > new language/implementation would provide it's own version of this
> function.
> >
> >
> >
> > switch_status_t say(char *tosay,
> >                     switch_say_gender_t gender,
> >                     switch_say_type_t type,
> >                     switch_say_method_t method,
> >                     switch_input_callback_function_t dtmf_callback,
> >                     void *buf,
> >                     uint32_t buflen);
> >
> > The enums are described in http://www.freeswitch.org/eg/say_api.c
> >
> >
> >
> > the idea would be something like
> >
> >
> >
> > switch_say_handle_t *en;
> >
> >
> >
> > en = switch_say_load("en");
> >
> >
> >
> > switch_ivr_play_file(session, NULL, "/sounds/youhave.wav", NULL, NULL,
> > NULL, 0);
> >
> > en->say("1000", SSG_ANY, SSM_PRONOUNCED, SST_MESSAGES, NULL, NULL, 0);
> >
> > switch_ivr_play_file(session, NULL, "/sounds/msgs.wav", NULL, NULL,
> NULL,
> > 0);
> >
> >
> >
> >
> > Thoughts?
> >
> >
> >
> > Anthony Minessale II
> >
> > FreeSWITCH http://www.freeswitch.org/
> > ClueCon http://www.cluecon.com/
> >
> > AIM: anthm
> > MSN:anthony_minessale at hotmail.com
> > JABBER:anthony.minessale at gmail.com
> > IRC: irc.freenode.net #freeswitch
> >
> >
> > FreeSWITCH Developer Conference
> > sip:888 at 66.250.68.194
> > iax:guest at 66.250.68.194/888
> > googletalk:freeswitch at gmail.com
> > pstn:213-799-1400
> >
> >
> > __________________________________________________
> > Do You Yahoo!?
> > Tired of spam? Yahoo! Mail has the best spam protection around
> > http://mail.yahoo.com
> >
> > ------------------------------
> >
> > _______________________________________________
> > Freeswitch-users mailing list
> > Freeswitch-users at lists.freeswitch.org
> > http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> > http://www.freeswitch.org
> >
> >
> > _______________________________________________
> > Freeswitch-users mailing list
> > Freeswitch-users at lists.freeswitch.org
> > http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> > http://www.freeswitch.org
> >
> >
> >
>
>
> _______________________________________________
> Freeswitch-users mailing list
> Freeswitch-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20061218/09fc5df2/attachment-0003.html 


More information about the FreeSWITCH-users mailing list