I am using RabbitMQ in my app for chat module. It works fine with local server but somehow I am not able to connect to remote RabbitMQ server. I keep getting this error when I try to send a message.
Received connection: <RMQConnection: 0x6000022e2eb0> disconnectedWithError: Error Domain=GCDAsyncSocketErrorDomain Code=7 "Socket closed by remote peer" UserInfo={NSLocalizedDescription=Socket closed by remote peer}
My swift code looks like this:
func getRabbitMQUrl() -> String{
    var components = URLComponents()
    components.scheme = "amqps"
    components.host = "[broker-id].mq.[region].amazon.aws.com"
    components.user = "[username]"
    components.password = "[passowrd]"
    components.port = 5671
    let url = components.url?.absoluteString ?? "-"
    print("RabbitMQ URL", url)
    return url
}
    let uri = getRabbitMQUrl() 
    let conn = RMQConnection(uri: uri, delegate: RMQConnectionDelegateLogger())
    conn.start()
    let ch = conn.createChannel()
    let q = ch.queue(UUID().uuidString, options: .durable)
    let exc = ch.direct("my-exchange-name-here")
    q.bind(exc, routingKey: "my-routing-key")
    q.subscribe({(_ message: RMQMessage) -> Void in
        print("Message received")
    })
While using the local server, I set the uri "amqp://[username]:[password]@localhost:5672" and this works as expected.
PS: when I set this subscriber I do not get any error message regarding connection or anything. so I think it is connecting to the server without any issue.
But, when I send a message from the iOS app, the backend publish it and so the iOS app should receive it back. Exactly at this time, it gives me the above error!
EDIT: Though the C# backend is able to publish and subscribe messages successfully with RabbitMQ remote server. It is just the iOS client who fails!
Any help would be appreciated!