Management and Reporting Tool (MRT)

Overview and Features

The InVADE Management and Reporting Tool (MRT) is a web-based software package that uses the InVADE dialler’s database to allow customers to run searches and reports in a visually friendly way. The software allows multiple users with varying permissions to log in and perform certain actions based on their role (see User Roles for more information). This latest version contains a variety of new features including regex pattern matching for campaign permissions; automatic and manual archiving of data; role based access controls; and user groups.

Call Search and Reporting

Call Search

The call search feature is the most widely used feature in MRT. This enables a user to run a search on the entire database for every call that the dialler has made. The current alpha version allows the following searches (or a combination thereof):

  • Date range

  • Telephone number (partial or full)

  • Campaign

  • Agent

  • Recorded calls

From within the call search you can filter the results even further to get the exact information you want. Further levels of filtering will be added as development continues. Call recordings can also be played back through MRT if the browser being used is HTML5 compliant. Non HTML5 compliant browsers will be prompted to download the recording file and play it locally instead.

It is recommended that when performing call searches on large databases that you enter as much information as possible. This greatly reduces the amount of time taken to search the database.

Summary Reports

Summary reports (or silent call reports) are another widely used feature in MRT. The summary reports allow you to create a quick report of the amount of silent calls (or abandoned calls) made per day or per week on either a campaign or dialler basis.

To generate a summary report click the “Summaries” tab and enter the required fields. The Date To field will be automatically filled in when the Date From field has been completed. Select a report type (either dialler or campaign based) and then a period (weekly or daily). Sometimes the reports can take a while to process due to the large amount of data the system is crunching. Once that’s done you will see something that looks like this:

User Management

Adding a User

To add a user, you must have the role of “supervisor” or above. The “customer” role cannot manage any other user (other than themselves). Navigate to the “Users and Groups” (step 1 fig. 1) tab on the left hand side of the page and select it; a drop-down menu will appear underneath. Select “Add User” (step 2 fig. 1) from the drop-down menu. This will load a new page with all the required fields for adding a user.

fig. 1

Editing Users

To edit a user you must have the role of “supervisor” or above. Select the “Users and Groups” (step 1 fig. 2) tab on the left and navigate to “User Management”. Here you will be presented with a list of all the users on a system. Simply find the user you wish to edit and select the blue “Edit User” (fig. 3) button in the table.

fig. 2

fig. 3

Delete a User

To delete a user, go to the “User Management” section and select the “Delete User” button in the table. This will prompt you to confirm that you do want to permanently delete the user and all associated permissions. This action cannot be reversed.

Campaign Permissions

This is by far the most complicated aspect of MRT but is also one of the most powerful tools. It does require a basic understanding of regular expressions (regex). The page does contain some useful information regarding regexes and they can be as simple or as complicated as you would like. MRT is written in Python and therefore does have a very extensive set of regex capabilities. What the regex permissions do is allow you to assign specific campaign names to specific users. For example you may have two users Alice and Bob. Alice should be able to see all the campaigns that begin with Qwerty902, Qwerty903, and Uiop904. Bob however should only be allowed to see campaigns that end in 904. Rather than typing out every single campaign and every single potential campaign that may start in the future we can use a regular expression to allow Alice and Bob access to certain campaigns but not others. In a normal permission system we’d allow individual access to each campaign; this has its limitations though. It requires adding permissions for every single campaign and if you want a user to view all historical and future (not yet started) campaigns beginning with 904 you will have to add them all and manually add any new ones. In Alice’s and Bob’s scenario we can do the following:

Navigate to the “User Management” section and select the green “Manage Campaign Permissions” button.

In Alice’s case we would add the following: ^Qwerty90[2-3].* and ^Uiop904.*. Alternatively if you didn’t have any other campaigns that had a 90 somewhere in them and you wanted Alice to see them all you could do ^\w+90\d.*. The caret means this regex must start at the begining. The \w means match any alpha numeric character, the + means repeat this one or more times. This happens until we get to the 90, we then match anything that matches a-z/A-/0-9 then 90 then match one single digit (the \d). The dot and asterisk at the end means match any character zero or more times. So the regex would match Qwerty902, Qwerty9021, Qwerty902ab, and Qwerty90222222abcabcababc123

In Bob’s case we would do the following .*904$ the dot means match ANY character. The asterisk means repeat this match zero or more times. This means the regex will match anything it finds that means the criteria of: ANYTHING plus 904. The dollar sign at the end means stop the match here. That way if you have a campaign that is abcde904x1 and abcde904, we will only match abcde904.

Regex is complicated but is a very powerful system when used correctly.

If you don’t want to use the extended regex capabilities built into MRT and just use campaign names then you will need to use the following format:

^<campaign_name>$ so for example ^abc123$ will only match the campaign called abc123.

Important Note: The permissions are case sensitive.

User Roles

The management and reporting tool uses a system known as Role Based Access Control (RBAC). What this means is that each user is given a role within the system; that role has a limited and statically assigned set of permissions. The previous version of MRT required individual permissions to be set on a per-user basis; the RBAC solution may appear to lack the same versatility but makes things much much easier to manage. The roles are as follows:

Role

Can

Cannot

Administrator (InVADE)

Manage everything

N/A

Staff

Manage users, call search, summaries, manage campaign access, archive data

Manage servers/locations

Supervisor

Manage users, call search, summaries, manage campaign access

Manage staff or above, archive data, manage servers/locations

Customer

Call search, summaries

Manage users, campaign permissions, archive data, manage servers/locations

Group Management

Adding Groups

To add a group, navigate to the “Users and Groups” link on the left and then select “Add Group” from the drop-down menu. From here you can add a new group and set the Campaign Permissions for that group. Group permissions and user permissions are inclusive. Therefore you can assign a group certain permissions which will automatically allow any user in that group to access the campaigns but you can also assign further permissions to a specific user. Group names must be unique!

Managing Groups

You can edit a group’s name, permissions, or delete it by simply navigating to the “Group Management” section under the “User’s and Groups” heading. Deleting a group is a permanent action and any permissions set on that group for all users will be removed.

Servers and Locations

Overview

The servers and locations are designed solely for you to manage multiple sites (if necessary). You can add multiple servers and group them into one “location”. This way you can do call searches based on a location or based on an individual server name. Servers and locations can only be managed by Administrators (InVADE staff).

Adding a Server

To add a server, navigate to the “Servers” tab and select “Add New Server” from the drop-down menu. From here you will be presented a form to fill out (fig. 4)

  • The “Server Name” field is a “friendly” name for the server. The system will identify the server by its hostname later.

  • The “Server Type” field tells MRT what type of server you are adding.

  • The “Location” field is used by MRT to determine where this server is.

  • The IP address is a required field and is used by MRT to connect to the server.

  • Default call recording location. This can generally be determined via MRT in the case of diallers as MRT will parse the dialler configuration for any telephony servers and for the location of recordings on the dialler. If the server is not a dialler simply leave it blank.

  • Default call recording format will also be parsed by MRT. If the server is not a dialler simply leave it blank.

  • The hostname field can be set to localhost but will be filled in when mono is parsed.

Adding a Location

To add a location, go to the “Locations” menu and select “Add New Location”. A location simply serves as a reference for which server is where (if you have multiple diallers in MRT).

Server Actions

In the server list (Servers -> List Servers) there are either two or three available buttons. “Modify Server” brings up the same view as “add server” but with all the relevant options filled in. If you wish to change anything about the server’s configuration in MRT you would do so here. Remove server deletes the server from MRT and cannot be undone. Parse server config only appears if the server is a dialler or an “all in one”. This button makes MRT connect to the relevant server to find any telephony servers in the dialler configuration, get the recording location, and the default audio format. This information will then be saved in the database.

Archiving

Overview

MRT has the ability to move “old” data out of the main database and into a secondary “archive” database. This can be set to run automatically and can also be run manually by users with the “Staff” role. Although still under development this feature will allow you to schedule a “maximum age” of data. This maximum age defaults to 30 days; every night MRT will look into the database and collect all records that are 30 days old or more. This data will then be moved from the main database into the archive database allowing for much faster queries on the main database due to a smaller dataset. Automatic deletion can also be enabled on the archive database to remove records that are older than x number of days.

Personal Actions

In the top right hand corner of the screen is a small black box with an email (or first name and last name if set):

Clicking this will make a drop-down menu appear with four options:

  • Edit Profile

  • Install Dialler Console

  • Help

  • Sign Out

The edit profile link allows a user to change their email address, first name, last name, and password. The password that is displayed to the user is the database encrypted version of their password.

The install dialler console link allows the user to install InVADE’s dialler console on their local machine (Microsoft Silverlight is required). If a user is set to the role of “customer” then the user will only be able to download and install a view only version of dialler console. Any user role above Customer will be able to install the full version of dialler console.

The help link will display some help documentation similar to this document but built directly into MRT.

The sign out link will log the user out of MRT and redirect them back to the login page.