Social Media

BatchProcessor Connection to TNotifier failed

a) Issue Description:

Batch Processor logs show the following error

ERROR PaymentReminderFileProcessorLogic.Logic.FileProcessingState.DataProcessStep - Exception while Processing:System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: No connection could be made because the target machine actively refused it <ip>:<port>

b) Cause

BatchProcessor is not able to connect to TNotifier Service when processing a message to social media user

c) Troubleshooting

  1. Ensure TNotifier service is up and running. If not, start the TNotifier service and process the message again.
  2. Ensure the TNotifier API endpoint in Batch Processor config is mentioned correctly.
  3. Are Batch Processor and TNotifier running on different servers? if so, ensure port on which TNotifier is running is opened in its server firewall for inbound connections. Telnet to that server and port from different machine to verify.

MQListener connection to Message Queue failed: IBM MQ call failed with compcode '2' ('MQCC_FAILED') reason '2538' ('MQRC_HOST_NOT_AVAILABLE')

a) Issue Description

MQListener logs show following error

ERROR Could not refresh JMS Connection for destination '<Queue Name>' - retrying using FixedBackOff{interval=5000, currentAttempts=29, maxAttempts=unlimited}. Cause: JMSWMQ0018: Failed to connect to queue manager '<QM Name>' with connection mode 'Client' and host name 'QueueIP(QueuePort)'.; nested exception is com.ibm.mq.MQException: JMSCMQ0001: IBM MQ call failed with compcode '2' ('MQCC_FAILED') reason '2538' ('MQRC_HOST_NOT_AVAILABLE').

b) Cause

MQListener is unable to connect to the message queue to read messages.

c) Troubleshooting

  1. Ensure the Message queue endpoint in MQListener config is mentioned correctly. ibm.mq.connname should contain message queue's ip and port, as shown in below screenshot
  2. Are MQListener and Message queue running on different servers? if so, ensure port on which Message queue is running is opened in its server firewall for inbound connections. Telnet to that server and port from a different machine to verify.

Social Media Connector Tunnel Client: Callback connection failed

a) Issue Description:

Tunnel Client logs show the following error

2019-10-08 10:21:38 [error]: Error: Http request handle failed. 404 - "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n<meta charset=\"utf-8\">\n<title>Error</title>\n</head>\n<body>\n<pre>Cannot POST /Callback............

b) Cause

Tunnel Client is not able to connect to Callback.

c) Troubleshooting

    1. Ensure Callback service is up and running. If not, start the Callback service.
    2. Ensure the Callback server endpoint details provided in TunnelClient config file is accurate. It should contain the ip address and port on which Callback server is running.

Social Media Connector: Middleware Sending incoming message to Communication Server and TPPVA even though User is determined as Anonymous/Blacklisted/Unregistered

a) Issue Description:

Middleware logs show the user as anonymous/blacklisted/unregistered for an incoming message but still ends up sending messages to Communication Server to start a chat session.

2019-10-08 09:14:57 [info]: Send message [10702738921524] to middleware: Unregistered user <MID> trying to contact API
2019-10-08 09:14:57 [info]: New session for LINE:<Id>:<MID> is creating
2019-10-08 09:14:57 [info]: Session LINE:<Id>:<MID> is being routed to Tchat, saving app-name for handling the stickiness
2019-10-08 09:14:57 [info]: Push messages to inbound persistent message

b) Cause

Middleware is trying to establish a chatbot session with Comm server for anonymous/blacklisted/unregistered user message due to config enabled for these type of users

c) Troubleshooting

  1. In order for anonymous/blacklisted/unregistered user messages to be blocked at middleware and send them a standard message, the acl.enabled should be true, acl.BlackListEnabled and acl.AnonymousEnabled should be false in config as per below screenshot. Once these configs are set/changed, restart middleware service for these to take effect.

Social Media Connector ManagementAPI: Connection to Middleware Failed for Save User Access request

a) Issue Description:

ManagementAPI logs show the following error

Error: Save user access failedError: connect ECONNREFUSED 127.0.0.1:8085

b) Cause

ManagementAPI is not able to connect to Middleware when Whitelisting or blakclisting request for a user request is received

c) Troubleshooting

  1. Ensure Middleware service is up and running. If not, start the Middleware service.
  2. Ensure the Middleware endpoint provided in ManagementAPI config file is accurate. middleware should contain the ip address and port of Middleware service. Screenshot of config given below. Ensure the port number matches with websocket port number defined in TComm server config.
  3. Are ManagementAPI and Middleware running on different servers? if so, ensure port on which Middleware is running is opened in its server firewall for inbound connections. Telnet to that server and port from different machine to verify.

Social Media Connector Line: Message sent to Line bot isn't received at SMM Callback even though Webhook test from Line to SMM Callback was successfull

a) Issue Description:

Message sent to Line bot isn't received at SMM Callback even though Webhook test from Line to SMM Callback was successful

b) Cause

Use web-hooks option in Line bot channel is not enabled

c) Troubleshooting

  1. If Use web-hook option is not enabled in line bot channel, messages sent to Line bot wont be sent to SMM Callback even though web-hook connection is working. So, ensure to enable this option in line bot channel

Social Media Connector Line: Webhook Test Failed

a) Issue Description:

Webhook test from Line bot channel shows following error

An error occurred when sending the webhook.

OR

b) Cause

Line bot channel webhook connection to SMM Callback is failing

c) Troubleshooting

  1. Ensure Callback service is up and running.
  2. Ensure that the external_secureport configured in Callback config is opened in server firewall for external inbound connections.
  3.  
  4. Ensure that the domain and port mentioned in Line bot webhook url is correct and matches to the domain and port on which Callback is running.
  5. Ensure that the account id mentioned in webhook url at the end is being polled by the callback service. In callback service startup logs, the account id should be part of list of accounts logged for polling

Social Media Connector Middleware: Connection to Callback Failed

a) Issue Description:

Middleware logs show the following error

2019-09-27 16:02:23 [error]: Error: Sending agent message to callback is failed: Error: connect ECONNREFUSED 127.0.0.1:8093

b) Cause

Middleware is not able to connect to Callback Server when sending back response to Social Media User

c) Troubleshooting

  1. Ensure Callback service is up and running. If not, start the Callback service and verify if middleware is able to send response messages to Callback.
  2. Ensure the Callback proxy config details provided in Middleware config file is accurate. callback.proxy should contain the ip address and port of on which Callback server is running. Screenshot of config given below.
  3. Are Callback and Middleware running on different servers? if so, ensure port on which Callback is running is opened in its server firewall for inbound connections. Telnet to that server and port from different machine to verify.
  4. Restart Middleware service.

Social Media Connector Tunnel Client: Tunnel Server connection failed

a) Issue Description:

Tunnel Client logs show the following error

2019-09-27 16:34:04 [error]: Long Polling Error: fetching data failed - Error: connect ECONNREFUSED <ip>:<port>

b) Cause

Tunnel Client is not able to connect to Tunnel Server.

c) Troubleshooting

    1. Ensure Tunnel Server service is up and running. If not, start the Tunnel Server service and verify if Tunnel Client logs show "SSE Connected" confirming connection to Tunnel Server
    2. Ensure the Tunnel Server config details provided in Tunnel Client config file is accurate. sseServer config should contain the ip address and port on which Tunnel server is running. Screenshot of config given below.
    3. Are Tunnel Client and Tunnel Server running on different servers? if so, ensure port on which Tunnel Server is running is opened in its server firewall for inbound connections. Telnet to that server and port from different machine to verify.
    4. Restart Tunnel Client Service.
    5. If the connection succeeded after changes and restart, tunnel client logs will show following log entries

2019-09-27 16:35:30 [info]: SSE Connected
2019-09-27 16:35:30 [debug]: Message received : {"eventType":"CONNECTED","description":"subscribed for SSE stream"}
2019-09-27 16:35:30 [info]: HTTP connected : {"eventType":"CONNECTED","description":"subscribed for SSE stream"}

Social Media Connector Callback: Outgoing message error

a) Issue Description:

Callback logs show the following error

2019-09-27 16:54:11 [error]: Error: Line outgoing message error! Request failed with status code 400

b) Cause

Social Media Channel to which message was sent from Callback was rejected.

c) Troubleshooting

This mainly happens when message being sent to User on Social media channels via callback is rejected due to message format compliance.

For example, If a flex json message which contains images and text is being sent to Line from Callback, if Line API rejects the message due to the message format not matching with what Line expects, Line sends back this error which gets logged in callback. So, when designing a outgoing message, its important that its designed using specific social media channel designers so that they conform to expected messaging formats.

Social Media connector Middleware: Connect to TComm Server failed

a) Issue Description:

Middleware logs show the following error

2019-09-27 15:34:38 [crit]: Error: web socket connection failedconnect ECONNREFUSED 125.22.5.99:54678

b) Cause

Middleware is not able to connect to TComm Server

c) Troubleshooting

  1. Ensure TComm service is up and running. If not, start the TComm service.
  2. Ensure the TComm websocket config details provided in Middleware config file is accurate. Tetherfi.websocket.socketconn should contain the ip address and websocket port of TComm server. Screenshot of config given below. Ensure the port number matches with websocket port number defined in TComm server config.
  3. Restart Middleware service.

Social Media Connector Callback: Middleware Connection Failed

a) Issue Description:

Social Media Connector Callback logs shows the following errors on receiving a user message

2019-09-27 14:40:08 [error]: Error: Sending message failed.connect ECONNREFUSED 122.45.34.67:9685

b) Cause

Social Media Connector Callback is not able to connect to Middleware to transmit the message received

c) Troubleshooting

  1. Ensure Middleware service is up and running.
  2. Ensure Middleware endpoint mentioned in Callback config is correct. Screenshot of the config given below
  3.  
  4. Are Callback and Middleware running on different servers? if so, ensure port on which Middleware is running is opened in its server firewall for inbound connections. Telnet to that server and port from different machine to verify.
  5. Send User message from social media channel again. Verify fresh logs do not have the error.

Social Media Connector Middleware: Redis connection failed

a) Issue Description:

Middleware logs show the following error

2019-09-12 18:00:04 [crit]: Redis connection failed

b) Cause

Middleware is not able to connect to Redis

c) Troubleshooting

  1. Ensure Redis service is up and running. If not, start the redis service and verify Middleware logs shows "redis connection succeed".
  2. Ensure the redis config details provided in Middleware config file is accurate.
    • If you are using single Redis instance on the server, ensure the keys “ip”, “port”, “auth” are mentioned with proper details. ip corresponds to server ip on which redis is installed, port corresponds to port on which it is running and auth corresponds to password set for the redis instance. If no password set, then leave value as blank
    • If you are using redis sentinels, ensure the keys “auth”, “sentinelName”,”sentinelPassword” and “sentinels” are mentioned with proper details. auth corresponds to password set for the redis master and slave instances (if no password set, leave it blank), sentinelName corresponds to name given in redis sentinel config, sentinelPassword corresponds to password mentioned in redis sentinel config, sentinels corresponds to ip's and ports on which different sentinels are running.
  3. Restart Middleware service.

Social Media Connector Tunnel Server: Redis connection failed

a) Issue Description:

Tunnel Server logs show the following error

2019-09-12 18:00:04 [crit]: Redis connection failed

b) Cause

Tunnel Server is not able to connect to Redis

c) Troubleshooting

  1. Ensure Redis service is up and running. If not, start the redis service and verify callback logs shows "redis connection succeed".
  2. Ensure the redis config details provided in Tunnel Server config file is accurate.
    • If you are using single Redis instance on the server, ensure the keys “ip”, “port”, “auth” are mentioned with proper details. ip corresponds to server ip on which redis is installed, port corresponds to port on which it is running and auth corresponds to password set for the redis instance. If no password set, then leave value as blank
    • If you are using redis sentinels, ensure the keys “auth”, “sentinelName”,”sentinelPassword” and “sentinels” are mentioned with proper details. auth corresponds to password set for the redis master and slave instances (if no password set, leave it blank), sentinelName corresponds to name given in redis sentinel config, sentinelPassword corresponds to password mentioned in redis sentinel config, sentinels corresponds to ip's and ports on which different sentinels are running.
  3. Restart Tunnel Server service.

Social Media Connector Callback: Loading accounts failed error received in logs on service start

a) Issue Description:

Social Media Connector Callback logs show the following errors on startup

2019-09-12 16:23:47 [info]: Error: Loading accounts failed
2019-09-12 16:23:47 [crit]: Init Failed: Configs load failed Error: connect ECONNREFUSED 125.34.5.45:9423, server should reload

b) Cause

Social Media Connector Callback is not able to connect to Management API to get accounts

c) Troubleshooting

  1. Ensure Management API service is up and running.
  2. Are Callback and Management API running on different servers? if so, ensure port on which Management API is running is opened in its server firewall for inbound connections. Telnet to that server and port from different machine to verify.
  3. Restart callback service. Verify fresh logs do not have these errors and accounts have been successfully loaded.

 

Social Media Connector Callback: Redis connection failed

a) Issue Description:

Callback logs show the following error

2019-09-12 18:00:04 [crit]: Redis connection failed

b) Cause

Callback is not able to connect to Redis

c) Troubleshooting

  1. Ensure Redis service is up and running. If not, start the redis service and verify callback logs shows "redis connection succeed".
  2. Ensure the redis config details provided in callback config file is accurate.
    • If you are using single Redis instance on the server, ensure the keys “ip”, “port”, “auth” are mentioned with proper details. ip corresponds to server ip on which redis is installed, port corresponds to port on which it is running and auth corresponds to password set for the redis instance. If no password set, then leave value as blank
    • .
    • If you are using redis sentinels, ensure the keys “auth”, “sentinelName”,”sentinelPassword” and “sentinels” are mentioned with proper details. auth corresponds to password set for the redis master and slave instances (if no password set, leave it blank), sentinelName corresponds to name given in redis sentinel config, sentinelPassword corresponds to password mentioned in redis sentinel config, sentinels corresponds to ip's and ports on which different sentinels are running.
  3. Restart callback service.