4. Initial Testing

4.1. Starting Promptar Server

Launch Promptar Server by running the standard service start command, depending on your platform.

On Linux run:

# service prptServer start

On Windows:

> sc start prptServer

4.2. Checking Promptar Server is Running

Use the ps command on Linux or the task manager on Windows to confirm Promptar Server is running. You should find the following processes:

  • prptServer | Promptar Server.
  • prptDCC | Promptar Desktop Client Connector, child of Promptar Server.
  • prptAMI, prptCSTA or prptTAPI | The Telephony Connector you’re running [6], child of Promptar Server.

NOTE: On the Linux platform, you will find two processes per each component, in a parent/child relationship.

4.3. Diagnosing Startup Issues

If all went well with the configuration steps performed up to this point, you should have successfully validated that Promptar Server and its associated connectors are running. However something might have failed and you either have no processes running at all, or only a subset of them.

Typical sources of failure at this stage will be:

  • Missing or badly formatted configuration files.
  • Invalid license information.
  • Invalid settings.
  • Connectivity failure between the Telephony Connector and the PBX.

Most often, startup failures can be easily diagnosed by looking at the Promptar Server’s log. Eventually, it may point to a connector specific failure. Should that be the case, take the time to examine the respective connector log.

If you have identified the source of the startup failure in the logs, proceed to fixing the underlying cause: again, typically, this will be related to some configuration setting that needs review. After that, stop and start Promptar Server to confirm you’ve got it to run successfully.

 

In rare occasions Promptar Server may fail to startup without logging any message [7] . In these cases two diagnostic paths may need to be followed:

  • Launch Promptar Server manually Open a command shell and change the working directory to Promptar Server’s server binaries directory, sbin. From there, execute prptServer (or prptServer.exe, if on Windows) directly, where it will:

    • Either print an error message, quickly exit and return you the command prompt. (this should guide you in the direction of fixing whatever needs fixing)
    • Or stay silent without returning the command prompt. (this will lead us to the second diagnostic path; hit CTRL-C to stop the apparently hung process or stop it in any other way you want before continuing)
  • Increase Logging Detail Edit Promptar Server’s general.conf file and change the logging level to debug. Stop Promptar Server and start it again. The failure should now be clear in Promptar Server’s log. If more digging is ever needed, you may need to change the connector’s logging levels as well.

4.4. Logging in with the Desktop Client

Once you have the Server up and running, use your client desktop system, either on Windows or Mac OS, to launch Promptar Desktop Client.

The first time you run it, it will show you a login panel in the bottom right side of your display. Fill in the host, username and password fields and proceed by clicking the login button — recall that what should be entered in the username field is the User ID as configured in Promptar Server’s users.conf configuration file.

  • If all goes well, it will display a login successful message and hide itself away [8].
  • If some failure occurs, it will display a short error message and redisplay the login panel.

HINT

If you are running Promptar Desktop Client on top of Mac OS X 10.9 Mavericks or later, disable the App Nap feature: right-click Promptar Desktop Client icon in the Finder and click Get Info…. In the window that pops up, activate the Prevent App Nap checkbox and close the window. Quit and relaunch Promptar Desktop Client.

4.5. Diagnosing Login Issues

Typical login failures are associated to one of:

  • Network connectivity.
  • Invalid username and/or password input.

After having validated the previous possibilities, to narrow down the login failure, please:

  • Take note of the actual failure message Promptar Desktop Client displays very concise messages with no technical information at all. However, different login failure reasons display slightly different failure messages. (examples are: "Login failed", "Login Error", "Server connection failed", "Server connection halted", etc.)
  • Analyze both Promptar Server and Promptar Desktop Client Connector logs The recommended logging levels should be enough to get to the root of the issue.
  • Analyze Promptar Desktop Client logs In the login window, click the options tab. Set logging to on or detailed and reproduce the failure. Set logging back to off. To get to the log file, double-click the Logging text label to the left of the logging selector: this will bring up a window pointing to the correct directory on your system [9].

4.6. Simulated Test Calls

Up to this point we’ve validated:

  • Promptar Server and connectors running.
  • Promptar Desktop Client session established.

Let’s now exercise the solution in a way that demonstrates:

  • Promptar Server to Desktop Client signaling works.
  • Configured Templates and Rules work.

To do that we’ll use the Promptar Server’s command line interface. For a full reference of the available commands see the Command Line Reference appendix.

Debug shell dependency

 

To use Promptar Server at the command line for call simulation tests, the debug shell must be activated.

Review general.conf, if needed.

Simulating a new call is achived with the following command:

# prptServer calls.new <from> <to>

Notes:

  • calls.new is case sensitive and should be entered as shown, in lower case.
  • <from> and <to> are phone/extension addresses and typically composed of sequences of digits.
  • Once successful, it prints out the call ID of the simulated call.

To gather the status of the current running calls, simulated or not, run:

# prptServer calls.print

To simulate call termination, submit a command like, where <call-id> represents the call ID obtained before:

# prptServer calls.end <call-id>

Before proceeding to simulating calls, define:

  • EXT-A to be the extension of the user which you have logged in with Promptar Desktop Client. Check the users.conf file for that, if needed.
  • EXT-B to be the extension of another Promptar user.
  • EXT-C to be an internal extension for which no Promptar user has been configured.
  • NUM to be a phone number with as many digits as there are in your public/national dialing scheme.

We now suggest the following test calls to be performed:

test # from to expected results

1

EXT-A

EXT-B

Promptar Server activates the user template.

Desktop client gets an outwards call window displaying EXT-B’s user name in the top line, and the group name the second one.

Clicking the info button in the call window, EXT-B should be displayed.

2

EXT-C

EXT-A

Promptar Server activates the internal template.

Desktop client gets an inwards call window displaying "Extension EXT-C" in the first line and "Internal Call" in the second line.

Clicking the info button in the call window, EXT-C should be displayed.

3

NUM

EXT-A

Promptar Server activates no template.

Desktop client gets an inwards call with no data.

Only the call info is displayed: NUM should be displayed.

4.7. Real Test Calls

The previous steps confirmed Promptar Server operation and its integration with the Desktop Client. To complete the testing phase, all that is pending is testing the telephony integration.

For that, proceed to repeating the tests above, now effectively performing the calls with real phones and extensions; for convenience, and given that the Templates and Rules in place are symmetrical [10], you may want to reverse the from and to in some tests.

Additionally, for both internal and external calls, full telephony signaling should be tested, by manipulating calls with your regular handset. Depending on your use cases, you may want to test:

action expected result

Dial/receive a call

The call window status tab should be blue.

Answer a call

The call window status tab should become green.

Hold a call

The call window status tab should turn orange.

Resume a call

The call window status tab should turn back to green.

Hangup a call

The call window status tab should become gray.

Receive a call from EXT-B who transfers you a call from EXT-C.

The call window should initially display information about EXT-B.

After the transfer, the call window should display information EXT-C.

Lastly, perform Promptar Desktop Client call control tests. These will depend on your PBX system and the respective Promptar Telephony Connector since not all call control actions are available in all systems.

action expected result

Hangup a ringing call by clicking twice in the red hang-up button in the call window.

The call should be terminated.

Forward an incoming ringing call by clicking the forward button in the call window and entering a destination extension.

The call should be terminated on your handset and the destination extension should be ringing.

The calling party should be hearing the ringing indication or music on hold while the destination extension doesn’t answer.

Forward an active call by clicking the forward button in the call window and entering a destination extension.

The call should be terminated on your handset and the destination extension should be ringing.

The calling party should be hearing the ringing indication or music on hold while the destination extension doesn’t answer.

Initiate a call by entering EXT-C in the tools window default prompt.

Your extension should ring.

Once you answer it, you should get a call window, hear the remote ringing signal and EXT-C should be ringing.

When EXT-C answers, the call is fully established.

Answer an incoming call.

The call should become active and conversation can proceed.

Note: Few PBX systems/device combinations are known to support it.

Hold and resume a running call.

The other party should be put on hold and resumed back.

Note: Few PBX systems/device combinations are known to support it.



[6] If you’re running the Promptar TAPI Connector, corresponding to a process named prptTAPI, depending on its particular configuration, you may also have one prptTAPIAdapter process running.

[7] An easy to understand example would be the case where the logging configuration is not valid.

[8] To later access that window, just push your mouse cursor to the bottom right edge of your screen. In particular, this window will be used to exit the client: to do that, click twice on the power button on the bottom right side.

[9] Promptar Desktop Client releases prior to 1.1.0 do not have such capability. The file log.txt file will be found in one of the following directories: %APPDATA%\com.promptar.desktopClient\Local Store\ on Windows, or ~/Library/Application Support/com.promptar.desktopClient/Local Store/ on the Mac.

[10] They behave the same way, from the user’s standpoint, for both calls initiated or received by him/her.