09-07-2016 06:28 AM
Due to network issues one of our customers periodically receives "java.net.SocketTimeoutException":
35297140: Aug 22 10:20:56.636 EDT %JTAPI-CTIIMPL-7-UNK:(P1-10.41.8.11) ReceiveThread: caught java.net.SocketTimeoutException: Read timed out
35297141: Aug 22 10:20:56.636 EDT %JTAPI-MISC-7-UNK:(P1-10.41.8.11) ReceiveThread: exiting
35297142: Aug 22 10:20:56.636 EDT %JTAPI-MISC-7-UNK:(P1-10.41.8.11) ReceiveThread: notifying handler of demise
35297143: Aug 22 10:20:56.636 EDT %JTAPI-PROTOCOL-7-UNK:(P1-10.41.8.11) received Event: com.cisco.cti.protocol.ProviderOutOfServiceEvent {
eventSequence = 1734381
PROVIDER_OUT_OF_SERVICE_EVENT = 200
}
35297144: Aug 22 10:20:56.636 EDT %JTAPI-MISC-7-UNK:(P1-10.41.8.11) EventThread: queuing com.cisco.cti.protocol.ProviderOutOfServiceEvent
Question: Is it possible to set this timeout through a JTAPI call? JTAPI log is attached.
Thanks,
Derrick
09-07-2016 06:30 AM
Second question: Can the reason reason for this "read" timeout be determined? Or at least potential reasons.
09-07-2016 06:56 AM
I found the CiscoJtapiProperties.setProviderOpenRequestTimeout() but think that the provider was already opened.
Any ideas what this timeout was from and if we can set it?
Thanks.
Derrick
09-12-2016 10:12 AM
Any ideas? Thanks!
09-12-2016 10:36 AM
CiscoJtapiProperties.setProviderOpenRequestTimeout() needs to be done before getProvider() API call. Something like this:
JtapiPeer peer = JtapiPeerFactory.getJtapiPeer ( null );
if(peer instanceof CiscoJtapiPeer){
CiscoJtapiProperties jProps = ((CiscoJtapiPeer)peer).getJtapiProperties();
jProps.setTracePath("\\D:\\Traces\\WorkFlow");
jProps.setUseJavaConsoleTrace(false);
jProps.setProviderOpenRequestTimeout(REQUIREDSOCKETIMEOUT);
MyProviderObserver providerObserver = new MyProviderObserver ();
provider = peer.getProvider ( providerName );
}
09-12-2016 11:40 AM
Thanks Mohan. But in this case the provider has been open for a long time so this is not a timeout for open the provider. It specifically says that "Read timed out":
35297140: Aug 22 10:20:56.636 EDT %JTAPI-CTIIMPL-7-UNK:(P1-10.41.8.11) ReceiveThread: caught java.net.SocketTimeoutException: Read timed out
Is this definitely controlled by the same setProviderOpenRequestTimeout? If not what would this timeout be?
Thanks again!
Derrick
09-12-2016 01:32 PM
If this is after a successful socket connection, network issue may be at play. Wireshark traces may give more info.
09-13-2016 05:26 AM
Thanks Mohan. Just to confirm:
Correct?
Thanks again.
09-13-2016 06:28 AM
The exception seems to be coming from JVM and jtapi log doesn't show the operation that timed out though at this time, JTAPI is waiting a response for redirect request.
In this case JVM default timeout values should apply and JTAPI logs doesn't any internal timeouts firing. Looks like some timers at TCP level fired off.
Yes the openRequestTimeOut doesn't apply in this case.
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide