How to integrate use unimrcp in freeswitch

could not find any complete document, for integration of unimrcp with freeswitch so thought of documenting it.

I had requirement to use MRCP interface for integration of ASR module with Freeswitch for Pizza demo.

here it is what i had to do.

1. prepare the Gino Pizza setup according to

http://wiki.freeswitch.org/wiki/Mod_pocketsphinx

  1. In ps_pizza.js change

var asr = new SpeechDetect(session, “pocketsphinx”)

to

var asr = new SpeechDetect(session, “unimrcp”);

2. In /usr/local/freeswitch/conf/autoload_configs/unimrcp.conf.xml file change the value of default-asr-profile to correct profile name as defined in one of file under mrcp_profiles

3. add follwing line

/usr/local/freeswitch/conf/autoload_configs/modules.conf.xml

<load module=”mod_unimrcp” critical=”true/>

so that mod_unimrcp module can be loaded by Free Switch.

That is all, you are all set to use ASR module using MRCP.

About Prabhu Srivastava

I have more than 14 years experience in all phases of software product development;I have done my engineering in Computer Science from REC Allahabad and I am an alumnus of Indian institute of Management, Bangalore. I am co-founder of NavankurIT.in, a company specialized in providing open source solutions to MSMEs. I can be reached at prabhu@navankurit.in.
This entry was posted in Uncategorized. Bookmark the permalink.

2 Responses to How to integrate use unimrcp in freeswitch

  1. Rania Fekry says:

    Hello

    I am working to get Unimrcp working with freeswitch , I have followed your instructions , but didn’t succsess , here is my steps
    1- install Unimrcp
    2- run Unimrcp client , run Unimrcp server
    3- Edit Ps-Pizza.js
    var asr = new SpeechDetect(session, “unimrcp:unimrcpserver-mrcp-v1”);
    4- run freeswitch
    5- Dailed the pizza extensions 74992 , it asking do I need delivery or take out . but never detect it
    6-run fs_cli log 7
    here is the error I got
    mod_unimrcp.c:1795 (ASR-0) RECOGNIZER channel error!

    7- in the Unimrcp -Freeswitch wiki
    http://wiki.freeswitch.org/wiki/Mod_unimrcp

    There is a step for c/C++ to change the grammar
    switch_ivr_detect_speech(session, “unimrcp”, “yesno”, “yesno-name”, “”, NULL);

    Where can I do that

    I don’t have any grammar file for unimrcp , under freeswitch/grammar only pizza grammar

    8- all what I am trying to do , is to get use ASR with freeswitch , that is the reason I install Unimcrp , I need to use speech recognition with Freeswitch

    Please , any instuctions how to achive that , I would really appreciate it
    I am runing Unimrcp ” server and client ” is that enough or I need to install Nounace or other speech recognition software with Unimrcp

    Thank you
    Rania

    • you need to start your asr server,
      I have put more details below

      1. Downloaded FreeSWITCH 1.0.6.

      $ cd /usr/local/src
      $ wget http://files.freeswitch.org/freeswitch-1.0.6.tar.gz
      $ tar xvfz freeswitch-1.0.6.tar.gz

      2. Compiled the source.

      $ ./configure
      $ make

      3. Installed.

      $ make all install cd-sounds-install cd-moh-install
      $ make samples

      4. Started FreeSWITCH.

      $ /usr/local/freeswitch/bin/freeswitch

      5. Placed a call using softphone (x-lite), and confirmed FS worked.

      6. Uncommented “asr_tts/mod_unimrcp” in “/usr/local/src/freeswitch-1.0.6/modules.conf”

      7. Ran “make install” again.

      8.Open /usr/local/freeswitch/conf/autoload_configs/modules.conf.xml, and add
      mod_unimrcp. The ASR /TTS section of the file looks like:


      <!– –>
      <!– –>
      <!– –>
      <!– –>
      <!– –>

      9. Edited “/usr/local/freeswitch/conf/autoload_configs/unimrcp.conf.xml”:


      <!– –>

      10. Add “youasr1-mrcp-v1.xml” to “/usr/local/freeswitch/conf/mrcp_profiles/” (



      . Restarted all the modules (asr-server, asr-mrcp, and FreeSWITCH), and placed a call

Leave a comment