TencentOAuthObject.h 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452
  1. ///
  2. /// \file TencentOAuthObject.h
  3. /// 对开放接口的调用提供参数字典封装的辅助类
  4. ///
  5. /// Created by Tencent on 12-12-28.
  6. /// Copyright (c) 2012年 Tencent. All rights reserved.
  7. ///
  8. #import <Foundation/Foundation.h>
  9. #import <UIKit/UIKit.h>
  10. #import "sdkdef.h"
  11. #pragma mark -
  12. #pragma mark TCAddTopicDic
  13. /**
  14. * \brief 发表说说的参数字典定义
  15. *
  16. * 可以直接填写相应参数后将对象当作参数传入API中
  17. */
  18. @interface TCAddTopicDic : TCAPIRequest
  19. /**
  20. * 返回一个对象用来进行API参数的填充
  21. * \note 不用释放,返回的对象是自动释放的
  22. */
  23. + (TCAddTopicDic *) dictionary;
  24. /**
  25. * 发布心情时引用的信息的类型。
  26. * \note 1表示图片; 2表示网页; 3表示视频
  27. */
  28. @property (nonatomic, retain) TCOptionalStr paramRichtype;
  29. /**
  30. * 发布心情时引用的信息的值。有richtype时必须有richval
  31. *
  32. * \note
  33. * -# 当richtype为图片(即richtype为1,应用场景为发布心情时引用某张图片)时,\n
  34. * richval需要传入该图片的相关参数。引用的图片来源分为两种:一种为网站图片,\n
  35. * 一种为QQ空间相册中的某张图片。
  36. * - 当引用的图片来自网站,richval包含下列参数的值:\n
  37. * | 参数名称 | 是否必须 | 类型 | 描述 |
  38. * | ------ | ------- | ------ | ----------------- |
  39. * | url | 必须 | string | 网站图片的URL |
  40. * | height | 必须 | string | 图片高度,单位: px |
  41. * | width | 必须 | string | 图片宽度,单位: px |
  42. * \n
  43. * 输入时每个值中间用“&”分隔,如下所示:\n
  44. * “url=http://qq.com/logo.png&width=25&height=21”
  45. *
  46. * - 当引用的图片来自QQ空间相册,richval包含下列参数的值。\n
  47. * 这些值都需要通过调用相册OpenAPI来获得。参数意义如下:\n
  48. * | 参数名称 | 是否必须 | 类型 | 描述 |
  49. * | --------- | ------ | ------ | ---------------------------------- |
  50. * | albumid | 必须 | string | 图片所属空间相册的ID |
  51. * | pictureid | 必须 | string | 图片ID |
  52. * | sloc | 必须 | string | 小图ID |
  53. * | pictype | | string | 图片类型(JPG = 1;GIF = 2;PNG = 3) |
  54. * | picheight | | string | 图片高度,单位: px |
  55. * | picwidth | | string | 图片宽度,单位: px |
  56. * 输入时每个值中间用逗号分隔,如下所示 :\n
  57. * “albumid,pictureid,sloc,pictype,picheight,picwidth”
  58. * -# 当richtype为网页(即richtype为2,应用场景为针对某网页发表评论)时,\n
  59. * richval需要传入该网页的URL,发表为feeds时,后台会自动将该URL转换为短URL。
  60. * -# 当richtype为视频(即richtype为3,应用场景为针对某视频发表评论)时,\n
  61. * richval需要传入该视频的URL,发表为feeds时,后台会对该URL进行解析,\n
  62. * 在feeds上显示播放器,视频源及缩略图。
  63. */
  64. @property (nonatomic, retain) TCOptionalStr paramRichval;
  65. /**
  66. * 发布的心情的内容。
  67. */
  68. @property (nonatomic, retain) TCRequiredStr paramCon;
  69. /**
  70. * 地址文。例如:广东省深圳市南山区高新科技园腾讯大厦。lbs_nm,lbs_x,lbs_y通常一起使用,来明确标识一个地址。
  71. */
  72. @property (nonatomic, retain) TCOptionalStr paramLbs_nm;
  73. /**
  74. * 经度。-180.0到+180.0,+表示东经。lbs_nm,lbs_x,lbs_y通常一起使用,来明确标识一个地址。
  75. */
  76. @property (nonatomic, retain) TCOptionalStr paramLbs_x;
  77. /**
  78. * 纬度。-90.0到+90.0,+表示北纬。lbs_nm,lbs_x,lbs_y通常一起使用,来明确标识一个地址。
  79. */
  80. @property (nonatomic, retain) TCOptionalStr paramLbs_y;
  81. /**
  82. * 第三方应用的平台类型。
  83. * \note 1表示QQ空间; 2表示腾讯朋友; 3表示腾讯微博平台; 4表示腾讯Q+平台。
  84. */
  85. @property (nonatomic, retain) TCOptionalStr paramThirdSource;
  86. @end
  87. #pragma mark -
  88. #pragma mark TCAddOneBlogDic
  89. /**
  90. * \brief 发表日志的参数字典定义
  91. *
  92. * 可以直接填写相应参数后将对象当作参数传入API中
  93. */
  94. @interface TCAddOneBlogDic : TCAPIRequest
  95. /**
  96. * 返回一个对象用来进行API参数的填充
  97. * \note 不用释放,返回的对象是自动释放的
  98. */
  99. + (TCAddOneBlogDic *) dictionary;
  100. /**
  101. * 日志标题(纯文本,最大长度128个字节,utf-8编码)。
  102. */
  103. @property (nonatomic, retain) TCRequiredStr paramTitle;
  104. /**
  105. * content 文章内容(html数据,最大长度100*1024个字节,utf-8编码)
  106. */
  107. @property (nonatomic, retain) TCRequiredStr paramContent;
  108. @end
  109. #pragma mark -
  110. #pragma mark TCAddAlbumDic
  111. /**
  112. * \brief 创建空间相册的参数字典定义
  113. *
  114. * 可以直接填写相应参数后将对象当作参数传入API中
  115. */
  116. @interface TCAddAlbumDic : TCAPIRequest
  117. /**
  118. * 返回一个对象用来进行API参数的填充
  119. *
  120. * \note 不用释放,返回的对象是自动释放的
  121. */
  122. + (TCAddAlbumDic *) dictionary;
  123. /**
  124. * albumname 必须 string 相册名 不能超过30个字符。
  125. */
  126. @property (nonatomic, retain) TCRequiredStr paramAlbumname;
  127. /**
  128. * albumdesc string 相册描述,不能超过200个字符。
  129. */
  130. @property (nonatomic, retain) TCOptionalStr paramAlbumdesc;
  131. /**
  132. * priv string 相册权限
  133. *
  134. * \note 其取值含义为: 1=公开;3=只主人可见; 4=QQ好友可见; 5=问答加密。\n
  135. * 不传则相册默认为公开权限。\n
  136. * 如果priv取值为5,即相册是问答加密的,则必须包含问题和答案两个参数:\n
  137. * - question: 问题,不能超过30个字符。
  138. * - answer: 答案,不能超过30个字符。
  139. */
  140. @property (nonatomic, retain) TCOptionalStr paramPriv;
  141. /**
  142. * question 问题,不能超过30个字符。
  143. * \note 如果priv取值为5,必须包含这个参数:
  144. **/
  145. @property (nonatomic, retain) TCOptionalStr paramQuestion;
  146. /**
  147. * answer 答案,不能超过30个字符。
  148. * \note 如果priv取值为5,必须包含这个参数:
  149. **/
  150. @property (nonatomic, retain) TCOptionalStr paramAnswer;
  151. @end
  152. #pragma mark -
  153. #pragma mark TCUploadPicDic
  154. /**
  155. * \brief 上传一张照片到QQ空间相册的参数字典定义
  156. *
  157. * 可以直接填写相应参数后将对象当作参数传入API中
  158. */
  159. @interface TCUploadPicDic : TCAPIRequest
  160. /**
  161. * 返回一个对象用来进行API参数的填充
  162. * \note 不用释放,返回的对象是自动释放的
  163. */
  164. + (TCUploadPicDic *) dictionary;
  165. /**
  166. * photodesc string 照片描述,注意照片描述不能超过200个字符。
  167. */
  168. @property (nonatomic, retain) TCOptionalStr paramPhotodesc;
  169. /**
  170. * string 照片的命名,必须以.jpg, .gif, .png, .jpeg, .bmp此类后缀结尾。
  171. */
  172. @property (nonatomic, retain) TCOptionalStr paramTitle;
  173. /**
  174. * string 相册id。可不填,不填时则根据“mobile”标识选择默认上传的相册。
  175. */
  176. @property (nonatomic, retain) TCOptionalStr paramAlbumid;
  177. /**
  178. * 标志位
  179. *
  180. * \note 0表示PC,1表示手机。用于当不传相册id时(即albumid为空时)控制是否传到手机相册。\n
  181. * -# 如果传1,则当albumid为空时,图片会上传到手机相册;
  182. * -# 如果不传或传0,则当albumid为空时,图片会上传到贴图相册;
  183. */
  184. @property (nonatomic, assign) TCOptionalStr paramMobile;
  185. /**
  186. * x string 照片拍摄时的地理位置的经度。请使用原始数据(纯经纬度,0-360)。
  187. */
  188. @property (nonatomic, retain) TCOptionalStr paramX;
  189. /**
  190. * y string 照片拍摄时的地理位置的纬度。请使用原始数据(纯经纬度,0-360)。
  191. */
  192. @property (nonatomic, retain) TCOptionalStr paramY;
  193. /**
  194. * picture 必须 string 上传照片的文件名以及图片的内容(在发送请求时,图片内容以二进制数据流的形式发送,见下面的请求示例),注意照片名称不能超过30个字符。
  195. */
  196. @property (nonatomic, retain) TCRequiredImage paramPicture;
  197. /**
  198. * needfeed int 标识上传照片时是否要发feed
  199. * \note(0:不发feed; 1:发feed)。如果不填则默认为发feed。
  200. */
  201. @property (nonatomic, assign)TCOptionalStr paramNeedfeed;
  202. /**
  203. * successnum int 批量上传照片时,已成功上传的张数,指明上传完成情况。
  204. * \note 单张上传时可以不填,不填则默认为0。
  205. */
  206. @property (nonatomic, assign)TCOptionalStr paramSuccessnum;
  207. /**
  208. * picnum int 批量上传照片的总张数,如果不填则默认为1。
  209. * \note
  210. * - 如果picnum=1,为单张上传,发送单张上传feed;
  211. * - 如果picnum>1,为批量上传,发送批量上传feed。
  212. * 批量上传方式:picnum为一次上传照片的张数,successnum初始值为0,每调用一次照片上传接口后递增其值。
  213. * 信息中心中的feed表现形式:批量上传时最新的7张在feed中展示。其中最新上传的一张图片展示为大图,剩下的
  214. * 六张按从新到旧的顺序展示为小图,其他图片不在feed中展示。
  215. */
  216. @property (nonatomic, assign)TCOptionalStr paramPicnum;
  217. @end
  218. #pragma mark -
  219. #pragma mark TCAddShareDic
  220. /**
  221. * \brief 同步分享到QQ空间,腾讯微博的参数字典定义
  222. *
  223. * 可以直接填写相应参数后将对象当作参数传入API中
  224. */
  225. @interface TCAddShareDic : TCAPIRequest
  226. /**
  227. * 返回一个对象用来进行API参数的填充
  228. *
  229. * \note 不用释放,返回的对象是自动释放的
  230. */
  231. + (TCAddShareDic *) dictionary;
  232. /**
  233. * title 必须 string feeds的标题 最长36个中文字,超出部分会被截断。
  234. */
  235. @property (nonatomic, retain) TCRequiredStr paramTitle;
  236. /**
  237. * url 必须 string 分享所在网页资源的链接,点击后跳转至第三方网页,对应上文接口说明中2的超链接。请以http://开头。
  238. */
  239. @property (nonatomic, retain) TCRequiredStr paramUrl;
  240. /**
  241. * comment string 用户评论内容,也叫发表分享时的分享理由 禁止使用系统生产的语句进行代替。
  242. * 最长40个中文字,超出部分会被截断。
  243. */
  244. @property (nonatomic, retain) TCOptionalStr paramComment;
  245. /**
  246. * summary string 所分享的网页资源的摘要内容,或者是网页的概要描述 最长80个中文字,超出部分会被截断。
  247. */
  248. @property (nonatomic, retain) TCOptionalStr paramSummary;
  249. /**
  250. * images string 所分享的网页资源的代表性图片链接",请以http://开头,长度限制255字符。多张图片以竖线(|)分隔,目前只有第一张图片有效,图片规格100*100为佳。
  251. */
  252. @property (nonatomic, retain) TCOptionalStr paramImages;
  253. /**
  254. * type string 分享内容的类型。
  255. *
  256. * \note 4表示网页;5表示视频(type=5时,必须传入playurl)
  257. */
  258. @property (nonatomic, retain) TCOptionalStr paramType;
  259. /**
  260. * playurl string 长度限制为256字节。仅在type=5的时候有效,表示视频的swf播放地址。
  261. */
  262. @property (nonatomic, retain) TCOptionalStr paramPlayurl;
  263. /**
  264. * site 必须 string 分享的来源网站名称,请填写网站申请接入时注册的网站名称
  265. */
  266. @property (nonatomic, retain) TCRequiredStr paramSite;
  267. /**
  268. * fromurl 必须 string 分享的来源网站对应的网站地址url 请以http://开头。
  269. */
  270. @property (nonatomic, retain) TCRequiredStr paramFromurl;
  271. /**
  272. * nswb string 值为1时,表示分享不默认同步到微博,其他值或者不传此参数表示默认同步到微博。
  273. */
  274. @property (nonatomic, retain) TCOptionalStr paramNswb;
  275. @end
  276. #pragma mark -
  277. #pragma mark TCCheckPageFansDic
  278. /**
  279. * \brief 验证是否认证空间粉丝tttyttyyyu的参数字典定义
  280. *
  281. * 可以直接填写相应参数后将对象当作参数传入API中
  282. */
  283. @interface TCCheckPageFansDic : TCAPIRequest
  284. /**
  285. * 返回一个对象用来进行API参数的填充
  286. *
  287. * \note 不用释放,返回的对象是自动释放的
  288. */
  289. + (TCCheckPageFansDic *) dictionary;
  290. /**
  291. * 表示认证空间的QQ号码
  292. */
  293. @property (nonatomic, retain) TCRequiredStr paramPage_id;
  294. @end
  295. #pragma mark -
  296. #pragma mark TCSetUserHeadpic
  297. /**
  298. * \brief 设置用户头像
  299. *
  300. * 可以直接填写相应参数后将对象当作参数传入API中
  301. */
  302. @interface TCSetUserHeadpic : TCAPIRequest
  303. /**
  304. * 返回一个对象用来进行API参数的填充
  305. * \note 不用释放,返回的对象是自动释放的
  306. */
  307. + (TCSetUserHeadpic *) dictionary;
  308. /**
  309. * 设置用户头像的图片
  310. */
  311. @property (nonatomic, retain) TCRequiredImage paramImage;
  312. /**
  313. * 图片的文件名
  314. */
  315. @property (nonatomic, retain) TCOptionalStr paramFileName;
  316. @end
  317. #pragma mark -
  318. #pragma mark TCListPhotoDic
  319. /**
  320. * \brief 获取用户QQ空间相册中的照片列表
  321. *
  322. * 可以直接填写相应参数后将对象当作参数传入API中
  323. */
  324. @interface TCListPhotoDic : TCAPIRequest
  325. /**
  326. * 返回一个对象用来进行API参数的填充
  327. *
  328. * \note 不用释放,返回的对象是自动释放的
  329. */
  330. + (TCListPhotoDic *) dictionary;
  331. /**
  332. * 表示要获取的照片列表所在的相册ID
  333. */
  334. @property (nonatomic, retain) TCRequiredStr paramAlbumid;
  335. @end
  336. #pragma mark -
  337. #pragma mark TCSendStoryDic
  338. /**
  339. * \brief QQ空间定向分享的参数字典定义
  340. *
  341. * 该分享支持@到指定好友,最多支持10个好友。
  342. * 其中第三方应用可预传最多5个指定好友的openid,其余好友由用户自行选择。
  343. * 该分享形式仅提供跳QZone分享和本地Html5分享两种形式。
  344. * sendStroy不支持userData参数
  345. */
  346. @interface TCSendStoryDic : TCAPIRequest
  347. /**
  348. * 返回一个对象用来进行API参数的填充
  349. *
  350. * \note 不用释放,返回的对象是自动释放的
  351. */
  352. + (TCSendStoryDic *) dictionary;
  353. /**
  354. * 分享的标题
  355. */
  356. @property (nonatomic, retain) TCRequiredStr paramTitle;
  357. /**
  358. * 故事摘要,最多不超过50个汉字,可以为空
  359. */
  360. @property (nonatomic, retain) TCOptionalStr paramSummary;
  361. /**
  362. * 默认展示在输入框里的分享理由,最多120个汉字,可以为空
  363. */
  364. @property (nonatomic, retain) TCOptionalStr paramDescription;
  365. /**
  366. * 图片url
  367. */
  368. @property (nonatomic, retain) TCOptionalStr paramPics;
  369. /**
  370. * 如果不填,则默认为"进入应用"
  371. */
  372. @property (nonatomic, retain) TCRequiredStr paramAct;
  373. /**
  374. * 点击分享的Url
  375. */
  376. @property (nonatomic, retain) TCOptionalStr paramShareUrl;
  377. @end