react-native-gizwits-sdk-v5 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +0 -0
  3. package/android/build.gradle +42 -0
  4. package/android/src/main/AndroidManifest.xml +2 -0
  5. package/android/src/main/java/com/gizwits/reactnativegizwitssdkv5/RNGizSDKManagerModule.kt +13 -0
  6. package/android/src/main/java/com/gizwits/reactnativegizwitssdkv5/RNGizSDKManagerPackage.kt +19 -0
  7. package/ios/GizSDKV5.framework/Documentation.html +47 -0
  8. package/ios/GizSDKV5.framework/Frameworks/Sentry-Dynamic.framework/Info.plist +0 -0
  9. package/ios/GizSDKV5.framework/Frameworks/Sentry-Dynamic.framework/Sentry-Dynamic +0 -0
  10. package/ios/GizSDKV5.framework/GizSDKV5 +0 -0
  11. package/ios/GizSDKV5.framework/Headers/CocoaAsyncSocket.h +18 -0
  12. package/ios/GizSDKV5.framework/Headers/DDASLLogger.h +41 -0
  13. package/ios/GizSDKV5.framework/Headers/DDAbstractDatabaseLogger.h +102 -0
  14. package/ios/GizSDKV5.framework/Headers/DDContextFilterLogFormatter.h +63 -0
  15. package/ios/GizSDKV5.framework/Headers/DDDispatchQueueLogFormatter.h +128 -0
  16. package/ios/GizSDKV5.framework/Headers/DDFileLogger.h +340 -0
  17. package/ios/GizSDKV5.framework/Headers/DDLog+LOGV.h +99 -0
  18. package/ios/GizSDKV5.framework/Headers/DDMultiFormatter.h +30 -0
  19. package/ios/GizSDKV5.framework/Headers/DDTTYLogger.h +171 -0
  20. package/ios/GizSDKV5.framework/Headers/ForegroundReconnection.h +23 -0
  21. package/ios/GizSDKV5.framework/Headers/GCDTimer.h +19 -0
  22. package/ios/GizSDKV5.framework/Headers/GizSDKV5-Swift.h +313 -0
  23. package/ios/GizSDKV5.framework/Headers/GizSDKV5.h +21 -0
  24. package/ios/GizSDKV5.framework/Headers/MQTTClient.h +39 -0
  25. package/ios/GizSDKV5.framework/Headers/MQTTInMemoryPersistence.h +16 -0
  26. package/ios/GizSDKV5.framework/Headers/MQTTSSLSecurityPolicyDecoder.h +19 -0
  27. package/ios/GizSDKV5.framework/Headers/MQTTSSLSecurityPolicyEncoder.h +18 -0
  28. package/ios/GizSDKV5.framework/Headers/MQTTSessionLegacy.h +112 -0
  29. package/ios/GizSDKV5.framework/Headers/MQTTSessionSynchron.h +194 -0
  30. package/ios/GizSDKV5.framework/Headers/MQTTStrict.h +33 -0
  31. package/ios/GizSDKV5.framework/Headers/MQTTUntil.h +14 -0
  32. package/ios/GizSDKV5.framework/Headers/ReconnectTimer.h +21 -0
  33. package/ios/GizSDKV5.framework/Headers/_GCDAsyncSocket.h +1226 -0
  34. package/ios/GizSDKV5.framework/Headers/_GCDAsyncUdpSocket.h +1036 -0
  35. package/ios/GizSDKV5.framework/Headers/_GizwitsParser.h +61 -0
  36. package/ios/GizSDKV5.framework/Headers/_MQTTCFSocketDecoder.h +39 -0
  37. package/ios/GizSDKV5.framework/Headers/_MQTTCFSocketEncoder.h +38 -0
  38. package/ios/GizSDKV5.framework/Headers/_MQTTCFSocketTransport.h +79 -0
  39. package/ios/GizSDKV5.framework/Headers/_MQTTCoreDataPersistence.h +21 -0
  40. package/ios/GizSDKV5.framework/Headers/_MQTTDecoder.h +66 -0
  41. package/ios/GizSDKV5.framework/Headers/_MQTTLog.h +123 -0
  42. package/ios/GizSDKV5.framework/Headers/_MQTTMessage.h +233 -0
  43. package/ios/GizSDKV5.framework/Headers/_MQTTPersistence.h +124 -0
  44. package/ios/GizSDKV5.framework/Headers/_MQTTProperties.h +76 -0
  45. package/ios/GizSDKV5.framework/Headers/_MQTTSSLSecurityPolicy.h +158 -0
  46. package/ios/GizSDKV5.framework/Headers/_MQTTSSLSecurityPolicyTransport.h +30 -0
  47. package/ios/GizSDKV5.framework/Headers/_MQTTSession.h +886 -0
  48. package/ios/GizSDKV5.framework/Headers/_MQTTSessionManager.h +237 -0
  49. package/ios/GizSDKV5.framework/Headers/_MQTTTransport.h +114 -0
  50. package/ios/GizSDKV5.framework/Headers/common.h +104 -0
  51. package/ios/GizSDKV5.framework/Info.plist +0 -0
  52. package/ios/GizSDKV5.framework/Modules/GizSDKV5.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo +0 -0
  53. package/ios/GizSDKV5.framework/Modules/GizSDKV5.swiftmodule/arm64-apple-ios.abi.json +9 -0
  54. package/ios/GizSDKV5.framework/Modules/GizSDKV5.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
  55. package/ios/GizSDKV5.framework/Modules/GizSDKV5.swiftmodule/arm64-apple-ios.swiftmodule +0 -0
  56. package/ios/GizSDKV5.framework/Modules/module.modulemap +11 -0
  57. package/ios/GizSDKV5.framework/README.txt +7 -0
  58. package/ios/RNGizSDKManagerModule-Bridging-Header.h +5 -0
  59. package/ios/RNGizSDKManagerModule.m +11 -0
  60. package/ios/RNGizSDKManagerModule.swift +21 -0
  61. package/ios/RNGizSDKManagerModule.xcodeproj/project.pbxproj +314 -0
  62. package/lib/index.d.ts +4 -0
  63. package/lib/index.js +22 -0
  64. package/lib/index.js.map +1 -0
  65. package/package.json +67 -0
  66. package/react-native-gizwits-sdk-v5.podspec +21 -0
@@ -0,0 +1,19 @@
1
+ //
2
+ // Timer.h
3
+ // MQTTClient
4
+ //
5
+ // Created by Josip Cavar on 06/11/2017.
6
+ // Copyright © 2017 Christoph Krey. All rights reserved.
7
+ //
8
+
9
+ #import <Foundation/Foundation.h>
10
+
11
+ @interface GCDTimer: NSObject
12
+
13
+ + (GCDTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval)interval
14
+ repeats:(BOOL)repeats
15
+ queue:(dispatch_queue_t)queue
16
+ block:(void (^)(void))block;
17
+ - (void)invalidate;
18
+
19
+ @end
@@ -0,0 +1,313 @@
1
+ #if 0
2
+ #elif defined(__arm64__) && __arm64__
3
+ // Generated by Apple Swift version 5.9 (swiftlang-5.9.0.128.2 clang-1500.0.40.1)
4
+ #ifndef GIZSDKV5_SWIFT_H
5
+ #define GIZSDKV5_SWIFT_H
6
+ #pragma clang diagnostic push
7
+ #pragma clang diagnostic ignored "-Wgcc-compat"
8
+
9
+ #if !defined(__has_include)
10
+ # define __has_include(x) 0
11
+ #endif
12
+ #if !defined(__has_attribute)
13
+ # define __has_attribute(x) 0
14
+ #endif
15
+ #if !defined(__has_feature)
16
+ # define __has_feature(x) 0
17
+ #endif
18
+ #if !defined(__has_warning)
19
+ # define __has_warning(x) 0
20
+ #endif
21
+
22
+ #if __has_include(<swift/objc-prologue.h>)
23
+ # include <swift/objc-prologue.h>
24
+ #endif
25
+
26
+ #pragma clang diagnostic ignored "-Wauto-import"
27
+ #if defined(__OBJC__)
28
+ #include <Foundation/Foundation.h>
29
+ #endif
30
+ #if defined(__cplusplus)
31
+ #include <cstdint>
32
+ #include <cstddef>
33
+ #include <cstdbool>
34
+ #include <cstring>
35
+ #include <stdlib.h>
36
+ #include <new>
37
+ #include <type_traits>
38
+ #else
39
+ #include <stdint.h>
40
+ #include <stddef.h>
41
+ #include <stdbool.h>
42
+ #include <string.h>
43
+ #endif
44
+ #if defined(__cplusplus)
45
+ #if defined(__arm64e__) && __has_include(<ptrauth.h>)
46
+ # include <ptrauth.h>
47
+ #else
48
+ #pragma clang diagnostic push
49
+ #pragma clang diagnostic ignored "-Wreserved-macro-identifier"
50
+ # ifndef __ptrauth_swift_value_witness_function_pointer
51
+ # define __ptrauth_swift_value_witness_function_pointer(x)
52
+ # endif
53
+ # ifndef __ptrauth_swift_class_method_pointer
54
+ # define __ptrauth_swift_class_method_pointer(x)
55
+ # endif
56
+ #pragma clang diagnostic pop
57
+ #endif
58
+ #endif
59
+
60
+ #if !defined(SWIFT_TYPEDEFS)
61
+ # define SWIFT_TYPEDEFS 1
62
+ # if __has_include(<uchar.h>)
63
+ # include <uchar.h>
64
+ # elif !defined(__cplusplus)
65
+ typedef uint_least16_t char16_t;
66
+ typedef uint_least32_t char32_t;
67
+ # endif
68
+ typedef float swift_float2 __attribute__((__ext_vector_type__(2)));
69
+ typedef float swift_float3 __attribute__((__ext_vector_type__(3)));
70
+ typedef float swift_float4 __attribute__((__ext_vector_type__(4)));
71
+ typedef double swift_double2 __attribute__((__ext_vector_type__(2)));
72
+ typedef double swift_double3 __attribute__((__ext_vector_type__(3)));
73
+ typedef double swift_double4 __attribute__((__ext_vector_type__(4)));
74
+ typedef int swift_int2 __attribute__((__ext_vector_type__(2)));
75
+ typedef int swift_int3 __attribute__((__ext_vector_type__(3)));
76
+ typedef int swift_int4 __attribute__((__ext_vector_type__(4)));
77
+ typedef unsigned int swift_uint2 __attribute__((__ext_vector_type__(2)));
78
+ typedef unsigned int swift_uint3 __attribute__((__ext_vector_type__(3)));
79
+ typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4)));
80
+ #endif
81
+
82
+ #if !defined(SWIFT_PASTE)
83
+ # define SWIFT_PASTE_HELPER(x, y) x##y
84
+ # define SWIFT_PASTE(x, y) SWIFT_PASTE_HELPER(x, y)
85
+ #endif
86
+ #if !defined(SWIFT_METATYPE)
87
+ # define SWIFT_METATYPE(X) Class
88
+ #endif
89
+ #if !defined(SWIFT_CLASS_PROPERTY)
90
+ # if __has_feature(objc_class_property)
91
+ # define SWIFT_CLASS_PROPERTY(...) __VA_ARGS__
92
+ # else
93
+ # define SWIFT_CLASS_PROPERTY(...)
94
+ # endif
95
+ #endif
96
+ #if !defined(SWIFT_RUNTIME_NAME)
97
+ # if __has_attribute(objc_runtime_name)
98
+ # define SWIFT_RUNTIME_NAME(X) __attribute__((objc_runtime_name(X)))
99
+ # else
100
+ # define SWIFT_RUNTIME_NAME(X)
101
+ # endif
102
+ #endif
103
+ #if !defined(SWIFT_COMPILE_NAME)
104
+ # if __has_attribute(swift_name)
105
+ # define SWIFT_COMPILE_NAME(X) __attribute__((swift_name(X)))
106
+ # else
107
+ # define SWIFT_COMPILE_NAME(X)
108
+ # endif
109
+ #endif
110
+ #if !defined(SWIFT_METHOD_FAMILY)
111
+ # if __has_attribute(objc_method_family)
112
+ # define SWIFT_METHOD_FAMILY(X) __attribute__((objc_method_family(X)))
113
+ # else
114
+ # define SWIFT_METHOD_FAMILY(X)
115
+ # endif
116
+ #endif
117
+ #if !defined(SWIFT_NOESCAPE)
118
+ # if __has_attribute(noescape)
119
+ # define SWIFT_NOESCAPE __attribute__((noescape))
120
+ # else
121
+ # define SWIFT_NOESCAPE
122
+ # endif
123
+ #endif
124
+ #if !defined(SWIFT_RELEASES_ARGUMENT)
125
+ # if __has_attribute(ns_consumed)
126
+ # define SWIFT_RELEASES_ARGUMENT __attribute__((ns_consumed))
127
+ # else
128
+ # define SWIFT_RELEASES_ARGUMENT
129
+ # endif
130
+ #endif
131
+ #if !defined(SWIFT_WARN_UNUSED_RESULT)
132
+ # if __has_attribute(warn_unused_result)
133
+ # define SWIFT_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
134
+ # else
135
+ # define SWIFT_WARN_UNUSED_RESULT
136
+ # endif
137
+ #endif
138
+ #if !defined(SWIFT_NORETURN)
139
+ # if __has_attribute(noreturn)
140
+ # define SWIFT_NORETURN __attribute__((noreturn))
141
+ # else
142
+ # define SWIFT_NORETURN
143
+ # endif
144
+ #endif
145
+ #if !defined(SWIFT_CLASS_EXTRA)
146
+ # define SWIFT_CLASS_EXTRA
147
+ #endif
148
+ #if !defined(SWIFT_PROTOCOL_EXTRA)
149
+ # define SWIFT_PROTOCOL_EXTRA
150
+ #endif
151
+ #if !defined(SWIFT_ENUM_EXTRA)
152
+ # define SWIFT_ENUM_EXTRA
153
+ #endif
154
+ #if !defined(SWIFT_CLASS)
155
+ # if __has_attribute(objc_subclassing_restricted)
156
+ # define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_CLASS_EXTRA
157
+ # define SWIFT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
158
+ # else
159
+ # define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
160
+ # define SWIFT_CLASS_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
161
+ # endif
162
+ #endif
163
+ #if !defined(SWIFT_RESILIENT_CLASS)
164
+ # if __has_attribute(objc_class_stub)
165
+ # define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) __attribute__((objc_class_stub))
166
+ # define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_class_stub)) SWIFT_CLASS_NAMED(SWIFT_NAME)
167
+ # else
168
+ # define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME)
169
+ # define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) SWIFT_CLASS_NAMED(SWIFT_NAME)
170
+ # endif
171
+ #endif
172
+ #if !defined(SWIFT_PROTOCOL)
173
+ # define SWIFT_PROTOCOL(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
174
+ # define SWIFT_PROTOCOL_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
175
+ #endif
176
+ #if !defined(SWIFT_EXTENSION)
177
+ # define SWIFT_EXTENSION(M) SWIFT_PASTE(M##_Swift_, __LINE__)
178
+ #endif
179
+ #if !defined(OBJC_DESIGNATED_INITIALIZER)
180
+ # if __has_attribute(objc_designated_initializer)
181
+ # define OBJC_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer))
182
+ # else
183
+ # define OBJC_DESIGNATED_INITIALIZER
184
+ # endif
185
+ #endif
186
+ #if !defined(SWIFT_ENUM_ATTR)
187
+ # if __has_attribute(enum_extensibility)
188
+ # define SWIFT_ENUM_ATTR(_extensibility) __attribute__((enum_extensibility(_extensibility)))
189
+ # else
190
+ # define SWIFT_ENUM_ATTR(_extensibility)
191
+ # endif
192
+ #endif
193
+ #if !defined(SWIFT_ENUM)
194
+ # define SWIFT_ENUM(_type, _name, _extensibility) enum _name : _type _name; enum SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
195
+ # if __has_feature(generalized_swift_name)
196
+ # define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) enum _name : _type _name SWIFT_COMPILE_NAME(SWIFT_NAME); enum SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
197
+ # else
198
+ # define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) SWIFT_ENUM(_type, _name, _extensibility)
199
+ # endif
200
+ #endif
201
+ #if !defined(SWIFT_UNAVAILABLE)
202
+ # define SWIFT_UNAVAILABLE __attribute__((unavailable))
203
+ #endif
204
+ #if !defined(SWIFT_UNAVAILABLE_MSG)
205
+ # define SWIFT_UNAVAILABLE_MSG(msg) __attribute__((unavailable(msg)))
206
+ #endif
207
+ #if !defined(SWIFT_AVAILABILITY)
208
+ # define SWIFT_AVAILABILITY(plat, ...) __attribute__((availability(plat, __VA_ARGS__)))
209
+ #endif
210
+ #if !defined(SWIFT_WEAK_IMPORT)
211
+ # define SWIFT_WEAK_IMPORT __attribute__((weak_import))
212
+ #endif
213
+ #if !defined(SWIFT_DEPRECATED)
214
+ # define SWIFT_DEPRECATED __attribute__((deprecated))
215
+ #endif
216
+ #if !defined(SWIFT_DEPRECATED_MSG)
217
+ # define SWIFT_DEPRECATED_MSG(...) __attribute__((deprecated(__VA_ARGS__)))
218
+ #endif
219
+ #if !defined(SWIFT_DEPRECATED_OBJC)
220
+ # if __has_feature(attribute_diagnose_if_objc)
221
+ # define SWIFT_DEPRECATED_OBJC(Msg) __attribute__((diagnose_if(1, Msg, "warning")))
222
+ # else
223
+ # define SWIFT_DEPRECATED_OBJC(Msg) SWIFT_DEPRECATED_MSG(Msg)
224
+ # endif
225
+ #endif
226
+ #if defined(__OBJC__)
227
+ #if !defined(IBSegueAction)
228
+ # define IBSegueAction
229
+ #endif
230
+ #endif
231
+ #if !defined(SWIFT_EXTERN)
232
+ # if defined(__cplusplus)
233
+ # define SWIFT_EXTERN extern "C"
234
+ # else
235
+ # define SWIFT_EXTERN extern
236
+ # endif
237
+ #endif
238
+ #if !defined(SWIFT_CALL)
239
+ # define SWIFT_CALL __attribute__((swiftcall))
240
+ #endif
241
+ #if !defined(SWIFT_INDIRECT_RESULT)
242
+ # define SWIFT_INDIRECT_RESULT __attribute__((swift_indirect_result))
243
+ #endif
244
+ #if !defined(SWIFT_CONTEXT)
245
+ # define SWIFT_CONTEXT __attribute__((swift_context))
246
+ #endif
247
+ #if !defined(SWIFT_ERROR_RESULT)
248
+ # define SWIFT_ERROR_RESULT __attribute__((swift_error_result))
249
+ #endif
250
+ #if defined(__cplusplus)
251
+ # define SWIFT_NOEXCEPT noexcept
252
+ #else
253
+ # define SWIFT_NOEXCEPT
254
+ #endif
255
+ #if !defined(SWIFT_C_INLINE_THUNK)
256
+ # if __has_attribute(always_inline)
257
+ # if __has_attribute(nodebug)
258
+ # define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) __attribute__((nodebug))
259
+ # else
260
+ # define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline))
261
+ # endif
262
+ # else
263
+ # define SWIFT_C_INLINE_THUNK inline
264
+ # endif
265
+ #endif
266
+ #if defined(_WIN32)
267
+ #if !defined(SWIFT_IMPORT_STDLIB_SYMBOL)
268
+ # define SWIFT_IMPORT_STDLIB_SYMBOL __declspec(dllimport)
269
+ #endif
270
+ #else
271
+ #if !defined(SWIFT_IMPORT_STDLIB_SYMBOL)
272
+ # define SWIFT_IMPORT_STDLIB_SYMBOL
273
+ #endif
274
+ #endif
275
+ #if defined(__OBJC__)
276
+ #if __has_feature(objc_modules)
277
+ #if __has_warning("-Watimport-in-framework-header")
278
+ #pragma clang diagnostic ignored "-Watimport-in-framework-header"
279
+ #endif
280
+ #endif
281
+
282
+ #endif
283
+ #pragma clang diagnostic ignored "-Wproperty-attribute-mismatch"
284
+ #pragma clang diagnostic ignored "-Wduplicate-method-arg"
285
+ #if __has_warning("-Wpragma-clang-attribute")
286
+ # pragma clang diagnostic ignored "-Wpragma-clang-attribute"
287
+ #endif
288
+ #pragma clang diagnostic ignored "-Wunknown-pragmas"
289
+ #pragma clang diagnostic ignored "-Wnullability"
290
+ #pragma clang diagnostic ignored "-Wdollar-in-identifier-extension"
291
+
292
+ #if __has_attribute(external_source_symbol)
293
+ # pragma push_macro("any")
294
+ # undef any
295
+ # pragma clang attribute push(__attribute__((external_source_symbol(language="Swift", defined_in="GizSDKV5",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol))
296
+ # pragma pop_macro("any")
297
+ #endif
298
+
299
+ #if defined(__OBJC__)
300
+
301
+
302
+ #endif
303
+ #if __has_attribute(external_source_symbol)
304
+ # pragma clang attribute pop
305
+ #endif
306
+ #if defined(__cplusplus)
307
+ #endif
308
+ #pragma clang diagnostic pop
309
+ #endif
310
+
311
+ #else
312
+ #error unsupported Swift architecture
313
+ #endif
@@ -0,0 +1,21 @@
1
+ //
2
+ // GizSDKV5.h
3
+ // GizSDKV5
4
+ //
5
+ // Created by william Zhang on 2022/4/18.
6
+ //
7
+
8
+ #import <Foundation/Foundation.h>
9
+ #import "MQTTClient.h"
10
+ #import "_GizwitsParser.h"
11
+ #import "CocoaAsyncSocket.h"
12
+
13
+ //! Project version number for GizSDKV5.
14
+ FOUNDATION_EXPORT double GizSDKV5VersionNumber;
15
+
16
+ //! Project version string for GizSDKV5.
17
+ FOUNDATION_EXPORT const unsigned char GizSDKV5VersionString[];
18
+
19
+ // In this header, you should import all the public headers of your framework using statements like #import <GizSDKV5/PublicHeader.h>
20
+
21
+
@@ -0,0 +1,39 @@
1
+ //
2
+ // MQTTClient.h
3
+ // MQTTClient
4
+ //
5
+ // Created by Christoph Krey on 13.01.14.
6
+ // Copyright © 2013-2017 Christoph Krey. All rights reserved.
7
+ //
8
+
9
+ /**
10
+ Include this file to use MQTTClient classes in your application
11
+
12
+ @author Christoph Krey c@ckrey.de
13
+ @see http://mqtt.org
14
+ */
15
+
16
+ #import <Foundation/Foundation.h>
17
+
18
+ #import "_MQTTSession.h"
19
+ #import "_MQTTDecoder.h"
20
+ #import "MQTTSessionLegacy.h"
21
+ #import "MQTTSessionSynchron.h"
22
+ #import "_MQTTProperties.h"
23
+ #import "_MQTTMessage.h"
24
+ #import "_MQTTTransport.h"
25
+ #import "_MQTTCFSocketTransport.h"
26
+ #import "_MQTTCoreDataPersistence.h"
27
+ #import "_MQTTSSLSecurityPolicyTransport.h"
28
+ #import "_MQTTLog.h"
29
+
30
+ #if __has_include("_MQTTSessionManager.h")
31
+ #import "_MQTTSessionManager.h"
32
+ #endif
33
+
34
+ //! Project version number for MQTTClient.
35
+ FOUNDATION_EXPORT double _MQTTClientVersionNumber;
36
+
37
+ //! Project version string for MQTTClient&lt;.
38
+ FOUNDATION_EXPORT const unsigned char _MQTTClientVersionString[];
39
+
@@ -0,0 +1,16 @@
1
+ //
2
+ // MQTTInMemoryPersistence.h
3
+ // MQTTClient
4
+ //
5
+ // Created by Christoph Krey on 22.03.15.
6
+ // Copyright © 2015-2017 Christoph Krey. All rights reserved.
7
+ //
8
+
9
+ #import <Foundation/Foundation.h>
10
+ #import "_MQTTPersistence.h"
11
+
12
+ @interface MQTTInMemoryPersistence : NSObject <_MQTTPersistence>
13
+ @end
14
+
15
+ @interface MQTTInMemoryFlow : NSObject <_MQTTFlow>
16
+ @end
@@ -0,0 +1,19 @@
1
+ //
2
+ // MQTTSSLSecurityPolicyDecoder.h
3
+ // MQTTClient.framework
4
+ //
5
+ // Copyright © 2013-2017, Christoph Krey. All rights reserved.
6
+ //
7
+
8
+ #import <Foundation/Foundation.h>
9
+ #import "_MQTTSSLSecurityPolicy.h"
10
+ #import "_MQTTCFSocketDecoder.h"
11
+
12
+ @interface MQTTSSLSecurityPolicyDecoder : _MQTTCFSocketDecoder
13
+
14
+ @property(strong, nonatomic) _MQTTSSLSecurityPolicy *securityPolicy;
15
+ @property(strong, nonatomic) NSString *securityDomain;
16
+
17
+ @end
18
+
19
+
@@ -0,0 +1,18 @@
1
+ //
2
+ // MQTTSSLSecurityPolicyEncoder.h
3
+ // MQTTClient.framework
4
+ //
5
+ // Copyright © 2013-2017, Christoph Krey. All rights reserved.
6
+ //
7
+
8
+ #import <Foundation/Foundation.h>
9
+ #import "_MQTTSSLSecurityPolicy.h"
10
+ #import "_MQTTCFSocketEncoder.h"
11
+
12
+ @interface MQTTSSLSecurityPolicyEncoder : _MQTTCFSocketEncoder
13
+
14
+ @property(strong, nonatomic) _MQTTSSLSecurityPolicy *securityPolicy;
15
+ @property(strong, nonatomic) NSString *securityDomain;
16
+
17
+ @end
18
+
@@ -0,0 +1,112 @@
1
+ //
2
+ // MQTTSessionLegacy.h
3
+ // MQTTClient.framework
4
+ //
5
+
6
+ /**
7
+ Using MQTT in your Objective-C application
8
+ This file contains definitions for mqttio-OBJC backward compatibility
9
+
10
+ @author Christoph Krey c@ckrey.de
11
+ @copyright Copyright © 2013-2017, Christoph Krey. All rights reserved.
12
+
13
+ based on Copyright (c) 2011, 2013, 2lemetry LLC
14
+ All rights reserved. This program and the accompanying materials
15
+ are made available under the terms of the Eclipse Public License v1.0
16
+ which accompanies this distribution, and is available at
17
+ http://www.eclipse.org/legal/epl-v10.html
18
+
19
+ @see http://mqtt.org
20
+ */
21
+
22
+
23
+ #import <Foundation/Foundation.h>
24
+ #import "_MQTTSession.h"
25
+
26
+ @interface _MQTTSession(Create)
27
+
28
+ /** initialises the MQTT session
29
+ *
30
+ * this constructor can specifies SSL securityPolicy. the default value of securityPolicy is nil(which do nothing).
31
+ *
32
+ * if SSL is enabled, by default it only evaluate server's certificates using CA infrastructure, and for most case, this type of check is enough.
33
+ * However, if your app using security model which require pinning SSL certificates to helps prevent man-in-the-middle attacks
34
+ * and other vulnerabilities. you may need to set securityPolicy to properly value(see MQTTSSLSecurityPolicy.h for more detail).
35
+ *
36
+ * NOTE: about self-signed server certificates:
37
+ * In CA infrastructure, you may establish a SSL/TLS connection with server which using self-signed certificates
38
+ * by install the certificates into OS keychain(either programmatically or manually). however, this method has some disadvantages:
39
+ * 1. every socket you app created will trust certificates you added.
40
+ * 2. if user choice to remove certificates from keychain, you app need to handling certificates re-adding.
41
+ *
42
+ * If you only want to verify the cert for the socket you are creating and for no other sockets in your app, you need to use
43
+ * MQTTSSLSecurityPolicy.
44
+ * And if you use self-signed server certificates, your need to set property: MQTTSSLSecurityPolicy.allowInvalidCertificates=YES
45
+ * (see MQTTSSLSecurityPolicy.h for more detail).
46
+ *
47
+ * @param clientId The Client Identifier identifies the Client to the Server. If nil, a random clientId is generated.
48
+ * @param userName an NSString object containing the user's name (or ID) for authentication. May be nil.
49
+ * @param password an NSString object containing the user's password. If userName is nil, password must be nil as well.
50
+ * @param keepAliveInterval 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.
51
+ * @param cleanSessionFlag specifies if the server should discard previous session information.
52
+ * @param willFlag If the Will Flag is set to YES this indicates that a Will Message MUST be published by the Server when the Server detects that the Client is disconnected for any reason other than the Client flowing a DISCONNECT Packet.
53
+ * @param willTopic If the Will Flag is set to YES, the Will Topic is a string, nil otherwise.
54
+ * @param willMsg If the Will Flag is set to YES the Will Message must be specified, nil otherwise.
55
+ * @param willQoS specifies the QoS level to be used when publishing the Will Message. If the Will Flag is set to NO, then the Will QoS MUST be set to 0. If the Will Flag is set to YES, the value of Will QoS can be 0 (0x00), 1 (0x01), or 2 (0x02).
56
+ * @param willRetainFlag indicates if the server should publish the Will Messages with retainFlag. If the Will Flag is set to NO, then the Will Retain Flag MUST be set to NO . If the Will Flag is set to YES: If Will Retain is set to NO, the Server MUST publish the Will Message as a non-retained publication [MQTT-3.1.2-14]. If Will Retain is set to YES, the Server MUST publish the Will Message as a retained publication [MQTT-3.1.2-15].
57
+ * @param protocolLevel specifies the protocol to be used. The value of the Protocol Level field for the version 3.1.1 of the protocol is 4. The value for the version 3.1 is 3.
58
+ * @param queue The queue where the streams are scheduled.
59
+ * @param securityPolicy The security policy used to evaluate server trust for secure connections.
60
+ * @param certificates An identity certificate used to reply to a server requiring client certificates according to the description given for SSLSetCertificate(). You may build the certificates array yourself or use the sundry method clientCertFromP12
61
+ * @return the initialised MQTTSession object
62
+ *
63
+ * @code
64
+ #import "MQTTClient.h"
65
+
66
+ NSString* certificate = [[NSBundle bundleForClass:[MQTTSession class]] pathForResource:@"certificate" ofType:@"cer"];
67
+ MQTTSSLSecurityPolicy *securityPolicy = [MQTTSSLSecurityPolicy policyWithPinningMode:MQTTSSLPinningModeCertificate];
68
+ securityPolicy.pinnedCertificates = @[ [NSData dataWithContentsOfFile:certificate] ];
69
+ securityPolicy.allowInvalidCertificates = YES; // if your certificate is self-signed(which didn't coupled with CA infrastructure)
70
+
71
+ MQTTSession *session = [[MQTTSession alloc]
72
+ initWithClientId:@"example-1234"
73
+ userName:@"user"
74
+ password:@"secret"
75
+ keepAlive:60
76
+ cleanSession:YES
77
+ will:YES
78
+ willTopic:@"example/status"
79
+ willMsg:[[@"Client off-line"] dataUsingEncoding:NSUTF8StringEncoding]
80
+ willQoS:2
81
+ willRetainFlag:YES
82
+ protocolLevel:4
83
+ queue:dispatch_queue_get_main_queue()
84
+ securityPolicy:securityPolicy
85
+ certificates:certificates];
86
+
87
+ [session connectToHost:@"example-1234" port:1883 usingSSL:YES];
88
+ @endcode
89
+ */
90
+ - (_MQTTSession *)initWithClientId:(NSString *)clientId
91
+ userName:(NSString *)userName
92
+ password:(NSString *)password
93
+ keepAlive:(UInt16)keepAliveInterval
94
+ connectMessage:(_MQTTMessage *)theConnectMessage
95
+ cleanSession:(BOOL)cleanSessionFlag
96
+ will:(BOOL)willFlag
97
+ willTopic:(NSString *)willTopic
98
+ willMsg:(NSData *)willMsg
99
+ willQoS:(_MQTTQosLevel)willQoS
100
+ willRetainFlag:(BOOL)willRetainFlag
101
+ protocolLevel:(UInt8)protocolLevel
102
+ queue:(dispatch_queue_t)queue
103
+ securityPolicy:(_MQTTSSLSecurityPolicy *) securityPolicy
104
+ certificates:(NSArray *)certificates;
105
+
106
+ /** for mqttio-OBJC backward compatibility
107
+ @param payload JSON payload is converted to NSData and then send. See publishData for description
108
+ @param theTopic see publishData for description
109
+ */
110
+ - (void)publishJson:(id)payload onTopic:(NSString *)theTopic;
111
+
112
+ @end