Master DNL Class4
  • Introduction
  • Configure a new Class 4 instance
    • Setup Admin Access
    • First Time Login
    • Setup SIP Switch
  • Your First Call with Class 4 Fusion
    • Create Vendor Rate Table
    • Create Termination Vendor
    • Create Egress Trunk
    • Create Dynamic Route
    • Create Routing Plan
    • Create Client Rate Table
    • Create Termination Client
    • Create Ingress Trunk
    • Simulate Your Call
  • Support Contact
  • eLearning
  • Bug Reporting Process
  • Hardware Sizing
  • Licensing
  • Installation
    • Install with Tarball
    • Install with RPM
      • Step by Step Guide
    • Install with AWS
    • Install with Google Cloud
    • Distributed Architecture
      • Switch Server
        • dnl_live_monitor
        • dnl_tool
        • dnl_livecall
        • dnl_softswitch
        • dnl_watchdog
        • dnl_cloud
      • Web UI
        • dnl_web_helper
    • Troubleshoot Your Installation
    • Setup SSL on Web UI
    • LAN IP Setup for Virtual Machine
    • Change IP/MAC Address
    • Validate Your Installation
      • Check dnl_softswitch log
    • Configuring DNL softswitch
    • Setup Selinux
  • Configuring Stir/Shaken
    • Generating Certificate with Peeringhub.io
  • Upgrade an Existing Installation
    • Update an Existing Installation
      • Update with Tarball
      • Update with RPM
  • Stir Shaken
    • Introduction
    • Configure Class 4
    • Configure Stir Shaken in DB
    • Configure Ingress Trunk
    • Configuring Egress Trunk
    • Basic Configuration Example
    • Validation of Stir/Shaken Setup
    • Setup External AS/VS connectivity
  • Basic Switch Configuration
    • Integrate Class 4 to Google SMTP
    • Customize your logo
    • Customize Domain Name
    • Customize email template
    • Customize invoice template
    • Configuring Payment Gateway
      • Stripe Configuration
      • Paypal Configuration
    • Configuring CDR and PCAP Backup
      • Google Cloud Setup
    • Configuring SIP Registration
    • Configuring LRN
  • Quick Setup for Termination Traffic
    • Create Termination Vendor
      • Specify IP to send to egress
    • Create Termination Route
      • Routing Plan
      • Static Route
      • Dynamic Route
    • Create Termination Client
    • Test with Call Simuation
    • Test Calls with SIP Client
    • Check CDR
  • Quick Setup for Origination Traffic
    • Introduction
    • Create DID Vendors
    • Create DID Billing Plan
    • Create DID Clients
    • DID Repository
    • Assign DID to Client
    • Test Calls with Call Simulation
    • Setup for your client to buy DIDs from portal
  • Data Access
    • Postgres Database
      • Obtain Report Data from DB
      • Obtain CDR from DB
    • Raw Switch Data
      • CDR Data
        • Release Cause Definition
      • PCAP Data
      • Auto Data Cleanup
  • System Administration
    • Modules
    • Start and Stop
    • Logging
    • Software Updates
    • Setup additional dnl_softswitch
    • Add Additional IP to Switch
    • Configure SIP Cause Code and Q850 Mapping
    • Enable Media Proxy
  • Class 4 API
    • Authorization
    • Class4 API
  • Troubleshooting
    • Calls are failure
    • Change Q850 in 4xx/5xx
    • One-way Audio with SIP Client Testing
      • Using Zoiper to resolve NAT issue
  • Automatic Call Blocking
    • Introduction
    • Youmail Blocking
    • DNC Blocking
    • LERG Blocking
Powered by GitBook
On this page

Was this helpful?

  1. Installation

Install with Tarball

Step 1 Go to download.denovolab.com

Download api, database, systemd service files, falcon_rest package, ui and switch binaries

Supported OS is Centos7

First time install:

Run the following commands:

yum -y install epel-release
yum -y install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
yum -y install centos-release-scl
yum clean expire-cache
yum -y install python3 python3-pip python3-devel libnetfilter_conntrack postgresql12 postgresql12-devel wget lzma openssl-devel xz-devel gcc libjpeg-turbo-devel ntp python-devel tcpdump wireshark make bzip2-devel sqlite-devel zip expect telnet git ntp redis nginx postgresql12-server prefix12 ip4r12 postgresql12-contrib
  • Check if selinux is enabled, and if true, set it to permissive or disable it

  • Install NodeJS for the UI with the following commands:

curl --silent --location https://rpm.nodesource.com/setup_12.x | sudo bash -
yum install -y nodejs
create user  webbackend and denovo_v6:
-          useradd  denovo_v6  -d /opt/denovo_v6
-          useradd  -r  webbackend
  • copy content of the systemd.tar.gz into /etc/systemd/system

  • initialize postgresql server:

/usrl/psql-12/bin/postgresql-12-setup  initdb postgresql
  • Go to /opt/pgsql/12/data/, edit pg_hba.conf:

local   all         all                                 trust
# IPv4 local connections:
host all         all         127.0.0.1/32       trust
# IPv6 local connections:
host all         all         ::1/128             trust
  • Start Postgres server using the following command:

systemctl  start postgresql
  • Unpack database archive and prepare and load db. In psql command prompt , make database named class4_dnl.

Here is how you enter into Postgres prompt:

psql   -U postgres

Here is how you create .a Postgres database:

create database class4_dnl;
create user webbackend superuser login;

After that, you navigate to the folder where you unpacked database files

psql  -U postgres class4_dnl  <schema.sql
psql  -U postgres  class4_dnl <data.sql

Then you can install Python Backend:

pip3  install  falcon-rest-1.0.14.tar.gz
  • In the directory /opt/denovo_v6 copy contend of the switch binaries

  • Create directory web and put content of the UI archive there

  • Go to the dir where api_dnl is and run following commands:

pip3  install –U pip
pip3 install  filename_api_dnl.tar.gz
  • Create file named denovo.conf in the /etc/nginx/conf.d/ and put following:

server {
     listen   80;
        server_name  localhost;
     root               /opt/denovo_v6/web;
             index   index.html index.htm;
        client_max_body_size 320m;
     # Load configuration files for the default server block.
     include /etc/nginx/default.d/*.conf;
     location / {
     try_files $uri $uri/ @rewrites;
     }
     location @rewrites {
     rewrite ^(.+)$ /index.html last;
     }
     error_page 404 /404.html;
         location = /40x.html {
     }
     error_page 500 502 503 504 /50x.html;
         location = /50x.html {
     }
}
  • Restart nginx.

  • Start all dnl services

systemctl start dnl_softswitch, dnl_livecall, dnl_tools dnl_webhelper dnl_api_dnl, dnl_api_dnl_worker@0 dnl_api_dnl_worker@1 dnl_api_dnl_worker@2 dnl_api_dnl_beat

Also make sure that redis and nginx is running, if you have firewall enabled, add port for the web ui into it

For the switch you need also to open ports in firewall if you are using it:

Default ones are 4319/udp , 5060/udp

After all is started you should be able to open UI on the ip address of your machine, and take rest configuration from there.

PreviousLicensingNextInstall with RPM

Last updated 5 months ago

Was this helpful?

You must setup Selinux according to instruction in order for UI to show up.

here