TLSAccountHelper.h 8.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268
  1. //
  2. // TLSAccountHelper.h
  3. // WTLoginSDK64ForIOS
  4. //
  5. // Created by givonchen on 15-5-18.
  6. //
  7. //
  8. #ifndef TLSSDK_TLSAccountHelper_h
  9. #define TLSSDK_TLSAccountHelper_h
  10. #import <Foundation/Foundation.h>
  11. #import "TLSErrInfo.h"
  12. #import "TLSPwdRegListener.h"
  13. #import "TLSPwdResetListener.h"
  14. #import "TLSSmsRegListener.h"
  15. #import "TLSStrAccountRegListener.h"
  16. #import "TLSOpenBindListener.h"
  17. #import "TLSOpenQueryListener.h"
  18. /// 国家类别
  19. enum _TLS_COUNTRY_DEFINE
  20. {
  21. TLS_COUNTRY_CHINA = 86, ///中国
  22. TLS_COUNTRY_TAIWAN = 186, ///台湾
  23. TLS_COUNTRY_HONGKANG = 152, ///香港
  24. TLS_COUNTRY_USA = 174, ///美国
  25. };
  26. /// 语言类别
  27. enum _TLS_LANG_DEFINE
  28. {
  29. TLS_LANG_ENGLISH = 1033, ///英语
  30. TLS_LANG_SIMPLIFIED = 2052, ///简体中文,目前只支持简体中文
  31. TLS_LANG_TRADITIONAL = 1028, ///繁体中文
  32. TLS_LANG_JAPANESE = 1041, ///日语
  33. TLS_LANG_FRANCE = 1036, ///法语
  34. };
  35. /// 帐号类 (包括 手机帐号+密码注册、手机帐号重置密码、手机帐号无密码注册 等接口)
  36. DEPRECATED_ATTRIBUTE
  37. @interface TLSAccountHelper : NSObject
  38. /**
  39. * @brief 获取TLSAccountHelper 实例
  40. *
  41. * @return 返回TLSAccountHelper 实例
  42. */
  43. +(TLSAccountHelper *) getInstance;
  44. /**
  45. * @brief 初始化TLSAccountHelper 实例
  46. *
  47. * @param sdkAppid - 用于TLS SDK的appid
  48. * @param accountType - 账号类型
  49. * @param appVer - app 版本号,业务自定义
  50. *
  51. * @return 返回TLSAccountHelper 实例
  52. */
  53. -(TLSAccountHelper *) init:(int)sdkAppid
  54. andAccountType:(int)accountType
  55. andAppVer:(NSString *)appVer;
  56. /**
  57. * @brief 设置请求超时时间,默认为10000毫秒。
  58. * sdk与后台交互时,如果超时,会重试5次,所以不应设置太大的值
  59. *
  60. * @param timeout - 超时时间(单位毫秒)
  61. */
  62. -(void) setTimeOut:(int)timeout;
  63. /**
  64. * @brief 设置语言类型(支持国际化)
  65. * 目前有以下类型供选择:
  66. * 2052:简体中文;1028:繁体中文;1033:英文; 1041: 日语; 1036: 法语
  67. *
  68. * @param localid - 语言类型
  69. */
  70. -(void) setLocalId:(int)localid;
  71. /**
  72. * 设置国家区号(支持国际化)
  73. *
  74. * @param country - 国家区号
  75. */
  76. -(void) setCountry:(int)country;
  77. /**
  78. * 获取TLS SDK的版本信息
  79. *
  80. * @return SDK的版本信息
  81. */
  82. -(NSString *) getSDKVersion;
  83. #pragma mark - 手机号密码注册
  84. /**
  85. * 提交用于验证的手机号码
  86. *
  87. * @param mobile - 手机号码 (国家码-手机号码)
  88. * @param listener - TLSPwdRegListener 回调对象
  89. *
  90. * @return 0表示调用成功;其它表示调用失败
  91. */
  92. -(int) TLSPwdRegAskCode:(NSString *)mobile andTLSPwdRegListener:(id)listener;
  93. /**
  94. * 用第三方帐号绑定注册新手机号
  95. * 提交用于验证的手机号码
  96. *
  97. * @param mobile - 手机号码 (国家码-手机号码)
  98. * @param accType - 第三方帐号类型 1:QQ 2:微信
  99. * @param openAppid - 第三方帐号appid
  100. * @param openid - 第三方账号OpenID
  101. * @param accessToken - 第三方帐号的access token
  102. * @param listener - TLSPwdRegListener 回调对象
  103. *
  104. * @return 0表示调用成功;其它表示调用失败
  105. */
  106. -(int) TLSPwdRegAskCode:(NSString *)mobile andAccType:(uint32_t)accType andOpenAppid:(NSString*)openAppid andOpenId:(NSString*)openid andAccessToken:(NSString*)accessToken andTLSPwdRegListener:(id)listener;
  107. /**
  108. * 当使用下行短信验证手机号码时,用于请求重新发送下行短信
  109. * 注意:一定是TLSPwdRegAskCode调用成功了,但是没有收到验证码,才可以调用此接口,否则可能会报错
  110. *
  111. * @param listener - TLSPwdRegListener 回调对象
  112. *
  113. * @return 0表示调用成功;其它表示调用失败
  114. */
  115. -(int) TLSPwdRegReaskCode:(id)listener;
  116. /**
  117. * 用于提交收到的短信验证码
  118. *
  119. * @param code - 短信验证码
  120. * @param listener - TLSPwdRegListener 回调对象
  121. *
  122. * @return 0表示调用成功;其它表示调用失败
  123. */
  124. -(int) TLSPwdRegVerifyCode:(NSString *)code andTLSPwdRegListener:(id)listener;
  125. /**
  126. * 注册成功获取账号
  127. *
  128. * @param password - 用户密码
  129. * @param listener - TLSPwdRegListener 回调对象
  130. *
  131. * @return 0表示调用成功;其它表示调用失败
  132. */
  133. -(int) TLSPwdRegCommit:(NSString *)password andTLSPwdRegListener:(id)listener;
  134. #pragma mark - 手机号重置密码
  135. /**
  136. * 提交用于验证的手机号码
  137. *
  138. * @param mobile - 手机号码 (国家码-手机号码)
  139. * @param listener - TLSPwdResetListener 回调对象
  140. *
  141. * @return 0表示调用成功;其它表示调用失败
  142. */
  143. -(int) TLSPwdResetAskCode:(NSString *)mobile andTLSPwdResetListener:(id)listener;
  144. /**
  145. * 当使用下行短信验证手机号码时,用于请求重新发送下行短信
  146. *
  147. * @param listener - TLSPwdResetListener 回调对象
  148. *
  149. * @return 0表示调用成功;其它表示调用失败
  150. */
  151. -(int) TLSPwdResetReaskCode:(id)listener;
  152. /**
  153. * 用于提交收到的短信验证码
  154. *
  155. * @param code - 短信验证码
  156. * @param listener - TLSPwdResetListener 回调对象
  157. *
  158. * @return 0表示调用成功;其它表示调用失败
  159. */
  160. -(int) TLSPwdResetVerifyCode:(NSString *)code andTLSPwdResetListener:(id)listener;
  161. /**
  162. * 注册成功获取账号
  163. *
  164. * @param password - 用户密码
  165. * @param listener - TLSPwdResetListener 回调对象
  166. *
  167. * @return 0表示调用成功;其它表示调用失败
  168. */
  169. -(int) TLSPwdResetCommit:(NSString *)password andTLSPwdResetListener:(id)listener;
  170. #pragma mark - 手机号短信注册
  171. /**********************************************
  172. * 短信注册接口
  173. *********************************************/
  174. /**
  175. * 提交用于验证的手机号码
  176. *
  177. * @param mobile - 手机号码 (国家码-手机号码)
  178. * @param listener - TLSSmsRegListener 回调对象
  179. *
  180. * @return 0表示调用成功;其它表示调用失败
  181. */
  182. -(int) TLSSmsRegAskCode:(NSString *)mobile andTLSSmsRegListener:(id)listener;
  183. /**
  184. * 带第三方帐号绑定注册手机号
  185. * 提交用于验证的手机号码
  186. *
  187. * @param mobile - 手机号码 (国家码-手机号码)
  188. * @param accType - 第三方帐号类型 1:QQ 2:微信
  189. * @param openAppid - 第三方帐号appid
  190. * @param openid - 第三方账号OpenID
  191. * @param accessToken - 第三方帐号的access token
  192. * @param listener - TLSSmsRegListener 回调对象
  193. *
  194. * @return 0表示调用成功;其它表示调用失败
  195. */
  196. -(int) TLSSmsRegAskCode:(NSString *)mobile andAccType:(uint32_t)accType andOpenAppid:(NSString*)openAppid andOpenId:(NSString*)openid andAccessToken:(NSString*)accessToken andTLSSmsRegListener:(id)listener;
  197. /**
  198. * 当使用下行短信验证手机号码时,用于请求重新发送下行短信
  199. *
  200. * @param listener - TLSSmsRegListener 回调对象
  201. *
  202. * @return 0表示调用成功;其它表示调用失败
  203. */
  204. -(int) TLSSmsRegReaskCode:(id)listener;
  205. /**
  206. * 用于提交收到的短信验证码
  207. *
  208. * @param code - 短信验证码
  209. * @param listener - TLSSmsRegListener 回调对象
  210. *
  211. * @return 0表示调用成功;其它表示调用失败
  212. */
  213. -(int) TLSSmsRegVerifyCode:(NSString *)code andTLSSmsRegListener:(id)listener;
  214. /**
  215. * 注册成功获取账号
  216. *
  217. * @param listener - TLSSmsRegListener 回调对象
  218. *
  219. * @return 0表示调用成功;其它表示调用失败
  220. */
  221. -(int) TLSSmsRegCommit:(id)listener;
  222. #pragma mark - 字符串帐号注册
  223. /***********************************************
  224. * 字符串账号注册接口
  225. **********************************************/
  226. /**
  227. * 字符串账号+密码注册接口
  228. * @param account - 用户输入的账号名,最长不得超过24字节
  229. * @param password - 用户输入的密码,密码最短8字节,最长16字节
  230. * @param listener - 回调接口 需要实现TLSStrAccountRegProtocol协议
  231. * @return 0表示调用成功;其他表示调用失败,返回码见:_TLS_RETURN_VALUES
  232. */
  233. -(int) TLSStrAccountReg:(NSString *)account andPassword:(NSString *)password andTLSStrAccountRegListener:(id)listener;
  234. /**
  235. * 带第三方帐号绑定注册
  236. * 字符串账号+密码注册接口
  237. * @param account - 用户输入的账号名,最长不得超过24字节
  238. * @param password - 用户输入的密码,密码最短8字节,最长16字节
  239. * @param accType - 第三方帐号类型 1:QQ 2:微信
  240. * @param openAppid - 第三方帐号appid
  241. * @param openid - 第三方账号OpenID
  242. * @param accessToken - 第三方帐号的access token
  243. * @param listener - 回调接口 需要实现TLSStrAccountRegProtocol协议
  244. * @return 0表示调用成功;其他表示调用失败,返回码见:_TLS_RETURN_VALUES
  245. */
  246. -(int) TLSStrAccountReg:(NSString *)account andPassword:(NSString *)password andAccType:(uint32_t)accType andOpenAppid:(NSString*)openAppid andOpenId:(NSString*)openid andAccessToken:(NSString*)accessToken andTLSStrAccountRegListener:(id)listener;
  247. @end
  248. #endif