BLEServiceHandler.h 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. //
  2. // BLEServiceHandler.h
  3. // OneCable
  4. //
  5. // Created by KaRam Kim on 2017. 5. 18..
  6. // Copyright © 2017년 ntels. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. #import "BTLEDeivceModel.h"
  10. typedef enum {
  11. BLEWlanListType1,
  12. BLEWlanListType2,
  13. BLEWlanListType3,
  14. } BLEWlanListType;
  15. static NSString *kBLEChrStWiFiScan = @"SCAN_CHR_UUID";
  16. static NSString *kBLEChrRdWiFiList1 = @"WLAN_LIST1_CHR_UUID";
  17. static NSString *kBLEChrRdWiFiList2 = @"WLAN_LIST2_CHR_UUID";
  18. static NSString *kBLEChrRdWiFiList3 = @"WLAN_LIST3_CHR_UUID";
  19. static NSString *kBLEChrStSSIDArg = @"SSID_ARG_CHR_UUID";
  20. static NSString *kBLEChrStPWDArg = @"PASSWORD_ARG_CHR_UUID";
  21. static NSString *kBLEChrStDHCPArg = @"WF_IP_SET_ARG_CHR_UUID";
  22. static NSString *kBLEChrStSetApply = @"APPLY_CHR_UUID";
  23. static NSString *kBLEChrRdConInfo = @"CONNECTION_CHR_UUID";
  24. static NSString *kBLEChrRdSSID = @"SSID_CHR_UUID";
  25. static NSString *kBLEChrRdBSSID = @"BSSID_CHR_UUID";
  26. static NSString *kBLEChrRnIpAddr = @"WF_IP_ADDR_CHR_UUID";
  27. @protocol BLEServiceHandlerDelegate <NSObject>
  28. @optional
  29. - (void) BLEConnected:(BTLEDeivceModel *)info;
  30. - (void) BLEDisConnected:(BTLEDeivceModel *)info;
  31. - (void) BLEUpldateDevice:(BTLEDeivceModel *)info;
  32. - (void) BLEWiFiConnectionInfoUpdate:(CBCharacteristic *)info;
  33. @end
  34. @interface BLEServiceHandler : NSObject
  35. @property (readonly, nonatomic) BOOL isConnected;
  36. @property (strong, nonatomic) id delegate ;
  37. @property (strong, nonatomic) BTLEDeivceModel *conDevice;
  38. + (id)sharedManager;
  39. - (void)connect:(BTLEDeivceModel *)info;
  40. - (void)disConnect;
  41. - (void) startScan;
  42. - (void) stopScan;
  43. - (NSArray *)getDeviceList;
  44. -(CBCharacteristic *)getChrInfo:(NSString *)name;
  45. -(NSString *)getChrName:(CBCharacteristic *)info;
  46. -(NSString *)getStrUUID:(CBCharacteristic *)info;
  47. - (NSString*)hexStringValue:(CBCharacteristic *)input;
  48. - (NSString*)asciiStringValue:(CBCharacteristic *)input;
  49. -(void)sendData:(CBCharacteristic *)chr str:(NSString *)str;
  50. //WiFi Setting관련 메뉴
  51. // WiFi Ap 스캔
  52. -(void)scanWiFiList;
  53. // WiFi 스캔결과 조회
  54. -(NSString *)getWLanList:(BLEWlanListType)type;
  55. // 스캔된 목록중에 존재하는 SSID를 BLE를 통해 GW에 입력
  56. -(void)setWiFiSSID:(NSString *)ssid;
  57. // 입력된 SSID에 해당하는 AP의 Password를 GW에 입력
  58. -(void)setWiFiPwd:(NSString *)pwd;
  59. // IP 설정타입을 DHCP로 변경
  60. -(void)enableDHCP;
  61. // 설정한 정보를 이용해서 AP에 접속 / IP받아오기
  62. -(void)applyWiFiSettingInfo;
  63. @end