StarTrinity.com

VoIP software

VoIP community

VoIP marketplace


logged in as
log out

StarTrinity VoIP Status Tutorial

[please note that the tutorial and the software is being updated on the fly as we develop and release new features]
Installation of web interface and database on your Windows server
Updating web interface software
Deployment of SIP server test node on your Windows server
Updating SIP server test node software
Configuring SIP server test node software
Running VoIP readiness test
Detailed technical explanation of VoIP readiness tests
Running continous IP network test
Running continous IVR audio verification test
Detailed technical explanation of IVR audio verification tests
Running continous echo audio verification test
Detailed technical explanation of echo audio verification tests

Installation of web interface software and database on your Windows server

  • Set up database
    • Set up SQL Server Management Studio (SSMS). There is a free "Express" version
    • Set up MSSQL server. There is a free "Express" version
    • Open MSSQL management studio, connect to server, create database "VoipStatus" (you can choose a different name for the database)
  • Set up web server
    • Go to Server Manager, enable ALL ASP.NET, IIS, web management, WCF features
    • Press Win+R, cmd.exe, run
      %windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i
      %windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -ir
    • Open IIS manager
    • Remove default web site
    • Create new web site. Enter host name (like "voipstatus.yourdomain.com")
    • Download web server binaries from here, unzip, copy into the new website folder. There is a "web.config" file in root of the folder
    • If you have SSL certificate: import the certificate using IIS manager, add HTTPS binding to the website using the imported certificate
    • If you dont have SSL certificate
      • Configure setting "RequireHttps" in web.config file, set to "False":
        <StarTrinity.VoipStatus.Properties.Settings>
         <setting name="RequireHttps" serializeAs="String">
          <value>False</value>
          </setting>
         </StarTrinity.VoipStatus.Properties.Settings>
        </applicationSettings>
    • Configure database connection string in the web.config
      <connectionStrings>
       <add name="VoipStatusDatabase" connectionString="Data Source=localhost\SQLEXPRESS;Initial Catalog=VoipStatus;Integrated Security=SSPI" providerName="System.Data.SqlClient" />
      </connectionStrings>
    • Go to web interface - log in. See database connection error "login failed for user IIS APPPOOL\yourwebsite.com" in the browser
    • In MSSQL management studio create login to connect to the database for the web UI.



      Select "Windows authentication", set "Login name" = "IIS APPPOOL\yourwebsite.com" (from the error in browser)


      Grant rights to the new user


      Add mapping from the new user to the database


      Click OK
    • In case if you use some other login, make sure that SQL management studio is able to connect to database server using same credentials as in connection string
  • Log into web interface
    • Default admin credentials: email = "admin", password="123456"
    • Change password (using configuration menu)

Updating web interface software

  • Download new version from here
  • Replace files except your web.config file (do not erase your specific settings like database connection string)

Configure company details and settings

  • Edit email (the email is used for login)
  • Edit logo URL. Make sure that the logo URL is accessible in browser
  • Edit company name
  • Edit notifications settings for VoIP readiness tests
  • If you need integration with your ticket system via HTTP API: configure it here
  • Configure email server settings: enter SMTP server details or sendgrid.com API key
    • Example for gmail SMTP server configuration
      • SMTP server host name = "smtp.gmail.com"
      • SMTP server port = "587"
      • Use SSL connection = "True"
      • SMTP auth. user name = "xxx@gmail.com"
      • SMTP auth. password = "xxx"
      • From header to send email = "xxx@gmail.com"

Deployment of SIP server test node on your Windows server

  • Prerequisites
    • If you use web interface and database on our server: account on voipstatus.startrinity.com
    • If you use web interface and database on your server: have it working
    • Windows server for the server-side SIP software
    • Free UDP ports 5060..5069 (not being used by some other SIP server)
    • Correct time set up on the server
    • Hardware requirements
      • One Amazon EC2 micro instance is able to handle 150 concurrent G.711 calls
  • Note: it would be easier if you first install Google Chrome on the server, because IE displays too many security warnings by default
  • Install Wireshark and WinPCAP under admin account, make sure that packet capture works
  • If you have windows firewall turned on (it is turned on by default): open ports in windows firewall: UDP 5060..30000 (SIP, RTP), TCP 19019 (SIP Tester web API), TCP 80 (HTTP), TCP 443 (HTTPS)
    • Go to Control Panel - "System and Security" - "Windows Firewall"
    • On left panel click "Advanced settings"
    • Select "Inbound Rules" - click "New rule..."
    • Type of rule = "Port" - Next - "UDP", ports = "5060-30000" - Next - Allow the connection - Name = "SIP and RTP"
    • Add one more rule for TCP port 19019 - Name = "HTTP API for SIP Tester"
  • If you have firewall on hosting provider side: open same ports (for example in Amazon EC2 go to "security groups")
  • In VoIP status web interface go to "Configuration" - "Servers" - "Create new server test node". Enter server's IP address / host name to be used from client side

  • Install SIP tester on your server from MSI installer (zipped StarTrinity.SIPTester.Setup.msi) or ZIP archive with binaries. This should be a dedicated instance of SIP Tester, not used for other tests
  • Run the new installed SIP Tester instance, it will first start in regular mode, not configured for the "VoIP Status" operation
  • On the new server go to browser, log into the web interface - servers - your new server - "Deploy"
  • Click "auto-configure"




  • Check server status in web UI
  • Try to run VoIP readiness test: Configuration - Start VoIP readiness test

Updating SIP server test node software

  • Updating SIP server test node software in manual mode
    • Stop "VoIP Status" software
    • Download SIP Tester binaries from ZIP archive
    • Replace binary files from the downloaded ZIP file. Default program folder is [SystemDrive]:\Users\[UserName]\AppData\Roaming\StarTrinity SipTester\ or [SystemDrive]:\Documents and Settings\[UserName]\Application Data\StarTrinity SipTester.
    • Start "VoIP Status" software
    • Check "servers" list in VoIP Status web interface, it should display new version number for the VoIP server test node

Configuring SIP server test node software

The SIP server software is automatically configured by VoIP Status web server when it is deployed. After deployment you can change following settings:
  • CdrDeleteIntervalInDays - time to keep measurements in CDR files (in days). default value set by VoIP Status is "60"
  • DebugMediaAV - enables call recording to troubleshoot low audio quality issues in audio verification tests. Setting this to "1" turns on recording into default folder "c:\debug_media"
  • Other settings are same as in SIP Tester - see here

Running VoIP readiness test

  • Go to Configuration -> Start VoIP readiness test
  • Send download link to the customer. [Customer runs the downloaded exe file]




  • See status of the test, when it is complete see results


    If it tells you that no calls found for the test (no calls in CDR), make sure that server's clock and time zone are set up correctly; also check menu - servers - server details - "IP address or host name for HTTP requests from client", it must go to SIP server host.
  • If you have issue with the test results, please run VoIP readiness test with our VoIP servers to see if the issue is related to your server side or client side

Detailed technical explanation of VoIP readiness tests

The VoIP readiness test includes following operations:
  • Technician or (optionally) anonymous website visitor defines new VoIP readiness test record using VoIP Status web interface
  • The web interface generates unique link to download .EXE file
  • User downloads the EXE to client-side Windows PC and runs it
  • The EXE tool runs various VoIP tests against pre-configured VoIP server
    • SIP ALG test
      • The test is performed using range of server-side SIP ports (default 5060..5069)
      • Client sends SIP calls to server
      • If SIP contact header is delivered to server without changes, test is marked as "SIP ALG is not detected"
      • If there is SIP ALG between client and server, it changes SIP Contact header and test is marked as "SIP ALG detected"
    • NAT test
      • The test is performed using range of server-side SIP ports (default 5060..5069)
      • Client sends REGISTER to server
      • Client sends to server, as SIP phone to IP PBX
      • Server proxies the SIP call to registered extension. SIP and RTP packets go from client to server through client-side IP router(s), NAT to server and back to client
      • Client answers to the received incoming call and echoes RTP stream back to server
      • Client sends DTMF digit via RTP stream from outgoing call leg to incoming call leg, the DTMF is echoed back to caller side via server. This test checks 2-way RTP audio stream
      • Client verifies the RTP stream path, saves report to the VoIP Status web server
    • Bandwidth+DSCP test
      • Client sends multiple concurrent SIP calls according to pre-configured settings
      • Server accepts the calls
      • The calls are kept alive during pre-configured duration
      • Both client and server send RTP packets to each other with specified DSCP flag, capture IP traffic using winpcap library, analyse RTP packet loss, jitter, G.107 MOS based on winpcap RTP packets timestamps, received (RX) DSCP fields
      • Results are stored in CDR files on SIP server side
  • view example VoIP readiness test report

Running continous IP network test

  • Go to Configuration - continuous IP network tests - Create new. Enter downtime alert thresholds for the test
  • Go to details of the new test, get "To" user ID, host name, port for further configuration of SIP client device
  • Using Cisco SPA 112 ATA device
    • Connect the device to LAN with DHCP server
    • Get the dynamically assigned IP address of cisco device from your DHCP server. Here is is 192.168.0.13
    • Connect to the device in browser, log in using default credentials "admin"/"admin"
    • In "Quick Setup" enter SIP server details
    • In "Voice" - "SIP" set "RTCP Tx interval" = "1", click "Submit"
    • In "Voice" - "Line 1" - "Proxy and registration" set "Register Expires" = "60", "Ans call without reg" = "yes", click "Submit"
    • Check registration status in the Cisco ATA: "Voice" - "Information" - "Line 1 Status" - "Registration State"
    • Check LED indicator on cisco ATA device for phone line #1, it must be on, indicating continuous call from the server to the device
    • Sometimes the Cisco ATA needs hard reboot (by power off/on) to apply new settings
  • Check status of the continuous test. It must be "online"
  • See VoIP quality reports in history chart and CDR. Check SIP trace for the calls. Check upstream and downstream jitter and packet loss measurements, round-trip time (RTT)
  • Configure email(s) to receive alerts when the continuous test goes down and up in "Configuration" - "Company details and settings" - "Continuous tests"
  • Turn off the client-side device, make sure that you receive alert by email. Turn it back on, check the "up" notification email. At the same time monitor "Continous tests" webpage (which is automatically refreshed), make sure that test status goes down (red) and up (green)

Running continous IVR audio verification test

  • Go to configuration - company delails and settings - Continuous tests - set "Emails for alerts"
  • Go to Configuration - continuous IVR audio tests - Create new. Enter parameters for the test. Upload reference WAV file containing "correct audio to expect from destination". Create the test
  • The selected dialer server test node starts call generation to the specified destination, verifies audio, measures audio quality (PESQ MOS score and delay)
  • Go to report of the new created test, see history chart:

Detailed technical explanation of IVR audio verification tests

The IVR audio verification test includes following operations:
  • SIP server test node instance periodically queries web server to get list of tests and CallXML scripts to execute
  • Web server generates CallXML scripts for the tests
  • For every continuous test the server periodically executes CallXML scripts with pre-configured interval between calls
  • The generated script for the test does following:
    • Makes call to the destination IVR server (pre-configured telephone number, IP address, SIP port)
    • When the call is answered, decodes received RTP packets and verifies received audio by comparing it to pre-configured reference WAV file. The verification algorithm produces PESQ MOS score and IVR response delay
    • Results are saved to CDR file on SIP server machine
    • When destination is unavailable (SIP call fails) or when audio quality is bad, or when it gets some other audio or silence in response, it sends alert
  • The alert emails include link to view results of the continuous audio verification test
  • The web page with reports is hosted on the VoIP Status web server, it includes iframe containing SIP server's CDR and chart display. The web server does not store CDRs by itself
  • The calls can be recorded on SIP server using setting "DebugMediaAV"

Running continous echo audio verification test

  • Set up destination (call receiver) side: it should play audio echo back to caller side. You can use our SIP tester software to receive calls and play echo using loopbackaudio CallXML element
  • Go to configuration - company delails and settings - Continuous tests - set "Emails for alerts"
  • Go to Configuration - continuous echo audio tests - Create new. Enter parameters for the test. Create the test
  • The selected dialer server test node starts call generation to the specified destination, verifies echo audio signal, measures audio quality (PESQ MOS score and RTT)
  • Go to report of the new created test, see history chart:

Detailed technical explanation of echo audio verification tests

The echo audio verification test includes following operations:
  • SIP server test node instance periodically queries web server to get list of tests and CallXML scripts to execute
  • Web server generates CallXML scripts for the tests
  • For every continuous test the server periodically executes CallXML scripts with pre-configured interval between calls
  • The generated script for the test does following:
    • Makes call to the destination SIP server or SIP gateway (pre-configured telephone number, IP address, SIP port). The destination plays audio echo back to caller side
    • When the call is answered, decodes received RTP packets and verifies received audio (echo) by comparing it to transmitted audio (file "speech.wav", included into default installation). The verification algorithm produces PESQ MOS score and delay (round trip time, RTT)
    • Results are saved to CDR file on SIP server machine
    • When destination is unavailable (SIP call fails) or when audio quality is bad, or when it gets some other audio or silence in response, it sends alert
  • The alert emails include link to view results of the continuous audio verification test
  • The web page with reports is hosted on the VoIP Status web server, it includes iframe containing SIP server's CDR and chart display. The web server does not store CDRs by itself
  • The calls can be recorded on SIP server using setting "DebugMediaAV"
Copyright 2011-2018 StarTrinity.com | Blog | Contact lead developer via LinkedIn | TeamViewer link