Browsed by
Category: miniSipServer ( local )

SIP server for windows and Ubuntu system

Optimization: load IVR-XML files into memory

Optimization: load IVR-XML files into memory

In most scenarios, the size of IVR-XML files are very small, only several KB, so it is no problem to read these files from hard disk when processing an incoming call to trigger IVR service. But if there are heavy workloads, for example, huge concurrent calls to trigger IVR services, miniSIPServer has to read these files from hard disk frequently. Obviously, it will affect server’s performance.

So we try to optimize this and load all IVR-XML files into memory. If the file is not modified, IVR service will read it from memory directly. If the file is modified, miniSIPServer will reload it into memory automatically.

That means all IVR operations will be processed in memory and will never visit hard disk if the files are not modified. With this optimization, miniSIPServer will be faster than before.

Run miniSIPServer on Debian 11 (Bullseye)

Run miniSIPServer on Debian 11 (Bullseye)

Debian 11 (Bullseys) was released at August 14th, 2021. It is the latest stable version and very important for business deployment. So we run miniSIPServer on this system and make some tests. The result is perfect!

It is no problem to run miniSIPServer on Debian 11. You can refer to online document for more details about how to run miniSIPServer on Linux systems.

run miniSIPServer on Debian 11
run miniSIPServer on Debian 11
FREE version

FREE version

Today we add a new version (for 5 clients) into miniSIPServer lines. This version is FREE! That means you don’t need a license and don’t warry about expired problem.

This “5 clients” version is perfect for small VoIP delpoyment, such as family communication, testing and so on. You don’t need to pay a cent to get full VoIP functions. Of course, the clients are limited to be no more than 5 clients.

In another way, free versions are not available for commercial usage.

Hope you can enjoy it!

Relay video streams

Relay video streams

With previous versions, if you want to configure miniSIPServer to relay media streams, miniSIPServer will only relay audio streams and discard video streams.

It is because video streams require much more bandwidth and calculation capability. Some devices cannot support that. But more and more customers require us to refine it to relay video streams at the same time since most devices are more powerful and they have enough bandwidth.

It seems reasonable and we think we need upgrade miniSIPServer to fit such requirements.

So the latest versions (build 20210604) are released. If miniSIPServer is trying to relay media streams, it will relay audio streams and video streams together.

You don’t need change your configuration. And please pay attention to your device capability and bandwidth.

An interesting feature

An interesting feature

Sometimes, we want to know the details of real-time call status, such as who is calling, how many incoming calls, and so on. In fact, miniSIPServer has a real-time CDR window which can display CDR records just finished their calls. That means the real-time CDR window only has a half real-time function, and it cannot display the details of calls which are still in calling status.

Obviously, we think we need to upgrade such windows to display more details. And here we get:

Real-time CDR window
Truly real-time CDR window

In the new window, the call which has been released or disconnected is in gray. If the call is calling, it will be in black. When the called party is ringing, it will be changed to be in blue. Once the called party answers the call, it will be red immediately.

So you can get real-time status of all concurrent calls. That’s interesting.

Of course, you need to configure miniSIPServer to display real-time CDR and what kinds of CDR should be generated. Please click menu “data / system / call detail record” and get configuration below.

CDR configuration items
CDR items

Most important, you need to configure “generate fail call CDR” and “show real-time CDR information” items. Please visit manual document for more details about other items.

Refined ringing group

Refined ringing group

In normal, we configure ringing group information in local users’ profile. And one user can only be assigned to one ringing group. It works in most scenarios.

As you know, it is hard time now. Some companies reduce their human resources to save cost, so someone has to take more works. For example, it is possible that someone could be assigned to several ringing groups at the same time. In fact, some customers have requested us to fit this requirement.

We understand that completely, so miniSIPServer is upgraded to have a new method to provide ringing group service.

Two independent tables are added. One is used to define ringing groups and their users. Please refer to below figure.

ringing group users

Another table is used to detect ringing groups according to called numbers in different calls. Please refer to below figure.

ringing group detection

Service document has been updated. Please click here to get more details about this new feature.

Customized resource files

Customized resource files

Sometimes we need to use customized resource files, such as audio files, special IVR flows, certificate files and so on. With previous versions, all these files are stored in miniSIPServer install directory or its sub directories.

It could be a management problem when trying to uninstall or upgrade miniSIPServer. We have to be very careful to backup our own resource files.

V38 (build 20210108) is released to refine this. Customized resource files are separated to be stored in independent directories which are in application data directory.

For example, customized audio files will be stored in ‘custAnn’ directory. Once miniSIPServer is uninstalled or upgraded, these audio files will be kept without any affection.

Please refer to online document for more details.

Configuration data

Configuration data

Before V38, miniSIPServer stores its configuration data in the install directory. In some scenarios, it could be a problem. For example, if miniSIPServer is installed in disk C on Windows system, it is possible that Windows will reject miniSIPServer to write data into disk C unless the user has the right to do that.

In Linux system, it could have the same problem. By default, miniSIPServer is installed in ‘/opt/sipserver’ directory. If root user started miniSIPServer and created local configuration files in such directory, other users could have no right to read and write the files and fail to start miniSIPServer.

So V38 will store configuration data in user’s own directory. In windows, it is the user’s application data directory. In Linux, it is the user’s HOME directory.

Please refer to online document for more details about this modification.

In another way, when miniSIPServer starts up, it will prompt where its data is stored no matter it is on Windows or Linux.

miniSIPServer on Windows
miniSIPServer on Linux

A small thing: UPnP

A small thing: UPnP

When deploying a VoIP network, we often have one-way or no-way audio problems. It is caused by private network, for example, some SIP phones or miniSIPServer are behind routers and other SIP devices are in another different network which could be a private network or public network.

To resolve such problem, we often suggest to configure “forwarding ports” in routers manually. If you are familiar with routers, it is easy to do that.

But someone might not know how to do that, or someone might make mistake in router’s configuration. So we add a new feature in miniSIPServer to help that.

It is UPnP (Universal Plug and Play). UPnP can help miniSIPServer to map necessary ports automatically.

Firstly, you need confirm that your router can support UPnP and it has been enabled.

Then, you can click menu “Data – System” in miniSIPServer and enable the item “Enable UPnP to ask router to map ports”. Please refer to following figure.

UPnP configuration in miniSIPServer
UPnP configuration in miniSIPServer

By default, miniSIPServer will map SIP (over UDP) port and audio ports for relaying audio streams.

In another way, there is a limitation in routers. Most routers limit the number of UPnP ports, for example less than 30 ports. So if you are deploying a miniSIPServer for 50 clients or more, you will still have to configure “forwarding ports” manually.