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

    pfSense Packages
    39
    314
    284.5k
    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

      The IVR bug has been fixed.

      @adrianhensler:

      Great work mcrane; it's not child's play to set it up but it's pretty close.

      'sabo11' volunteered to write a tutorial so that should make it easier to get started when its finished.

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

        My no-ring and outgoing calling not working with one provider (link2voip.com) are all fixed - the issue was a checkbox on my phone.  Troubleshooting with a softphone let me narrow down where the problem was in a big hurry.

        Haven't messed with the emailing of voicemail yet or the IVR but the package is looking like it will do everything I need to replace my asterisk box.

        Very pleased, going to try to do some customizing over the next few days.

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

          Hi,

          I think I found a bug.

          If a gateway has a number in it - eg sip.ca1.link2voip.com - the dialing doesn't seem to work correctly.

          geek.org SET [effective_caller_id_name]=[Adrian softphone]
          2008-12-19 00:26:25 [DEBUG] switch_core_state_machine.c:152 switch_core_standard_on_execute() sofia/internal/2009@adrian.is-a-geek.org Execute bridge(sofia/gateway/${default_gateway}/1${default_areacode}4881718)
          2008-12-19 00:26:25 [DEBUG] switch_core_session.c:1253 switch_core_session_execute_application() sofia/internal/2009@adrian.is-a-geek.org Expanded String bridge(sofia/gateway//19024881718)
          2008-12-19 00:26:25 [ERR] mod_sofia.c:2322 sofia_outgoing_channel() Invalid Gateway
          2008-12-19 00:26:25 [NOTICE] mod_sofia.c:2521 sofia_outgoing_channel() Close Channel N/A [CS_NEW]
          2008-12-19 00:26:25 [ERR] switch_ivr_originate.c:1071 switch_ivr_originate() Cannot create outgoing channel of type [sofia] cause: [INVALID_NUMBER_FORMAT]
          
          

          I took a quick look but didn't find where this might be happening.

          Note the expanded:  (sofia/gateway//19024881718)

          You can sort of verify this by just adding a number to an existing gateway; then restart freeswitch then try to dial - you will see the string doesn't get populated as above and you get the sofia/gateway//19025551234)

          Sorry if I'm off again but this is my best guess as to what is happening here.

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

            Are you referring to the gateway name which is the first field under editing a gateway?

            If you are then I changed the name of one of my gateways for testing to the name you provided sip.ca1.link2voip.com and in my test the calls worked fine and the name was not lost.

            Note: If you do add a gateway or change the name make sure to 'restart' the external profile from the status tab.

            1 Reply Last reply Reply Quote 0
            • T
              thekod
              last edited by

              adrian, is it possible you had an invalid character in the name?

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

                Thanks for the tip on restarting the external, I had been restarting the entire freeswitch service.

                To be sure that I didn't have any bad characters I deleted the gateway and added it back.

                The problem appears to be only when I try to add 7 digit dialing, it works with 10 digit for example.

                I still get this when I try to do 7 digit dialing:

                (sofia/gateway/${default_gateway}/1${default_areacode}4881718)
                2008-12-19 08:54:31 [DEBUG] switch_core_session.c:1253 switch_core_session_execute_application() sofia/internal/2009@adrian.is-a-geek.org Expanded String bridge(sofia/gateway//19024881718)
                

                Okay - deleted all the link2voip gateways.  Found some left over in config.xml? Lots from my previous testing.  Deleted those manually.  Added it back in with 7 digit dialing.  I was pretty sure it would work at this point but it did not.

                Then verified it looked good to me:

                 <config>
                                                <dialplanincludeid>{CAB6ADA6-413F-592C-7A86-9A52359389AD}</dialplanincludeid>
                                                <tag>condition</tag>
                                                <fieldtype>destination_number</fieldtype>
                                                <fielddata>^(\d{7})$</fielddata>
                                        </config> <config><dialplanincludeid>{CAB6ADA6-413F-592C-7A86-9A52359389AD}</dialplanincludeid>
                                                <tag>action</tag>
                                                <fieldtype>bridge</fieldtype>
                                                <fielddata>sofia/gateway/sip.ca1.link2voip.com/1902$1</fielddata></config> 
                
                

                What's up; it all looks fine but the log shows it is dropping the gateway somewhere.

                Ahhhhh…..
                Found the fix I think.

                After testing, the problem only seemed to be with 7 digit dialing.  Found there was a 01_example.com.xml in /usr/local/freeswitch/conf/dialplan/default with this bit of code for an example 7 digit dialing:

                 <extension name="local.example.com"><condition field="${toll_allow}" expression="local"><condition field="destination_number" expression="^(\d{7})$"><action application="set" data="effective_caller_id_number=${outbound_caller_id_number}"><action application="set" data="effective_caller_id_name=${outbound_caller_id_name}"><action application="bridge" data="sofia/gateway/${default_gateway}/1${default_areacode}$1"></action></action></action></condition></condition></extension> 
                

                I think this is what was tripping up my 7 digit dialing; I deleted it and everything is gravy.

                Maybe I'm not understanding how some of the configs flow through; but it seems like there were some 'old' gateways still showing in the config.xml that I couldn't see in the gui as well as this example code - should I have been able to see this in the gui under the dialplan?

                Thanks again for all the help.  Sorry if these are newbie type mistakes on my part.

                1 Reply Last reply Reply Quote 0
                • T
                  tusc
                  last edited by

                  mcrane,

                  I've been meaning to mention this. I believe this example file should be removed from you package as it takes precedence over a user's dialplan configuation.

                  @adrianhensler:

                  After testing, the problem only seemed to be with 7 digit dialing.  Found there was a 01_example.com.xml in /usr/local/freeswitch/conf/dialplan/default with this bit of code for an example 7 digit dialing:

                   <extension name="local.example.com"><condition field="${toll_allow}" expression="local"><condition field="destination_number" expression="^(\d{7})$"><action application="set" data="effective_caller_id_number=${outbound_caller_id_number}"><action application="set" data="effective_caller_id_name=${outbound_caller_id_name}"><action application="bridge" data="sofia/gateway/${default_gateway}/1${default_areacode}$1"></action></action></action></condition></condition></extension> 
                  

                  I think this is what was tripping up my 7 digit dialing; I deleted it and everything is gravy.

                  Maybe I'm not understanding how some of the configs flow through; but it seems like there were some 'old' gateways still showing in the config.xml that I couldn't see in the gui as well as this example code - should I have been able to see this in the gui under the dialplan?

                  Thanks again for all the help.  Sorry if these are newbie type mistakes on my part.

                  1 Reply Last reply Reply Quote 0
                  • T
                    thekod
                    last edited by

                    I had to modify that file to get dialing to work for me…but only 10digit.  And adrianhensler, it seems that freeswitch package upgrades sometimes leave behind those entries, in my experience.

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

                      The following are changes made on 19 December 2008 in version 0.5.3. These changes remove some of the conflicting configs that are found in the default config. Clear up the public.xml setting that has made it harder for new installs. These changes clear up the configuration issues that have been discussed in the forum up to this point.

                      Details:

                      Delete the example default config files they are not needed with the GUI
                          /usr/local/freeswitch/conf/dialplan/default/01_example.com.xml
                          /usr/local/freeswitch/conf/dialplan/public/00_inbound_did.xml

                      Convert extensions tab from pfsense package XML code to PHP. This cleared up a problem that was showing up on pfSense 2.0.

                      Public tab change 'deprecated xml' to 'public.xml'. This provides access to a file that may be useful in advanced cases.

                      For new installs public.xml a setting that was giving trouble inside the public.xml at  /usr/local/freeswitch/conf/dialplan/public.xml
                          has been changed from this
                            <anti-action application="&quot;export&quot;" data="&quot;domain_name=${sip_req_host}&quot;/">to this
                           -->

                      The setting was overriding the correct value and causing the issue reported earlier in this thread.

                      For those that had an earlier version than 0.5.3 you need to go to the 'public' tab then click on the 'public.xml' button. At that link you will see a text area box which should have the content of the attached file. For new installs this will auto populate for older installs the text will need to be manually copied back into the text area.

                      public.xml.txt</anti-action>

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

                        For some reason, I had to manually copy these files over:

                        from the cvstrac:

                        exec("cp  /tmp/freeswitch_extensions.tmp  /usr/local/www/freeswitch/freeswitch_extensions.php"); 
                                unlink_if_exists("/tmp/freeswitch_extensions.tmp"); 
                        
                                exec("cp  /tmp/freeswitch_extensions_edit.tmp  /usr/local/www/freeswitch/freeswitch_extensions_edit.php"); 
                                unlink_if_exists("/tmp/freeswitch_extensions_edit.tmp");  
                        

                        I'm almost sure it's a fluke on my system only; can't see anything that would have stopped this from copying those files over.  I just mention it in case someone else runs into the 404 file not found on these files.

                        1 Reply Last reply Reply Quote 0
                        • T
                          thekod
                          last edited by

                          To avoid 404s on files for this package, I always have to uninstall the package and reinstall…dunno why

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

                            Thanks to tusc there should now be mod_shout support which provides support for mp3 audio.

                            Also this new build of FreeSWITCH enables mod_siren, and mod_celt both exciting new codecs.

                            mod_celt (58kHz audio)
                            http://freeswitch.org/node/155

                            mod_siren (32 kHz and 64 kHz)
                            http://freeswitch.org/node/153

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

                              You guys are on fire.

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

                                FreeSWITCH package 0.5.6 Fixed an issue with the mod_shout mp3 now really does work.

                                Music on hold directory. Can simply add mp3 or wav files to this directory to change the music on hold.
                                /usr/local/freeswitch/sounds/music8000

                                If SSH is enabled under System -> Advanced -> Enable Secure Shell then you can use SFTP to the folder above. Firefox add on FireFTP works pretty well with SFTP.

                                Added package info pointing to:
                                http://doc.pfsense.org/index.php/FreeSWITCH

                                Free Christmas Music.
                                http://feelslikechristmas.com/contemporary-instrumental-christmas-music-mp3s.html

                                Instrumental.
                                http://expelledthemovie.com/digitaldownloads.php

                                Political. Ron Paul theme song
                                http://www.aimeeallen.com/RPsong.html

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

                                  Found a bug in the IVR (Auto Attendant). Its now fixed in version 0.5.7. If you will be using the IVR then please upgrade to 0.5.7 or higher.

                                  1 Reply Last reply Reply Quote 0
                                  • J
                                    jalgaz
                                    last edited by

                                    mcrane, thx for your great work!

                                    I need a litte help.
                                    How to connect a softphone from WAN to a fs at my LAN. (soft – NAT -- WAN -- NAT -- LAN)
                                                                                                                                        A                              B
                                    I think, in A use stun, in B nated ports 5060-5090 and rtp port to my pfsense
                                    In A, sjphone in htc touch pda
                                    Rules in Wan / Lan permit traffic SIP / RTP / STUN
                                    No firewall in OS Ubuntu

                                    1.- i create extension 1000, 1001 in context default
                                    2.- i create extension 1003 in context public
                                    3.- step 1 ok, calls ok, sofphones can register, but 1003 can't register to fs
                                    I view freeswitch wiki, but i can't find the solution
                                    there is not much information in the web
                                    I modify the external profile, the parameters of sip_port,... no register
                                    I create doublenat.xml... no register
                                    At logs no info from attempts to connect.
                                    Any idea?

                                    Un saludo from Spain!

                                    –-----------------------------------
                                    saludos
                                    JuanjoA

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

                                      Here's some thoughts.

                                      I think they should all be context of default.

                                      Make an extension 1003 in default and try it on the lan.  When you know it works; apply the same configuration to your softphone.

                                      Also; check the logs immediately after it registers (or fails to register) and see if there are any clues there.

                                      I hope this helps; I am sure someone else will correct me if I am wrong.

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

                                        For extensions that are on the LAN or the WAN 'User Context' should be set to 'default'. It is there as an option for advanced cases. If you have extensions that are coming in from the WAN the only additional thing you need to do this is to set an allow rule to open up the SIP TCP/UDP 5060 - 5090  and RTP UDP 16384 - 32768 ports for the WAN interface.

                                        In the past week Sloan Miller started documentation of the FreeSWITCH package at:
                                        http://doc.pfsense.org/index.php/FreeSWITCH

                                        Over the last three days I've helped add additional documentation to the wiki. Today I've added info on using Video calling between xlite extensions.
                                        http://doc.pfsense.org/index.php/FreeSWITCH#Video

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

                                          I’ve built a TFTP pfSense package for pfSense 1.2.1 and higher. Still need to implement the DHCP TFTP option. I have some code to do that will likely carefully add it to the package.

                                          1 Reply Last reply Reply Quote 0
                                          • T
                                            thekod
                                            last edited by

                                            I've got some code for the DHCP option I can PM you if you're interested

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