We’ve been using the Ruby xmlrpc library to communicate with InfusionSoft for many years now without a problem. Recently, we started receiving sporadic connection errors when communicating with InfusionSoft. The specific error is OpenSSL::SSL::SSLError: SSL_connect SYSCALL returned=5 errno=0 state=SSLv3 read server session ticket A
.
Our code looks something like this:
xmlrpc = XMLRPC::Client.new3({
'host' => api.host, 'path' => '/api/xmlrpc',
'port' => api.port, 'use_ssl' => true
})
xmlrpc.call action, secret_key, *args
Ruby xmlrpc uses Net::HTTP to perform the request, and the error originates in the connect
method.
Since nothing has changed on our end in terms of how we connect to InfusionSoft (either in credentials, code, or environment) this seems to be an issue in the InfusionSoft side of things. I did try changing some of the Net::HTTP options as per this StackOverflow question but that just produced a different error.
The odd thing is that the problem is intermittent. It isn’t happening every day, although it has happened more frequently through February 2018. Most of the time our code works as intended and the requests are successfully made.
Can anyone at InfusionSoft confirm this problem? If so, is there a resolution being worked on?