diff --git a/CHANGELOG.md b/CHANGELOG.md index 0de3845a..0f660b14 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,15 @@ MQTT-Client-Framework iOS Release Notes ======================================= +## MQTT-Client-Framework 0.2.5 +>Release date: 2015-08-22 + +[NEW] Will option on SessionManager closes #44 +[NEW] Change SessionManager subscriptions while connected +[FIX] Correct SessionManager subscriptions according to server session present + +[NEW] zero message id is accepted on incoming publish closes #42 + ## MQTT-Client-Framework 0.2.4 >Release date: 2015-08-16 diff --git a/MQTTClient.podspec b/MQTTClient.podspec index abc284f2..8c2663f6 100644 --- a/MQTTClient.podspec +++ b/MQTTClient.podspec @@ -1,11 +1,11 @@ Pod::Spec.new do |s| s.name = "MQTTClient" - s.version = "0.2.4" + s.version = "0.2.5" s.summary = "IOS 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.2.4" } + s.source = { :git => "https://github.com/ckrey/MQTT-Client-Framework.git", :tag => "0.2.5" } s.source_files = "MQTTClient/MQTTClient", "MQTTClient/MQTTClient/**/*.{h,m}" s.requires_arc = true diff --git a/MQTTClient/MQTTClient.xcodeproj/project.pbxproj b/MQTTClient/MQTTClient.xcodeproj/project.pbxproj index e1a3caa8..138853a8 100644 --- a/MQTTClient/MQTTClient.xcodeproj/project.pbxproj +++ b/MQTTClient/MQTTClient.xcodeproj/project.pbxproj @@ -36,6 +36,7 @@ /* Begin PBXBuildFile section */ 840507C5193DCF2E002EBBD2 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 840507C4193DCF2E002EBBD2 /* UIKit.framework */; }; 840785A918A2AA26009158D5 /* MQTTClientPublishTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 840785A818A2AA26009158D5 /* MQTTClientPublishTests.m */; }; + 8429773F1B87CEF600A119FB /* MQTTSessionManagerTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 8429773E1B87CEF600A119FB /* MQTTSessionManagerTests.m */; }; 8442BEE91A97B15100D00E55 /* SwiftTests2.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8442BEE81A97B15100D00E55 /* SwiftTests2.swift */; }; 844C93AB1A81645D00CA4A03 /* MQTTACLTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 844C93AA1A81645D00CA4A03 /* MQTTACLTests.m */; }; 845DBE771884AAD700EDB183 /* MQTTClientSubscriptionTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 845DBE761884AAD700EDB183 /* MQTTClientSubscriptionTests.m */; }; @@ -132,6 +133,7 @@ 840507C2193DCE4B002EBBD2 /* CFNetwork.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CFNetwork.framework; path = System/Library/Frameworks/CFNetwork.framework; sourceTree = SDKROOT; }; 840507C4193DCF2E002EBBD2 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; 840785A818A2AA26009158D5 /* MQTTClientPublishTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MQTTClientPublishTests.m; sourceTree = ""; }; + 8429773E1B87CEF600A119FB /* MQTTSessionManagerTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MQTTSessionManagerTests.m; sourceTree = ""; }; 8442BEE81A97B15100D00E55 /* SwiftTests2.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SwiftTests2.swift; sourceTree = ""; }; 844C93AA1A81645D00CA4A03 /* MQTTACLTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MQTTACLTests.m; sourceTree = ""; }; 845DBE761884AAD700EDB183 /* MQTTClientSubscriptionTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MQTTClientSubscriptionTests.m; sourceTree = ""; }; @@ -325,6 +327,7 @@ 848BB8F2195FF7A2004FCAE2 /* MQTTClientOnlyTests.m */, 845DBE761884AAD700EDB183 /* MQTTClientSubscriptionTests.m */, 840785A818A2AA26009158D5 /* MQTTClientPublishTests.m */, + 8429773E1B87CEF600A119FB /* MQTTSessionManagerTests.m */, 84B739B21A66F07A00B103F4 /* SwiftTests.swift */, 8442BEE81A97B15100D00E55 /* SwiftTests2.swift */, 84B739B11A66F07900B103F4 /* MQTTClientTests-Bridging-Header.h */, @@ -526,6 +529,7 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + 8429773F1B87CEF600A119FB /* MQTTSessionManagerTests.m in Sources */, C21D3C711B1EBD730012DD2F /* MQTTSSLSecurityPolicyTests.m in Sources */, 840785A918A2AA26009158D5 /* MQTTClientPublishTests.m in Sources */, 8461914A1883E56800101409 /* MQTTClientTests.m in Sources */, diff --git a/MQTTClient/MQTTClient/MQTTSessionManager.h b/MQTTClient/MQTTClient/MQTTSessionManager.h index f9bbc8ac..9654c88e 100644 --- a/MQTTClient/MQTTClient/MQTTSessionManager.h +++ b/MQTTClient/MQTTClient/MQTTSessionManager.h @@ -69,8 +69,9 @@ typedef NS_ENUM(int, MQTTSessionManagerState) { * @param auth specifies the user and pass parameters should be used for authenthication * @param user an NSString object containing the user's name (or ID) for authentication. May be nil. * @param pass an NSString object containing the user's password. If userName is nil, password must be nil as well. + * @param will indicates whether a will shall be sent * @param willTopic the Will Topic is a string, must not be nil - * @param will the Will Message, might be zero length + * @param willMsg the Will Message, might be zero length * @param willQos specifies the QoS level to be used when publishing the Will Message. * @param willRetainFlag indicates if the server should publish the Will Messages with retainFlag. * @param clientId The Client Identifier identifies the Client to the Server. If nil, a random clientId is generated. @@ -92,7 +93,22 @@ typedef NS_ENUM(int, MQTTSessionManagerState) { willRetainFlag:(BOOL)willRetainFlag withClientId:(NSString *)clientId; - /** Backward compatability for calls without willSend*/ +/** Connects to the MQTT broker and stores the parameters for subsequent reconnects + * @param host specifies the hostname or ip address to connect to. Defaults to @"localhost". + * @param port spefies the port to connect to + * @param tls specifies whether to use SSL or not + * @param keepalive The Keep Alive is a time interval measured in seconds. The MQTTClient ensures that the interval between Control Packets being sent does not exceed the Keep Alive value. In the absence of sending any other Control Packets, the Client sends a PINGREQ Packet. + * @param clean specifies if the server should discard previous session information. + * @param auth specifies the user and pass parameters should be used for authenthication + * @param user an NSString object containing the user's name (or ID) for authentication. May be nil. + * @param pass an NSString object containing the user's password. If userName is nil, password must be nil as well. + * @param willTopic the Will Topic is a string, must not be nil + * @param will the Will Message, might be zero length + * @param willQos specifies the QoS level to be used when publishing the Will Message. + * @param willRetainFlag indicates if the server should publish the Will Messages with retainFlag. + * @param clientId The Client Identifier identifies the Client to the Server. If nil, a random clientId is generated. + * @return the initialised MQTTSessionManager object + */ - (void)connectTo:(NSString *)host port:(NSInteger)port diff --git a/MQTTClient/MQTTClient/MQTTSessionManager.m b/MQTTClient/MQTTClient/MQTTSessionManager.m index 6114bbf6..20a66910 100644 --- a/MQTTClient/MQTTClient/MQTTSessionManager.m +++ b/MQTTClient/MQTTClient/MQTTSessionManager.m @@ -38,15 +38,12 @@ @interface MQTTSessionManager() @property (nonatomic) UIBackgroundTaskIdentifier backgroundTask; @property (strong, nonatomic) void (^completionHandler)(UIBackgroundFetchResult); - - @end #define RECONNECT_TIMER 1.0 #define RECONNECT_TIMER_MAX 64.0 #define BACKGROUND_DISCONNECT_AFTER 8.0 - @implementation MQTTSessionManager - (id)init { @@ -151,7 +148,7 @@ - (void)connectTo:(NSString *)host ![user isEqualToString:self.user] || ![pass isEqualToString:self.pass] || ![willTopic isEqualToString:self.willTopic] || - //![willMsg isEqualToData:self.willMsg] || + ![willMsg isEqualToData:self.willMsg] || willQos != self.willQos || willRetainFlag != self.willRetainFlag || ![clientId isEqualToString:self.clientId]) { @@ -165,7 +162,7 @@ - (void)connectTo:(NSString *)host self.pass = pass; self.will = will; self.willTopic = willTopic; - self.willMsg=willMsg; + self.willMsg = willMsg; self.willQos = willQos; self.willRetainFlag = willRetainFlag; self.clientId = clientId; @@ -223,9 +220,10 @@ - (void)handleEvent:(MQTTSession *)session event:(MQTTSessionEvent)eventCode err @(MQTTSessionEventConnectionRefused): @"connection refused", @(MQTTSessionEventConnectionClosed): @"connection closed", @(MQTTSessionEventConnectionError): @"connection error", - @(MQTTSessionEventProtocolError): @"protocoll error" + @(MQTTSessionEventProtocolError): @"protocoll error", + @(MQTTSessionEventConnectionClosedByBroker): @"connection closed by broker" }; - NSLog(@"Connection MQTT eventCode: %@ (%ld) %@", events[@(eventCode)], (long)eventCode, error); + NSLog(@"MQTTSession eventCode: %@ (%ld) %@", events[@(eventCode)], (long)eventCode, error); #endif [self.reconnectTimer invalidate]; switch (eventCode) { @@ -233,17 +231,10 @@ - (void)handleEvent:(MQTTSession *)session event:(MQTTSessionEvent)eventCode err { self.lastErrorCode = nil; self.state = MQTTSessionManagerStateConnected; - - if (self.clean || !self.reconnectFlag) { - if (self.subscriptions && [self.subscriptions count]) { - [self.session subscribeToTopics:self.subscriptions]; - } - self.reconnectFlag = TRUE; - } - break; } case MQTTSessionEventConnectionClosed: + case MQTTSessionEventConnectionClosedByBroker: self.state = MQTTSessionManagerStateClosed; if (self.backgroundTask) { [[UIApplication sharedApplication] endBackgroundTask:self.backgroundTask]; @@ -282,6 +273,16 @@ - (void)newMessage:(MQTTSession *)session data:(NSData *)data onTopic:(NSString [self.delegate handleMessage:data onTopic:topic retained:retained]; } +- (void)connected:(MQTTSession *)session sessionPresent:(BOOL)sessionPresent { + if (self.clean || !self.reconnectFlag || !sessionPresent) { + if (self.subscriptions && [self.subscriptions count]) { + [self.session subscribeToTopics:self.subscriptions]; + } + self.reconnectFlag = TRUE; + } +} + + - (void)connectToInternal { if (self.state == MQTTSessionManagerStateStarting) { @@ -312,17 +313,22 @@ - (void)connectToLast - (void)setSubscriptions:(NSMutableDictionary *)newSubscriptions { - if (self.state==MQTTSessionManagerStateConnected) { - if (self.subscriptions && [self.subscriptions count]) { - [self.session unsubscribeAndWaitTopics:self.subscriptions]; - } - _subscriptions=newSubscriptions; - if (self.subscriptions && [self.subscriptions count]) { - [self.session subscribeToTopics:self.subscriptions]; - } - } else { - _subscriptions=newSubscriptions; - } + if (self.state==MQTTSessionManagerStateConnected) { + for (NSString *topicFilter in self.subscriptions) { + if (![newSubscriptions objectForKey:topicFilter]) { + [self.session unsubscribeAndWaitTopic:topicFilter]; + } + } + + for (NSString *topicFilter in newSubscriptions) { + if (![self.subscriptions objectForKey:topicFilter]) { + NSNumber *number = newSubscriptions[topicFilter]; + MQTTQosLevel qos = [number unsignedIntValue]; + [self.session subscribeToTopic:topicFilter atLevel:qos]; + } + } + } + _subscriptions=newSubscriptions; } @end diff --git a/MQTTClient/MQTTClientTests/MQTTSessionManagerTests.m b/MQTTClient/MQTTClientTests/MQTTSessionManagerTests.m new file mode 100644 index 00000000..0745ce27 --- /dev/null +++ b/MQTTClient/MQTTClientTests/MQTTSessionManagerTests.m @@ -0,0 +1,132 @@ +// +// MQTTSessionManagerTests.m +// MQTTClient +// +// Created by Christoph Krey on 21.08.15. +// Copyright (c) 2015 Christoph Krey. All rights reserved. +// + +#import +#import +#import "MQTTSessionManager.h" +#import "MQTTClientTests.h" + +@interface MQTTSessionManagerTests : XCTestCase +@property (nonatomic) int received; +@property (nonatomic) int sent; +@property (nonatomic) BOOL timeout; +@property (nonatomic) int step; +@end + +@implementation MQTTSessionManagerTests + +- (void)setUp { + [super setUp]; +} + +- (void)tearDown { + [super tearDown]; +} + +- (void)testMQTTSessionManagerClean { + [self testMQTTSessionManager:true]; +} + +- (void)testMQTTSessionManagerNoClean { + [self testMQTTSessionManager:false]; +} + +- (void)testMQTTSessionManager:(BOOL)clean { + for (NSString *broker in BROKERLIST) { + NSLog(@"testing broker %@", broker); + NSDictionary *parameters = BROKERS[broker]; + + + self.step = -1; + NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:[parameters[@"timeout"] intValue] + target:self + selector:@selector(timeout:) + userInfo:nil + repeats:true]; + + self.received = 0; + MQTTSessionManager *manager = [[MQTTSessionManager alloc] init]; + manager.delegate = self; + manager.subscriptions = [@{@"#": @(0)} mutableCopy]; + [manager connectTo:parameters[@"host"] + port:[parameters[@"port"] intValue] + tls:[parameters[@"tls"] boolValue] + keepalive:60 + clean:clean + auth:NO + user:nil + pass:nil + will:NO + willTopic:nil + willMsg:nil + willQos:MQTTQosLevelAtMostOnce + willRetainFlag:FALSE + withClientId:@"MQTTSessionManager"]; + while (self.step == -1 && manager.state != MQTTSessionManagerStateConnected) { + NSLog(@"waiting for connect %d", manager.state); + [[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:1]]; + } + XCTAssertEqual(manager.state, MQTTSessionManagerStateConnected); + + while (self.step <= 0) { + NSLog(@"received %d on #", self.received); + [manager sendData:[@"data" dataUsingEncoding:NSUTF8StringEncoding] topic:@"MQTTSessionManager" qos:MQTTQosLevelAtMostOnce retain:FALSE]; + self.sent++; + [[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:1]]; + } + XCTAssertEqual(self.received, self.sent); + + manager.subscriptions = [@{@"#": @(0),@"$SYS/#": @(0)} mutableCopy]; + while (self.step == 1) { + NSLog(@"received %d on # or $SYS/#", self.received); + [manager sendData:[@"data" dataUsingEncoding:NSUTF8StringEncoding] topic:@"MQTTSessionManager" qos:MQTTQosLevelAtMostOnce retain:FALSE]; + self.sent++; + [[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:1]]; + } + XCTAssertEqual(self.received, self.sent); + + manager.subscriptions = [@{@"$SYS/#": @(0)} mutableCopy]; + while (self.step <= 2) { + NSLog(@"received %d on $SYS/#", self.received); + [manager sendData:[@"data" dataUsingEncoding:NSUTF8StringEncoding] topic:@"MQTTSessionManager" qos:MQTTQosLevelAtMostOnce retain:FALSE]; + [[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:1]]; + } + XCTAssertEqual(self.received, self.sent); + + manager.subscriptions = [@{} mutableCopy]; + while (self.step <= 3) { + NSLog(@"received %d on nothing", self.received); + [manager sendData:[@"data" dataUsingEncoding:NSUTF8StringEncoding] topic:@"MQTTSessionManager" qos:MQTTQosLevelAtMostOnce retain:FALSE]; + [[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:1]]; + } + XCTAssertEqual(self.received, self.sent); + + [manager disconnect]; + while (self.step <= 4) { + NSLog(@"received %d after disconnect", self.received); + [manager sendData:[@"data" dataUsingEncoding:NSUTF8StringEncoding] topic:@"MQTTSessionManager" qos:MQTTQosLevelAtMostOnce retain:FALSE]; + [[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:1]]; + } + XCTAssertEqual(self.received, self.sent); + [timer invalidate]; + } +} + +- (void)handleMessage:(NSData *)data onTopic:(NSString *)topic retained:(BOOL)retained { + NSLog(@"handleMessage t:%@", topic); + if ([topic isEqualToString:@"MQTTSessionManager"]) { + self.received++; + } +} + +- (void)timeout:(NSTimer *)timer { + NSLog(@"timeout s:%d", self.step); + self.step++; +} + +@end diff --git a/MQTTClient/dist/MQTTClient.framework/Versions/A/Headers/MQTTSession.h b/MQTTClient/dist/MQTTClient.framework/Versions/A/Headers/MQTTSession.h index a5cab430..bad97369 100644 --- a/MQTTClient/dist/MQTTClient.framework/Versions/A/Headers/MQTTSession.h +++ b/MQTTClient/dist/MQTTClient.framework/Versions/A/Headers/MQTTSession.h @@ -250,7 +250,8 @@ typedef NS_ENUM(NSInteger, MQTTSessionEvent) { /** Control MQTT persistence by setting the properties of persistence before connecting to an MQTT broker. The settings are specific to a clientId. - persistence.persistent = YES or NO (default) to establish file or in memory persistence + persistence.persistent = YES or NO (default) to establish file or in memory persistence. IMPORTANT: set immediately after creating the MQTTSession before calling any other method. Otherwise the default value (NO) will be used + for this session. persistence.maxWindowSize (a positive number, default is 16) to control the number of messages sent before waiting for acknowledgement in Qos 1 or 2. Additional messages are stored and transmitted later. diff --git a/MQTTClient/dist/MQTTClient.framework/Versions/A/MQTTClient b/MQTTClient/dist/MQTTClient.framework/Versions/A/MQTTClient index 42da6dc0..923d9caf 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 beffe916..bb578835 100644 --- a/MQTTClient/dist/documentation/html/Nodes.xml +++ b/MQTTClient/dist/documentation/html/Nodes.xml @@ -7,7 +7,7 @@ Classes - + annotated.html Class List @@ -419,6 +419,11 @@ MQTTSessionManager interface_m_q_t_t_session_manager.html + + connectTo:port:tls:keepalive:clean:auth:user:pass:will:willTopic:willMsg:willQos:willRetainFlag:withClientId: + interface_m_q_t_t_session_manager.html + af50a6c56e8d19ef1e739cccb9e11722a + connectTo:port:tls:keepalive:clean:auth:user:pass:willTopic:will:willQos:willRetainFlag:withClientId: interface_m_q_t_t_session_manager.html diff --git a/MQTTClient/dist/documentation/html/Tokens.xml b/MQTTClient/dist/documentation/html/Tokens.xml index dfcce80f..fad89363 100644 --- a/MQTTClient/dist/documentation/html/Tokens.xml +++ b/MQTTClient/dist/documentation/html/Tokens.xml @@ -878,6 +878,17 @@ interface_m_q_t_t_session_manager.html MQTTSessionManager.h + + + connectTo:port:tls:keepalive:clean:auth:user:pass:will:willTopic:willMsg:willQos:willRetainFlag:withClientId: + occ + instm + MQTTSessionManager + + interface_m_q_t_t_session_manager.html + af50a6c56e8d19ef1e739cccb9e11722a + MQTTSessionManager.h + connectTo:port:tls:keepalive:clean:auth:user:pass:willTopic:will:willQos:willRetainFlag:withClientId: 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 4389076b..002c535b 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 @@ -3,7 +3,7 @@ - + MQTTClient: MQTTSession.h Source File @@ -22,7 +22,7 @@ -
+
MQTTClient
an Objective-C Framework for MQTT
@@ -32,7 +32,7 @@
- + @@ -171,236 +171,236 @@
218 
248 @property (weak, nonatomic) id<MQTTSessionDelegate> delegate;
249 
-
264 @property (strong, nonatomic) MQTTPersistence *persistence;
-
265 
-
267 @property (strong) void (^connectionHandler)(MQTTSessionEvent event);
-
269 @property (strong) void (^messageHandler)(NSData* message, NSString* topic);
-
270 
-
273 @property (nonatomic, readonly) MQTTSessionStatus status;
-
274 
-
277 @property (strong, nonatomic) NSString *clientId;
-
280 @property (strong, nonatomic) NSString *userName;
-
283 @property (strong, nonatomic) NSString *password;
-
286 @property (nonatomic) UInt16 keepAliveInterval;
-
289 @property (nonatomic) BOOL cleanSessionFlag;
-
292 @property (nonatomic) BOOL willFlag;
-
295 @property (strong, nonatomic) NSString *willTopic;
-
298 @property (strong, nonatomic) NSData *willMsg;
-
301 @property (nonatomic) MQTTQosLevel willQoS;
-
304 @property (nonatomic) BOOL willRetainFlag;
-
307 @property (nonatomic) UInt8 protocolLevel;
-
310 @property (strong, nonatomic) NSRunLoop *runLoop;
-
313 @property (strong, nonatomic) NSString *runLoopMode;
-
314 
-
315 // ssl security policy
-
326 @property (strong, nonatomic) MQTTSSLSecurityPolicy *securityPolicy;
-
327 
-
330 @property (strong, nonatomic) NSArray *certificates;
-
331 
-
335 @property (strong, nonatomic) MQTTMessage *connectMessage;
-
336 
-
345 - (MQTTSession *)init;
-
346 
-
364  - (MQTTSession *)initWithClientId:(NSString *)clientId
-
365  userName:(NSString *)userName
-
366  password:(NSString *)password
-
367  keepAlive:(UInt16)keepAliveInterval
-
368  cleanSession:(BOOL)cleanSessionFlag
-
369  will:(BOOL)willFlag
-
370  willTopic:(NSString *)willTopic
-
371  willMsg:(NSData *)willMsg
-
372  willQoS:(MQTTQosLevel)willQoS
-
373  willRetainFlag:(BOOL)willRetainFlag
-
374  protocolLevel:(UInt8)protocolLevel
-
375  runLoop:(NSRunLoop *)runLoop
-
376  forMode:(NSString *)runLoopMode;
-
377 
-
396 - (MQTTSession *)initWithClientId:(NSString *)clientId
-
397  userName:(NSString *)userName
-
398  password:(NSString *)password
-
399  keepAlive:(UInt16)keepAliveInterval
-
400  cleanSession:(BOOL)cleanSessionFlag
-
401  will:(BOOL)willFlag
-
402  willTopic:(NSString *)willTopic
-
403  willMsg:(NSData *)willMsg
-
404  willQoS:(MQTTQosLevel)willQoS
-
405  willRetainFlag:(BOOL)willRetainFlag
-
406  protocolLevel:(UInt8)protocolLevel
-
407  runLoop:(NSRunLoop *)runLoop
-
408  forMode:(NSString *)runLoopMode
-
409  securityPolicy:(MQTTSSLSecurityPolicy *) securityPolicy;
-
410 
-
476 - (MQTTSession *)initWithClientId:(NSString *)clientId
-
477  userName:(NSString *)userName
-
478  password:(NSString *)password
-
479  keepAlive:(UInt16)keepAliveInterval
-
480  cleanSession:(BOOL)cleanSessionFlag
-
481  will:(BOOL)willFlag
-
482  willTopic:(NSString *)willTopic
-
483  willMsg:(NSData *)willMsg
-
484  willQoS:(MQTTQosLevel)willQoS
-
485  willRetainFlag:(BOOL)willRetainFlag
-
486  protocolLevel:(UInt8)protocolLevel
-
487  runLoop:(NSRunLoop *)runLoop
-
488  forMode:(NSString *)runLoopMode
-
489  securityPolicy:(MQTTSSLSecurityPolicy *) securityPolicy
-
490  certificates:(NSArray *)certificates;
-
491 
-
498 - (id)initWithClientId:(NSString *)theClientId;
-
499 
-
507 - (id)initWithClientId:(NSString*)theClientId
-
508  runLoop:(NSRunLoop*)theRunLoop
-
509  forMode:(NSString*)theRunLoopMode;
-
510 
-
518 - (id)initWithClientId:(NSString*)theClientId
-
519  userName:(NSString*)theUsername
-
520  password:(NSString*)thePassword;
-
521 
-
531 - (id)initWithClientId:(NSString*)theClientId
-
532  userName:(NSString*)theUserName
-
533  password:(NSString*)thePassword
-
534  runLoop:(NSRunLoop*)theRunLoop
-
535  forMode:(NSString*)theRunLoopMode;
-
536 
-
546 - (id)initWithClientId:(NSString*)theClientId
-
547  userName:(NSString*)theUsername
-
548  password:(NSString*)thePassword
-
549  keepAlive:(UInt16)theKeepAliveInterval
-
550  cleanSession:(BOOL)cleanSessionFlag;
-
551 
-
563 - (id)initWithClientId:(NSString*)theClientId
-
564  userName:(NSString*)theUsername
-
565  password:(NSString*)thePassword
-
566  keepAlive:(UInt16)theKeepAlive
-
567  cleanSession:(BOOL)theCleanSessionFlag
-
568  runLoop:(NSRunLoop*)theRunLoop
-
569  forMode:(NSString*)theMode;
-
570 
-
584 - (id)initWithClientId:(NSString*)theClientId
-
585  userName:(NSString*)theUserName
-
586  password:(NSString*)thePassword
-
587  keepAlive:(UInt16)theKeepAliveInterval
-
588  cleanSession:(BOOL)theCleanSessionFlag
-
589  willTopic:(NSString*)willTopic
-
590  willMsg:(NSData*)willMsg
-
591  willQoS:(UInt8)willQoS
-
592  willRetainFlag:(BOOL)willRetainFlag;
-
593 
-
609 - (id)initWithClientId:(NSString*)theClientId
-
610  userName:(NSString*)theUserName
-
611  password:(NSString*)thePassword
-
612  keepAlive:(UInt16)theKeepAliveInterval
-
613  cleanSession:(BOOL)theCleanSessionFlag
-
614  willTopic:(NSString*)willTopic
-
615  willMsg:(NSData*)willMsg
-
616  willQoS:(UInt8)willQoS
-
617  willRetainFlag:(BOOL)willRetainFlag
-
618  runLoop:(NSRunLoop*)theRunLoop
-
619  forMode:(NSString*)theRunLoopMode;
-
620 
-
630 - (id)initWithClientId:(NSString*)theClientId
-
631  keepAlive:(UInt16)theKeepAliveInterval
-
632  connectMessage:(MQTTMessage*)theConnectMessage
-
633  runLoop:(NSRunLoop*)theRunLoop
-
634  forMode:(NSString*)theRunLoopMode;
-
635 
-
653 - (void)connectToHost:(NSString *)host port:(UInt32)port usingSSL:(BOOL)usingSSL;
-
654 
-
659 - (void)connectToHost:(NSString*)ip port:(UInt32)port;
-
660 
-
667 - (void)connectToHost:(NSString*)ip
-
668  port:(UInt32)port
-
669 withConnectionHandler:(void (^)(MQTTSessionEvent event))connHandler
-
670  messageHandler:(void (^)(NSData* data, NSString* topic))messHandler;
-
671 
-
679 - (void)connectToHost:(NSString*)ip
-
680  port:(UInt32)port
-
681  usingSSL:(BOOL)usingSSL
-
682 withConnectionHandler:(void (^)(MQTTSessionEvent event))connHandler
-
683  messageHandler:(void (^)(NSData* data, NSString* topic))messHandler;
-
684 
+
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 
-
703 - (BOOL)connectAndWaitToHost:(NSString *)host port:(UInt32)port usingSSL:(BOOL)usingSSL;
-
704 
-
729 - (UInt16)subscribeToTopic:(NSString *)topic atLevel:(MQTTQosLevel)qosLevel;
-
730 
-
734 - (void)subscribeTopic:(NSString*)theTopic;
-
735 
-
758 - (BOOL)subscribeAndWaitToTopic:(NSString *)topic atLevel:(MQTTQosLevel)qosLevel;
-
759 
+
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 
-
786 - (UInt16)subscribeToTopics:(NSDictionary *)topics;
-
810 - (BOOL)subscribeAndWaitToTopics:(NSDictionary *)topics;
-
811 
-
832 - (UInt16)unsubscribeTopic:(NSString *)topic;
-
833 
-
852 - (BOOL)unsubscribeAndWaitTopic:(NSString *)topic;
-
853 
-
879 - (UInt16)unsubscribeTopics:(NSArray *)topics;
-
880 
-
904 - (BOOL)unsubscribeAndWaitTopics:(NSArray *)topics;
-
905 
+
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 
-
933 - (UInt16)publishData:(NSData *)data onTopic:(NSString *)topic retain:(BOOL)retainFlag qos:(MQTTQosLevel)qos;
-
934 
-
939 - (void)publishData:(NSData*)theData onTopic:(NSString*)theTopic;
-
940 
-
945 - (void)publishDataAtLeastOnce:(NSData*)theData onTopic:(NSString*)theTopic;
-
946 
-
952 - (void)publishDataAtLeastOnce:(NSData*)theData onTopic:(NSString*)theTopic retain:(BOOL)retainFlag;
-
953 
-
958 - (void)publishDataAtMostOnce:(NSData*)theData onTopic:(NSString*)theTopic;
-
959 
-
965 - (void)publishDataAtMostOnce:(NSData*)theData onTopic:(NSString*)theTopic retain:(BOOL)retainFlag;
-
966 
-
971 - (void)publishDataExactlyOnce:(NSData*)theData onTopic:(NSString*)theTopic;
-
972 
-
978 - (void)publishDataExactlyOnce:(NSData*)theData onTopic:(NSString*)theTopic retain:(BOOL)retainFlag;
-
979 
-
984 - (void)publishJson:(id)payload onTopic:(NSString*)theTopic;
-
985 
-
1010 - (BOOL)publishAndWaitData:(NSData *)data onTopic:(NSString *)topic retain:(BOOL)retainFlag qos:(MQTTQosLevel)qos;
-
1011 
-
1030 - (void)close;
-
1031 
-
1050 - (void)closeAndWait;
-
1051 
-
1087 + (NSArray *)clientCertsFromP12:(NSString *)path passphrase:(NSString *)passphrase;
-
1088 
+
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 @end
-
MQTTSessionStatus status
Definition: MQTTSession.h:273
-
NSData * willMsg
Definition: MQTTSession.h:298
+
1090 
+
1091 @end
+
MQTTSessionStatus status
Definition: MQTTSession.h:274
+
NSData * willMsg
Definition: MQTTSession.h:299
Definition: MQTTSession.h:217
-
MQTTQosLevel willQoS
Definition: MQTTSession.h:301
-
NSArray * certificates
Definition: MQTTSession.h:330
-
NSString * clientId
Definition: MQTTSession.h:277
+
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:289
-
NSString * userName
Definition: MQTTSession.h:280
-
NSRunLoop * runLoop
Definition: MQTTSession.h:310
+
BOOL cleanSessionFlag
Definition: MQTTSession.h:290
+
NSString * userName
Definition: MQTTSession.h:281
+
NSRunLoop * runLoop
Definition: MQTTSession.h:311
void(^ connectionHandler)(MQTTSessionEvent event)
-
BOOL willRetainFlag
Definition: MQTTSession.h:304
-
NSString * runLoopMode
Definition: MQTTSession.h:313
+
BOOL willRetainFlag
Definition: MQTTSession.h:305
+
NSString * runLoopMode
Definition: MQTTSession.h:314
Definition: MQTTSession.h:32
-
BOOL willFlag
Definition: MQTTSession.h:292
-
UInt8 protocolLevel
Definition: MQTTSession.h:307
+
BOOL willFlag
Definition: MQTTSession.h:293
+
UInt8 protocolLevel
Definition: MQTTSession.h:308
void closeAndWait()
-
MQTTSSLSecurityPolicy * securityPolicy
Definition: MQTTSession.h:326
-
MQTTMessage * connectMessage
Definition: MQTTSession.h:335
-
NSString * password
Definition: MQTTSession.h:283
+
MQTTSSLSecurityPolicy * securityPolicy
Definition: MQTTSession.h:327
+
MQTTMessage * connectMessage
Definition: MQTTSession.h:336
+
NSString * password
Definition: MQTTSession.h:284
MQTTSession * init()
-
UInt16 keepAliveInterval
Definition: MQTTSession.h:286
+
UInt16 keepAliveInterval
Definition: MQTTSession.h:287
void(^ messageHandler)(NSData *message, NSString *topic)
-
MQTTPersistence * persistence
Definition: MQTTSession.h:264
-
NSString * willTopic
Definition: MQTTSession.h:295
+
MQTTPersistence * persistence
Definition: MQTTSession.h:265
+
NSString * willTopic
Definition: MQTTSession.h:296
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 533ff41d..05f01146 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 @@ -3,7 +3,7 @@ - + MQTTClient: MQTTSessionManager.h Source File @@ -22,7 +22,7 @@ -
+
MQTTClient
an Objective-C Framework for MQTT
@@ -32,7 +32,7 @@
- + @@ -123,27 +123,42 @@
58 
61 @property (nonatomic, readonly) NSError *lastErrorCode;
62 
-
80 - (void)connectTo:(NSString *)host
-
81  port:(NSInteger)port
-
82  tls:(BOOL)tls
-
83  keepalive:(NSInteger)keepalive
-
84  clean:(BOOL)clean
-
85  auth:(BOOL)auth
-
86  user:(NSString *)user
-
87  pass:(NSString *)pass
-
88  willTopic:(NSString *)willTopic
-
89  will:(NSData *)will
-
90  willQos:(MQTTQosLevel)willQos
-
91  willRetainFlag:(BOOL)willRetainFlag
-
92  withClientId:(NSString *)clientId;
-
93 
-
96 - (void)connectToLast;
-
97 
-
108 - (UInt16)sendData:(NSData *)data topic:(NSString *)topic qos:(MQTTQosLevel)qos retain:(BOOL)retainFlag;
-
109 
-
112 - (void)disconnect;
-
113 
-
114 @end
+
81 - (void)connectTo:(NSString *)host
+
82  port:(NSInteger)port
+
83  tls:(BOOL)tls
+
84  keepalive:(NSInteger)keepalive
+
85  clean:(BOOL)clean
+
86  auth:(BOOL)auth
+
87  user:(NSString *)user
+
88  pass:(NSString *)pass
+
89  will:(BOOL)will
+
90  willTopic:(NSString *)willTopic
+
91  willMsg:(NSData *)willMsg
+
92  willQos:(MQTTQosLevel)willQos
+
93  willRetainFlag:(BOOL)willRetainFlag
+
94  withClientId:(NSString *)clientId;
+
95 
+
113  - (void)connectTo:(NSString *)host
+
114  port:(NSInteger)port
+
115  tls:(BOOL)tls
+
116  keepalive:(NSInteger)keepalive
+
117  clean:(BOOL)clean
+
118  auth:(BOOL)auth
+
119  user:(NSString *)user
+
120  pass:(NSString *)pass
+
121  willTopic:(NSString *)willTopic
+
122  will:(NSData *)will
+
123  willQos:(MQTTQosLevel)willQos
+
124  willRetainFlag:(BOOL)willRetainFlag
+
125  withClientId:(NSString *)clientId;
+
126 
+
129 - (void)connectToLast;
+
130 
+
141 - (UInt16)sendData:(NSData *)data topic:(NSString *)topic qos:(MQTTQosLevel)qos retain:(BOOL)retainFlag;
+
142 
+
145 - (void)disconnect;
+
146 
+
147 @end
Definition: MQTTSessionManager.h:16
NSError * lastErrorCode
Definition: MQTTSessionManager.h:61
@@ -156,9 +171,9 @@ diff --git a/MQTTClient/dist/documentation/html/annotated.html b/MQTTClient/dist/documentation/html/annotated.html index 47d2a2c2..e8317130 100644 --- a/MQTTClient/dist/documentation/html/annotated.html +++ b/MQTTClient/dist/documentation/html/annotated.html @@ -3,7 +3,7 @@ - + MQTTClient: Class List @@ -22,7 +22,7 @@ -
+
MQTTClient
an Objective-C Framework for MQTT
@@ -32,7 +32,7 @@
- + @@ -98,9 +98,9 @@ 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 9e64a511..defaa519 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 @@ -3,7 +3,7 @@ - + MQTTClient: Member List @@ -22,7 +22,7 @@ -
+
MQTTClient
an Objective-C Framework for MQTT
@@ -32,7 +32,7 @@
- + @@ -154,9 +154,9 @@ 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 af2b6e3a..a042a964 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 @@ -3,7 +3,7 @@ - + MQTTClient: Member List @@ -22,7 +22,7 @@ -
+
MQTTClient
an Objective-C Framework for MQTT
@@ -32,7 +32,7 @@
- + @@ -97,31 +97,32 @@ - connectionClosed:<MQTTSessionDelegate>connectionError:error:<MQTTSessionDelegate>connectionRefused:error:<MQTTSessionDelegate> - - connectTo:port:tls:keepalive:clean:auth:user:pass:willTopic:will:willQos:willRetainFlag:withClientId:MQTTSessionManager - - connectToLastMQTTSessionManager - delegateMQTTSessionManager - - disconnectMQTTSessionManager - - handleEvent:event:error:<MQTTSessionDelegate> - - ignoreReceived:type:qos:retained:duped:mid:data:<MQTTSessionDelegate> - lastErrorCodeMQTTSessionManager - - messageDelivered: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> + - connectTo:port:tls:keepalive:clean:auth:user:pass:will:willTopic:willMsg:willQos:willRetainFlag:withClientId:MQTTSessionManager + - connectTo:port:tls:keepalive:clean:auth:user:pass:willTopic:will:willQos:willRetainFlag:withClientId:MQTTSessionManager + - connectToLastMQTTSessionManager + delegateMQTTSessionManager + - disconnectMQTTSessionManager + - handleEvent:event:error:<MQTTSessionDelegate> + - ignoreReceived:type:qos:retained:duped:mid:data:<MQTTSessionDelegate> + lastErrorCodeMQTTSessionManager + - messageDelivered: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> diff --git a/MQTTClient/dist/documentation/html/classes.html b/MQTTClient/dist/documentation/html/classes.html index e6ba8c19..5a3f95a1 100644 --- a/MQTTClient/dist/documentation/html/classes.html +++ b/MQTTClient/dist/documentation/html/classes.html @@ -3,7 +3,7 @@ - + MQTTClient: Class Index @@ -22,7 +22,7 @@ -
+
MQTTClient
an Objective-C Framework for MQTT
@@ -32,7 +32,7 @@
- + @@ -99,9 +99,9 @@ diff --git a/MQTTClient/dist/documentation/html/doxygen.css b/MQTTClient/dist/documentation/html/doxygen.css index a0008331..b2c94ac2 100644 --- a/MQTTClient/dist/documentation/html/doxygen.css +++ b/MQTTClient/dist/documentation/html/doxygen.css @@ -1,4 +1,4 @@ -/* The standard CSS for doxygen 1.8.9.1 */ +/* The standard CSS for doxygen 1.8.10 */ body, table, div, p, dl { font: 400 14px/22px Roboto,sans-serif; @@ -1108,6 +1108,11 @@ dl.section dd { border: 0px none; } +#projectalign +{ + vertical-align: middle; +} + #projectname { font: 300% Tahoma, Arial,sans-serif; diff --git a/MQTTClient/dist/documentation/html/files.html b/MQTTClient/dist/documentation/html/files.html index 04a144b4..1ba462f9 100644 --- a/MQTTClient/dist/documentation/html/files.html +++ b/MQTTClient/dist/documentation/html/files.html @@ -3,7 +3,7 @@ - + MQTTClient: File List @@ -22,7 +22,7 @@ -
+
MQTTClient
an Objective-C Framework for MQTT
@@ -32,7 +32,7 @@
- + @@ -93,9 +93,9 @@ diff --git a/MQTTClient/dist/documentation/html/functions.html b/MQTTClient/dist/documentation/html/functions.html index 46d15f2a..e3080dbd 100644 --- a/MQTTClient/dist/documentation/html/functions.html +++ b/MQTTClient/dist/documentation/html/functions.html @@ -3,7 +3,7 @@ - + MQTTClient: Class Members @@ -22,7 +22,7 @@ -
+
MQTTClient
an Objective-C Framework for MQTT
@@ -32,7 +32,7 @@
- + @@ -163,6 +163,9 @@

- c -

  • connectMessage : MQTTSession
  • +
  • connectTo:port:tls:keepalive:clean:auth:user:pass:will:willTopic:willMsg:willQos:willRetainFlag:withClientId: +: MQTTSessionManager +
  • connectTo:port:tls:keepalive:clean:auth:user:pass:willTopic:will:willQos:willRetainFlag:withClientId: : MQTTSessionManager
  • @@ -429,9 +432,9 @@

    - w -

      diff --git a/MQTTClient/dist/documentation/html/functions_func.html b/MQTTClient/dist/documentation/html/functions_func.html index d093c245..93652050 100644 --- a/MQTTClient/dist/documentation/html/functions_func.html +++ b/MQTTClient/dist/documentation/html/functions_func.html @@ -3,7 +3,7 @@ - + MQTTClient: Class Members - Functions @@ -22,7 +22,7 @@ -
      +
      MQTTClient
      an Objective-C Framework for MQTT
      @@ -32,7 +32,7 @@
      - + @@ -145,6 +145,9 @@

      - c -

      • connectionRefused:error: : <MQTTSessionDelegate>
      • +
      • connectTo:port:tls:keepalive:clean:auth:user:pass:will:willTopic:willMsg:willQos:willRetainFlag:withClientId: +: MQTTSessionManager +
      • connectTo:port:tls:keepalive:clean:auth:user:pass:willTopic:will:willQos:willRetainFlag:withClientId: : MQTTSessionManager
      • @@ -341,9 +344,9 @@

        - u -

          diff --git a/MQTTClient/dist/documentation/html/functions_prop.html b/MQTTClient/dist/documentation/html/functions_prop.html index 366a4ef2..07843822 100644 --- a/MQTTClient/dist/documentation/html/functions_prop.html +++ b/MQTTClient/dist/documentation/html/functions_prop.html @@ -3,7 +3,7 @@ - + MQTTClient: Class Members - Properties @@ -22,7 +22,7 @@ -
          +
          MQTTClient
          an Objective-C Framework for MQTT
          @@ -32,7 +32,7 @@
          - + @@ -168,9 +168,9 @@ diff --git a/MQTTClient/dist/documentation/html/hierarchy.html b/MQTTClient/dist/documentation/html/hierarchy.html index f91c0aa8..3905179f 100644 --- a/MQTTClient/dist/documentation/html/hierarchy.html +++ b/MQTTClient/dist/documentation/html/hierarchy.html @@ -3,7 +3,7 @@ - + MQTTClient: Class Hierarchy @@ -22,7 +22,7 @@ -
          +
          MQTTClient
          an Objective-C Framework for MQTT
          @@ -32,7 +32,7 @@
          - + @@ -100,9 +100,9 @@ diff --git a/MQTTClient/dist/documentation/html/index.html b/MQTTClient/dist/documentation/html/index.html index 0a5720d8..61ea416c 100644 --- a/MQTTClient/dist/documentation/html/index.html +++ b/MQTTClient/dist/documentation/html/index.html @@ -3,7 +3,7 @@ - + MQTTClient: Main Page @@ -22,7 +22,7 @@ -
          +
          MQTTClient
          an Objective-C Framework for MQTT
          @@ -32,7 +32,7 @@
          - + @@ -91,21 +91,31 @@

          Tested with

        • vernemq
        • emqtt
        • moquette
        • +
        • ActiveMQ
        • +
        • Apollo
        • +
        • CloudMQTT

        Howto

        Add MQTTClient.framework from the dist directory to your IOS project or use the CocoaPod MQTTClient

        Documentation

        Usage

        Create a new client and connect to a broker:

        -

        ```objective-c MQTTSession *session = [[MQTTSession alloc]initWithClientId:"client_id"]

        -

        // Set delegate appropriately to receive various events // See MQTTSession.h for information on various handlers // you can subscribe to. [session setDelegate:self];

        -

        [session connectAndWaitToHost:"host" port:1883 usingSSL:NO];

        -

        ```

        -

        Subscribe to a topic:

        -

        ```objective-c [session subscribeToTopic:topic atLevel:MQTTQosLevelAtLeastOnce]; ```

        -

        Publish a message to a topic:

        -

        ```objective-c [session publishAndWaitData:data onTopic:"topic" retain:NO qos:MQTTQosLevelAtLeastOnce] ```

        -

        Framework

        +
        1 MQTTSession *session = [[MQTTSession alloc]initWithClientId:@"client_id"]
        +
        2 
        +
        3 // Set delegate appropriately to receive various events
        +
        4 // See MQTTSession.h for information on various handlers
        +
        5 // you can subscribe to.
        +
        6 [session setDelegate:self];
        +
        7 
        +
        8 [session connectAndWaitToHost:@"host" port:1883 usingSSL:NO];
        +

        Subscribe to a topic:

        +
        1 [session subscribeToTopic:topic atLevel:MQTTQosLevelAtLeastOnce];
        +

        Publish a message to a topic:

        +
        1 [session publishAndWaitData:data
        +
        2  onTopic:@"topic"
        +
        3  retain:NO
        +
        4  qos:MQTTQosLevelAtLeastOnce]
        +

        Framework

        Framework build using instructions and scripts by Jeff Verkoeyen https://github.com/jverkoey/iOS-Framework

        docs

        Documentation generated with doxygen http://doxygen.org

        @@ -121,9 +131,9 @@

        Comparison MQTT Clients for iOS (incomplete)

        diff --git a/MQTTClient/dist/documentation/html/interface_m_q_t_t_session.html b/MQTTClient/dist/documentation/html/interface_m_q_t_t_session.html index 805b5748..25e22059 100644 --- a/MQTTClient/dist/documentation/html/interface_m_q_t_t_session.html +++ b/MQTTClient/dist/documentation/html/interface_m_q_t_t_session.html @@ -3,7 +3,7 @@ - + MQTTClient: MQTTSession Class Reference @@ -22,7 +22,7 @@ -
        +
        MQTTClient
        an Objective-C Framework for MQTT
        @@ -32,7 +32,7 @@
        - + @@ -281,7 +281,7 @@
        cleanSession:YES
        will:NO
        willTopic:nil
        -
        willMsg:nil
        +
        willMsg:nil
        willRetainFlag:NO
        @@ -1270,7 +1270,7 @@
        cleanSession:YES
        will:YES
        willTopic:@"example/status"
        -
        willMsg:[[@"Client off-line"] dataUsingEncoding:NSUTF8StringEncoding]
        +
        willMsg:[[@"Client off-line"] dataUsingEncoding:NSUTF8StringEncoding]
        willRetainFlag:YES
        @@ -2464,7 +2464,7 @@

        Property Documentation

        Control MQTT persistence by setting the properties of persistence before connecting to an MQTT broker. The settings are specific to a clientId.

        -

        persistence.persistent = YES or NO (default) to establish file or in memory persistence

        +

        persistence.persistent = YES or NO (default) to establish file or in memory persistence. IMPORTANT: set immediately after creating the MQTTSession before calling any other method. Otherwise the default value (NO) will be used for this session.

        persistence.maxWindowSize (a positive number, default is 16) to control the number of messages sent before waiting for acknowledgement in Qos 1 or 2. Additional messages are stored and transmitted later.

        persistence.maxSize (a positive number of bytes, default is 64 MB) to limit the size of the persistence file. Messages published after the limit is reached are dropped.

        persistence.maxMessages (a positive number, default is 1024) to limit the number of messages stored. Additional messages published are dropped.

        @@ -2711,9 +2711,9 @@

        Property Documentation

        diff --git a/MQTTClient/dist/documentation/html/interface_m_q_t_t_session_manager.html b/MQTTClient/dist/documentation/html/interface_m_q_t_t_session_manager.html index c413a4a3..c92b4d17 100644 --- a/MQTTClient/dist/documentation/html/interface_m_q_t_t_session_manager.html +++ b/MQTTClient/dist/documentation/html/interface_m_q_t_t_session_manager.html @@ -3,7 +3,7 @@ - + MQTTClient: MQTTSessionManager Class Reference @@ -22,7 +22,7 @@ -
        +
        MQTTClient
        an Objective-C Framework for MQTT
        @@ -32,7 +32,7 @@
        - + @@ -105,6 +105,8 @@ + + @@ -165,6 +167,124 @@

        Detailed Description

        SessionManager handles the MQTT session for your application

        Method Documentation

        + +
        +
        +

        Instance Methods

        (void) - connectTo:port:tls:keepalive:clean:auth:user:pass:will:willTopic:willMsg:willQos:willRetainFlag:withClientId:
         
        (void) - connectTo:port:tls:keepalive:clean:auth:user:pass:willTopic:will:willQos:willRetainFlag:withClientId:
         
        (void) - connectToLast
        + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
        - (void) connectTo: (NSString *) host
        port:(NSInteger) port
        tls:(BOOL) tls
        keepalive:(NSInteger) keepalive
        clean:(BOOL) clean
        auth:(BOOL) auth
        user:(NSString *) user
        pass:(NSString *) pass
        will:(BOOL) will
        willTopic:(NSString *) willTopic
        willMsg:(NSData *) willMsg
        willQos:(MQTTQosLevel) willQos
        willRetainFlag:(BOOL) willRetainFlag
        withClientId:(NSString *) clientId 
        +
        +

        Connects to the MQTT broker and stores the parameters for subsequent reconnects

        Parameters
        + + + + + + + + + + + + + + + +
        hostspecifies the hostname or ip address to connect to. Defaults to "localhost".
        portspefies the port to connect to
        tlsspecifies whether to use SSL or not
        keepaliveThe Keep Alive is a time interval measured in seconds. The MQTTClient ensures that the interval between Control Packets being sent does not exceed the Keep Alive value. In the absence of sending any other Control Packets, the Client sends a PINGREQ Packet.
        cleanspecifies if the server should discard previous session information.
        authspecifies the user and pass parameters should be used for authenthication
        useran NSString object containing the user's name (or ID) for authentication. May be nil.
        passan NSString object containing the user's password. If userName is nil, password must be nil as well.
        willindicates whether a will shall be sent
        willTopicthe Will Topic is a string, must not be nil
        willMsgthe Will Message, might be zero length
        willQosspecifies the QoS level to be used when publishing the Will Message.
        willRetainFlagindicates if the server should publish the Will Messages with retainFlag.
        clientIdThe Client Identifier identifies the Client to the Server. If nil, a random clientId is generated.
        +
        +
        +
        Returns
        the initialised MQTTSessionManager object
        + +
        +
        @@ -449,9 +569,9 @@

        Property Documentation

        diff --git a/MQTTClient/dist/documentation/html/protocol_m_q_t_t_session_delegate-p-members.html b/MQTTClient/dist/documentation/html/protocol_m_q_t_t_session_delegate-p-members.html index ca301299..314addaf 100644 --- a/MQTTClient/dist/documentation/html/protocol_m_q_t_t_session_delegate-p-members.html +++ b/MQTTClient/dist/documentation/html/protocol_m_q_t_t_session_delegate-p-members.html @@ -3,7 +3,7 @@ - + MQTTClient: Member List @@ -22,7 +22,7 @@ -
        +
        MQTTClient
        an Objective-C Framework for MQTT
        @@ -32,7 +32,7 @@
        - + @@ -111,9 +111,9 @@ diff --git a/MQTTClient/dist/documentation/html/protocol_m_q_t_t_session_delegate-p.html b/MQTTClient/dist/documentation/html/protocol_m_q_t_t_session_delegate-p.html index a9075971..9047c2dd 100644 --- a/MQTTClient/dist/documentation/html/protocol_m_q_t_t_session_delegate-p.html +++ b/MQTTClient/dist/documentation/html/protocol_m_q_t_t_session_delegate-p.html @@ -3,7 +3,7 @@ - + MQTTClient: <MQTTSessionDelegate> Protocol Reference @@ -22,7 +22,7 @@ -
        +
        MQTTClient
        an Objective-C Framework for MQTT
        @@ -32,7 +32,7 @@
        - + @@ -1043,9 +1043,9 @@ diff --git a/MQTTClient/dist/documentation/html/protocol_m_q_t_t_session_manager_delegate-p-members.html b/MQTTClient/dist/documentation/html/protocol_m_q_t_t_session_manager_delegate-p-members.html index 4461f984..4c20792e 100644 --- a/MQTTClient/dist/documentation/html/protocol_m_q_t_t_session_manager_delegate-p-members.html +++ b/MQTTClient/dist/documentation/html/protocol_m_q_t_t_session_manager_delegate-p-members.html @@ -3,7 +3,7 @@ - + MQTTClient: Member List @@ -22,7 +22,7 @@ -
        +
        MQTTClient
        an Objective-C Framework for MQTT
        @@ -32,7 +32,7 @@
        - + @@ -94,9 +94,9 @@ diff --git a/MQTTClient/dist/documentation/html/protocol_m_q_t_t_session_manager_delegate-p.html b/MQTTClient/dist/documentation/html/protocol_m_q_t_t_session_manager_delegate-p.html index 36a8024f..b9e80acc 100644 --- a/MQTTClient/dist/documentation/html/protocol_m_q_t_t_session_manager_delegate-p.html +++ b/MQTTClient/dist/documentation/html/protocol_m_q_t_t_session_manager_delegate-p.html @@ -3,7 +3,7 @@ - + MQTTClient: <MQTTSessionManagerDelegate> Protocol Reference @@ -22,7 +22,7 @@ -
        +
        MQTTClient
        an Objective-C Framework for MQTT
        @@ -32,7 +32,7 @@
        - + @@ -155,9 +155,9 @@ diff --git a/MQTTClient/dist/documentation/html/search/all_0.html b/MQTTClient/dist/documentation/html/search/all_0.html index c491fd8f..1d469500 100644 --- a/MQTTClient/dist/documentation/html/search/all_0.html +++ b/MQTTClient/dist/documentation/html/search/all_0.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/all_1.html b/MQTTClient/dist/documentation/html/search/all_1.html index 89fd5f83..1fbc509c 100644 --- a/MQTTClient/dist/documentation/html/search/all_1.html +++ b/MQTTClient/dist/documentation/html/search/all_1.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/all_1.js b/MQTTClient/dist/documentation/html/search/all_1.js index 050a311f..4008bcf1 100644 --- a/MQTTClient/dist/documentation/html/search/all_1.js +++ b/MQTTClient/dist/documentation/html/search/all_1.js @@ -14,6 +14,7 @@ var searchData= ['connectionhandler',['connectionHandler',['../interface_m_q_t_t_session.html#a96b070cb597ed0857fbf289579c10a58',1,'MQTTSession']]], ['connectionrefused_3aerror_3a',['connectionRefused:error:',['../protocol_m_q_t_t_session_delegate-p.html#a179c4f9104394b3843a20862d50fd813',1,'MQTTSessionDelegate-p']]], ['connectmessage',['connectMessage',['../interface_m_q_t_t_session.html#a44f63ba3383e0e5c5bed5e051cad9d2f',1,'MQTTSession']]], + ['connectto_3aport_3atls_3akeepalive_3aclean_3aauth_3auser_3apass_3awill_3awilltopic_3awillmsg_3awillqos_3awillretainflag_3awithclientid_3a',['connectTo:port:tls:keepalive:clean:auth:user:pass:will:willTopic:willMsg:willQos:willRetainFlag:withClientId:',['../interface_m_q_t_t_session_manager.html#af50a6c56e8d19ef1e739cccb9e11722a',1,'MQTTSessionManager']]], ['connectto_3aport_3atls_3akeepalive_3aclean_3aauth_3auser_3apass_3awilltopic_3awill_3awillqos_3awillretainflag_3awithclientid_3a',['connectTo:port:tls:keepalive:clean:auth:user:pass:willTopic:will:willQos:willRetainFlag:withClientId:',['../interface_m_q_t_t_session_manager.html#af0b3aa800e54438a160b1c1b78b27898',1,'MQTTSessionManager']]], ['connecttohost_3aport_3a',['connectToHost:port:',['../interface_m_q_t_t_session.html#abc2b0b1291a5da11028761e3a3ed097b',1,'MQTTSession']]], ['connecttohost_3aport_3ausingssl_3a',['connectToHost:port:usingSSL:',['../interface_m_q_t_t_session.html#a97c0fc3b9a06d8c5eefa3012591feb82',1,'MQTTSession']]], diff --git a/MQTTClient/dist/documentation/html/search/all_2.html b/MQTTClient/dist/documentation/html/search/all_2.html index 2c23ed46..93962b72 100644 --- a/MQTTClient/dist/documentation/html/search/all_2.html +++ b/MQTTClient/dist/documentation/html/search/all_2.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/all_3.html b/MQTTClient/dist/documentation/html/search/all_3.html index 7ddb0cfb..679f93ca 100644 --- a/MQTTClient/dist/documentation/html/search/all_3.html +++ b/MQTTClient/dist/documentation/html/search/all_3.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/all_4.html b/MQTTClient/dist/documentation/html/search/all_4.html index eab9eb1b..adc99fbb 100644 --- a/MQTTClient/dist/documentation/html/search/all_4.html +++ b/MQTTClient/dist/documentation/html/search/all_4.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/all_5.html b/MQTTClient/dist/documentation/html/search/all_5.html index 4dfd1d50..a9fcd170 100644 --- a/MQTTClient/dist/documentation/html/search/all_5.html +++ b/MQTTClient/dist/documentation/html/search/all_5.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/all_6.html b/MQTTClient/dist/documentation/html/search/all_6.html index b98d7310..821c374d 100644 --- a/MQTTClient/dist/documentation/html/search/all_6.html +++ b/MQTTClient/dist/documentation/html/search/all_6.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/all_7.html b/MQTTClient/dist/documentation/html/search/all_7.html index ef202229..38c6c000 100644 --- a/MQTTClient/dist/documentation/html/search/all_7.html +++ b/MQTTClient/dist/documentation/html/search/all_7.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/all_8.html b/MQTTClient/dist/documentation/html/search/all_8.html index 12e5aff1..2a22cd52 100644 --- a/MQTTClient/dist/documentation/html/search/all_8.html +++ b/MQTTClient/dist/documentation/html/search/all_8.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/all_9.html b/MQTTClient/dist/documentation/html/search/all_9.html index 7e100075..bd9b05c3 100644 --- a/MQTTClient/dist/documentation/html/search/all_9.html +++ b/MQTTClient/dist/documentation/html/search/all_9.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/all_a.html b/MQTTClient/dist/documentation/html/search/all_a.html index 95b4c8fc..4a25af1c 100644 --- a/MQTTClient/dist/documentation/html/search/all_a.html +++ b/MQTTClient/dist/documentation/html/search/all_a.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/all_b.html b/MQTTClient/dist/documentation/html/search/all_b.html index 1f1beb55..a92de485 100644 --- a/MQTTClient/dist/documentation/html/search/all_b.html +++ b/MQTTClient/dist/documentation/html/search/all_b.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/all_c.html b/MQTTClient/dist/documentation/html/search/all_c.html index ec9a0c84..20cdfbcf 100644 --- a/MQTTClient/dist/documentation/html/search/all_c.html +++ b/MQTTClient/dist/documentation/html/search/all_c.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/all_d.html b/MQTTClient/dist/documentation/html/search/all_d.html index 654d1988..00b28ed8 100644 --- a/MQTTClient/dist/documentation/html/search/all_d.html +++ b/MQTTClient/dist/documentation/html/search/all_d.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/classes_0.html b/MQTTClient/dist/documentation/html/search/classes_0.html index 8888fa80..523591f0 100644 --- a/MQTTClient/dist/documentation/html/search/classes_0.html +++ b/MQTTClient/dist/documentation/html/search/classes_0.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/functions_0.html b/MQTTClient/dist/documentation/html/search/functions_0.html index 88c8a268..246d1672 100644 --- a/MQTTClient/dist/documentation/html/search/functions_0.html +++ b/MQTTClient/dist/documentation/html/search/functions_0.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/functions_1.html b/MQTTClient/dist/documentation/html/search/functions_1.html index 215c1bf6..5f14d674 100644 --- a/MQTTClient/dist/documentation/html/search/functions_1.html +++ b/MQTTClient/dist/documentation/html/search/functions_1.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/functions_1.js b/MQTTClient/dist/documentation/html/search/functions_1.js index 12e69896..c7135eb7 100644 --- a/MQTTClient/dist/documentation/html/search/functions_1.js +++ b/MQTTClient/dist/documentation/html/search/functions_1.js @@ -9,6 +9,7 @@ var searchData= ['connectionclosed_3a',['connectionClosed:',['../protocol_m_q_t_t_session_delegate-p.html#a6ee6176897e9dc28236c562aece2a375',1,'MQTTSessionDelegate-p']]], ['connectionerror_3aerror_3a',['connectionError:error:',['../protocol_m_q_t_t_session_delegate-p.html#a8895314112168286947d78a102185ab2',1,'MQTTSessionDelegate-p']]], ['connectionrefused_3aerror_3a',['connectionRefused:error:',['../protocol_m_q_t_t_session_delegate-p.html#a179c4f9104394b3843a20862d50fd813',1,'MQTTSessionDelegate-p']]], + ['connectto_3aport_3atls_3akeepalive_3aclean_3aauth_3auser_3apass_3awill_3awilltopic_3awillmsg_3awillqos_3awillretainflag_3awithclientid_3a',['connectTo:port:tls:keepalive:clean:auth:user:pass:will:willTopic:willMsg:willQos:willRetainFlag:withClientId:',['../interface_m_q_t_t_session_manager.html#af50a6c56e8d19ef1e739cccb9e11722a',1,'MQTTSessionManager']]], ['connectto_3aport_3atls_3akeepalive_3aclean_3aauth_3auser_3apass_3awilltopic_3awill_3awillqos_3awillretainflag_3awithclientid_3a',['connectTo:port:tls:keepalive:clean:auth:user:pass:willTopic:will:willQos:willRetainFlag:withClientId:',['../interface_m_q_t_t_session_manager.html#af0b3aa800e54438a160b1c1b78b27898',1,'MQTTSessionManager']]], ['connecttohost_3aport_3a',['connectToHost:port:',['../interface_m_q_t_t_session.html#abc2b0b1291a5da11028761e3a3ed097b',1,'MQTTSession']]], ['connecttohost_3aport_3ausingssl_3a',['connectToHost:port:usingSSL:',['../interface_m_q_t_t_session.html#a97c0fc3b9a06d8c5eefa3012591feb82',1,'MQTTSession']]], diff --git a/MQTTClient/dist/documentation/html/search/functions_2.html b/MQTTClient/dist/documentation/html/search/functions_2.html index f17abffc..3995cf8c 100644 --- a/MQTTClient/dist/documentation/html/search/functions_2.html +++ b/MQTTClient/dist/documentation/html/search/functions_2.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/functions_3.html b/MQTTClient/dist/documentation/html/search/functions_3.html index 8a4bbe14..4e302d69 100644 --- a/MQTTClient/dist/documentation/html/search/functions_3.html +++ b/MQTTClient/dist/documentation/html/search/functions_3.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/functions_4.html b/MQTTClient/dist/documentation/html/search/functions_4.html index cce7ce90..58ca83a6 100644 --- a/MQTTClient/dist/documentation/html/search/functions_4.html +++ b/MQTTClient/dist/documentation/html/search/functions_4.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/functions_5.html b/MQTTClient/dist/documentation/html/search/functions_5.html index e2f6e313..5f9f05ae 100644 --- a/MQTTClient/dist/documentation/html/search/functions_5.html +++ b/MQTTClient/dist/documentation/html/search/functions_5.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/functions_6.html b/MQTTClient/dist/documentation/html/search/functions_6.html index 342a0762..c980da25 100644 --- a/MQTTClient/dist/documentation/html/search/functions_6.html +++ b/MQTTClient/dist/documentation/html/search/functions_6.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/functions_7.html b/MQTTClient/dist/documentation/html/search/functions_7.html index 04db8a64..38573293 100644 --- a/MQTTClient/dist/documentation/html/search/functions_7.html +++ b/MQTTClient/dist/documentation/html/search/functions_7.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/functions_8.html b/MQTTClient/dist/documentation/html/search/functions_8.html index 6bab2c81..088e437f 100644 --- a/MQTTClient/dist/documentation/html/search/functions_8.html +++ b/MQTTClient/dist/documentation/html/search/functions_8.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/functions_9.html b/MQTTClient/dist/documentation/html/search/functions_9.html index e32df637..61de44ad 100644 --- a/MQTTClient/dist/documentation/html/search/functions_9.html +++ b/MQTTClient/dist/documentation/html/search/functions_9.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/functions_a.html b/MQTTClient/dist/documentation/html/search/functions_a.html index 1ae07c72..a46b662e 100644 --- a/MQTTClient/dist/documentation/html/search/functions_a.html +++ b/MQTTClient/dist/documentation/html/search/functions_a.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/properties_0.html b/MQTTClient/dist/documentation/html/search/properties_0.html index 0f618b77..b2b50627 100644 --- a/MQTTClient/dist/documentation/html/search/properties_0.html +++ b/MQTTClient/dist/documentation/html/search/properties_0.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/properties_1.html b/MQTTClient/dist/documentation/html/search/properties_1.html index 6684dbe1..00e0b36b 100644 --- a/MQTTClient/dist/documentation/html/search/properties_1.html +++ b/MQTTClient/dist/documentation/html/search/properties_1.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/properties_2.html b/MQTTClient/dist/documentation/html/search/properties_2.html index aee68974..adae8dca 100644 --- a/MQTTClient/dist/documentation/html/search/properties_2.html +++ b/MQTTClient/dist/documentation/html/search/properties_2.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/properties_3.html b/MQTTClient/dist/documentation/html/search/properties_3.html index eb734a80..3a87eb54 100644 --- a/MQTTClient/dist/documentation/html/search/properties_3.html +++ b/MQTTClient/dist/documentation/html/search/properties_3.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/properties_4.html b/MQTTClient/dist/documentation/html/search/properties_4.html index 5c35c97b..f6bd5c59 100644 --- a/MQTTClient/dist/documentation/html/search/properties_4.html +++ b/MQTTClient/dist/documentation/html/search/properties_4.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/properties_5.html b/MQTTClient/dist/documentation/html/search/properties_5.html index 1eb986a4..4d6f3cad 100644 --- a/MQTTClient/dist/documentation/html/search/properties_5.html +++ b/MQTTClient/dist/documentation/html/search/properties_5.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/properties_6.html b/MQTTClient/dist/documentation/html/search/properties_6.html index ddcc5271..26db6e75 100644 --- a/MQTTClient/dist/documentation/html/search/properties_6.html +++ b/MQTTClient/dist/documentation/html/search/properties_6.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/properties_7.html b/MQTTClient/dist/documentation/html/search/properties_7.html index 53945ef8..78ddf63a 100644 --- a/MQTTClient/dist/documentation/html/search/properties_7.html +++ b/MQTTClient/dist/documentation/html/search/properties_7.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/properties_8.html b/MQTTClient/dist/documentation/html/search/properties_8.html index 73d39314..83f61abc 100644 --- a/MQTTClient/dist/documentation/html/search/properties_8.html +++ b/MQTTClient/dist/documentation/html/search/properties_8.html @@ -1,7 +1,7 @@ - + diff --git a/MQTTClient/dist/documentation/html/search/properties_9.html b/MQTTClient/dist/documentation/html/search/properties_9.html index 7f39706f..026ea28f 100644 --- a/MQTTClient/dist/documentation/html/search/properties_9.html +++ b/MQTTClient/dist/documentation/html/search/properties_9.html @@ -1,7 +1,7 @@ - +