Page 1 of 1

VICIbox Cluster Setup for Call Recording Only

PostPosted: Wed Oct 31, 2018 8:02 am
by medk
Hello,

I installed VICIbox 8.1.1 [vicibox-install] (Cluster) but I'm using a single server and it works.
When I enable call recording (All Force), the system will be overloading and there will be many problems.
I installed another server so I can enable call recording without overloading the system. The new server (Core2Duo 8400 - 3GHz - 6MB Cache - 6GB RAM) is lower in performance than the main server already working (Intel(R) Xeon(R) CPU E3-1225 v3 @ 3.20GHz - 12GB RAM).
The new server is working everything is configured.

Now I have to install VICIbox [vicibox-install] and in expert mode there are prompts (is this the database server... telephony... web...)

Now what should I chose to make this server only record the calls and keep the rest in the main server?

I found in the main server: Servers -> Alternate Recording Server IP

Another thing, will the processing of call recording be done in the main server and just save the recording to the new one, or will the new server process the encoding and recording of the call so that enable call recording won't affect the main server performance?

Re: VICIbox Cluster Setup for Call Recording Only

PostPosted: Tue Feb 19, 2019 10:30 am
by omarrodriguezt
medk wrote:
Now what should I chose to make this server only record the calls and keep the rest in the main server?


medk wrote:will the processing of call recording be done in the main server and just save the recording to the new one, or will the new server process the encoding and recording of the call so that enable call recording won't affect the main server performance?

The call will be processed in the main server and just the final audio file will be moved to the archive server, but you can disable the MP3 Compression on the main server and enable that script in the archive server.

Re: VICIbox Cluster Setup for Call Recording Only

PostPosted: Sat Jun 22, 2019 3:57 pm
by williamconley
medk wrote:When I enable call recording (All Force), the system will be overloading and there will be many problems.

Actually posting the problem is a good place to start. You may merely require a larger virtual drive or more memory (or both).
medk wrote:Now I have to install VICIbox [vicibox-install] and in expert mode there are prompts (is this the database server... telephony... web...)

Our policy is to always include everything except DB and Replication. You can always just "not use" features you don't want and they don't cause problems. But trying to add a feature later is not as simple.
medk wrote:Now what should I chose to make this server only record the calls and keep the rest in the main server?
That does not describe a Vicidial server: There are gateway servers that can record calls passing through without using a lot of CPU. But then your recordings would not be connected to Vicidial itself. A Vicidial system always records calls on the server to which the Agent is registered. Those recordings are being generated in a (fast, virtual, held in memory only) folder: /var/spool/asterisk/monitor.

In fact, you should have a tmpfs device creating this folder in RAM for fast access, check with "df -h":
Code: Select all
tmpfs           6.0G     0  6.0G   0% /var/spool/asterisk/monitor

which results from this entry in /etc/fstab:
Code: Select all
tmpfs   /var/spool/asterisk/monitor       tmpfs      rw,size=6G              0 0

Note that this requires enough RAM to support the device.

This folder holds all calls while they are in progress. As soon as they are terminated, a script moves them to monitorDONE from monitor, which is no longer a virtual folder, it's just on the HD. From there, we have scripts to mix, compress, and file the recordings: However, none of those scripts need to run until after shift if there is too much load on the server.
medk wrote:I found in the main server: Servers -> Alternate Recording Server IP

This allows modification of existing recording links due to servers having multiple IP addresses and/or domain names. For instance, your server may be 192.168.1.27, but it may also be accessed at 27.55.11.23 on the internet. Since those NOT in your office can not access the local IP (192.168.x.x), putting 27.55.11.23 in the Alternate Recording Server IP (and changing the link preference above that section) would cause the links in Vicidial to use 27.55.11.23 as their base without actually changing the URLs on each individual recording. Which means if you later assign a domain name (DNS record) to that server, instead of having to change all the links again, all you have to do is change that one field. Or if your public IP changes, same concept.
medk wrote:Another thing, will the processing of call recording be done in the main server and just save the recording to the new one, or will the new server process the encoding and recording of the call so that enable call recording won't affect the main server performance?

You could use the new server as "Agent Web Only" and perhaps reduce the load on your primary server, but for recordings to occur on the server, the sound MUST pass through the server. And in Vicidial, that also requires the entire call to happen on the server: Agent registration, meetme room, etc. Yes, you can use a dual core server as a "Dialer" in a Vicidial system and use your original server as both Database and Web, and possibly have SOME agents on it (ie: just move SOME agents to the new dialer and use it for Dialer Only).

In case you dn't know: It's Not in any way necessary to have agents using the same server to register their phones and access via web. Those two roles do not interact directly at all, everything passes through the DB server. So dedicated web and dedicated dialers have zero interaction with each other.