我目前在 Ruby 的服务器上运行 Apple 推送通知。我想在 Erlang 中使用一个,因为我想使用一个主管来监视它。有没有人有任何可以帮助我的代码?
这是我的 Ruby 代码。我不喜欢这个当前实现的一件事是它似乎没有保持连接 - 它每天断开 2-3 次,并且在我重新连接后似乎第一次推送不会通过:
context = OpenSSL::SSL::SSLContext.new
context.cert = OpenSSL::X509::Certificate.new(File.read(cert))
context.key = OpenSSL::PKey::RSA.new(File.read(cert))
def connect_sockets(server, context)
sock = TCPSocket.new(server, 2195)
ssl = OpenSSL::SSL::SSLSocket.new(sock,context)
ssl.connect
return sock, ssl
end
sock, ssl = connect_sockets(server, context) # this is called to initially connect and also reconnect whenever disconnected.
如果 Erlang Push 不可行,那么我不介意坚持使用我的 Ruby,只要我可以保持我的连接活跃,并且也许通过 Erlang 来监督它。有谁知道这是否可能?