General
Softphone usage modes:
- Single call mode - single window, basic functionality. Enabled by default.
- Extended mode - two windows, multiple calls, conferences, attended transfers.
Communication types:
- Calls through SIP server / PBX - select "Add Account" after installing.
- Direct calls by IP address (or domain name). Works out of the box, using the "Local Account".
After automatic startup or when you close the main window UnifiedBX will be minimized to the system tray.
UnifiedBX does not require the installation of additional libraries, runtimes or frameworks.
Dialpad
Mainly used for dialing or sending dual tones (DTMF). Various input formats are supported.
Example: 1-800-567-46-57, 1234, 1234@sip.server.com, 1234@sip.server.com:5043, 192.168.0.55.
Or even complete SIP URI with optional UnifiedBX extensions:
"Name" <sip:extension@sip.UnifiedBX.org;parameter1=xxx?Custom-Header=yyy>,dtmf_sequence
There is sound quality indication:
Control switches and buttons:
- DND (switch) - Do not disturb mode
- FWD (switch) - Automatic forwarding of incoming calls. Set up in the settings
- AC (switch) - Automatic conference for incoming calls after answering a call
- AA (switch) - Automatic answer. Set up in the settings
- CONF (button) - Invite a participant to a conference call
- REC (button) - Current call recording. Set up in the settings
Contacts
To add a contact, right-click in an empty area of the Contacts page.
Only the Number field is required and it is unique in the list.
Number can be specifind in various input formats, see above.
You can enable Presence Subscription to see contact availability status, use BLF functionality and pickup calls. This may require additional configuration of your SIP server. For some types of servers (not Asterisk), you must enable "Publish Presence" in the "Account" window to share your availability status for other contacts. After successfully setting up the presence, the entries in your contacts will turn colored.
When a contact receives an incoming call, its icon will blink.
To answer the incoming call (directed call pickup), double click on it or use the context
menu item - "Call Pickup".
Pickup code is hardcoded: "**". For example, to configure call pickup for Asterisk, add to extensions.conf:
exten => _**.,1,Pickup(${EXTEN:2})
Messages
Allows you to manage multiple calls, make conferences, blind and attended transfers, send and receive messages.
Currently, most of these features are only available in Extended mode.
Account
- SIP server
Your account SIP
server.
- SIP proxy
Your account SIP
proxy or a chain of proxies. Examples: 192.168.1.1, 192.168.1.1:5070, 192.168.1.1 192.168.15.1,
192.168.1.1;hide, ";hide" parameter can solve impossibility of
registration or calls due to server configuration.
- Username
Your account
username.
- Domain
Your account domain.
- Login
Username for
authentication. If empty, will be used Username.
- Password
Your account
password.
- Display name
Your name, remote
party will see it in incoming calls and messages.
- Dialing Prefix
International
calling prefix for numbers in local format (must begin with "+" or "00");
or a simple prefix for each dialing phone number.
- Dial Plan
Transforms dialing number according to pattern. Numbers that do not match any patterns are blocked. Patterns are separated by a pipe symbol: |. The entire value can be enclosed in brackets ().
x | "x" represents any character |
[sequence] | Enter characters within square brackets to create a list of accepted digits.
Numeric range: enter [2-9] to allow the user to enter any one digit from 2 through 9.
Numeric range with other characters: enter [16-9*] to allow the user to enter 1, 6, 7, 8, 9, or *.
|
<dialed:substituted> | Replaces one sequence with another. Or inserts some sequence inside a number: <:substituted>
Example 1 : <8:1555>xxxxxxx
If user dials 81234567, the system transmits 15551234567.
Example 2 : <:1>xxxxxxxxxx
If user dials 1234567890, the system transmits 11234567890.
|
. (period symbol) | Represents zero or more entries of the previous digit. Example, 01. => 0, 01, 011, 0111, ...; x. => matches any dialed number. |
Example: Replace + with 00, allow any other numbers.
<+:00>x.|x.
Complex rule example:
[3469]11|0|00|1[2-9]xx[2-9]xxxxxx|<:1>[2-9]xx[2-9]xxxxxx|<:1618>[2-9]xxxxxx|<:1618555>6[2-4]xx
|
- Hide Caller ID
Your PBX must allow this feature. Otherwise, you probably won't be able to call. For FritzBox, clear this check box and change Display Name to "Anonymous".
- Voicemail Number
Voicemail
access number. If empty, UnifiedBX will try to determine it
automatically.
- Media encryption
Disabled - never use
encryption, Optional - use encryption when remote party supports
encryption, Mandatory - use encryption always. Recommend value:
Optional.
- Transport
The value depends on the configuration of your SIP server. Failsafe value: UDP. Best value: TLS. TCP is good, but is may not work with your router/NAT due to SIP ALG enabled.
"UDP+TCP" is a mix of UDP (for small request) and TCP (for large).
- Public address
Can be used to solve call flow and media delivery issues when you don't have dedicated public IP address. You can manually specify IP address or hostname for Via, Contact and SDP.
It can point to one of the interface address OR it can point to the public
address of a NAT router where port mappings have been configured.
For automatic public address detection and rewrite you can use Allow IP rewrite
feature or use STUN server.
- Local port
By default
UnifiedBX tries to listen on standard SIP port - 5060. If port is busy
by other application, UnifiedBX will listen on random port. You can
manualy change port to any.
- Publish presence
Sends
on SIP server publish query, it means that other subscribed contacts
can see your status and can pickup your incoming calls (BLF
functionality). Besides, often you must specify which contacts have
right to see your presence information - you can done this for
example via SIP provider webpage. Your SIP server must support this
feature.
- ICE
Helps to find shortest way for media streams and reduce media latency. It is
usefull when possible direct P2P connection without SIP provider
mediagate. Enabling ICE can cause problems with in media delivery if SIP server configured incorrecly.
- Allow IP rewrite
Can be used to solve call flow and media delivery issues when you don't have dedicated public IP address. If enabled, UnifiedBX will keep track of the public IP address
from the response of REGISTER request. Public IP will be used in
later SIP queries in Via, Contact and SDP.
See also: Public address, STUN.
- Disable Session Timers
Specify
the usage of Session Timers. Try to disable Session Timers if your
calls dropps after XX minutes. Recommended value: unchecked.
Settings
Settings not included in Settings dialog
You need to modify UnifiedBX.ini manually.
- "sourcePort=5060" - use static source port of outgoing SIP
requests (UDP transport only).
- "cmdCallStart" - runs specified command when connection
established. Caller ID passed as parameter.
- "cmdCallEnd" - runs specified command when call ended. Caller ID
passed as parameter.
- "cmdIncomingCall" - runs specified command when incoming call
arrives. Caller ID passed as parameter.
- "cmdCallAnswer" - runs specified command when user answers on
incoming call. Caller ID passed as parameter.
- "autoHangUpTime"
- "maxConcurrentCalls"
- "noResize"
Port knocker feature. Send sequential UDP requests to a specified ports
on a specific host (SIP server by default) before UnifiedBX tries the
SIP registration. That allows SIP server to whitelist cliend IP in the
firewall.
- "portKnockerHost=host.com" - domain name or IP address of knocking
host. If empty and port list isn't empty - SIP server value will be
used.
- "portKnockerPorts=1111,2222" - one or more ports separated by
comma. If empty - feature disabled.
DTMF
While you are in call you can press buttons on dialpad to send DTMF
signals. If you want automatically pass DTMF commands just after call
established, then add ",dtmf_sequence" or ",dtmf_sequence1,dtmf_sequence2" in calling number. One comma means pause in one second.
Video
Supported H.264 and H.263+ (other name H.263-1998) video codecs.
Default codec - H.264, video format - 640x480 @ 30 fps, outgoing
bitrate 512 kbit/s. H.264 encoding requires significant CPU resourse.
Recommended dual core processor, multimedia extensions like MMX will be
used if is present.
Video capture and video rendering uses
DirectX and Direct3D (with hardware acceleration).
Because
hardware acceleration is used, video calls will not work with remote
desktop session (RDP).
If you have serious problems with
performance:
- update video adapter drivers
-
install/reinstall DirectX (can be downloaded
here)
Command line
Call a number: UnifiedBX.exe number
Hang up all calls:
UnifiedBX.exe /hangupall
Answer a call: UnifiedBX.exe /answer
Start minimized: UnifiedBX.exe /minimized
Exit: UnifiedBX.exe /exit
Remarks
- Remark 1
This
feature increases an UDP packet size (SDP message length of INVITE
query). If UDP packet size will be > 1500 bytes (MTU), it will be
fragmented. Not all routers can correctly work with fragmented UDP
packets. So, if you enable extra feature like SRTP, or ICE, or select
too many enabled codecs, or make video call, be ready that you will
not be able make a call. Possible solutions: use a TCP or TLS transport,
but in this case your SIP server must support it. Please note that TCP may not work with SIP ALG enabled on your router.