1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
//
// TAPConnectionManager.h
// TapTalk
//
// Created by Dominic Vedericho on 09/08/18.
// Copyright © 2018 Moselo. All rights reserved.
//
#import <Foundation/Foundation.h>
#import <SocketRocket/SocketRocket.h>
typedef NS_ENUM(NSInteger, TAPConnectionManagerStatusType) {
TAPConnectionManagerStatusTypeNotConnected = 0,
TAPConnectionManagerStatusTypeDisconnected = 1,
TAPConnectionManagerStatusTypeConnecting = 2,
TAPConnectionManagerStatusTypeConnected = 3,
};
@protocol TAPConnectionManagerDelegate <NSObject>
- (void)connectionManagerDidReceiveNewEmit:(NSString *)eventName parameter:(NSDictionary *)dataDictionary;
@optional
- (void)connectionManagerIsConnecting;
- (void)connectionManagerDidConnected;
- (void)connectionManagerDidReceiveError:(NSError *)error;
- (void)connectionManagerIsReconnecting;
- (void)connectionManagerDidDisconnectedWithCode:(NSInteger)code reason:(NSString *)reason cleanClose:(BOOL)clean;
@end
@interface TAPConnectionManager : NSObject
@property (weak, nonatomic) id<TAPConnectionManagerDelegate> delegate;
@property (nonatomic) TAPConnectionManagerStatusType tapConnectionStatus;
+ (TAPConnectionManager *)sharedManager;
- (void)connect;
- (void)sendEmit:(NSString *)eventName parameters:(NSDictionary *)parameterDictionary;
- (void)disconnect;
- (TAPConnectionManagerStatusType)getSocketConnectionStatus;
- (void)validateToken;
- (void)setSocketURLWithTapTalkEnvironment:(TapTalkEnvironment)environment;
@end