Какао MQTT – сокет закрыт удаленным узломIOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Anonymous
 Какао MQTT – сокет закрыт удаленным узлом

Сообщение Anonymous »

У меня возникают серьезные проблемы при попытке подключиться к серверу с помощью CocoaMQTT. Я использую сервер Ubuntu с брокером Mosquitto.

Я выполнил все приведенные инструкции, но до сих пор не могу найти решение.

Я использовал стандартную функцию подключения Cocoa.

Код: Выделить всё

private func createMQTTConnection() {
let clientID = "CocoaMQTT-" + String(ProcessInfo().processIdentifier)
mqtt = CocoaMQTT(clientID: clientID, host: "xxx.xx.xx.x", port: 1883)
mqtt!.username = "root"
mqtt!.password = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
//mqtt.willMessage = CocoaMQTTWill(topic: "pi/pir", message: "dieout")
mqtt!.keepAlive = 60
mqtt!.delegate = self
mqtt!.allowUntrustCACertificate = true
mqtt!.connect()
Этот код затем вызывается в viewDidLoad

Код: Выделить всё

verride func viewDidLoad() {

super.viewDidLoad()
//establishes a connection
createMQTTConnection()
// creates a message
mqtt!.publish("pi/pir", withString: "Iphone Connected")
// Do any additional setup after loading the view.
}
У меня есть все остальные стандартные элементы кокосаMQTT

Код: Выделить всё

extension MQTT: CocoaMQTTDelegate {

func mqttDidPing(_ mqtt: CocoaMQTT) {
print("mqttDidPing")
}

func mqttDidReceivePong(_ mqtt: CocoaMQTT) {
print("mqttDidReceivePong")

}

func mqtt(_ mqtt: CocoaMQTT, didPublishAck id: UInt16) {
print("didPublishAck : \(id)")
}

func mqtt(_ mqtt: CocoaMQTT, didPublishComplete id: UInt16) {
print("didPublishComplete: \(id)")
}

func mqtt(_ mqtt: CocoaMQTT, didSubscribeTopic topic: String) {
print("didSubscribeTopic: \(topic)")
}

func mqtt(_ mqtt: CocoaMQTT, didUnsubscribeTopic topic: String) {
print("didUnsubscribeTopic: \(topic)")
}

func mqttDidDisconnect(_ mqtt: CocoaMQTT, withError err: Error?) {
print("mqttDidDisconnect: \(err?.localizedDescription ?? "")")
}

func mqtt(_ mqtt: CocoaMQTT, didConnectAck ack: CocoaMQTTConnAck) {
print("didConnectAck: \(ack)")
}

func mqtt(_ mqtt: CocoaMQTT, didPublishMessage message: CocoaMQTTMessage, id: UInt16) {
print("didPublishMessage: \(message) and \(id)")
}

func mqtt(_ mqtt: CocoaMQTT, didReceiveMessage message: CocoaMQTTMessage, id: UInt16) {
print("didReceiveMessage: \(message) and \(id)")
}

func mqtt(_ mqtt: CocoaMQTT, didReceive trust: SecTrust, completionHandler: @escaping (Bool) -> Void) {
print("didReceive trust")
}

}
После этого я получаю следующую ошибку;

didPublishMessage: и 2
mqttDidDisconnect: сокет закрыт удаленным узлом

Любая помощь будет очень полезна оценил. Спасибо

Подробнее здесь: https://stackoverflow.com/questions/495 ... emote-peer
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «IOS»