3CX + Speech Server

Discussion in '3CX Phone System - General' started by SOSAGES, Jul 19, 2007.

  1. SOSAGES

    Joined:
    Jul 19, 2007
    Messages:
    11
    Likes Received:
    0
    Hi all,

    i have setup 3cx to work with 2 of my hardware linksys SPA942 phones (extensions 100 + 101) Also on my local network is Speech server 2007 running on a XP box.

    I need to be able to call my speech server using an extension (102) I have looking into do it and I got confused :)

    I need to define the Speech Server as an end-point on PBX and set up a dial plan or router table so that the PBX knows what extensions will need to be sent to the Speech Server.

    Anyone have any ideas how I do this using 3cx? As the instructions above are generic and not 3cx specific.

    Thanks in advance for any help.
     
  2. silentfun

    silentfun Member

    Joined:
    Dec 11, 2006
    Messages:
    364
    Likes Received:
    0
    have not tested the microsoft thing but i am shure u use the extension in 3cx as a sip account (line) in the speech server.

    i just read the price that MS want to get

    Estimated Street Price (per processor)
    FPP

    Enterprise
    $17,999

    Standard
    $7,999

    so what do you want to use it for perhaps there are some other ways.
    i have tryed my self to set up a voice system and i am very interesting in testing this things.

    Andy
     
  3. Anonymous

    Anonymous Guest

    That is true, but MS uses some different form of protocol (not tcp or udp) forgot the name. But perhaps they came to their senses :).

    If the Extension does not work try the sip id.


    Re price... some of us are Microsoft Partners etc so we get this stuff for nearly nothing or even free (well that is in my case).
     
  4. SOSAGES

    Joined:
    Jul 19, 2007
    Messages:
    11
    Likes Received:
    0
    Hi and thanks for the help.

    Basically its a nightmare :)

    I have 2 hardware phones (spa942s)

    I have an application i have written and installed on my speech server.

    As speech server ONLY supports SIP over TCP i am having issues "calling" my speach server to test my app. The ONLY way i have managed to call my app is via a softphone called SipX and i simply dial the IP address (10.0.0.22) of my speech server and the speech server answers and runs my app.

    The complication comes when i wish to use my hardware phone, for what ever reason it will not call my speech server or my speech server wont answer after much investigation it seems my phone is using UDP so i then tried to hunt down an IPBX i can register at. Once registered i will call the speech server through the IPBX as that will use TCP (hopefully)

    From my understanding the ONLY config that is needed on the speech server is to add the IP of the IPBX to the trusted peers list in speech server.

    I asked some very clever speech server chaps how to register my speech server as an extension (so for example i can dial 101 to get to it) and they said:
     
  5. Anonymous

    Anonymous Guest

    My take.... they either do not know the PBX side of things or they are to smart for their own good :).

    Ill have to read up on the speech server (like so many things) but here is a thing you can try.

    in the SPID ID use the extension and the IP address of your speech server.

    For example 101@10.0.0.22 we can use SIP id's now in the IPPBX so try it via that route.

    The abble about routers and endpoints is in my oppinion a bit fetched. If the call gets routed to the extension (and it is not diverted) it becomes the termination point (end point) by default.

    The routing is done by the PBX, no need to set up routing tables etc. Unless they are revering to the hosts table on the speech server but if you do ip to ip that should not be required.
     
  6. SOSAGES

    Joined:
    Jul 19, 2007
    Messages:
    11
    Likes Received:
    0
    i will have a look.

    FYI here is the original thread: http://gotspeech.net/forums/thread/3431.aspx

    and here is a (unhelpful) post about 3cx and speech server:
    http://forums.microsoft.com/Ocs2007publicbeta/ShowPost.aspx?PostID=1824700&SiteID=57

    i gotta say MS are making speech server hard work :)
     
  7. Anonymous

    Anonymous Guest

    Ah.

    I might stand corrected about the routing thingy, but Ill see if MS dropped a copy of the Speech Server in my pack. If so I might have a crack at it on the weekend.

    Try the SIP ID anyway, it seems that most are suggesting that.
     
  8. SOSAGES

    Joined:
    Jul 19, 2007
    Messages:
    11
    Likes Received:
    0
    hi itfarmer,

    It seems you know far more than me about IPBX setups :) could you tell me where in 3cx i put in the information:
    Thanks in advance, and sorry for being a pain.
     
  9. silentfun

    silentfun Member

    Joined:
    Dec 11, 2006
    Messages:
    364
    Likes Received:
    0
    3cx Loginpage
    Manage Extensions
    Edit Extension: 200 (for example)
    Other options <<
    SIP ID

    here you can write it
     
  10. SOSAGES

    Joined:
    Jul 19, 2007
    Messages:
    11
    Likes Received:
    0
    Hi,

    i had a good luck but cant see that when i edit an extension.

    i have under "Options"
    Outbound caller ID

    Then i have
    Voice Mail Configuration
    Destination Unreachable / Forwarding
    and finally Advanced options

    But nothing that says "SIP ID"

    im using 3CX Phone System v3.0.1699.0 - i will check for a new version
     
  11. silentfun

    silentfun Member

    Joined:
    Dec 11, 2006
    Messages:
    364
    Likes Received:
    0
    yes u need latest build of 3CX PBX
     
  12. SOSAGES

    Joined:
    Jul 19, 2007
    Messages:
    11
    Likes Received:
    0
    i assumed i did have the latest as i grabbed the download on monday..

    ok downloading now :)
     
  13. SOSAGES

    Joined:
    Jul 19, 2007
    Messages:
    11
    Likes Received:
    0
    ok chaps,

    i tried that but no luck :(

    did anyone get the chance to install speech server and try and register it on 3cx? :)
     
  14. Anonymous

    Anonymous Guest

    Not yet, but it is on the agenda, so that means we lookinto it within 5 days.

    That if we have the software from ms.
     
  15. SOSAGES

    Joined:
    Jul 19, 2007
    Messages:
    11
    Likes Received:
    0
    thanks in advance if u do look into it.
     
  16. zazi

    Joined:
    Nov 20, 2008
    Messages:
    7
    Likes Received:
    0
    Hi guys,



    I've tried the 3CX Phone System with the MS Speech Server, but I got it not to work. I think there is a little gap in my brain to solve it ;)

    Here are the configurations:



    Speech Server Application:

    Application name: PizzaOrder02 (the pizza order tutorial)

    Application type: SALT application

    Start page: http://localhost/PizzaOrder02/Default.aspx

    Deployment location: [www-root-directory]\PizzaOrder02\

    Manifest location: [www-root-directory]\PizzaOrder02\manifest.xml

    Message queue: -

    Called party: 814; 0814 (the PBX cuts the first number of my orginal number, so I registered also 814)

    Enabled application: checked

    TCP listening port: 6060

    TLS listening port: 6061



    SIP Peer:

    Name: 3CX Phone System

    Address: [the IP of the PBX]

    Ports: default ports (because it uses the default ports)



    I've registered it also as a trusted SIP peer and allow outbound calls and transfers



    PBX configuration:

    I've registered the speech server as describe http://forums.microsoft.com/unifiedcommunications/ShowPost.aspx?PostID=1815391&SiteID=57

    but I do not really know if this make sense (registering the Speech Server as a VoIP provider) - anyway here is the configuration of that:

    SIP hostname or IP: [the hostname of the Speech Server]

    SIP server port: 15060 (as configured in the Speech Server settings)

    Outbound proxy hostname or IP: [the hostname of the Speech Server]

    Outbound proxy port: 15060



    External Number: 1234

    Authentification ID: 0814

    Authentification password: -

    but as describe in the linked website above, it doesn't matter, which values the last 3 keys have

    in advanced of this configuration, the field called "Which IP to use in 'Contact' field for registration" and do not really no what to choose. I selected "Specific IP" and typed the IP of the Speech Server in this field.

    When I registered my Sipgate account (as another VoIP provider) I had to select "External (STUN resolved)" and it would use the STUN server of Sipgate to register.

    Furthermore, the configuration of the port (1234; as the external number above) with a configuration as follows:

    Virtual Extension Number (unique): 10001

    Authentification ID: 0814

    Authentification password: -

    Port identification: 1234

    Connect to Extension: 0814 -> in the extension, which has as ID (0814@[hostname of the Speech Server]) and should (maybe) connect to my pizza order application.

    The "Inbound Rules" of that extension port:

    Route calls for this DID/ DDI Number to: 0814 (for port number: 10001) <- "0814" is the number which I like to dial to connect to the pizza order service (as seen the value of "Called party" from the Speech Server application configuration above).

    Connect to Extension: 0814 (the extension I've configured to connect to the pizza order service)



    Because the PBX cut the first number of my dialed number I set another "Inbound rule" for "00814".



    Now, it is time for the last point of my 3CX Phone System configuration - the extension definition "0814":

    Extension Number: 0814

    First Name: -

    Last Name: -

    Email address: -

    ID: 01814@[hostname of the Speech Server]

    password: -

    Enabled voice mail: checked

    Play Caller ID: unchecked

    (I think the other settings are not relevant).



    At last, the log of the call from the PBX:

    21:35:23.856|.\CallCtrl.cpp(135)|Log2||CallCtrl::eek:nIncomingCall:[CM503001]: Call(11): Incoming call from Ext.4321 to "sip:0814@[the hostname of the Speech Server]"<sip:0814@[the hostname of the Speech Server]><br>
    21:35:23.866|.\Extension.cpp(922)|Log3||Extension::printEndpointInfo:[CM505001]: Ext.4321: Device info: Device Identified: [Man: Counterpath;Mod: X-Lite;Rev: General] Capabilities:[reinvite, no-replaces, unable-no-sdp, recvonly] UserAgent: [X-Lite release 1100l stamp 47546] Transport: [sip:[the IP of the 3CX Phone System]:5060]<br>
    21:35:23.866|.\CallCtrl.cpp(295)|Log3||CallCtrl::eek:nSelectRouteReq:[CM503010]: Making route(s) to "sip:0814@[the hostname of the Speech Server]"<sip:0814@[the hostname of the Speech Server]><br>
    21:35:23.866|.\CallCtrl.cpp(410)|Log2||CallCtrl::eek:nSelectRouteReq:[CM503016]: Call(11): Target is not registered: Ext:Ext.0814<br>
    21:35:23.866|.\Call.cpp(603)|Log2||Call::RouteFailed:[CM503015]: Call(11): Attempt to reach "sip:0814@[the hostname of the Speech Server]"<sip:0814@[the hostname of the Speech Server]> failed. Reason: Not Registered<br>
    21:35:23.876|.\Call.cpp(603)|Log2||Call::RouteFailed:[CM503015]: Call(11): Attempt to reach "sip:0814@[the hostname of the Speech Server]"<sip:0814@[the hostname of the Speech Server]> failed. Reason: Not Registered<br>
    21:35:23.886|.\Call.cpp(760)|Log2||Call::Terminate:[CM503008]: Call(11): Call is terminated<br>



    Ext.4321 is the extension of my softphone, which I've used to initiate the call.

    I run all this application local on my Windows XP Professional machine. I'm really new in this type of software applications. I don't not really know, how to register my application at PBX (registering with a softphone is clear and works).

    Thanks a lot for any hint our solution of this problem. I'm really happy in getting it to work, because otherwise we've had to use an asterisk system with other application and not the Speech Server and I think developing speech application in VS is really a good choice.



    Cheers zazi
     
  17. zazi

    Joined:
    Nov 20, 2008
    Messages:
    7
    Likes Received:
    0
    Well, I think the problem is that I have to "register" the Speech Server at the 3CX Phone System. Now I got it to work with PBXNSIP. There you can "register" the Speech Server as an "SIP Gateway". When you register a VoIP provider there you do that as a "SIP Registration", but the Speech Server do not need this registration.

    I got the 3CX Phone System to route my call to my Speech Server (as VoIP Provider), but then it fails always with 408 (timeout) or at one time I got also a 486 (busy; which is at the beginning not bad, because when I dial the service over PBXNSIP I got also "busy" for the first time and after that the application works well).



    Here is the log snippet of that dial:

    10:47:54.950|.\CallCtrl.cpp(135)|Log2||CallCtrl::eek:nIncomingCall:[CM503001]: Call(6): Incoming call from Ext.4321 to "PizzaOrder"<sip:0814@192.168.1.100;transport=tcp><br>
    10:47:54.960|.\Extension.cpp(922)|Log3||Extension::printEndpointInfo:[CM505001]: Ext.4321: Device info: Device Identified: [Man: Counterpath;Mod: X-Lite;Rev: General] Capabilities:[reinvite, no-replaces, unable-no-sdp, recvonly] UserAgent: [X-Lite release 1100l stamp 47546] Transport: [sip:192.168.1.100:5060]<br>
    10:47:54.970|.\CallCtrl.cpp(295)|Log3||CallCtrl::eek:nSelectRouteReq:[CM503010]: Making route(s) to "PizzaOrder"<sip:0814@192.168.1.100;transport=tcp><br>
    10:47:55.000|.\CallCtrl.cpp(404)|Log2||CallCtrl::eek:nSelectRouteReq:[CM503004]: Call(6): Calling: VoIPline:0814@(Ln.10001@Speech_Server)@[Dev:sip:192.168.1.100:15060]<br>
    10:48:27.046|.\CallLeg.cpp(232)|Log2||CallLeg::eek:nFailure:[CM503003]: Call(6): Call to sip:0814@192.168.1.100:15060 has failed; Cause: 408 Request Timeout; internal<br>
    10:48:27.046|.\Call.cpp(603)|Log2||Call::RouteFailed:[CM503015]: Call(6): Attempt to reach "PizzaOrder"<sip:0814@192.168.1.100;transport=tcp> failed. Reason: No Answer<br>
    10:48:27.066|.\Call.cpp(760)|Log2||Call::Terminate:[CM503008]: Call(6): Call is terminated<br>



    =======================================

    4321 is my softphone client, which is connected to the 3CX Phone System

    0814 / PizzaOrder is the application at the Speech Server

    192.168.1.100 is my local IP

    5060 is the listening port of the 3CX Phone System

    15060 is the listening port of the MS Speech Server



    Hope that will maybe help to get Speech Server to work with 3CX Phone System.



    Cheers zazi
     
  18. zazi

    Joined:
    Nov 20, 2008
    Messages:
    7
    Likes Received:
    0
    Oho, I was a little bit to quick. Anyway, I got it to work. The problem was that not the Speech Server redirects automatically to port 6060, where the PizzaOrder application should be connect. So you have to dial directly to this port of the application (in my case 6060).

    So the dialplan looks like this:

    SIP:[Phonenumber of your application]@[IP of the Speech Server]:[Port of the application];transport=tcp

    and you have to creat (in this case) a inbound rule to route this call to the Speech Server. Hope that will help every one outside, who likes to try the way over 3CX Phone System.



    Cheers zazi
     
  19. Nick Galea

    Nick Galea Site Admin

    Joined:
    Jun 6, 2006
    Messages:
    1,677
    Likes Received:
    18
    This is interesting... So you have created a VXML application that uses Microsoft Speech server with its speech recognition?
     
  20. zazi

    Joined:
    Nov 20, 2008
    Messages:
    7
    Likes Received:
    0
    Oh, just tried the pizza order tutorial (a SALT application) of the MS Speech Server documentation to get to work with your pbx, which isn't maybe the easiest thing (if you would have a look at gotspeech.net or other relevant information sites). However, the problem with your pbx is still, I don't get it to work with the combination VoIP provider (e.g. Sipgate) + MS Speech Server - so that I can phone my service from a hardware phone. It just works with the softphone client, which registered directly at the 3CX phone system.
     

Share This Page