2016-08-19 11 views
1
client = MosquittoClient(clientId: "client1") 
client?.delegate = self 
client?.port = 1883 
client?.host = "someIPAddress" 
client!.cleanSession = false 
client?.connect() 

libmosquittoは迅速なプロジェクトにオーバーブリッジされObjective Cのライブラリである設定することができませんでしまだfalseに設定しました。ですから、cleanSessionをfalseに設定した後でも、依然として永続的なサブスクリプションを設定できず、オフラインのときにメッセージを受け取ることができません。 cleanSession = falseを使用すると、再接続した後、それはQOSが必要になりますメッセージを受信したい場合は、メッセージのデフォルトのQoSの..

スウィフトMQTTは、永続サブスクリプション

をあなたの仕事をして加入しています設定

+0

を公開しながら、真=保持使う新しいクライアントによって受信されることを望む場合はNdはまた..接続するための同じクライアントIDを使用して1または2

を送りますどのようなエラーがありましたか? – pableiros

+0

エラーはありません。しかし、オフラインのときにクライアントにメッセージをプッシュすると、そのメッセージが再接続されるとクライアントはそのメッセージを受け取ることが予想されます。しかし、そうではありません。 @pableiros –

+0

どのブローカーを使用していますか? – hardillb

答えて

0

は0どの保証するものではありませんですあなたは2件の観光名所する必要があるというメッセージオフラインクライアントに配信されます。..

:パブリッシュするときは、トピックを購読すると
1. QOS 1または2
2とそれをサブスクライブあなたがしたいメッセージオフラインクライアントに配信QoSのあなたは、メッセージが、メッセージ

+0

QOS 1のトピックにすでに加入しており、QOS 1のオフライン・クライアントにも公開されています。ただし、クライアントはオフラインのときにメッセージを受信できません。 –

+0

ブローカへの接続中に同じクライアントIDを使用していますか? –

+0

うん。まったく同じ –

関連する問題