Opale Technical Blog
Deep insights, practical solutions, and expert analysis for tech enthusiasts.

Monitor a DSLA test call and terminate the call if a tone is detected

Author icon Olivier Willi   Calendar icon Thursday, 23rd June 2022

We recently received a request to monitor a call and terminate it if, at any time, a tone is detected on the call.

This technique was required as a method of aborting one cycle of an automatically repeating drive test in which the test calls were made between two DSLA’s, one at a fixed location and one in a vehicle. The requirement was to allow a user to abort a test cycle in the vehicle, by simply pressing a key on the dial pad of a cell-phone.

We were able to devise a solution for this requirement by using some Remote Access scripting and Channel B to monitor the call on Channel A. Channel B runs a tasklist that waits for the "stop-tone" which when detected ends the test. The Remote Access script waits for the tasklist on Channel B to complete and then stops the test call on Channel A.

 

Configuring Channel B to monitor

Assuming the phone/phone-line is connected to Channel A, we first set the DSLA Monitor on the Node in Node View to monitor the input of Channel A only. This is done by right-clicking on the Channel A node in the MultiDSLA Node View and selecting Monitor Levels.

Next, the monitor output is connected to the input of Channel B using 4mm plug leads as shown in the figure above.

 

Writing a tasklist for Channel B

The tasklist for Channel B is simple. Let's assume that the terminating-tone is a DTMF 5 digit. Starting with a blank tasklist, we add a Wait For DTMF event to the first node in the empty task as shown below. Note: although the tasklist calls this Node A, this is not the same as Channel A. It just tells us that the Wait event will be run on the first node in a test.

In the example we have also named the task in order to make debugging easier when viewing test progress in the event log. We save the tasklist to the Users folder in the working directory, calling it waitFor5.mtl

 

Configuring nodes

To run a test in MultiDSLA you need to have at least two nodes, a "source" node and a "destination" node. Channel B is the "source" node, but we need to have a "destination" node against which to run the test. The "destination" node does not actually perform any activities in the test, so adding and using an uncontrolled node is appropriate. The node configuration for Channel B must be set to Balanced.

 

Writing the Remote Access script

The steps below describe the contents of the Remote Access script. We assume that the Channel A test is configured to start automatically every 15 minutes.

  1. Get a list of running tests and extract the testID for the Channel A test. Only one test is running in the example below
    > TEST GETRUNNINGLIST 
    33 Example Test 21/09/2011 15:33:14 Local A Remote A
  2. Start test on Channel B using the waitFor5.mtl, storing the returned testID
    > TEST START "UserswaitFor5.mtl" "local B" "dummy" 
    34
  3. Poll the progress of the Channel B test until it is reported as being FINISHED
    > TEST GETPROGRESS 34 
    RUNNING
    > TEST GETPROGRESS 34
    FINISHED
  4. Stop the test-call of Channel A test, the next test call will automatically start at the scheduled time
    > TEST STOP 33 
    OK
  5. Loop back to step 2

Contact Opale Systems or your distributor for more information.

Open cookie management panel
Close panel
This site uses cookies to ensure its proper functioning. It also uses cookies from third party services to provide advanced functionality. At any time, you can choose which services you wish to activate or decide to withdraw your consent.
 
Customise accepted services
You are free to choose which services you wish to enable. By authorising these third party services, you agree to the deposit and reading of cookies and the use of tracking technologies necessary for their proper functioning. By withdrawing your consent for some of these services, some website features may no longer function.
Website navigation  Read more
The site writes a session cookie to enable it to function properly and to help with navigation. It cannot be deactivated.
Usage: 1 cookie, records the session identifier.
Time to live: The cookie is present during the entire session on the site. It becomes obsolete after 24 minutes of inactivity.
Mandatory
Media Popup
Display videos from Youtube or Dailymotion.
Google Analytics  Read more
Records website statistics.
 
Accept all Refuse all Manage
Follow us on LinkedIn Follow us on Youtube