Definitions.h 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373
  1. //
  2. // Definitions.h
  3. // kneet2
  4. //
  5. // Created by Created by Jason Lee on 10/1/15.
  6. // Copyright (c) 2015 ntels. All rights reserved.
  7. //
  8. #ifndef kneet2_Definitions_h
  9. #define kneet2_Definitions_h
  10. /*
  11. // kneet 3.0 운영
  12. final static int KEY_URL_KNEET_V3 = 1;
  13. final static String URL_KNEET_V3 = "http://52.163.90.87:5017";
  14. final static String SMART_URL_KNEET_V3 = "http://52.163.90.87:5017";
  15. final static String SERVICE_ID_KNEET_V3 = "30001";
  16. final static String PROJECT_ID_KNEET_V3 = "439012691127";
  17. final static String APP_START_ID_KNEET_V3 = "ntels_kneet_v3";
  18. final static String URL_SERVICE_HUB_WEBSOCKET_V3 = "ws://13.76.96.27:8081";
  19. final static String URL_SERVICE_HUB_REST_V3 = "http://13.76.96.27:8080";
  20. final static String URL_CLOUD_GATEWAY_V3 = "http://13.76.96.27:7070";
  21. final static String VSAAS_SIP_URL_KNEET_V3 = "sip:23.98.73.196:6061;lr";
  22. final static String VSAAS_TURN_URL_KEET_V3 = "23.98.73.196";
  23. final static int VSAAS_TURN_PORT_KNEET_V3 = 3478;
  24. final static String VSAAS_SIP_DOMAIN_KNEET_V3 = "vsaas.com";
  25. final static String VSAAS_SIP_PASSWORD_KNEET_V3 = "qwer!@#$%1";
  26. */
  27. #ifndef PRODUCT_MODE
  28. //static NSString *kAPIServer = @"http://61.40.220.132:5007"; //개발
  29. static NSString *kAPIServer = @"http://52.163.90.87:5017"; //운영
  30. // #define API_SERVER @"http://61.40.220.132:5008" //개발서버 old
  31. // #define API_SERVER @"http://61.40.220.132:5009" //개발서버 - 0.6
  32. // #define API_SERVER @"http://61.40.220.132:5007" //개발서버 - 0.7
  33. // #define NISC_SERVER @"http://61.40.220.132:5001" //개발 센서 데이터 등록 (Geofencing)
  34. //상용서버
  35. // #define API_SERVER @"https://home-api.allofthings.com" //상용서버
  36. // #define NISC_SERVER @"https://home-api.allofthings.com:5003" //N-MAS REST (Geofencing)
  37. static NSString *kSocketServer = @"wss://61.40.220.23:7792/ocs/v1"; //운영
  38. //ws://13.76.96.27:8081/A24574936289/69
  39. #else //운영모드
  40. static NSString *kAPIServer = @"http://52.163.90.87:5017"; //운영
  41. //static NSString *kAPIServer = @"https://home-api.allofthings.com";
  42. //static NSString *kNISCServer = @"https://home-api.allofthings.com:5003";
  43. // #define API_SERVER @"http://61.40.220.132:5008" //개발서버 old
  44. // #define API_SERVER @"http://61.40.220.132:5009" //개발서버 - 0.6
  45. //개발
  46. // #define API_SERVER @"http://61.40.220.132:5007" //개발서버 - 0.7
  47. // #define NISC_SERVER @"http://61.40.220.132:5001" //개발 센서 데이터 등록 (Geofencing)
  48. //상용서버
  49. // #define API_SERVER @"https://home-api.allofthings.com" //상용서버
  50. // #define NISC_SERVER @"https://home-api.allofthings.com:5003" //N-MAS REST (Geofencing)
  51. static NSString *kSocketServer = @"wss://61.40.220.23:7792/ocs/v1"; //운영
  52. //ws://13.76.96.27:8081/A24574936289/69
  53. #endif
  54. //Network Constants
  55. #define API_ROOT_PATH @"/v3"
  56. //1 - 공통
  57. #define API_GET_APP_VERSION @"/mobile_app/version"
  58. //#define API_GET_CODE_LIST @"/getCodeList"
  59. #define API_GET_MOBILE @"/mobile_device/%@"
  60. #define API_POST_MOBILE @"/mobile_device"
  61. #define API_POST_MOBILE_TOKEN @"/mobile_device/%@/push_token"
  62. //10 - 회원
  63. #define API_POST_SIGN_IN @"/member/login" //로그인 - 변경 - 필드추가
  64. #define API_GET_SIGN_IN_AUTO @"/member" //자동로그인 - 변경 - 필드 추가
  65. #define API_POST_SIGN_OUT @"/member/logout" //로그아웃
  66. #define API_POST_SIGN_UP @"/member" //회원가입
  67. //#define API_POST_MEMBER_UPDATE @"/member/%@/%@" //회원정보 수정
  68. #define API_POST_MEMBER_UPDATE @"/member/%@" //회원정보 수정
  69. #define API_POST_AUTH_MAIL @"/member/auth_mail" //이메일 인증 재발송
  70. #define API_POST_RESET_PWD @"/member/password" //비밀번호 재설정
  71. #define API_GET_MOBILE_DEVICES @"/member/devices" //단말 목록
  72. #define API_POST_NEW_MOBILE_DEVICE @"/member/new_mobile_device" //새 단말 인증
  73. #define API_POST_REPLACE_MOBILE_DEVICE @"/member/replace_device" //단말 교체
  74. #define API_DELETE_MOBILE_DEVICE @"/member/device" //단말 등록 해제
  75. #define API_POST_PUSH_SETTINGS @"/member/push_noti" //푸시 설정 변경
  76. #define API_POST_MEMBER_UPDATE_IMAGE @"/member/profile_image" //멤버프로필 이미지 수정
  77. #define API_GET_CHECK_PWD @"/member/%@" //비밀번호 확인
  78. #define API_DELETE_ACCOUNT @"/member/%@" //계정삭제
  79. #define API_GET_MEMBER_ICONS @"/member/icons" //멤버아이콘 리스트
  80. //#define API_POST_HOMEGROUP @"/member/homegrp" //홈 생성 - 폐기
  81. //#define API_POST_HOMEGROUP_RENAME @"/homegrp/name" //홈 이름 변경 - 폐기
  82. //#define API_POST_HOMEGROUP_LOCATION @"/homegrp/location" //홈 위치 변경 - 폐기
  83. //#define API_DELETE_HOMEGROUP @"/homegrp/%@" //홈그룹 삭제 - 폐기
  84. //#define API_GET_HOMEGROUP @"/homegrps" //홈그룹 리스트 - 폐기
  85. //#define API_POST_HOMEGROUP_LOCATION @"/member/homegrp/location" //홈 위치 등록
  86. //12 - 초대
  87. #define API_GET_HOMEGROUP_MEMBERS @"/homegrp_members" //홈그룹 멤버 목록
  88. #define API_POST_HOMEGROUP_MEMBER_INVITE @"/homegrp_members" //홈멤버 초대
  89. //#define API_POST_HOMEGROUP_MEMBER_UPDATE @"/homegrp_members/%@" //홈멤버 업데이트 - 폐기
  90. //#define API_POST_HOMEGROUP_MEMBER_VALIDATE @"/homegrp_members/email_validation" //홈그룹 멤버 유효성체크 - 폐기
  91. #define API_DELETE_HOMEGROUP_MEMBERS @"/homegrp_members" //홈멤버 삭제 - 추가
  92. #define API_DELETE_HOMEGROUP_MEMBER @"/homegrp_members/%@" //홈멤버 삭제 - 자진 탈퇴
  93. #define API_POST_HOMEGROUP_MEMBER_VALIDATE @"/homegrp_members/validation" //홈그룹 멤버 초대 유효성 체크
  94. #define API_POST_HOMEGROUP_UPDATE_IMAGE @"/homegrp/update_image" //홈그룹 이미지 수정
  95. #define API_GET_HOMEGROUP_MEMBER_INVITATIONS @"/homegrp_members/invitations" //홈그룹 초대 목록 조회
  96. #define API_POST_HOMEGROUP_MEMBER_INVITATIONS @"/homegrp_members/invitations" //홈그룹 초대 수락/거절
  97. //20 - dashboard
  98. #define API_GET_DASHBOARD @"/dashboard" //대시보드
  99. #define API_GET_DASHBOARD_MODE_LIST @"/modes" //대시보드 모드 조회
  100. #define API_POST_DASHBOARD_MODE_CHANGE @"/modes/%@/current_mode" //대시보드 모드 변경
  101. #define API_GET_MODE_STATUS @"/modes/%@/status" //홈모드 변경 결과 조회
  102. #define API_GET_NOTICE_COUNT @"/notices/count" //공지 및 알림 카운트
  103. #define API_GET_NOTICE @"/notices" //공지 목록 조회
  104. #define API_GET_NOTICE_PERSONAL @"/notices/personal" //알림 목록 조회
  105. //30 - Things
  106. #define API_GET_HOMEHUB_STATUS @"/devices/homehub/status" //홈허브 상태 조회
  107. //#define API_GET_GROUPS_DEVICES @"/groups/devices" //그룹 리스트 조회
  108. //#define API_POST_GROUP @"/groups" //그룹 생성
  109. //#define API_POST_GROUP_ADD @"/groups/devices/%@" //그룹에 장치 추가
  110. //#define API_POST_GROUP_UPDATE @"/groups/%@" //그룹 수정
  111. //#define API_DELETE_GROUP @"/groups/%@" //그룹 삭제
  112. //#define API_POST_GROUP_DELETE @"/groups/devices/%@" //그룹 내 디바이스 삭제
  113. #define API_PARAM_PAGING @"?paging_datetime=%@&paging_type=%@"
  114. #define API_GET_DEVICE_LIST @"/devices"
  115. #define API_GET_DEVICE_DETAIL @"/devices/%@"
  116. #define API_POST_NODE_COMMAND @"/devices/%@/nodes/%@/commands"
  117. #define API_GET_DEVICE_ICONS @"/devices/icons/%@" //디바이스 아이콘
  118. #define API_GET_DEVICE_UPDATE @"/devices/property/%@" //디바이스 수정
  119. #define API_DELETE_DEVICE @"/devices/%@" //디바이스 삭제
  120. #define API_GET_DEVICE_HOMEHUB_STATUS @"/devices/homehub/status" //홈허브 장치 상태 정보 조회
  121. #define API_GET_DEVICE_NODE_STATUS @"/devices/nodes?ids=%@" //복수 - 노드(커맨드클래스) 마지막 상태 값 조회
  122. #define API_GET_DEVICE_WARN_NODES @"/devices/warning_nodes" //경고 필요한 장치 조회
  123. #define API_GET_PARTNER_QR @"/devices/partner_device/ownership" //장치 유효성 검사
  124. #define API_POST_PARTNER_QR @"/devices/partner_device/ownership" //장치 소유권 등록/이전
  125. #define API_POST_DEVICE_INCLUSION @"/devices/%@/commands/status" //하위 장치 추가 제어 명령 실행 (인클루전)
  126. #define API_GET_DEVICE_COMMAND @"/devices/%@/commands/status" //장치 상태(Polling) 제어 명령 조회
  127. #define API_DELETE_DEVICE_EXCLUSION @"/devices/%@/commands/status" //하위 장치 삭제 제어 명령 실행 (익스클루전)
  128. #define API_GET_DEVICE_TYPES @"/devices/device_class/%@" //장치 유형 조회(Device Class)
  129. #define API_POST_DEVICE_TYPES @"/devices/device_class/%@" //장치 유형 변경(Device Class)
  130. //40 - Rules
  131. #define API_GET_RULE @"/rules"
  132. #define API_GET_RULE_DETAIL @"/rules/%@"
  133. #define API_POST_RULE_STATUS @"/rules/%@/status"
  134. #define API_POST_RULE @"/rules"
  135. #define API_DELETE_RULE @"/rules/%@"
  136. #define API_POST_RULE_MODIFY @"/rules/%@"
  137. #define API_GET_RULE_CMDCLS @"/rules/cmdcls/%@"
  138. #define API_GET_RULE_MOBILE @"/rules/mobile_devices"
  139. #define API_GET_RULE_MEMBERS @"/rules/mobile_members"
  140. #define API_GET_ITEM_DEVICES @"/rules/item_devices/%@"
  141. #define API_GET_PRERULE_LIST @"/predefined_rules"
  142. #define API_GET_PRERULE_DETAIL @"/predefined_rules/%@"
  143. #define API_GET_PRERULE_DEVICES @"/predefined_rules/%@/devices/%@"
  144. //50 - Scenes
  145. #define API_GET_SCENE @"/scenes"
  146. #define API_GET_SCENE_DETAIL_HOMEMODE @"/mode_scenes/%@"
  147. #define API_POST_SCENE_HOMEMODE @"/mode_scenes/%@"
  148. #define API_POST_SCENE_EXECUTE @"/scenes/%@/execution"
  149. #define API_POST_SCENE @"/scenes"
  150. #define API_DELETE_SCENE @"/scenes/%@"
  151. #define API_POST_SCENE_MODIFY @"/scenes/%@"
  152. #define API_GET_SCENE_CMDCLS @"/scenes/cmdcls"
  153. #define API_GET_PRESCENE_LIST @"/predefined_scenes"
  154. #define API_GET_PRESCENE_DETAIL @"/predefined_scenes/%@"
  155. #define API_GET_PRESCENE_DEVICES @"/predefined_scenes/%@/devices/%@"
  156. //60 - 기타
  157. #define API_GET_LOCATION_CODES @"/common/weather_location_codes"
  158. #define URL_PATH_TERMS @"/guide/20003/service" //http://61.40.220.23:7794/document/private-polish.html
  159. #define URL_PATH_POLICY @"/guide/20003/policy" //http://61.40.220.23:7794/document/private-polish.html
  160. #define URL_LOGO @"http://61.40.220.23:7794/images/logo.png"
  161. //도움말 URL
  162. #define URL_HELP_MAIL @"mailto:help@allofthings.com"
  163. #define URL_PATH_HELP @"/html/page_app/app_help_01.html"
  164. //앱스토어 링크
  165. #define URL_APP_UPDATE @"https://itunes.apple.com/kr/app/geullobeol-seumateusiti/id1081298508?mt=8"
  166. //Global Menu Id
  167. //메뉴 이름, 메뉴 아이디, 부모-자식,
  168. typedef NS_ENUM(NSInteger, KNMenuId) {
  169. KNMenuIdNone = -1,
  170. KNMenuIdLogin = 0,
  171. KNMenuIdDashboard,
  172. KNMenuIdThings,
  173. KNMenuIdScenes,
  174. KNMenuIdRules,
  175. KNMenuIdHomeLog,
  176. KNMenuIdHomeMember,
  177. KNMenuIdLogout,
  178. KNMenuIdSettings,
  179. KNMenuIdHelp,
  180. KNMenuIdTutorial
  181. };
  182. #define HOME_MODE_HOME @"HOME"
  183. #define HOME_MODE_AWAY @"AWAY"
  184. #define HOME_MODE_MORNING @"MORNING"
  185. #define HOME_MODE_NIGHT @"NIGHT"
  186. #define MOBILE_SERVICE_ID @"30001" //for OneCable
  187. #define MOBILE_DEVICE_TYPE @"MI" //디바이스 타입
  188. #define APPSTORE_TYPE @"A"
  189. #define KNEET_DEVICE_CHECKIN @"TRUE"
  190. #define KNEET_DEVICE_CHECKOUT @"FALSE"
  191. #define KNEET_DEVICE_INCLUSION @"INC"
  192. #define KNEET_DEVICE_EXCLUSION @"EXC"
  193. #define KNEET_DEVICE_WAITING @"WAT"
  194. #define KNEET_MEMBER_MASTER @"MAS"
  195. #define KNEET_MEMBER_SIMPLE @"SIM"
  196. #define KNEET_MEMBER_TYPE_HOME @"01" //멤버
  197. #define KNEET_MEMBER_TYPE_INV @"02" //초대중
  198. #define API_RESPONSE_UNAUTHORIZED_TOKEN @"401"
  199. #define API_RESPONSE_UNAUTHORIZED_EMAIL @"401-101"
  200. #define API_RESPONSE_UNAUTHORIZED_DEVICE @"401-103"
  201. #define API_RESPONSE_UNAUTHORIZED_HOME @"400-104"
  202. #define API_RESPONSE_MOBILES_OVER @"401-105"
  203. //UserDefaults - for app
  204. #define USDEF_APP_APPINIT @"KneetAppInit"
  205. #define USDEF_APP_AUTO_LOGIN @"KneetAppAutoLogin"
  206. #define USDEF_APP_USERID_LIST @"KneetAppUserIdList"
  207. //#define USER_DEF_MOBILE_ID @"KneetMobileDeviceId"
  208. //#define USER_DEF_MOBILE_AUTHOR @"KneetMobileDeviceAuthorization"
  209. //#define USER_DEF_GEOFENCE @"KneetMobileDeviceGeoFence"
  210. //#define USER_DEF_GEOFENCE_SENSORS @"KneetMobileDeviceGeoFence"
  211. //#define USER_DEF_POPUP_URL @"KneetIntroPopUpURL"
  212. //#define USER_DEF_POPUP_SHOW @"KneetIntroPopUpShow"
  213. #define USDEF_APP_TMP_EMAIL @"KneetAppTempUserEmail"
  214. //UserDefaults - for session
  215. #define USDEF_SESSION_NEW_EMAIL @"KneetNewUserEmail"
  216. #define USDEF_SESSION_MODE_CHANGE @"KneetModeChange"
  217. #define USDEF_SESSION_AUTOTOKEN @"KneetSessionLoginAuthToken"
  218. #define USDEF_SESSION_NOTICE_READ_DATE @"KneetSessionNoticeReadDatetime"
  219. #define USDEF_SESSION_PUSH_READ_DATE @"KneetPushNoticeReadDatetime"
  220. //Constants
  221. #define ksKneetRulesDisable @"X"
  222. #define ksYES @"Y"
  223. #define ksNO @"N"
  224. #define ksRetire @"R"
  225. #define ksTrue @"true"
  226. #define ksFalse @"false"
  227. #define ksControlLeft @"L"
  228. #define ksControlRight @"R"
  229. #define ksControlUp @"U"
  230. #define ksControlDown @"D"
  231. #define ksTimezoneKorea @"0024"
  232. #define ksDataTypeCodeInteger @"01" // integer
  233. #define ksDataTypeCodeFloat @"02" // float
  234. #define ksDataTypeCodeString @"03" // string
  235. #define ksDataTypeCodeBoolean @"04" // boolean
  236. #define ksDataTypeCodeDateTime @"05" // datetime
  237. #define ksDataTypeCodeTime @"06" // time
  238. #define ksDayOfWeekMON @"MON"
  239. #define ksDayOfWeekTUE @"TUE"
  240. #define ksDayOfWeekWED @"WED"
  241. #define ksDayOfWeekTHU @"THU"
  242. #define ksDayOfWeekFRI @"FRI"
  243. #define ksDayOfWeekSAT @"SAT"
  244. #define ksDayOfWeekSUN @"SUN"
  245. #define kdListPagginSize 15
  246. #define ksListPagingTypeUpward @"U"
  247. #define ksListPagingTypeDownward @"D"
  248. //Color Definition
  249. #define kUIBodyColor RGBCOLOR(243.0f, 243.0f, 243.0f) //전체 배경컬러
  250. #define kUIBgColor01 RGBCOLOR(241, 241, 241) //기본 버튼 배경컬러
  251. #define kUIBgColor02 RGBCOLOR(39.0f, 63.0f, 135.0f) //기본 버튼 press컬러
  252. #define kUIBgColor03 RGBCOLOR(116.0f, 147.0f, 204.0f) //슬라이드 인 메뉴 상단 컬러
  253. #define kUIBgColor04 [UIColor whiteColor] //화이트 배경
  254. #define kUIBgColor05 RGBCOLOR(187.0f, 187.0f, 187.0f) //취소 버튼 등 그레이컬러
  255. #define kUIBgColor06 RGBCOLOR(150.0f, 150.0f, 150.0f) //취소 버튼 press 컬러
  256. #define kUIBgColor07 RGBCOLOR(248.0f, 248.0f, 248.0f) //리스트 그레이 컬러
  257. #define kUILineColor RGBCOLOR(255.0f, 110.0f, 43.0f) //구분라인 1 - orange
  258. #define kUILineColor2 RGBCOLOR(187, 187, 187) //구분라인 2 - 박스 내,
  259. #define kUITextColor01 RGBCOLOR(51, 51, 51) //기본 컬러
  260. #define kUITextColor02 RGBCOLOR(46, 141, 205) //포인트 컬러 - 블루
  261. #define kUITextColor03 RGBCOLOR(170, 170, 170) //연한 컬러
  262. #define kUITextColor04 [UIColor whiteColor] //블랙 컬러
  263. //Size Definition
  264. #define kUIFontSize01 14.0f //기본사이즈
  265. #define kUIFontSize02 15.0f //리스트 타이틀 / input text
  266. #define kUIFontSize03 29.0f //head size
  267. #define kUIFontSize04 12.0f //설명 등 작은 사이즈
  268. #define kUIFontSize05 17.0f //기본 버튼 / 팝업 타이틀 / things list value
  269. #define kUIFontSize06 11.0f //예외 매우 작은 사이즈
  270. #define kUIFontSize07 26.0f //things detail value 아주 큰 글씨
  271. #define kUIFontSize08 36.0f //장치 상세
  272. //UI Constants
  273. #define kfNavigationBarHeight 75.0f
  274. #define kfMainTabBarHeight 70.0f
  275. #define kfBoxCap 1.0f
  276. #define kfPageBottomMargin 20.0f
  277. #define kfTransitionRightDur 0.3f
  278. //#define kfLabelSizeFont01 18.0f
  279. //#define kfLabelSizeFont03 15.0f
  280. //
  281. //#define kfScrollHeightForOlder 70.0f //스크롤뷰의 이전 조회 시 추가값.
  282. //메시지 정의
  283. #define MSG_ALERT_APP_UPDATE NSLocalizedString(@"새로운 업데이트 버전이 출시되었습니다.\n확인을 누르시면 업데이트 페이지로\n이동합니다.", @"새로운 업데이트 버전이 출시되었습니다.\n확인을 누르시면 업데이트 페이지로\n이동합니다.")
  284. #define MSG_ALERT_ERROR_CRITICAL NSLocalizedString(@"사용할수 없습니다.\n앱 종료 후 다시 시도하세요.", @"사용할수 없습니다.\n앱 종료 후 다시 시도하세요.")
  285. #define MSG_ALERT_SERVER_FAIL NSLocalizedString(@"서버에 연결할 수 없습니다.\n다시 시도하세요.", @"서버에 연결할 수 없습니다.\n다시 시도하세요.")
  286. #define MSG_CAMERA_DISABLE NSLocalizedString(@"[설정 > 개인정보보호 > 카메라]에서\n글로벌스마트시티 앱을 활성화 상태로 설정해주세요", @"[설정 > 개인정보보호 > 카메라]에서\n글로벌스마트시티 앱을 활성화 상태로 설정해주세요")
  287. #define MSG_NOT_WIFI_STREAM NSLocalizedString(@"WiFi 미연결 상태에서는\n데이터 통화료가 과도하게\n부과될 수 있으니 주의하세요", @"WiFi 미연결 상태에서는\n데이터 통화료가 과도하게\n부과될 수 있으니 주의하세요")
  288. //kneet2_Definitions_h
  289. #endif