diff --git a/CHANGELOG.md b/CHANGELOG.md index 266085c3..b763434f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,7 +1,7 @@ MQTT-Client-Framework iOS Release Notes ======================================= -## MQTT-Client-Framework 0.3.1 +## MQTT-Client-Framework 0.3.1/2 >Release date: 2015-10-08 [NEW] comment out tvOS until Cocoapods supports it diff --git a/MQTTClient.podspec b/MQTTClient.podspec index 89e5c350..635e3a50 100644 --- a/MQTTClient.podspec +++ b/MQTTClient.podspec @@ -1,11 +1,11 @@ Pod::Spec.new do |s| s.name = "MQTTClient" - s.version = "0.3.1" + s.version = "0.3.2" s.summary = "iOS, OSX and tvOS native ObjectiveC MQTT Framework" s.homepage = "https://github.com/ckrey/MQTT-Client-Framework" s.license = { :type => "MIT", :file => "LICENSE" } s.author = { "Christoph Krey" => "krey.christoph@gmail.com" } - s.source = { :git => "https://github.com/ckrey/MQTT-Client-Framework.git", :tag => "0.3.1" } + s.source = { :git => "https://github.com/ckrey/MQTT-Client-Framework.git", :tag => "0.3.2" } s.source_files = "MQTTClient/MQTTClient", "MQTTClient/MQTTClient/**/*.{h,m}" s.requires_arc = true diff --git a/MQTTClient/MQTTClientTests/MQTTClientTests.m b/MQTTClient/MQTTClientTests/MQTTClientTests.m index 066751aa..40b99319 100644 --- a/MQTTClient/MQTTClientTests/MQTTClientTests.m +++ b/MQTTClient/MQTTClientTests/MQTTClientTests.m @@ -684,12 +684,13 @@ - (void)test_throttling_incoming_q0 { withObject:nil afterDelay:PROCESSING_TIMEOUT]; - while ((self.processed != self.received || self.received != PROCESSING_NUMBER) && !self.timeout) { + while ((self.processed != self.received || self.received == 0) && !self.timeout) { NSLog(@"waiting for processing"); [[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:1]]; } XCTAssert(!self.timeout, @"timeout"); + [self.processingSimulationTimer invalidate]; [self shutdown:parameters]; } @@ -744,7 +745,8 @@ - (void)test_throttling_incoming_q1 { } XCTAssert(!self.timeout, @"timeout"); - + [self.processingSimulationTimer invalidate]; + [self shutdown:parameters]; } } @@ -798,7 +800,8 @@ - (void)test_throttling_incoming_q2 { } XCTAssert(!self.timeout, @"timeout"); - + [self.processingSimulationTimer invalidate]; + [self shutdown:parameters]; } } diff --git a/MQTTClient/dist/MQTTClient.framework/Versions/A/Headers/MQTTSession.h b/MQTTClient/dist/MQTTClient.framework/Versions/A/Headers/MQTTSession.h index bad97369..21e08513 100644 --- a/MQTTClient/dist/MQTTClient.framework/Versions/A/Headers/MQTTSession.h +++ b/MQTTClient/dist/MQTTClient.framework/Versions/A/Headers/MQTTSession.h @@ -72,6 +72,22 @@ typedef NS_ENUM(NSInteger, MQTTSessionEvent) { retained:(BOOL)retained mid:(unsigned int)mid; +/** gets called when a new message was received + @param session the MQTTSession reporting the new message + @param data the data received, might be zero length + @param topic the topic the data was published to + @param qos the qos of the message + @param retained indicates if the data retransmitted from server storage + @param mid the Message Identifier of the message if qos = 1 or 2, zero otherwise + @return true if the message was or will be processed, false if the message shall not be ack-ed + */ +- (BOOL)newMessageWithFeedback:(MQTTSession *)session + data:(NSData *)data + onTopic:(NSString *)topic + qos:(MQTTQosLevel)qos + retained:(BOOL)retained + mid:(unsigned int)mid; + /** for mqttio-OBJC backward compatibility @param session see newMessage for description @param data see newMessage for description diff --git a/MQTTClient/dist/MQTTClient.framework/Versions/A/MQTTClient b/MQTTClient/dist/MQTTClient.framework/Versions/A/MQTTClient index f2c211ad..e582d04b 100644 Binary files a/MQTTClient/dist/MQTTClient.framework/Versions/A/MQTTClient and b/MQTTClient/dist/MQTTClient.framework/Versions/A/MQTTClient differ diff --git a/MQTTClient/dist/documentation/html/Nodes.xml b/MQTTClient/dist/documentation/html/Nodes.xml index 02026095..7eb59163 100644 --- a/MQTTClient/dist/documentation/html/Nodes.xml +++ b/MQTTClient/dist/documentation/html/Nodes.xml @@ -378,6 +378,11 @@ protocol_m_q_t_t_session_delegate-p.html a85ecb50aa7dfb9865ec6acfd1192b92c + + newMessageWithFeedback:data:onTopic:qos:retained:mid: + protocol_m_q_t_t_session_delegate-p.html + a5e103157ac155294481ebca786bfb5fd + protocolError:error: protocol_m_q_t_t_session_delegate-p.html diff --git a/MQTTClient/dist/documentation/html/Tokens.xml b/MQTTClient/dist/documentation/html/Tokens.xml index dcc3c2ad..69da234c 100644 --- a/MQTTClient/dist/documentation/html/Tokens.xml +++ b/MQTTClient/dist/documentation/html/Tokens.xml @@ -681,6 +681,17 @@ a85ecb50aa7dfb9865ec6acfd1192b92c MQTTSession.h + + + newMessageWithFeedback:data:onTopic:qos:retained:mid: + occ + intfm + MQTTSessionDelegate-p + + protocol_m_q_t_t_session_delegate-p.html + a5e103157ac155294481ebca786bfb5fd + MQTTSession.h + session:newMessage:onTopic: @@ -966,6 +977,17 @@ a85ecb50aa7dfb9865ec6acfd1192b92c MQTTSession.h + + + newMessageWithFeedback:data:onTopic:qos:retained:mid: + occ + intfm + MQTTSessionDelegate-p + + protocol_m_q_t_t_session_delegate-p.html + a5e103157ac155294481ebca786bfb5fd + MQTTSession.h + session:newMessage:onTopic: diff --git a/MQTTClient/dist/documentation/html/_m_q_t_t_session_8h_source.html b/MQTTClient/dist/documentation/html/_m_q_t_t_session_8h_source.html index 04fdae01..a2498ed7 100644 --- a/MQTTClient/dist/documentation/html/_m_q_t_t_session_8h_source.html +++ b/MQTTClient/dist/documentation/html/_m_q_t_t_session_8h_source.html @@ -126,279 +126,286 @@
72  retained:(BOOL)retained
73  mid:(unsigned int)mid;
74 
-
80 - (void)session:(MQTTSession*)session newMessage:(NSData*)data onTopic:(NSString*)topic;
-
81 
-
87 - (void)handleEvent:(MQTTSession *)session event:(MQTTSessionEvent)eventCode error:(NSError *)error;
-
88 
-
93 - (void)session:(MQTTSession*)session handleEvent:(MQTTSessionEvent)eventCode;
-
94 
-
99 - (void)connected:(MQTTSession *)session;
-
100 
-
106 - (void)connected:(MQTTSession *)session sessionPresent:(BOOL)sessionPresent;
-
107 
-
112 - (void)connectionRefused:(MQTTSession *)session error:(NSError *)error;
-
113 
-
118 - (void)connectionClosed:(MQTTSession *)session;
-
119 
-
124 - (void)connectionError:(MQTTSession *)session error:(NSError *)error;
-
125 
-
130 - (void)protocolError:(MQTTSession *)session error:(NSError *)error;
-
131 
-
137 - (void)messageDelivered:(MQTTSession *)session msgID:(UInt16)msgID;
-
138 
-
145 - (void)subAckReceived:(MQTTSession *)session msgID:(UInt16)msgID grantedQoss:(NSArray *)qoss;
-
146 
-
151 - (void)unsubAckReceived:(MQTTSession *)session msgID:(UInt16)msgID;
-
152 
-
163 - (void)sending:(MQTTSession *)session type:(int)type qos:(MQTTQosLevel)qos retained:(BOOL)retained duped:(BOOL)duped mid:(UInt16)mid data:(NSData *)data;
-
164 
-
175 - (void)received:(MQTTSession *)session type:(int)type qos:(MQTTQosLevel)qos retained:(BOOL)retained duped:(BOOL)duped mid:(UInt16)mid data:(NSData *)data;
-
176 
-
188 - (BOOL)ignoreReceived:(MQTTSession *)session type:(int)type qos:(MQTTQosLevel)qos retained:(BOOL)retained duped:(BOOL)duped mid:(UInt16)mid data:(NSData *)data;
-
189 
-
197 - (void)buffered:(MQTTSession *)session
-
198  queued:(NSUInteger)queued
-
199  flowingIn:(NSUInteger)flowingIn
-
200  flowingOut:(NSUInteger)flowingOut;
-
201 
-
208 - (void)buffered:(MQTTSession *)session
-
209  flowingIn:(NSUInteger)flowingIn
-
210  flowingOut:(NSUInteger)flowingOut;
-
211 
-
212 @end
-
213 
-
217 @interface MQTTSession : NSObject
-
218 
-
248 @property (weak, nonatomic) id<MQTTSessionDelegate> delegate;
-
249 
-
265 @property (strong, nonatomic) MQTTPersistence *persistence;
-
266 
-
268 @property (strong) void (^connectionHandler)(MQTTSessionEvent event);
-
270 @property (strong) void (^messageHandler)(NSData* message, NSString* topic);
-
271 
-
274 @property (nonatomic, readonly) MQTTSessionStatus status;
-
275 
-
278 @property (strong, nonatomic) NSString *clientId;
-
281 @property (strong, nonatomic) NSString *userName;
-
284 @property (strong, nonatomic) NSString *password;
-
287 @property (nonatomic) UInt16 keepAliveInterval;
-
290 @property (nonatomic) BOOL cleanSessionFlag;
-
293 @property (nonatomic) BOOL willFlag;
-
296 @property (strong, nonatomic) NSString *willTopic;
-
299 @property (strong, nonatomic) NSData *willMsg;
-
302 @property (nonatomic) MQTTQosLevel willQoS;
-
305 @property (nonatomic) BOOL willRetainFlag;
-
308 @property (nonatomic) UInt8 protocolLevel;
-
311 @property (strong, nonatomic) NSRunLoop *runLoop;
-
314 @property (strong, nonatomic) NSString *runLoopMode;
-
315 
-
316 // ssl security policy
-
327 @property (strong, nonatomic) MQTTSSLSecurityPolicy *securityPolicy;
-
328 
-
331 @property (strong, nonatomic) NSArray *certificates;
-
332 
-
336 @property (strong, nonatomic) MQTTMessage *connectMessage;
-
337 
-
346 - (MQTTSession *)init;
-
347 
-
365  - (MQTTSession *)initWithClientId:(NSString *)clientId
-
366  userName:(NSString *)userName
-
367  password:(NSString *)password
-
368  keepAlive:(UInt16)keepAliveInterval
-
369  cleanSession:(BOOL)cleanSessionFlag
-
370  will:(BOOL)willFlag
-
371  willTopic:(NSString *)willTopic
-
372  willMsg:(NSData *)willMsg
-
373  willQoS:(MQTTQosLevel)willQoS
-
374  willRetainFlag:(BOOL)willRetainFlag
-
375  protocolLevel:(UInt8)protocolLevel
-
376  runLoop:(NSRunLoop *)runLoop
-
377  forMode:(NSString *)runLoopMode;
-
378 
-
397 - (MQTTSession *)initWithClientId:(NSString *)clientId
-
398  userName:(NSString *)userName
-
399  password:(NSString *)password
-
400  keepAlive:(UInt16)keepAliveInterval
-
401  cleanSession:(BOOL)cleanSessionFlag
-
402  will:(BOOL)willFlag
-
403  willTopic:(NSString *)willTopic
-
404  willMsg:(NSData *)willMsg
-
405  willQoS:(MQTTQosLevel)willQoS
-
406  willRetainFlag:(BOOL)willRetainFlag
-
407  protocolLevel:(UInt8)protocolLevel
-
408  runLoop:(NSRunLoop *)runLoop
-
409  forMode:(NSString *)runLoopMode
-
410  securityPolicy:(MQTTSSLSecurityPolicy *) securityPolicy;
-
411 
-
477 - (MQTTSession *)initWithClientId:(NSString *)clientId
-
478  userName:(NSString *)userName
-
479  password:(NSString *)password
-
480  keepAlive:(UInt16)keepAliveInterval
-
481  cleanSession:(BOOL)cleanSessionFlag
-
482  will:(BOOL)willFlag
-
483  willTopic:(NSString *)willTopic
-
484  willMsg:(NSData *)willMsg
-
485  willQoS:(MQTTQosLevel)willQoS
-
486  willRetainFlag:(BOOL)willRetainFlag
-
487  protocolLevel:(UInt8)protocolLevel
-
488  runLoop:(NSRunLoop *)runLoop
-
489  forMode:(NSString *)runLoopMode
-
490  securityPolicy:(MQTTSSLSecurityPolicy *) securityPolicy
-
491  certificates:(NSArray *)certificates;
-
492 
-
499 - (id)initWithClientId:(NSString *)theClientId;
-
500 
-
508 - (id)initWithClientId:(NSString*)theClientId
-
509  runLoop:(NSRunLoop*)theRunLoop
-
510  forMode:(NSString*)theRunLoopMode;
-
511 
-
519 - (id)initWithClientId:(NSString*)theClientId
-
520  userName:(NSString*)theUsername
-
521  password:(NSString*)thePassword;
-
522 
-
532 - (id)initWithClientId:(NSString*)theClientId
-
533  userName:(NSString*)theUserName
-
534  password:(NSString*)thePassword
-
535  runLoop:(NSRunLoop*)theRunLoop
-
536  forMode:(NSString*)theRunLoopMode;
-
537 
-
547 - (id)initWithClientId:(NSString*)theClientId
-
548  userName:(NSString*)theUsername
-
549  password:(NSString*)thePassword
-
550  keepAlive:(UInt16)theKeepAliveInterval
-
551  cleanSession:(BOOL)cleanSessionFlag;
-
552 
-
564 - (id)initWithClientId:(NSString*)theClientId
-
565  userName:(NSString*)theUsername
-
566  password:(NSString*)thePassword
-
567  keepAlive:(UInt16)theKeepAlive
-
568  cleanSession:(BOOL)theCleanSessionFlag
-
569  runLoop:(NSRunLoop*)theRunLoop
-
570  forMode:(NSString*)theMode;
-
571 
-
585 - (id)initWithClientId:(NSString*)theClientId
-
586  userName:(NSString*)theUserName
-
587  password:(NSString*)thePassword
-
588  keepAlive:(UInt16)theKeepAliveInterval
-
589  cleanSession:(BOOL)theCleanSessionFlag
-
590  willTopic:(NSString*)willTopic
-
591  willMsg:(NSData*)willMsg
-
592  willQoS:(UInt8)willQoS
-
593  willRetainFlag:(BOOL)willRetainFlag;
-
594 
-
610 - (id)initWithClientId:(NSString*)theClientId
-
611  userName:(NSString*)theUserName
-
612  password:(NSString*)thePassword
-
613  keepAlive:(UInt16)theKeepAliveInterval
-
614  cleanSession:(BOOL)theCleanSessionFlag
-
615  willTopic:(NSString*)willTopic
-
616  willMsg:(NSData*)willMsg
-
617  willQoS:(UInt8)willQoS
-
618  willRetainFlag:(BOOL)willRetainFlag
-
619  runLoop:(NSRunLoop*)theRunLoop
-
620  forMode:(NSString*)theRunLoopMode;
-
621 
-
631 - (id)initWithClientId:(NSString*)theClientId
-
632  keepAlive:(UInt16)theKeepAliveInterval
-
633  connectMessage:(MQTTMessage*)theConnectMessage
-
634  runLoop:(NSRunLoop*)theRunLoop
-
635  forMode:(NSString*)theRunLoopMode;
-
636 
-
654 - (void)connectToHost:(NSString *)host port:(UInt32)port usingSSL:(BOOL)usingSSL;
-
655 
-
660 - (void)connectToHost:(NSString*)ip port:(UInt32)port;
-
661 
-
668 - (void)connectToHost:(NSString*)ip
-
669  port:(UInt32)port
-
670 withConnectionHandler:(void (^)(MQTTSessionEvent event))connHandler
-
671  messageHandler:(void (^)(NSData* data, NSString* topic))messHandler;
-
672 
-
680 - (void)connectToHost:(NSString*)ip
-
681  port:(UInt32)port
-
682  usingSSL:(BOOL)usingSSL
-
683 withConnectionHandler:(void (^)(MQTTSessionEvent event))connHandler
-
684  messageHandler:(void (^)(NSData* data, NSString* topic))messHandler;
-
685 
-
686 
-
704 - (BOOL)connectAndWaitToHost:(NSString *)host port:(UInt32)port usingSSL:(BOOL)usingSSL;
-
705 
-
730 - (UInt16)subscribeToTopic:(NSString *)topic atLevel:(MQTTQosLevel)qosLevel;
-
731 
-
735 - (void)subscribeTopic:(NSString*)theTopic;
-
736 
-
759 - (BOOL)subscribeAndWaitToTopic:(NSString *)topic atLevel:(MQTTQosLevel)qosLevel;
-
760 
-
761 
-
787 - (UInt16)subscribeToTopics:(NSDictionary *)topics;
-
811 - (BOOL)subscribeAndWaitToTopics:(NSDictionary *)topics;
-
812 
-
833 - (UInt16)unsubscribeTopic:(NSString *)topic;
-
834 
-
853 - (BOOL)unsubscribeAndWaitTopic:(NSString *)topic;
-
854 
-
880 - (UInt16)unsubscribeTopics:(NSArray *)topics;
-
881 
-
905 - (BOOL)unsubscribeAndWaitTopics:(NSArray *)topics;
-
906 
-
907 
-
934 - (UInt16)publishData:(NSData *)data onTopic:(NSString *)topic retain:(BOOL)retainFlag qos:(MQTTQosLevel)qos;
-
935 
-
940 - (void)publishData:(NSData*)theData onTopic:(NSString*)theTopic;
-
941 
-
946 - (void)publishDataAtLeastOnce:(NSData*)theData onTopic:(NSString*)theTopic;
-
947 
-
953 - (void)publishDataAtLeastOnce:(NSData*)theData onTopic:(NSString*)theTopic retain:(BOOL)retainFlag;
-
954 
-
959 - (void)publishDataAtMostOnce:(NSData*)theData onTopic:(NSString*)theTopic;
-
960 
-
966 - (void)publishDataAtMostOnce:(NSData*)theData onTopic:(NSString*)theTopic retain:(BOOL)retainFlag;
-
967 
-
972 - (void)publishDataExactlyOnce:(NSData*)theData onTopic:(NSString*)theTopic;
-
973 
-
979 - (void)publishDataExactlyOnce:(NSData*)theData onTopic:(NSString*)theTopic retain:(BOOL)retainFlag;
-
980 
-
985 - (void)publishJson:(id)payload onTopic:(NSString*)theTopic;
-
986 
-
1011 - (BOOL)publishAndWaitData:(NSData *)data onTopic:(NSString *)topic retain:(BOOL)retainFlag qos:(MQTTQosLevel)qos;
-
1012 
-
1031 - (void)close;
-
1032 
-
1051 - (void)closeAndWait;
-
1052 
-
1088 + (NSArray *)clientCertsFromP12:(NSString *)path passphrase:(NSString *)passphrase;
-
1089 
-
1090 
-
1091 @end
-
MQTTSessionStatus status
Definition: MQTTSession.h:274
-
NSData * willMsg
Definition: MQTTSession.h:299
+
84 - (BOOL)newMessageWithFeedback:(MQTTSession *)session
+
85  data:(NSData *)data
+
86  onTopic:(NSString *)topic
+
87  qos:(MQTTQosLevel)qos
+
88  retained:(BOOL)retained
+
89  mid:(unsigned int)mid;
+
90 
+
96 - (void)session:(MQTTSession*)session newMessage:(NSData*)data onTopic:(NSString*)topic;
+
97 
+
103 - (void)handleEvent:(MQTTSession *)session event:(MQTTSessionEvent)eventCode error:(NSError *)error;
+
104 
+
109 - (void)session:(MQTTSession*)session handleEvent:(MQTTSessionEvent)eventCode;
+
110 
+
115 - (void)connected:(MQTTSession *)session;
+
116 
+
122 - (void)connected:(MQTTSession *)session sessionPresent:(BOOL)sessionPresent;
+
123 
+
128 - (void)connectionRefused:(MQTTSession *)session error:(NSError *)error;
+
129 
+
134 - (void)connectionClosed:(MQTTSession *)session;
+
135 
+
140 - (void)connectionError:(MQTTSession *)session error:(NSError *)error;
+
141 
+
146 - (void)protocolError:(MQTTSession *)session error:(NSError *)error;
+
147 
+
153 - (void)messageDelivered:(MQTTSession *)session msgID:(UInt16)msgID;
+
154 
+
161 - (void)subAckReceived:(MQTTSession *)session msgID:(UInt16)msgID grantedQoss:(NSArray *)qoss;
+
162 
+
167 - (void)unsubAckReceived:(MQTTSession *)session msgID:(UInt16)msgID;
+
168 
+
179 - (void)sending:(MQTTSession *)session type:(int)type qos:(MQTTQosLevel)qos retained:(BOOL)retained duped:(BOOL)duped mid:(UInt16)mid data:(NSData *)data;
+
180 
+
191 - (void)received:(MQTTSession *)session type:(int)type qos:(MQTTQosLevel)qos retained:(BOOL)retained duped:(BOOL)duped mid:(UInt16)mid data:(NSData *)data;
+
192 
+
204 - (BOOL)ignoreReceived:(MQTTSession *)session type:(int)type qos:(MQTTQosLevel)qos retained:(BOOL)retained duped:(BOOL)duped mid:(UInt16)mid data:(NSData *)data;
+
205 
+
213 - (void)buffered:(MQTTSession *)session
+
214  queued:(NSUInteger)queued
+
215  flowingIn:(NSUInteger)flowingIn
+
216  flowingOut:(NSUInteger)flowingOut;
+
217 
+
224 - (void)buffered:(MQTTSession *)session
+
225  flowingIn:(NSUInteger)flowingIn
+
226  flowingOut:(NSUInteger)flowingOut;
+
227 
+
228 @end
+
229 
+
233 @interface MQTTSession : NSObject
+
234 
+
264 @property (weak, nonatomic) id<MQTTSessionDelegate> delegate;
+
265 
+
281 @property (strong, nonatomic) MQTTPersistence *persistence;
+
282 
+
284 @property (strong) void (^connectionHandler)(MQTTSessionEvent event);
+
286 @property (strong) void (^messageHandler)(NSData* message, NSString* topic);
+
287 
+
290 @property (nonatomic, readonly) MQTTSessionStatus status;
+
291 
+
294 @property (strong, nonatomic) NSString *clientId;
+
297 @property (strong, nonatomic) NSString *userName;
+
300 @property (strong, nonatomic) NSString *password;
+
303 @property (nonatomic) UInt16 keepAliveInterval;
+
306 @property (nonatomic) BOOL cleanSessionFlag;
+
309 @property (nonatomic) BOOL willFlag;
+
312 @property (strong, nonatomic) NSString *willTopic;
+
315 @property (strong, nonatomic) NSData *willMsg;
+
318 @property (nonatomic) MQTTQosLevel willQoS;
+
321 @property (nonatomic) BOOL willRetainFlag;
+
324 @property (nonatomic) UInt8 protocolLevel;
+
327 @property (strong, nonatomic) NSRunLoop *runLoop;
+
330 @property (strong, nonatomic) NSString *runLoopMode;
+
331 
+
332 // ssl security policy
+
343 @property (strong, nonatomic) MQTTSSLSecurityPolicy *securityPolicy;
+
344 
+
347 @property (strong, nonatomic) NSArray *certificates;
+
348 
+
352 @property (strong, nonatomic) MQTTMessage *connectMessage;
+
353 
+
362 - (MQTTSession *)init;
+
363 
+
381  - (MQTTSession *)initWithClientId:(NSString *)clientId
+
382  userName:(NSString *)userName
+
383  password:(NSString *)password
+
384  keepAlive:(UInt16)keepAliveInterval
+
385  cleanSession:(BOOL)cleanSessionFlag
+
386  will:(BOOL)willFlag
+
387  willTopic:(NSString *)willTopic
+
388  willMsg:(NSData *)willMsg
+
389  willQoS:(MQTTQosLevel)willQoS
+
390  willRetainFlag:(BOOL)willRetainFlag
+
391  protocolLevel:(UInt8)protocolLevel
+
392  runLoop:(NSRunLoop *)runLoop
+
393  forMode:(NSString *)runLoopMode;
+
394 
+
413 - (MQTTSession *)initWithClientId:(NSString *)clientId
+
414  userName:(NSString *)userName
+
415  password:(NSString *)password
+
416  keepAlive:(UInt16)keepAliveInterval
+
417  cleanSession:(BOOL)cleanSessionFlag
+
418  will:(BOOL)willFlag
+
419  willTopic:(NSString *)willTopic
+
420  willMsg:(NSData *)willMsg
+
421  willQoS:(MQTTQosLevel)willQoS
+
422  willRetainFlag:(BOOL)willRetainFlag
+
423  protocolLevel:(UInt8)protocolLevel
+
424  runLoop:(NSRunLoop *)runLoop
+
425  forMode:(NSString *)runLoopMode
+
426  securityPolicy:(MQTTSSLSecurityPolicy *) securityPolicy;
+
427 
+
493 - (MQTTSession *)initWithClientId:(NSString *)clientId
+
494  userName:(NSString *)userName
+
495  password:(NSString *)password
+
496  keepAlive:(UInt16)keepAliveInterval
+
497  cleanSession:(BOOL)cleanSessionFlag
+
498  will:(BOOL)willFlag
+
499  willTopic:(NSString *)willTopic
+
500  willMsg:(NSData *)willMsg
+
501  willQoS:(MQTTQosLevel)willQoS
+
502  willRetainFlag:(BOOL)willRetainFlag
+
503  protocolLevel:(UInt8)protocolLevel
+
504  runLoop:(NSRunLoop *)runLoop
+
505  forMode:(NSString *)runLoopMode
+
506  securityPolicy:(MQTTSSLSecurityPolicy *) securityPolicy
+
507  certificates:(NSArray *)certificates;
+
508 
+
515 - (id)initWithClientId:(NSString *)theClientId;
+
516 
+
524 - (id)initWithClientId:(NSString*)theClientId
+
525  runLoop:(NSRunLoop*)theRunLoop
+
526  forMode:(NSString*)theRunLoopMode;
+
527 
+
535 - (id)initWithClientId:(NSString*)theClientId
+
536  userName:(NSString*)theUsername
+
537  password:(NSString*)thePassword;
+
538 
+
548 - (id)initWithClientId:(NSString*)theClientId
+
549  userName:(NSString*)theUserName
+
550  password:(NSString*)thePassword
+
551  runLoop:(NSRunLoop*)theRunLoop
+
552  forMode:(NSString*)theRunLoopMode;
+
553 
+
563 - (id)initWithClientId:(NSString*)theClientId
+
564  userName:(NSString*)theUsername
+
565  password:(NSString*)thePassword
+
566  keepAlive:(UInt16)theKeepAliveInterval
+
567  cleanSession:(BOOL)cleanSessionFlag;
+
568 
+
580 - (id)initWithClientId:(NSString*)theClientId
+
581  userName:(NSString*)theUsername
+
582  password:(NSString*)thePassword
+
583  keepAlive:(UInt16)theKeepAlive
+
584  cleanSession:(BOOL)theCleanSessionFlag
+
585  runLoop:(NSRunLoop*)theRunLoop
+
586  forMode:(NSString*)theMode;
+
587 
+
601 - (id)initWithClientId:(NSString*)theClientId
+
602  userName:(NSString*)theUserName
+
603  password:(NSString*)thePassword
+
604  keepAlive:(UInt16)theKeepAliveInterval
+
605  cleanSession:(BOOL)theCleanSessionFlag
+
606  willTopic:(NSString*)willTopic
+
607  willMsg:(NSData*)willMsg
+
608  willQoS:(UInt8)willQoS
+
609  willRetainFlag:(BOOL)willRetainFlag;
+
610 
+
626 - (id)initWithClientId:(NSString*)theClientId
+
627  userName:(NSString*)theUserName
+
628  password:(NSString*)thePassword
+
629  keepAlive:(UInt16)theKeepAliveInterval
+
630  cleanSession:(BOOL)theCleanSessionFlag
+
631  willTopic:(NSString*)willTopic
+
632  willMsg:(NSData*)willMsg
+
633  willQoS:(UInt8)willQoS
+
634  willRetainFlag:(BOOL)willRetainFlag
+
635  runLoop:(NSRunLoop*)theRunLoop
+
636  forMode:(NSString*)theRunLoopMode;
+
637 
+
647 - (id)initWithClientId:(NSString*)theClientId
+
648  keepAlive:(UInt16)theKeepAliveInterval
+
649  connectMessage:(MQTTMessage*)theConnectMessage
+
650  runLoop:(NSRunLoop*)theRunLoop
+
651  forMode:(NSString*)theRunLoopMode;
+
652 
+
670 - (void)connectToHost:(NSString *)host port:(UInt32)port usingSSL:(BOOL)usingSSL;
+
671 
+
676 - (void)connectToHost:(NSString*)ip port:(UInt32)port;
+
677 
+
684 - (void)connectToHost:(NSString*)ip
+
685  port:(UInt32)port
+
686 withConnectionHandler:(void (^)(MQTTSessionEvent event))connHandler
+
687  messageHandler:(void (^)(NSData* data, NSString* topic))messHandler;
+
688 
+
696 - (void)connectToHost:(NSString*)ip
+
697  port:(UInt32)port
+
698  usingSSL:(BOOL)usingSSL
+
699 withConnectionHandler:(void (^)(MQTTSessionEvent event))connHandler
+
700  messageHandler:(void (^)(NSData* data, NSString* topic))messHandler;
+
701 
+
702 
+
720 - (BOOL)connectAndWaitToHost:(NSString *)host port:(UInt32)port usingSSL:(BOOL)usingSSL;
+
721 
+
746 - (UInt16)subscribeToTopic:(NSString *)topic atLevel:(MQTTQosLevel)qosLevel;
+
747 
+
751 - (void)subscribeTopic:(NSString*)theTopic;
+
752 
+
775 - (BOOL)subscribeAndWaitToTopic:(NSString *)topic atLevel:(MQTTQosLevel)qosLevel;
+
776 
+
777 
+
803 - (UInt16)subscribeToTopics:(NSDictionary *)topics;
+
827 - (BOOL)subscribeAndWaitToTopics:(NSDictionary *)topics;
+
828 
+
849 - (UInt16)unsubscribeTopic:(NSString *)topic;
+
850 
+
869 - (BOOL)unsubscribeAndWaitTopic:(NSString *)topic;
+
870 
+
896 - (UInt16)unsubscribeTopics:(NSArray *)topics;
+
897 
+
921 - (BOOL)unsubscribeAndWaitTopics:(NSArray *)topics;
+
922 
+
923 
+
950 - (UInt16)publishData:(NSData *)data onTopic:(NSString *)topic retain:(BOOL)retainFlag qos:(MQTTQosLevel)qos;
+
951 
+
956 - (void)publishData:(NSData*)theData onTopic:(NSString*)theTopic;
+
957 
+
962 - (void)publishDataAtLeastOnce:(NSData*)theData onTopic:(NSString*)theTopic;
+
963 
+
969 - (void)publishDataAtLeastOnce:(NSData*)theData onTopic:(NSString*)theTopic retain:(BOOL)retainFlag;
+
970 
+
975 - (void)publishDataAtMostOnce:(NSData*)theData onTopic:(NSString*)theTopic;
+
976 
+
982 - (void)publishDataAtMostOnce:(NSData*)theData onTopic:(NSString*)theTopic retain:(BOOL)retainFlag;
+
983 
+
988 - (void)publishDataExactlyOnce:(NSData*)theData onTopic:(NSString*)theTopic;
+
989 
+
995 - (void)publishDataExactlyOnce:(NSData*)theData onTopic:(NSString*)theTopic retain:(BOOL)retainFlag;
+
996 
+
1001 - (void)publishJson:(id)payload onTopic:(NSString*)theTopic;
+
1002 
+
1027 - (BOOL)publishAndWaitData:(NSData *)data onTopic:(NSString *)topic retain:(BOOL)retainFlag qos:(MQTTQosLevel)qos;
+
1028 
+
1047 - (void)close;
+
1048 
+
1067 - (void)closeAndWait;
+
1068 
+
1104 + (NSArray *)clientCertsFromP12:(NSString *)path passphrase:(NSString *)passphrase;
+
1105 
+
1106 
+
1107 @end
+
MQTTSessionStatus status
Definition: MQTTSession.h:290
+
NSData * willMsg
Definition: MQTTSession.h:315
-
Definition: MQTTSession.h:217
-
MQTTQosLevel willQoS
Definition: MQTTSession.h:302
-
NSArray * certificates
Definition: MQTTSession.h:331
-
NSString * clientId
Definition: MQTTSession.h:278
-
id< MQTTSessionDelegate > delegate
Definition: MQTTSession.h:248
-
BOOL cleanSessionFlag
Definition: MQTTSession.h:290
-
NSString * userName
Definition: MQTTSession.h:281
-
NSRunLoop * runLoop
Definition: MQTTSession.h:311
+
Definition: MQTTSession.h:233
+
MQTTQosLevel willQoS
Definition: MQTTSession.h:318
+
NSArray * certificates
Definition: MQTTSession.h:347
+
NSString * clientId
Definition: MQTTSession.h:294
+
id< MQTTSessionDelegate > delegate
Definition: MQTTSession.h:264
+
BOOL cleanSessionFlag
Definition: MQTTSession.h:306
+
NSString * userName
Definition: MQTTSession.h:297
+
NSRunLoop * runLoop
Definition: MQTTSession.h:327
void(^ connectionHandler)(MQTTSessionEvent event)
-
BOOL willRetainFlag
Definition: MQTTSession.h:305
-
NSString * runLoopMode
Definition: MQTTSession.h:314
+
BOOL willRetainFlag
Definition: MQTTSession.h:321
+
NSString * runLoopMode
Definition: MQTTSession.h:330
Definition: MQTTSession.h:32
-
BOOL willFlag
Definition: MQTTSession.h:293
-
UInt8 protocolLevel
Definition: MQTTSession.h:308
+
BOOL willFlag
Definition: MQTTSession.h:309
+
UInt8 protocolLevel
Definition: MQTTSession.h:324
void closeAndWait()
-
MQTTSSLSecurityPolicy * securityPolicy
Definition: MQTTSession.h:327
-
MQTTMessage * connectMessage
Definition: MQTTSession.h:336
-
NSString * password
Definition: MQTTSession.h:284
+
MQTTSSLSecurityPolicy * securityPolicy
Definition: MQTTSession.h:343
+
MQTTMessage * connectMessage
Definition: MQTTSession.h:352
+
NSString * password
Definition: MQTTSession.h:300
MQTTSession * init()
-
UInt16 keepAliveInterval
Definition: MQTTSession.h:287
+
UInt16 keepAliveInterval
Definition: MQTTSession.h:303
void(^ messageHandler)(NSData *message, NSString *topic)
-
MQTTPersistence * persistence
Definition: MQTTSession.h:265
-
NSString * willTopic
Definition: MQTTSession.h:296
+
MQTTPersistence * persistence
Definition: MQTTSession.h:281
+
NSString * willTopic
Definition: MQTTSession.h:312
diff --git a/MQTTClient/dist/documentation/html/_m_q_t_t_session_manager_8h_source.html b/MQTTClient/dist/documentation/html/_m_q_t_t_session_manager_8h_source.html index f4660dd1..48bef14b 100644 --- a/MQTTClient/dist/documentation/html/_m_q_t_t_session_manager_8h_source.html +++ b/MQTTClient/dist/documentation/html/_m_q_t_t_session_manager_8h_source.html @@ -198,7 +198,7 @@ diff --git a/MQTTClient/dist/documentation/html/annotated.html b/MQTTClient/dist/documentation/html/annotated.html index 1d83570b..fb3c4c2b 100644 --- a/MQTTClient/dist/documentation/html/annotated.html +++ b/MQTTClient/dist/documentation/html/annotated.html @@ -98,7 +98,7 @@ diff --git a/MQTTClient/dist/documentation/html/class_m_q_t_t_session-members.html b/MQTTClient/dist/documentation/html/class_m_q_t_t_session-members.html index 29d839f3..630090a3 100644 --- a/MQTTClient/dist/documentation/html/class_m_q_t_t_session-members.html +++ b/MQTTClient/dist/documentation/html/class_m_q_t_t_session-members.html @@ -154,7 +154,7 @@ diff --git a/MQTTClient/dist/documentation/html/class_m_q_t_t_session_manager-members.html b/MQTTClient/dist/documentation/html/class_m_q_t_t_session_manager-members.html index e737512f..35a9dc54 100644 --- a/MQTTClient/dist/documentation/html/class_m_q_t_t_session_manager-members.html +++ b/MQTTClient/dist/documentation/html/class_m_q_t_t_session_manager-members.html @@ -109,20 +109,21 @@ lastErrorCodeMQTTSessionManagermessageDelivered:msgID:<MQTTSessionDelegate>newMessage:data:onTopic:qos:retained:mid:<MQTTSessionDelegate> - - protocolError:error:<MQTTSessionDelegate> - - received:type:qos:retained:duped:mid:data:<MQTTSessionDelegate> - - sendData:topic:qos:retain:MQTTSessionManager - - sending:type:qos:retained:duped:mid:data:<MQTTSessionDelegate> - - session:handleEvent:<MQTTSessionDelegate> - - session:newMessage:onTopic:<MQTTSessionDelegate> - stateMQTTSessionManager - - subAckReceived:msgID:grantedQoss:<MQTTSessionDelegate> - subscriptionsMQTTSessionManager - - unsubAckReceived:msgID:<MQTTSessionDelegate> + - newMessageWithFeedback:data:onTopic:qos:retained:mid:<MQTTSessionDelegate> + - protocolError:error:<MQTTSessionDelegate> + - received:type:qos:retained:duped:mid:data:<MQTTSessionDelegate> + - sendData:topic:qos:retain:MQTTSessionManager + - sending:type:qos:retained:duped:mid:data:<MQTTSessionDelegate> + - session:handleEvent:<MQTTSessionDelegate> + - session:newMessage:onTopic:<MQTTSessionDelegate> + stateMQTTSessionManager + - subAckReceived:msgID:grantedQoss:<MQTTSessionDelegate> + subscriptionsMQTTSessionManager + - unsubAckReceived:msgID:<MQTTSessionDelegate> diff --git a/MQTTClient/dist/documentation/html/classes.html b/MQTTClient/dist/documentation/html/classes.html index 7329b432..d5fd753e 100644 --- a/MQTTClient/dist/documentation/html/classes.html +++ b/MQTTClient/dist/documentation/html/classes.html @@ -99,7 +99,7 @@ diff --git a/MQTTClient/dist/documentation/html/files.html b/MQTTClient/dist/documentation/html/files.html index abc2bafb..a95d6d50 100644 --- a/MQTTClient/dist/documentation/html/files.html +++ b/MQTTClient/dist/documentation/html/files.html @@ -93,7 +93,7 @@ diff --git a/MQTTClient/dist/documentation/html/functions.html b/MQTTClient/dist/documentation/html/functions.html index 4b43e7e0..db4ef7f9 100644 --- a/MQTTClient/dist/documentation/html/functions.html +++ b/MQTTClient/dist/documentation/html/functions.html @@ -291,6 +291,9 @@

- n -

@@ -441,7 +444,7 @@

- w -