Architecture
uContact could be cloud (Google Cloud) or on premises-based in one or two servers (depending on the load of the customer), having one server for the Application Server (Ubuntu, MySQL, Java) and other for the telephony (Ubuntu, C). It also uses a stun server that can be a public one or uContact STUN server, The application is full WebRTC so there is no plugin for audio or video.
Overview
The connection is via HTTPS with a level 3 certificate via (https://xxxx.ucontactcloud.com), uContact uses HTTPS (http2) with a REST API and Secure Websockets (wss).
The connection is made through Secure Websockets   https://xxxx.ucontactcloud.com:8089/ws (for SIP signaling).
Our STUN Server  (stun.ucontactcloud.com)
Agent and Telephony server negotiate with STUN Server gathering ICE candidates.
After that the connection is made from the agent to the telephony server, bridging the communication with the telephony provider (via SIP, SIP TLS, SIP WebRTC).
The telephony server does the bridging to host all the recordings, transcoding, etc.
Codecs:Â We use alaw, ulaw, opus, vp8, h264. Â Al the transcoding part takes action in the telephony server.
QoS: We can do TOS and COS tag  (on the server-side) the packets with multiple parameters in different actions  (video, audio, text)
Â
Security
Google Cloud Security Plus is our security layer with Force Brut attack detection with all communications encrypted.
The server prefers cipher suites supporting Perfect-Forward-Secrecy.
The server provides HTTP Strict Transport Security.
The server provides HTTP Public Key Pinning.
X-XSS-Protection
Â
Hardware Sizing (On-Premise)
Size | Agents | Telephony | Backend |
---|---|---|---|
Small | < 30 | 1 | 0 |
Medium | < 500 | 1 | 1 |
Big | > 500 | 1 | 1 |
Accepted Telecommunications Equipment
Digium or Sangoma Cards, Xorcom, Dinstar, KHOMP, SIP Gateways, SIP Hardphones.
Â
The teams of agents and supervisors must have the following minimum requirements:
Agent Desktop
Processor: Core i5 2.0 GHz
Memory: 8GB RAM
Resolution: 1366 x 768 Â (minimum)
Disk: 160 GB
Chrome browser
2mb symmetric internet connection
Supervisor Desktop
Processor: Core i5 2.5 GHz
Memory: 8 GB RAM
Resolution: 1366 x 768Â Â (minimum)
Disk: 160 GB
Chrome browser
Â
Communication
Â
Â
Component Versions
Structure
/etc/IntegraServer/web/
IntegraPortalWS.war
IntegraChannels.war
IntegraGamification.war
/forms/
/images/
/uContact/
/workflowdesigner/
/formsdesigner/
/tmp/
/webchatclient/
/etc/IntegraServer/reports/
/etc/IntegraServer/server/
IntegraServer.jar
/jasper/*.jar
/jdbc/*.jar
/mail/*jar
/others/*.jar
/ssh/*.jar
/ws/*.jar
Network requirements for video calls
Bandwidth
1MB/s simétrico
Latency for toll-quality
<100 ms total
Jitter
< 20 ms jitter
Packet loss
< 1 % for voice calls
Codec
VP8
Network requirements for VoIP
Â
Bandwidth
256 kbps per call
Latency for toll-quality
<100 ms total (local network)
<250 ms total (public network , cloud)
Jitter
< 20 ms jitter
Packet loss
< 1 % for voice calls
Codec
ulaw, alaw
Required recordings Storage (audio y video)
Â
Duration | Required Storage for audio (.gsm) | Required Storage for video (.webm) |
---|---|---|
1 Minute | 100 kb | 1.5 MB |
10 Minutes | 1 MB | 20 MB |
20 Minutes | 2.8 MB | 44 MB |
30 Minutes | 3.8 MB | 100 MB |