SMS API

getAgent failed:1 00000000 dbd8 "469" Extension invalid; please check dialplan

Issue Description:

The issue is observed in the TSMSAPI log file when a request made to get agent details.

Resolution:

As the error message from AES web service SMS API clearly says, the agent id record is not in the CM dial plan.

This implies the agentId “469” parameter that is been passed with the GetAgent method call is invalid.

To verify this, login to CM using putty. Run command “display dialplan analysis”, below screen will be shown.

CM Screen showing dial plan analysis

Check if the dial-plan is correct. If we want to take this as an example,

  • requested agentId is 469
  • But in the CM dialplan we don’t see any dialplan as such. i.e. number starting with 4 and having total length 3. According to the above CM screen, Number starting with 4 must be of total length 5, else it will be considered as invalid.

To solve this issue, there are only two approaches, they are,

  • Change or Add a new dialplan.
  • Pass correct agentId to SMSAPI application.

Exception in ListBcmsAgentDetails:System.Net.WebException: The underlying connection was closed: An unexpected error occurred on a receive. ---> System.ComponentModel.Win32Exception: The client and server cannot communicate, because they do not possess a common algorithm

Issue Description:

This error will be seen if the TSMSAPI application and AES SMS API website are trying to communicate with different protocols.

Resolution:

This occurs when TSMAPI is not configured properly.

  • Open TSMSAPI configuration file and look for the below configuration key,

TSMSAPI config file

  • As shown in the above screenshot, highlighted keys are to be configured as shown.
  • When this issue occurs make sure that SslVersion is configured with value TLS and SoapVersion must be configured with value Soap12. This must resolve the issue.

The request was aborted: Could not create SSL/TLS secure channel.

Issue Description: 

The issue occurs due to the transport layer level configuration mismatch between two machines (TSMSAPI hosted machine and AES hosted machine).

Resolution:

The first thing to check is what transport layer security system is enabled in hosting machine.

If not sure how to check, please follow instructions as below,

IIS crypto dashboard page

  • Enable or disable protocols by checking/unchecking the respective checkboxes. Then click on Apply. A restart of the machine is required in order to reflect the changes made to the system. [Note: Not adviced to perform on production systems]

The machine hosting TSMSAPI application must be at-least configured for ssl3 or Tls.

Avaya AES web services support only TSL1.0 or below.  So, please make sure you have not configured either TLS1.1 or TLS1.2 as a value for configuration key “Sslversion”  in the TSMSAPI applications configuration file (key and value shown below). Allowed values are Tls or Ssl3.

    <!--Tls,Ssl3-->
    <add key="SslVersion" value="Tls"/>

 

This must resolve the issue.

The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel. The remote certificate is invalid according to the validation procedure.

This issue is possible to occur when path to Avaya's SMS API web service certification file path is been configured incorrectly.

Follow below two steps to solve this issue.

  • Open SMS API application configuration file and verify the path configured for the config key “CertificateFile” is a valid path.
    <add key="CertificateFile" value="D:\Products\MyBucket\TSMSAPI\smsxml.cer"/>
  • Navigate to the above-configured path and confirm if the certificate file is present. If not present request for the valid file from Avaya.

 

Error: Value cannot be null.\r\n Parameter name: uriString

Issue Description: Error message from SMS API while making API calls.

Resolution: TSMSAPI will check for secondary AES URL configured when the primary is not reachable, the application will log this error message when the AES SMS API secondary URL is not configured in the applications config file or if it is configured incorrectly.

Please check if the below config key is present in the TSMSAPI applications configuration file if not present go ahead and add this config key.

AES SMS API webservice secondary URL config key

If it is already configured, verify whether the configured AES SMSAPI service URL is up and running. To verify, copy the URL and paste it in browser address, on run below screen will appear which confirms service is running and reachable.

Browser display on running SMSAPI URL

 

The above configuration must resolve this issue.

 

 

Fault: Connection Failed: All available licenses have been consumed!

Troubleshooting Steps:

  • If Communication Manager was not licensed, when SMS API tries to connect it will fail and each failure may consume a license for about 30 minutes hold period.
  • Try telnet to CM machine and check if you can see license related message , Try reloading the license file.
    • telnet <CM IP> <Port>
  • If above step fails to give license status, try logging into CM web.
    • To login to CM web, just type CM ipaddress in the browser and login using CM username and password.
    • After login, click on Licensing under Administration tab and then click on License status.
  • Wait for max 30min hold time to release license or last connection sessions.

SoapHeaderException: Connection Failed, CM Server closed connection.

Issue Description: General error message from Avaya’s SMSAPI while querying for certain requests.

Troubleshooting Steps: This error occurs when AES is down or there are no more connections left in CM to serve the new request from SMSAPI. Follow below guidelines as troubleshooting steps,

  1. Check if AES is up and running and is reachable from SMSAPI hosting application. To check reach-ability,
    • Open windows command prompt and execute PING command. “ping <ipaddress>”
    • Try TELNET to CM command “telnet <cmipaddress> port”. Port will be usually 5022.
  2. Check if CM has valid license or is expired. Usually telnet output will show message if license is invalid.
  3. Check how many connections can CM take at a time.
    • Use tool putty to check number of current logins to CM.
    • CM Command to do same is “status logins”.
  4. If max number of connections are utilised, then either wait for 30 minutes to free up the connections or request users to logout from CM. We can also do force logout using CM command “Reset login-Id (no)”.
  5. If still not able to connect, please check AES version, recommended AES version to use is 7.1.3 since in older versions of AES, session release was not handled efficiently.

MySubmitRequest:System.Net.WebException Unable to connect to remote server

Issue Description:

This particular error occurs only when SMSAPI's  connection type is configured to "CM".

Troubleshooting steps:

  • SMSAPI web-service from Avaya must be up and running. Try below method to do same,
    • Run provided SMSAPI service URL in browser and observe if output is similar to screenshot shown below,
  • Both AES and CM must be up and running. Server hosting SMSAPI service should be able to reach CM and AES server.
    • To verify, Open windows command prompt and execute PING command to AES and CM machine.
      • ping <server-ip-address>

failed:1 00000000 5bc5 "list" is an invalid entry; please press HELP:

Issue Description:

This particular issue occurs when SMSAPI application tries to query a command called list.

example: list skill, list agents. Please note: error with code starting with "failed: xxx" will be generally from Avaya's SMSAPI web-service                      standard error code with message.

Resolution:

As error message implies, this issue clearly says that the user account used in SMSAPI doesn't have access to list command.

As a resolution step, Login to CM in browser and check type of user account that is being used in SMSAPI application.

If user type is "Unprivileged Administrator" then we will get this error. To eliminate this , we must use "Privileged Administrator" .

Below are some screenshots for better understanding.