StarTrinity Softswitch - frequently asked questions (FAQ)
What is default user name for web interface?
User name is "admin", password is entered when you install the softswitch
The softswitch is unavailable (crashed?), what to do?
The StarTrinity could become unavailable for many reasons:
- Overload of CPU
- VoIP DoS attack
- Possible bugs, memory leaks. We wish to claim that we don't have bugs at all, and our software is perfect,
but we don't want to tell you lies
To diagnose issues:
- Look into logs (C:\Program Files (x86)\StarTrinity\StarTrinity Softswitch\Logs). Log level is configured in settings.
Please note that excessive logging by itself can be a reason of crash.
- Check CPU temperature using hardware diagnostics tools
- Check CPU, RAM status in Task Manager
- Check free disk space
- Check disk queue status using performance monitor
- Check IP network performance and stability using our SIP Tester
To fix it try one of following:
- Restart service "StarTrinity Softswitch" in Windows Task Manager - Services
- Restart the server ("soft" reboot in Windows or hard reboot)
- Set CPS and CC limit on originator, if the overload was caused by client's excessive VoIP traffic
- If you see bad packets coming from some IP address(es): block these IPs in Windows Firewall. Be careful not to block your own IP.
- If you can limit access to VoIP ports from limited IP ranges - do it in Windows Firewall
I have lost my web admin password, how to reset it?
- Go to windows control panel - services - stop service "StarTrinity Softswitch"
- Edit "startrinity.softswitch.settings.xml" file in program files folder: remove entry <setting name="WebAdminPassword" value=xxxxx" />
- Start the softswitch windows service, go to web interface, enter new password for admin
Why do I have one-way audio when using the VoIP softswitch in RTP media proxy mode?
There can be various reasons of the problem:
- Presence of SIP ALG or invalid operation of NAT on router under VoIP traffic. Try to set settings "SymmetricSIP"="1" and "SymmetricRTP"="1" in the StarTrinity softswitch
- Invalid implementation of codec negotiation procedure in another softswitch or SIP phone. Try to set fixed codec: G.711 or G.729
For more information about the problem please look into CDR, SIP trace and system log of the softswitch
Why do I have no audio (dead air)?
There can be issue with codecs compatibility. Please try following:
- If checked, uncheck checkbox "Don't proxy RTP media" in settings of originator and terminator
- Set forced codec to G729 or G711 in settings of originator and terminator
Do you have any plans on making the softswitch compatible with Linux/Unix?
No, it works under Windows only, because a big part of code is written in C# and uses .NET framework
Why does SIP Tester have a desktop GUI version and softswitch does not?
Because the softswitch runs in windows service mode, in background, with no interaction with desktop. The windows service start automatically when
server is restarted, and desktop GUI applications don't start until a user logs in. So the windows service mode is more reliable if server restarts or user logs off
Origination
How do I add one more prefix to an originator?
- Add the prefix into origination-side tariff
- If the new prefix should go to a new terminator: add the prefix in terminator's destination set, add new item in routing group which links the new terminator and destination set
- If the new prefix should go to same terminator: add the prefix into current terminator's destination set
Incoming calls to the StarTrinity VoIP softswitch are rejected. Why?
There can be various reasons of the problem:
- Call is failed with "488 not acceptable here" error. Possible reason: invalid configuration of codecs in the softswitch and in the target. Possible solution: set fixed codec: G.711 or G.729
- Call is failed with "401 authorization required" or "403 forbidden" error. Possible reason: bad username/password or source IP address
- Call is failed with "408 request timeout" error. Possible reason: VoIP call is blocked by firewall. Open UDP ports 5000...30000 on server where StarTrinity softswitch is installed
- Syntax error in CallXML script
- Overload of CPU (too many concurrent calls or too many calls per seconds)
For more information about the problem please look into CDR, SIP trace and system log in the softswitch web interface
Termination
Outgoing calls from the StarTrinity VoIP softswitch don't work. Why?
There can be various reasons of the problem:
- Call is failed with "407 proxy authentication required" error. Possible reason: destination requests user name and password. Possible solution: set user name and password in terminator settings
- Call is failed with "408 request timeout" error. Possible reason: invalid configuration of IP routing. Examples:
softswitch tries to make call via wrong network adapter with wrong IP address;
destination GSM gateway IP address is in a different subnet. Possible solution: move IP addresses of softswitch and target into same subnet, remove unneeded IP addresses on softswitch machine
- Call is failed with "488 not acceptable here" error. Possible reason: invalid configuration of codecs in the softswitch and in the target. Possible solution: set fixed codec: G.711 or G.729
- Invalid called number (CLD) or CLI format
- Issue specific to destination number (e.g. blacklist). Try to call a different number in the same area (with same prefix)
- No call is performed. Possible reasons: syntax error in CallXML script; CPU is overloaded (too many concurrent calls or too many calls per seconds)
For more information about the problem please look into CDR, SIP trace and system log in the softswitch web interface. Remember that behaviour of your terminator (provider) may change during day and with different destination number.
Why am I unable to make more than one parallel call in the softswitch? Second call is rejected with 403.
- Please check "max channels" settings for originator and terminator
- Make sure that your provider allows more than one channel for your account
If I transfer 100 USD to my terminator, do I have to update the softswitch?
It is optional, up to you. The softswitch automatically calculates debt from you to supplier. The debt is displayed in softswitch for your information. You can update it manually when you make payments to suppliers
My supplier tells me that IP of your hosted softswitch is configured by someone else. What to do?
If you use our hosted softswitch, there can be a conflict of IP addresses if some other user of the hosted softswitch has already connected to the supplier with IP authentication.
You can ask the supplier to add you with specific, unique tech. prefix and use same tech. prefix in terminator settings. If they can't use tech. prefix, you can install softswitch in your office on public static IP or rent a dedicated windows server with your own IP address
Routing, tariffs, destination sets
I have two tariff plans with the same termination provider: CLI route and NCLI route. How do I add both to one originator account?
The softswitch can separate CLI and NCLI traffic coming from one client (and one IP address) if you create 2 originators with same parent originator and having different tech. prefixes.
For example: parent originator "ClientABC", two child originators "ClientABC_CLI" and "ClientABC_NCLI" with same auth. IP address and different tech prefixes "001" and "002",
different service plans and tariffs "CLI" and "NCLI", different routing groups with CLI and NCLI terminators. Two different terminators could also have same destination IP address and different tech. prefixes.
If originator traffic price is different and the terminator price is the same - how do we do that?
You can have 2 different prefixes in originator's tariff (example: 234708 = 0.045 and 234806 = 0.032) and no specific prefixes in destination set (example: 234 = 0.03)
Fraud mitigation
Calls are connected at termination side and alerting at origination side. How to fix it?
Origination-side connection delay fraud is implemented when originator intentionally makes a delay for ACK response to "200 OK" (connection) response.
In this way the fraudster gets a free call if it has a short duration.
If you are dealing with this type of fraud, you can do this to reduce max duration of fraud free calls:
- Go to softswitch - configuration - settings
- Set Timer1Ms = 200, Timer2Ms = 1000, Timer4Ms = 1500, TimerDMs = 3000
- Restart the softswitch
Other things for you to do is to choose a different client or to ask current client not to make fraud. It depends on configuration of their softswitch
How to block calls to special numbers?
You can block calls to specific numbers (call center, premium numbers) in 2 ways:
- Go to softswitch menu - number lists, create a new blacklist, upload numbers or prefixes from txt file (one number per line). Use this blacklist in settings of terminator to block calls
- Go to softswitch menu - destination sets - add numbers or prefixes to the destination set and uncheck "enabled" checkbox for the numbers
How to add IVR to filter robot calls (test call generators) before billing?
Video tutorial is available on
youtube.
- Go to softswitch menu - Configuration - Audio files
- Upload WAV file which will be played in the IVR (for example ivr01.wav, "press 1 to continue call").
You can record your own audio WAV file using microphone or text-to-speech tool. Also you can put multiple languages into one wav file.
- Go to softswitch menu - Configuration - CallXML script (XML)
- Enter following script:
<callxml>
<accept value="183" />
<inputdigits value="ivr01.wav" var="enteredDigit" repeat="5" maxdigits="1" maxsilence="2s" />
<if test="$enteredDigit; != 1" > <reject value="503" /> </if>
<transfer terminators="routed" />
</callxml>
- Click 'Save' button to apply the new script
- Make test call via the softswitch
- Note that in some cases origination-side switches do not pass the DTMF from caller before billing (connect signal). However with good retail traffic ot works.
There can be issue with configuration of client's softswitch. If the call pass through 3 switches and 1 of them does not pass DTMF, the call will not be passed by filter.
You also need to put per-SIM limits in your gateway configuration,
make sure that SIM registration procedure works well considering IMEI, initial recharging, and ID that was used to obtain the SIM card.
- Script with different IVR file names for different prefixes (in this example Ghana MTN and Airtel):
<callxml>
<accept value="183" />
<switch value="$calledId;">
<case startsWith="23324"> <assign var="filename" value="ivr01.wav" /> </case>
<case startsWith="23354"> <assign var="filename" value="ivr01.wav" /> </case>
<case startsWith="23355"> <assign var="filename" value="ivr01.wav" /> </case>
<case startsWith="23326"> <assign var="filename" value="ivr02.wav" /> </case>
<case startsWith="23356"> <assign var="filename" value="ivr02.wav" /> </case>
<default> <reject /> </default>
</switch>
<inputdigits value="$filename;" var="enteredDigit" repeat="5" maxdigits="1" maxsilence="2s" />
<if test="$enteredDigit; != 1" > <reject value="503" /> </if>
<transfer terminators="routed" />
</callxml>
Misc
When I got a call connected with provider A, after 30 seconds how to convert the call to provider B?