Technical Prerequisites
  • 02 Apr 2024
  • 9 Minutes to read
  • Dark
    Light

Technical Prerequisites

  • Dark
    Light

Article Summary

The information in this document is subject to periodic changes and applies to the latest version of our products. Natterbox has made all reasonable efforts to ensure that this information is accurate at the time of publication.

General Requirements

The Customer should be aware that the ability to manage quality parameters of third party IP Data Lines is beyond the control of Natterbox, and Natterbox is therefore unable to make any guarantees on call quality for voice traffic which is utilising those third party IP Data Lines, including roaming users who may be utilising WIFI Hotspots, 3G, etc

Web browsers

We support the following browsers:

  • Google Chrome™ - most recent stable version

  • Microsoft Edge - most recent stable version

  • Mozilla® Firefox® - most recent stable version

Note: the Natterbox webphone uses the WebRTC protocol that is not supported on mobile device browsers (such as for Android or iOS).

For all browsers you must enable the following:

  • Cookies

  • JavaScript

  • TLS 1.2 or later

  • Web storage (both session and local storage if using CTI)

Processor and Memory

Your processor speed and RAM must meet the recommended specification for your operating system. Minimum requirements as advised by Salesforce are:

  • 4GB RAM (Recommend 8GB)

  • 2GB available for Salesforce browser tabs (Recommend 4GB)

Keep in mind that 32-bit systems are subject to memory limitations. To take full advantage of the added RAM, use 64-bit versions of both the Operating System and the browser.

Screen Resolution

1024 x 768 pixels

Firewall

Outbound Ports

The following firewall ports must be opened for outbound traffic:

  • TCP 80 (HTTP)

  • TCP 443 (HTTPS)

  • TCP / UDP 53 (DNS)

Websockets

Websockets must be allowed through your firewall. This can be performed by whitelisting the domains listed in the web filters section below.

You can perform a basic test to see if websockets work on your network here.

Web Filters

Web filtering systems can inhibit the connection between the CTI and the Natterbox servers. This will cause the CTI to work slower and fail to update correctly. This is usually a symptom of SSL scanning being performed by the web filtering system. It is recommended that the following domains are whitelisted from SSL scanning:


Salesforce Requirements

Minimum Versions

  • Enterprise edition

  • Unlimited edition

  • Performance edition

Account and Licenses

The Natterbox managed packages (Natterbox and Call Center) require a single OAuth connection to establish the API connection between Salesforce and Natterbox.

It is mandatory that this is a System Administrator account with full read/write access to all objects. It must have View All Custom Settings Enabled and must have API Enabled.

Note:  De-activating the connected OAuth account will result in data being unable to be queried from / stored to salesforce, including all reporting data.

All users requiring access to the CTI will require a full Salesforce license. Users with a community license may use the Natterbox Communities CTI however this is not available ‘out of the box’.

‘Non Salesforce Users’ that do not require Standard Salesforce functionality will still need to be added to Salesforce with ‘Chatter Free’ licenses.

Profiles

As of a Salesforce critical update in January 2020, custom settings are no longer accessible by non Administrator profiles. As such, profiles that will be using the Natterbox CTI will require the ‘View all Custom Settings’ permission to be enabled.

Session Settings

Sessions must not be locked to the IP address from which they originated. For more information about this and other sessions settings, see Salesforce help.

If you are enforcing IP login ranges on Salesforce, the Natterbox IP Addresses should be added to the list of allowed ranges on the Salesforce profile and on 'Network Access' under setup.

It is recommended that ‘session timeout value’ is set to 8 hours and that ‘force logout on session timeout’ is enabled.



Security Settings

Clickjack protection for Visualforce pages must be disabled.

CTI users must have View all Custom Settings enabled on their Salesforce Profile

API Calls

Your organization and users / profiles must be enabled for API access. You must also operate within the API request limits set by Salesforce for your account.

Each read and write to and from Salesforce makes one API call. As a rule of thumb, each phone call (loading the CTI, querying the record details, popping the record then storing the activity and call reporting record) will use 5 API calls. This does not take into consideration any other routing policy salesforce queries or stores.

Any changes to Natterbox settings (availability, user settings, policy changes etc) will also use an API call.

Data Requirements

You must have enough Salesforce data storage available within your account. For information about data storage limits in Salesforce, see Salesforce help.

The Salesforce embedded Natterbox telephony platform uses multiple custom objects to control your global telephony routing and to store call data for reporting. Each custom object record costs 2KB against your data storage limit.

Natterbox & Telephony Administration

Each user, group, phone number and call routing policy will require at least one record in salesforce.

As a very high level estimate to account for different settings records, for every user within your org, you should reserve 50KB of data storage. So an account with 50 users will need 2.5MB of data storage.

Call & Phone Event Reporting

Every call generates a call reporting record that contains all call information. Each record is 2KB against your data storage limit. The activity created by the user via the CTI will also be 2KB. These objects will remain in Salesforce until you delete them.

If your account completed 2000 calls every day and every call was logged correctly with the CTI, this would be 8MB against your data storage limit daily.

In addition to the above, there are also the following records created which should also be taken into consideration against your data limits:

  • Hourly Call Processing - a 2KB record is created every hour per user, giving historic call data for that hour. (50 users x 24 = 2.5MB per day)

  • Phone Event Reporting - a 2KB record is created every time a user fails to answer a call, whether or not another agent answered the call.

  • Availability Logs (Contact Center only) - a 2KB record is created every time a user changes their Availability state. (50 users x average 20 changes per day = 2MB per day)

  • Call Queue Logs (Contact Center only) - a 2KB record is created every hour per call queue, giving historic call data for that hour. (20 call queues x 24 = 1MB per day)

An average contact center with 50 users taking 2000 inbound calls into call queues would therefore use around 15MB of Salesforce data storage per day.

Insight

In order to calculate how much data Insight will consume you will need to obtain the following pieces of information :

  • How many Insight Categories are configured

  • The amount of calls produced per day

  • How many of the calls are expected to be triggering Insight (we assume a usual case is about 40%, but it’s entirely dependent of how the Categories are configured)

  • Expected amount of Categories to trigger on a single call (we assume this will equate to half the total amount of configured Categories, again this entirely depends on the Category configuration)

Note that a single Insight call record with no call Categories associated with it consumes 4KB and an additional 2KB per Category triggered.

Storage calculator :

1. Calculate the amount of calls you expect to trigger Insight

({Expected Daily Call Volume} * {Expected Insight hit rate (percentage)}) = {Expected amount of calls to trigger Insight}

2. Calculate the average size of an Insight call record

{Expected Category triggers per call} * {2 (KB) per Category triggered} + {4 (KB) Insight call record size} = {Expected data usage for an average Insight call record}

3. Times these values together to calculate the expected data usage of Insight

{Expected data usage for average Insight call record} * {Expected amount of calls to trigger Insight} = {Expected daily data usage of Insight (KB)}

Example:

Assuming the typical Insight hit rate will sit at around 40%, and that the amount of Categories triggered per call will be roughly half the total amount of configured Categories, a typical example would like this :

6000 Expected Daily calls * Expected Insight hit rate of 40% = 2400 Calls expected to trigger Insight

((30 Configured Categories / 2) * 2KB) + 4KB = 34KB Expected daily data usage of Insight

34KB x 2400 = 81600KB / 8.16MB Expected daily data usage of Insight 

Number Format

Telephone numbers within Salesforce should be in E.164 format which includes the country code at the beginning (prefixed with +), with no spaces and no special characters. They are limited to a maximum of 15 digits.

Phone numbers will include:

  • a + sign to indicate that the number is international

  • a country code, such as 44 (UK), 1 (US), 61 (AU), 49 (DE).

  • a region code, such as 203 or 217 (remove any leading digits, usually a zero, if applicable)

  • the subscriber number, such as 654321

Note:  Phone numbers must be a Salesforce ‘Phone’ field.

While the Natterbox CTI will make every effort to normalise phone numbers for Click to dial and record popping, the above format is required for querying Salesforce data as part of dynamic call routing policies.

You can use the below validation rule on phone fields in salesforce to ensure users enter the number correctly. Replace ‘PhoneField’ with the API name of the field:

NOT( 

OR( 

ISBLANK(PhoneField), 

REGEX(PhoneField,"^\\+[1-9][0-9]*")))

Telephony

Over the Top (OTT) Connectivity

A direct dial-in (DDI) number is required for each user. This may be on an existing private branch exchange (PBX), another landline number, or a mobile number.

Ensure that each number is set up for basic voice communication only. You should disable voicemail, welcome and other messages, hunt groups and forwarding.

Voice over IP (VoIP)

General Settings

Internet Connectivity

With all Natterbox VoIP solutions, your network (meaning to the edge of your network) must meet the following requirements

  • Bandwidth: 100 kilobits per second (kbps) per concurrent call

  • Latency (round trip time): < 100ms

  • Jitter: < 20ms

  • Packet loss: <1%

  • End users should use a wired Ethernet connection as opposed to Wi-Fi (not including users on Freedom Mobile)

Firewall / Router Configuration

The following firewall ports must be opened for outbound traffic:

  • UDP 5000 to 64000 (RTP/STUN)

  • UDP 5060, 3479 (STUN)

Note: due to configuration, some users may see STUN requests on ports 18000 to 30000 as STUN can be used in RTP

SIP ALG must be disabled on any network equipment.

Load Balancing

Public IP addresses should be static where possible.

Load balancing Natterbox voice traffic across multiple ISP’s and/or IP’s is not supported as it will result in call connection / audio issues.

Yealink, Softphone or 3rd Party SIP device Specific Settings

If using IP telephony you must also ensure your IP network has the following configuration in addition to the general requirements:

The following firewall ports must be opened for outbound traffic:

  • TCP / UDP 5060, 5050, 5061 (SIP)

Webphone Specific Settings

If using the Natterbox webphone, you must also ensure your IP network has the following configuration.

The following firewall ports must be opened for outbound traffic:

  • TCP 10062 (WebRTC/Websocket)

  • UDP 5000 to 64000 (RTP/STUN)

EDNS must be supported on local hardware.

Your firewalls should allow UDP to and from the public internet for the browsers that will be using the Webphone.

Natterbox IP Addresses

While it is not recommended that the local firewall and edge devices are locked down to Natterbox IP addresses, it may be that customers with restrictions already in place may need to open up their firewalls to Natterbox IP addresses. For this purpose, the Natterbox IP ranges are below:

185.185.76.0/22 (185.185.76.0 - 185.185.79.255)

5.180.188.0/22 (5.180.188.0 - 5.180.191.255)

103.73.186.0/23 (103.73.186.0 - 103.73.187.0)

84.45.30.0/24 (84.45.30.0 - 84.45.30.255)

54.228.110.191

79.125.121.120

52.71.103.102

35.156.148.166

52.16.243.39

52.208.62.60

34.254.106.49

18.202.74.215

If you are restricting IPs on Salesforce, the IP addresses above should also be added to the list of allowed ranges on the Salesforce profile and on the Network Access section under setup.


The following IPs only need to be whitelisted if your organisation uses Yealink deskphones

20.19.104.34

20.85.145.227

20.19.96.56

20.242.144.0

20.242.144.1

51.11.241.228


Was this article helpful?

Changing your password will log you out immediately. Use the new password to log back in.
First name must have atleast 2 characters. Numbers and special characters are not allowed.
Last name must have atleast 1 characters. Numbers and special characters are not allowed.
Enter a valid email
Enter a valid password
Your profile has been successfully updated.
ESC

Eddy, a super-smart generative AI, opening up ways to have tailored queries and responses