Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    FreeSWITCH package for pfSense 1.2.1 and 2.0 released. PBX or Proxy

    Scheduled Pinned Locked Moved pfSense Packages
    314 Posts 39 Posters 292.0k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • C
      cybrsrfr
      last edited by

      @adrianhensler:

      My issue was that I had created the two gateways but was having difficulty getting calls to go over the one I wanted.  I had one set for 11 digit dialing and one set for 7 digit dialing; but every time I tried to call it would go over the 11 digit dialing one even if I had only entered 7 digits.  I think my problem was that it was adding the area code automatically and then going over the gateway I had set as a default?

      Sound like 'Dialplan Expression' tool was used and created a dialplan entry for 7 digits for both Gateways. If you have multiple gateways it is a good idea to see what you have already defined in the 'Dialplan' tab. If there are duplicates 7, 10, or 11 digit dialing it will choose the one that is assigned the lowest order. If there are ever duplicates there in the tab then I suggest removing them or editing them. You can add additional conditions such as an extension which would direct calls based on extension and on how many digits. If you have multiple gateways another approach is to make one gateway for 7 10 and 11 digit dialing and the other one requiring dialing a prefix number such as 8 or 9 and then the number.

      @adrianhensler:

      I wanted some way to be able to look at the logs and see what had happened rather than just looking at the 'live' channels - is there no way to do that?  There must be a way to view that information?

      You can enabled SSH under PFSense -> Advanced and run FreeSWITCH from the console. If you are at the pfSense menu on the console or from SSH then choose option 8.
      cd /usr/local/freeswitch/bin
      ./freeswitch -stop
      ./freesiwth start

      pressing F8 enables debug or F7 disables debug.

      Or if you you can connect to it remotely from the LAN using the new fs_cli tool that the FreeSWITCH team has developed. I have attached the windows version to this post. You just need to remove the .txt extension from the file.

      Run it from the command prompt with:

      fs_cli.exe -H 192.168.1.1 -P 8021 -p ClueCon

      Replace 192.168.1.1 with the LAN IP of your FreeSWITCH install. The port 8021 and the password: ClueCon are set from the 'Settings' tab.

      fs_cli.exe.txt

      1 Reply Last reply Reply Quote 0
      • A
        adrianhensler
        last edited by

        Thanks mcrane.  I think I have the outbound straightened out.  I did have two gateways and both as 7 digit and I wanted that so that the second one would work if the first one failed.

        I think it kept dialing my test number (my cell phone) using the wrong gateway because I have an extension set up for it?  Not sure; I'll look at this a bit more.

        Quick question about mod_dingaling for gtalk integration.

        I get this error in the logs when I try to sing in:

        "2009-01-10 22:31:17 [DEBUG] libdingaling.c:1175 on_stream() TLS NOT SUPPORTED IN THIS BUILD!"

        My understanding is that gtalk requires tls?  Is this correct or am I missing something.  I enabled the module and stopped FS.

        Edited client.xml to be this:

         <profile type="client"><param name="name" value="gmail.com">
           <param name="login" value="adrianhensler@myemail.ca/gtalk">
           <param name="password" value="bigfatsecret">
           <param name="server" value="talk.google.com">
           <param name="dialplan" value="XML">
           <param name="message" value="FreeSwitch (The Future of Telephony)">
           <param name="rtp-ip" value="auto">
        
           <param name="ext-rtp-ip" value="stun:stunserver.org">
           <param name="auto-login" value="true">
           <param name="auto-reply" value="Press *Call* to join my conference">
           <param name="sasl" value="plain">
           <param name="tls" value="true">
           <param name="exten" value="2000"></profile> 
        
        

        But then I got the error as above.

        1 Reply Last reply Reply Quote 0
        • C
          cybrsrfr
          last edited by

          @adrianhensler:

          "2009-01-10 22:31:17 [DEBUG] libdingaling.c:1175 on_stream() TLS NOT SUPPORTED IN THIS BUILD!"

          I will work on enabling this on the next FreeSWITCH compile.

          1 Reply Last reply Reply Quote 0
          • chpalmerC
            chpalmer
            last edited by

            mcrane- First thing, You Rock! As do all the PFSense authors and support staff! Thanks to all of you!

            Now to anyone else that knows…  I thought I was able to dial from extension to extension when I first installed this package. I believe the reason I cant now is that both extensions exist on the same ATA as ports one and two. Its a Zoom in case it matters. I need to verify when I get a free moment but any comments...

            I need to reread the thread here again in case its covered and I missed it but-  my IVR message answers when I have the inbound pointed that way however when I press a number it hangs up. Im lost on this at this point.

            Otherwise its working great!  :) ;D

            Triggering snowflakes one by one..
            Intel(R) Core(TM) i5-4590T CPU @ 2.00GHz on an M400 WG box.

            1 Reply Last reply Reply Quote 0
            • chpalmerC
              chpalmer
              last edited by

              IVR seems to be working now…    ;D :)

              Triggering snowflakes one by one..
              Intel(R) Core(TM) i5-4590T CPU @ 2.00GHz on an M400 WG box.

              1 Reply Last reply Reply Quote 0
              • A
                adrianhensler
                last edited by

                @chpalmer:

                mcrane- First thing, You Rock! As do all the PFSense authors and support staff! Thanks to all of you!

                Now to anyone else that knows…  I thought I was able to dial from extension to extension when I first installed this package. I believe the reason I cant now is that both extensions exist on the same ATA as ports one and two. Its a Zoom in case it matters. I need to verify when I get a free moment but any comments...

                pfSense ftw for sure.

                I'll take a stab at your question - I think you'll have to use different ports for the extensions as they will be on the same IP?  Does that help? Or is that what you meant by 'ports one and two' now that I reread your message.  Never heard of Zoom so I won't be any help there.  Maybe I'll set up my linksys pap2 later tonight and see if I can get both channels on that to work.

                1 Reply Last reply Reply Quote 0
                • chpalmerC
                  chpalmer
                  last edited by

                  Thanks:  I think thats my problem. It appears the adapter may not be specifying the ports to the pbx correctly.

                  http://zoom.com/  These guys have been around for years. I used to have a 33k modem made by them. (Now Im not sure I actually have a modem in my house anywhere, but thats for another post…)

                  Im setting up another ata right now as I post this to seperate them out for more controlled conditions...

                  :) ;D

                  Triggering snowflakes one by one..
                  Intel(R) Core(TM) i5-4590T CPU @ 2.00GHz on an M400 WG box.

                  1 Reply Last reply Reply Quote 0
                  • C
                    cybrsrfr
                    last edited by

                    For those with a linksys pap2 each phone port has a different port by default example line 1 5060 and line 2 5061. I don't have a zoom yet but I believe it would be the same.

                    What model of zoom are you using?  I've been looking at one zoom that has both 1 fxs and 1 fxo. The feature that really caught my eye was ilbc support.  Ilbc codec is comparable to G729 if not better with its audio compression.

                    1 Reply Last reply Reply Quote 0
                    • chpalmerC
                      chpalmer
                      last edited by

                      I have a model 5822 that was never released fully by them. I was a beta tester for a voip company and they sent it to me. I can find only one setting for local sip port on it. I believe it will only be good for one port.

                      Triggering snowflakes one by one..
                      Intel(R) Core(TM) i5-4590T CPU @ 2.00GHz on an M400 WG box.

                      1 Reply Last reply Reply Quote 0
                      • C
                        cybrsrfr
                        last edited by

                        FreeSWITCH package minor update.

                        Add International option to the Dialplan Expression tool,
                        Minor wording changes
                        Hide Outbound Caller ID on the Extensions tab. Effective Caller ID is used by FreeSWITCH.

                        1 Reply Last reply Reply Quote 0
                        • C
                          cybrsrfr
                          last edited by

                          New FreeSWITCH build 1.0.2 revision 11245. More modules have been compiled including mod_fax, mod_openzap, and mod_spidermonkey_odbc.

                          More info can be found on mod_fax at:
                          http://wiki.freeswitch.org/wiki/Mod_fax

                          In order to use fs_cli you would connect with ssh, then run the following commands. Replace the 192.168.1.1 with your own pfSense LAN IP address. The port and the password are settings that can be configured from the 'Settings' tab.

                          cd /usr/local/freeswitch/bin
                          ./fs_cli -H 192.168.1.1 -P 8021 -p ClueCon

                          The following is a list of modules that are available. # is a comment any module with this in front of it was not compiled.

                          loggers/mod_console
                          loggers/mod_logfile
                          loggers/mod_syslog
                          applications/mod_commands
                          applications/mod_conference
                          applications/mod_dptools
                          applications/mod_enum
                          applications/mod_fifo
                          #applications/mod_fax (trying to build this time: failed)
                          applications/mod_voicemail
                          #applications/mod_lcr
                          applications/mod_limit
                          applications/mod_expr
                          applications/mod_esf
                          #applications/mod_easyroute
                          applications/mod_fsv
                          applications/mod_soundtouch
                          applications/mod_rss
                          applications/mod_snom
                          applications/mod_vmd
                          asr_tts/mod_flite
                          asr_tts/mod_pocketsphinx
                          #asr_tts/mod_cepstral
                          codecs/mod_g723_1
                          codecs/mod_amr
                          codecs/mod_g729
                          codecs/mod_h26x
                          codecs/mod_voipcodecs
                          codecs/mod_ilbc
                          codecs/mod_speex
                          codecs/mod_siren
                          codecs/mod_celt
                          dialplans/mod_dialplan_directory
                          dialplans/mod_dialplan_xml
                          dialplans/mod_dialplan_asterisk
                          directories/mod_ldap
                          endpoints/mod_dingaling
                          endpoints/mod_iax
                          #endpoints/mod_portaudio
                          endpoints/mod_sofia
                          endpoints/mod_loopback
                          #endpoints/mod_alsa
                          #endpoints/mod_opal
                          ../../libs/openzap/mod_openzap
                          event_handlers/mod_event_multicast
                          event_handlers/mod_event_socket
                          event_handlers/mod_cdr_csv
                          #event_handlers/mod_radius_cdr
                          formats/mod_native_file
                          formats/mod_sndfile
                          formats/mod_shout
                          formats/mod_local_stream
                          formats/mod_tone_stream
                          #languages/mod_python
                          languages/mod_spidermonkey
                          languages/mod_spidermonkey_teletone
                          languages/mod_spidermonkey_core_db
                          languages/mod_spidermonkey_socket
                          languages/mod_spidermonkey_odbc
                          languages/mod_lua
                          #languages/mod_perl
                          #languages/mod_yaml
                          xml_int/mod_xml_rpc
                          xml_int/mod_xml_curl
                          xml_int/mod_xml_cdr
                          #xml_int/mod_xml_ldap
                          say/mod_say_en
                          say/mod_say_de
                          say/mod_say_es
                          say/mod_say_fr
                          say/mod_say_it
                          say/mod_say_nl
                          say/mod_say_zh

                          1 Reply Last reply Reply Quote 0
                          • A
                            adrianhensler
                            last edited by

                            mcrane: You are putting features in faster than I can play with them.

                            What's the status on the mod_openzap - if I put a digium card or clone in my machine, will my chances of making it work be reasonable?  I have an ebay X100 type clone.

                            I took a look at the freeswitch wiki and it looks promising, is everything in place in the pfsense package to make this work? Or do I have to manually get the zaptel OS level modules in pfsense?  Sorry, seems like a newbie question - but to get a zaptel card in my pfsense box I have to remove the wireless or move pfsense to a different box due to having only the one PCI slot.

                            I'd rather not go through those steps if it's not something that will work anyways - and I'm tempted to just use all voip anyways and drop the analog line.  Still up for debate.  Can't wait to look at the fax module.

                            1 Reply Last reply Reply Quote 0
                            • C
                              cybrsrfr
                              last edited by

                              I'm testing mod_openzap right now. I will report the results here.

                              1 Reply Last reply Reply Quote 0
                              • M
                                mrguitar
                                last edited by

                                ….I can't wait to play w/ the mod_fax.

                                I vote that we change mcrane's status from Hero Member to "Super Hero Member."

                                1 Reply Last reply Reply Quote 0
                                • C
                                  cybrsrfr
                                  last edited by

                                  mrguitar: I'm glad the work is appreciated! :)

                                  Here is a little more…

                                  SIP (TLS/SSL) and RTP (SRTP) Encryption Notes

                                  FreeSWITCH

                                  Run the following from SSH or the Console
                                      ./gentls_cert setup
                                      //replace freeswitch.org with your domain name or IP address
                                      ./gentls_cert create -cn freeswitch.org -alt DNS:freeswitch.org

                                  Vars tab

                                  <x-pre-process cmd="set" data="sip_tls_version=sslv23">Enable SSL for the Internal profile

                                  <x-pre-process cmd="set" data="internal_ssl_enable=true"><x-pre-process cmd="set" data="external_ssl_enable=false">Dialplans tab (default.xml)
                                      In order to encrypt both sides of the call
                                      Uncomment the following line:
                                        <action application="export" data="sip_secure_media=true"><condition field="${sip_has_crypto}" expression="^(AES_CM_128_HMAC_SHA1_32|AES_CM_128_HMAC_SHA1_80)$" break="never"><action application="set" data="sip_secure_media=true"></action></condition>

                                  Status tab
                                      Should show (TLS) if it is enabled.
                                      internal profile   sip:mod_sofia@67.60.128.195:5061 RUNNING (0) (TLS)
                                      internal-ipv6 profile           sip:mod_sofia@[::1]:5061 RUNNING (0) (TLS)

                                  Linksys SPA942
                                    SIP tab
                                      SRTP Method: s-descriptor

                                  Ext 1
                                      SIP Transport: TLS
                                      SIP Port: 5061
                                      SRTP Private Key: leave blank

                                  Can make the calls secure using activation codes or set from the 'Users' tab.

                                  Users Tab
                                        Secure Call Setting: Yes

                                  Regional (Activation Codes ) 
                                        Secure All Call Act Code: *16
                                        Secure No Call Act Code: *17
                                        Secure One Call Act Code: *18
                                        Secure One Call Deact Code: *19

                                  For Additional information see:

                                  FreeSWITCH Wiki
                                    SIP (TLS / SSL)
                                    http://wiki.freeswitch.org/wiki/Tls#Linksys_TLS_Setup

                                  SRTP
                                    http://wiki.freeswitch.org/wiki/SRTP</action></x-pre-process></x-pre-process></x-pre-process>

                                  1 Reply Last reply Reply Quote 0
                                  • M
                                    mrguitar
                                    last edited by

                                    mcrane,

                                    I might have found a small bug. (sorry if this has already been discussed, I didn't want to re-read this whole thread again)

                                    I uploaded a lot of recordings and setup several IVRs. I noticed that none of the sounds would "stick" in the IVR config screen unless I removed the "Auto" name and renamed them. Once the files were named, the IVRs worked great.
                                    Cheers,
                                    mrguitar

                                    1 Reply Last reply Reply Quote 0
                                    • S
                                      scsikid
                                      last edited by

                                      Anytime I try to uninstall the freeswitch package, it seems to hang and never uninstalls. I installed the latest version 0.6 and I think I interrupted the install. Now I cant uninstall it. I simply get the following and it just hangs there.

                                      
                                      Removing package... 
                                      Loading package configuration freeswitch.xml... 
                                      Loading package instructions...
                                      

                                      Any help would be appreciated.

                                      1 Reply Last reply Reply Quote 0
                                      • C
                                        cybrsrfr
                                        last edited by

                                        @scsikid:

                                        Anytime I try to uninstall the freeswitch package, it seems to hang and never uninstalls. I installed the latest version 0.6 and I think I interrupted the install. Now I cant uninstall it. I simply get the following and it just hangs there.

                                        
                                        Removing package... 
                                        Loading package configuration freeswitch.xml... 
                                        Loading package instructions...
                                        

                                        Any help would be appreciated.

                                        Scroll down to the bottom of the page and see if there are any errors. If there are then please report the error.

                                        Manual steps to remove the FreeSWITCH package run the following.

                                        pfSense GUI -> Diagnostics -> Command -> PHP Execute

                                        exec("killall -9 freeswitch");
                                        unlink_if_exists("/usr/local/pkg/freeswitch.xml");
                                        unlink_if_exists("/usr/local/pkg/freeswitch.inc");
                                        unlink_if_exists("/usr/local/pkg/freeswitch_dialplan.xml");
                                        unlink_if_exists("/usr/local/pkg/freeswitch_extensions.xml");
                                        unlink_if_exists("/usr/local/pkg/freeswitch_external.xml");
                                        unlink_if_exists("/usr/local/pkg/freeswitch_internal.xml");
                                        unlink_if_exists("/usr/local/pkg/freeswitch_modules.xml");
                                        unlink_if_exists("/usr/local/pkg/freeswitch_public.xml");
                                        unlink_if_exists("/usr/local/pkg/freeswitch_vars.xml");
                                        exec("rm -R /usr/local/freeswitch/");
                                        exec("rm -R /usr/local/www/freeswitch/");
                                        unlink_if_exists("/usr/local/etc/rc.d/freeswitch.sh");
                                        unlink_if_exists("/tmp/freeswitch.tar.gz");
                                        unlink_if_exists("/tmp/pkg_mgr_FreeSWITCH.log");

                                        1 Reply Last reply Reply Quote 0
                                        • S
                                          scsikid
                                          last edited by

                                          Didnt even see that error down there.

                                          Warning: delete_package(/usr/local/pkg/freeswitch.inc): failed to open stream: No such file or directory in /etc/inc/pkg-utils.inc on line 740 Fatal error: delete_package(): Failed opening required '/usr/local/pkg/freeswitch.inc' (include_path='.:/etc/inc:/usr/local/www:/usr/local/captiveportal:/usr/local/pkg') in /etc/inc/pkg-utils.inc on line 740 
                                          
                                          1 Reply Last reply Reply Quote 0
                                          • C
                                            cybrsrfr
                                            last edited by

                                            The error says that it can't find the file /usr/local/pkg/freeswitch.inc which is the include that defines the steps to uninstall the package. The FreeSWITCH package will not work if the freeswitch.inc file is missing. Without that file you will definitely need to run manually remove the package as I described in a previously.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.