Hello everyone,
This is my first post, so I've tried to do my due diligence and gather information by reading the full manual (it's long - might have missed some stuff) and searching here for answers to my specific questions. Many of the responses I read are several years old, so I'm posting my understanding of the problems/solutions, the premises I'm assuming, and the goals I'm trying to achieve to make sure my understanding is current with ViciBox 9.03.
1. Multi-Tenancy
Part of what I"m trying to achieve is to make ViciDial available to call center clients. I read in the manual that user groups are generally helpful for sequestering agents within their own companies/groups/whatever, but what about administration? Could certain administrative features (list loading, campaign management, for example) be delegated to user groups only for specific campaigns? More broadly, is it possible to have admins that are restricted only to administering their company's assets (I think campaigns and lists are most important), or do we need to use a 1:1 ratio of ViciDial Clusters:Clients to pull off that kind of granularity? As far as I can tell, this multi-tenancy is possible and I can set up a user group for a specific set of campaigns, and allow a user in that group to Modify Campaigns, Load Leads, etc.
2. Integration
Another part of what I'm trying to achieve is to embed the webRTC agent login into a simple iFrame on an external CRM via custom plugin. I understand this will generally work as long as the page doesn't get refreshed or closed, so possibly exclusively using iFrames to load dynamic content on that CRM page. I also want to modify the agent screen, which I understand can be done simply with .css modifications. Does anyone have experience/success with this?
3. Cloud Hosting
As a cloud proponent, I would greatly prefer to host this on a cloud platform, like AWS or Google Cloud. I noticed that there's even a handful of marketplace subscriptions for ViciDial (
https://aws.amazon.com/marketplace/pp/ZapSocket-Vicibox-812-Vicidial-214-689a-for-AWS-EC/B07QNS13FJ,
https://aws.amazon.com/marketplace/pp/B07N8Z16XY?qid=1595180814351&sr=0-1&ref_=srh_res_product_title). My understand is that virtualization of any kind will generally not work well due to needing Hi-Res timings for perl scripts. Is this still the case? Are there other reasons? Are these problems addressable? Or does anyone have experience setting up a cloud cluster using these kinds of subscriptions or even manually? Why would they even be there if it was only viable for a handful of agents? I have a lot of interest in running it in the cloud, but there doesn't seem to be a lot written about it, other than various interpretations of "it sucks, don't do it."
4. Self-Hosting
Example Server:
https://www.ebay.com/itm/Premium-Dell-PowerEdge-R710-8-Core-Server-32GB-RAM-2x146GB-PERC6i-iDRAC6-/172903509750?hash=item2841da2ef6-AFAIK this server is on-spec to be a 150 Web Agent database server (two 4 core processors). It's a little short on HD space total but that's an easy problem.
-If the same box was used as a telephony server, it would cover somewhere above 150 agents and below 300 web agents.
-If this box was used for Web and Archive, it would be overspecced for the load and typically unburdened.
If I understand correctly, a trio cluster of this server would sufficiently serve ~200 agents, assuming a reasonably "normal" load (no 20:1 dialing ratios), and higher specced servers would serve more agents with some degree of diminishing returns. At that point, it's most reasonable to add another pair of DB/Telephony servers to continue adding agents.
That being said, are there more specific recommendations for buying servers specifically for ViciDial loads? Are the recommended specs close to the "falloff" point for diminishing returns or is there a better sweet spot? Obviously, the server I linked is not very good or expensive - it just happens to match the spec sheet closely. I'm not constrained by budget, I'm just looking for best practices.
5. Bandwidth
My understanding is that the most common codec (g729) will require 20 kbps for each active line. If I have an upload speed of 30 mbps, I calculate my maximum lines by 30 mbps / .02 mbps = 1500ish active calls. Is this correct?
Thank you for reading.
-Rich