Please could someone help me, setup gsm gateway with freepbx


I have an issue with setup asterisk with gsm gateway, when the sip calls incoming from another peer, sometimes it said circuit is busy and doesn’t continue the call to the gateway, and sometimes it continues the call to the gateway and gets connected, some times it said congestion, and sometimes it gets connected, I don’t know why this happening, i guess somethings related to the “context” or DIALSTATUS or MACRO-DIALOUT-TRUNK…etc

this is a fresh installation of freepbx, also, when I use xLite to make calls to the gateway everything is working fine and can fill the ports capacity for my gateway without congestion or circuit busy.

what reason could be?
I monitored the incoming sip calls from my customer, sometimes only 1 call and it said circuit is busy. and sometimes it gets connected to the gateway.

my customer:

my gateway:

could someone help me please?


I am struggle on setting it up.

I’ve beed struggling for days on trying all the configs of this page,
but no success.
I even try with the support from China from the manufacturer, and after debugging my connexion using Teamviewer they said, on incoming calls Asterisk was rejecting the calls. For outgoing calls they succeed the config, but I lost it while trying to solve the incoming call issue.

For now, when I issue a call the message that I have is "all circuit are busy now"
When I call the gateway from outside (incoming calls), it rings 2 or 3 times, moves to Busy, and the RUN light start bliking quickly (as the line status moes from LOGIN to LOGOUT)
If I call again I have “SERICE NOT AVAILABLE” until I reboot the gateway to bring back the line status of the gateway to the LOGIN STATUS.

I will appreciate if I can receie a full and detailed config with screen snapshots if possible.


I also have goip GSM Gateway! Although this is a problem!
Machine says "service not available"
managed to fix it?
sorry for the translation (google) if you do not understand!


Szabolcs Tóth
[email protected]

Yes, i found a solution.
(anonymous = without registration and without passwords).
Goip has a buildt-in SIP client; it doesn’t have a working SIP server.
With some effort, it can (partially) work with ekiga.
You can ask ekiga to register to goip but this is totally indifferent to operations.
Outbound calls:
You can make anonymous SIP calls from ekiga to goip; goip accepts and forwards the call automatically.
Inbound calls:
Goip can make anonymous calls to ekiga; you have to

  • tell goip to call directly the ip where ekiga is running
  • give to goip a dummy SIP server where to register
    The problem is that goip PRETENDS to be registered to a sip server to make sip calls, also if the sip calls are not directed to the sip server.
    This is my solution… it’s not nice, but it works.

Maybe you know how to resolve this problem… I am trying connect to GoIP with an ekiga softphone, but there are a few problems.

I followed this guide to setup goip as a SIP server

There is only one SIP client (ekiga) connected to the goip SIP server. SIP client and goip SIP server are on the same lan. It works perfectly from SIP client to GSM. But there are two problems.
1: there is no ringback tone, when calling from SIP client to GSM.
2: when I call from GSM to SIP client, goip answers the call, an english voice says “service not available” and drops the call.

Is it possible to use goip with ekiga? Am I missing some simple configuration?


Today, GSM Gateway GOIP4 use, and works incoming and outgoing calls, I’ve configured as follows:
Note: I use Elastix, FreePBX which is similar to

*** Configuration in GOIP4:

  • Call Settings
    Endpoint Type: SIP Phone
    Setup Mode: Trunk Gateway Mode
    SIP Trunk Gateway1:
    Register Expiry (s): 0 (this allows incoming calls, asks you to enter the extension you want to connect)
    Authentication ID: 300
    Password: password of the extension

  • Call Divert
    Forward to PSTN: Enabled
    Forward to VoIP: Enabled

*** Configuration Elastix:

  • Add Trunk
    Trunk Name: GSM1
    Peer details:
    username = 300
    fromuser = 300
    authuser = 300
    type = peer
    secret = password of the extension
    host = < IP GOIP4 >
    port = 5060
    Qualify = yes
    insecure = port, invite
    canreinvite = yes
    context = from-internal
    nat = yes
    allow = ulaw & alaw

    USER Context :     300
                    secret= password of the extension
                    host=< IP GOIP4 >
  • Add Route
    Trunk Sequence : Sip/gsm1
    Dial Patterns : the digits they want

  • Add Extension
    user extension: 300
    secret : password
    dtmfmode : rfc2833
    canreinvite : no
    context : from-internal
    host : dynamic
    type : friend
    nat : yes
    port : 5060
    qualify : yes
    dial : SIP/300

with this configuration is working correctly calls my cell, in this case, I’m from Peru, and on my way out I have configured the dial plan to call RPM Movistar and works well.
now to receive calls in the configuration of GOIP4 should be allocated to the Register Expiry (s): 0 (this allows incoming calls, asks you to enter the extension to which you connect).

I hope this will be useful, and sorry if my English is not very good.
comment if you solved the problem.

Is it working now?

When you say as a TRUNL, did you mean you assign your customer a particular extension, and then they register to your Freepbx?

Please help I got similar problem the only difference was I can’t dialout but i can receive a calls but no audio at all just the ringing.

This is my sip_additional.conf

secret=secret1 --> ip address of my GOIP
port=5060 —> port from my goip

incoming was same except for type=user

and my goip was set to Trunk Gateway.

Below was part of the messages on cli when dialing out.

-- Executing [[email protected]:19] Dial("SIP/901-0000002c", "SIP/gsm1/09229698688|300|") in new stack
-- Called gsm1/09229698688
-- SIP/gsm1-0000002d is circuit-busy

== Everyone is busy/congested at this time (1:0/1/0)
– Executing [[email protected]:20] Goto(“SIP/901-0000002c”, “s-CONGESTION|1”) in new stack
– Goto (macro-dialout-trunk,s-CONGESTION,1)
– Executing [[email protected]:1] GotoIf(“SIP/901-0000002c”, “1?noreport”) in new stack
– Goto (macro-dialout-trunk,s-CONGESTION,3)
– Executing [[email protected]:3] NoOp(“SIP/901-0000002c”, “TRUNK Dial failed due to CONGESTION - failing through to other trunks”) in new stack
– Executing [[email protected]:5] Macro(“SIP/901-0000002c”, “outisbusy|”) in new stack
– Executing [[email protected]:1] Playback(“SIP/901-0000002c”, “all-circuits-busy-now|noanswer”) in new stack
– <SIP/901-0000002c> Playing ‘all-circuits-busy-now’ (language ‘en’)
– Executing [[email protected]:2] Playback(“SIP/901-0000002c”, “pls-try-call-later|noanswer”) in new stack
– <SIP/901-0000002c> Playing ‘pls-try-call-later’ (language ‘en’)
– Executing [[email protected]:3] Macro(“SIP/901-0000002c”, “hangupcall”) in new stack
– Executing [[email protected]:1] GotoIf(“SIP/901-0000002c”, “1?skiprg”) in new stack
– Goto (macro-hangupcall,s,4)


Yes I am using the default. How do you receive the incoming calls from your customers? What about your outgoing dial plan? Does the numbers that comes from your customers matches with your outgoing plan? By the way to where you are terminating the calls?

the incoming calls from my customer, he is in my freepbx as TRUNL, type peer, so, his voip switch is forwarding sip calls to my end, my asterisk is receiving these sip calls request. and then try to connect to goip4 to get the call connected with the final destination. my outgoing plan is right, because when asterisk (or freepbx) didn’t say “circuit is busy” or “congestion” (which sometimes it happened) the calls get conneced to goip4 to the final destinations.

really strange.!!

yes, thats what I did actually, its working fine when you call from xLite or any other sip phone, the problem with the incoming sip calls from my customer, when the calls coming to my end, freepbx sometimes result in “circuit is busy” without even checking my goip4. and from all the incoming sip calls only some of them gets connected with goip.

I think its something related on how Freepbx handle the incoming sip calls more than goip as a trunk configuration.

do you have special context for goip trunk, or you are using the default which is: from-internal?

Before I can give you a suggestion tell me first how did you configure the GOIP4 and tell me what is the firmware version of you GOIP.

If you are only using the GOIP for termination you don’t need to register the Freepbx to your GOIP. Configure the GOIP as a Trunk Gateway. Then on you Freepbx you only need to configure the Outgoing.
Host= GOIP address
Port= GOIP SIP Port
allow= whatever codec you will using with your GOIP

Is it a Portech gateway?

Thanks for your reply, actually, this is GOIP GSM gateway, its working fine when I call from softphone, but when I use it for wholesale calls termination it acts wiered only with Freepbx (Asterisk), when I tried it with anther softswitch it works like what is supposed to!!

I think I have to define special context to receive/send calls instead of: from-internal, from-trunk… because when freepbx try to connect to the gsm gateway, it uses “macro-dialout-trunk” function, and this function sometimes acts abnormal, I read a lot, its about checking DIALSTATUS and HANGUP (in the function implementation), so I guess defining another function (or context) will fix it since we will pass checking congestion and circuit-busy situations, because when it said congestion, thats not right, there is no congestion and the calls should continue to the gateway… which sometimes freepbx makes progrss to the gsm gateway and when the gateway dial, then freepbx will BRIDGING both calls: incoming sip call from my customer and gateway call.

any suggestions for my case.

I have been using GOIP for more than a year now, I have 30 of them I use them for phone card termination and I have no problem at all. Please post your GOIP config and your TRUNK config of Freepbx. And are you using the GOIP both for incoming and outgoing calls?

Thanks for your reply
here is the trunk configuration:



in the incoming settings:


please, could you advice?
could you check if i setup goip4 right?
could you send your configuration?


I only use goip4 for call termination (outgoing), I don’t receive it for incoming…

Maybe this can help: