Ich habe alle gegebenen Anweisungen befolgt, kann aber immer noch keine Lösung finden.
Ich habe die Standard-Cocoa-Verbindungsfunktion verwendet.
Code: Select all
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()
Code: Select all
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.
}
Code: Select all
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: und 2
mqttDidDisconnect: Socket durch Remote-Peer geschlossen
Jede Hilfe wäre sehr hilfreich geschätzt. Danke