TmcMessagesProduceRequest.cs 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. using System;
  2. using System.Xml.Serialization;
  3. using System.Collections.Generic;
  4. using Top.Api.Util;
  5. namespace Top.Api.Request
  6. {
  7. /// <summary>
  8. /// TOP API: taobao.tmc.messages.produce
  9. /// </summary>
  10. public class TmcMessagesProduceRequest : BaseTopRequest<Top.Api.Response.TmcMessagesProduceResponse>
  11. {
  12. /// <summary>
  13. /// tmc消息列表, 最多50条,元素结构与taobao.tmc.message.produce一致,用json表示的消息列表。例如:[{"content": "{\"tid\":1234554321,\"status\":\"X_LOGISTICS_PRINTED\",\"action_time\":\"2014-08-08 18:24:00\",\"seller_nick\": \"向阳aa\",\"operator\":\"小张\"}","topic": "taobao_jds_TradeTrace"},{"content": "{\"tid\":1234554321,\"status\":\"X_LOGISTICS_PRINTED\",\"action_time\":\"2014-08-08 18:24:00\",\"seller_nick\": \"向阳aa\",\"operator\":\"小张\"}","topic": "taobao_jds_TradeTrace"}]
  14. /// </summary>
  15. public string Messages { get; set; }
  16. public List<TmcPublishMessageDomain> Messages_ { set { this.Messages = TopUtils.ObjectToJson(value); } }
  17. #region ITopRequest Members
  18. public override string GetApiName()
  19. {
  20. return "taobao.tmc.messages.produce";
  21. }
  22. public override IDictionary<string, string> GetParameters()
  23. {
  24. TopDictionary parameters = new TopDictionary();
  25. parameters.Add("messages", this.Messages);
  26. if (this.otherParams != null)
  27. {
  28. parameters.AddAll(this.otherParams);
  29. }
  30. return parameters;
  31. }
  32. public override void Validate()
  33. {
  34. RequestValidator.ValidateRequired("messages", this.Messages);
  35. RequestValidator.ValidateObjectMaxListSize("messages", this.Messages, 50);
  36. }
  37. /// <summary>
  38. /// TmcPublishMessageDomain Data Structure.
  39. /// </summary>
  40. [Serializable]
  41. public class TmcPublishMessageDomain : TopObject
  42. {
  43. /// <summary>
  44. /// 消息内容的JSON表述,必须按照topic的定义来填充
  45. /// </summary>
  46. [XmlElement("content")]
  47. public string Content { get; set; }
  48. /// <summary>
  49. /// 消息的扩增属性,用json格式表示
  50. /// </summary>
  51. [XmlElement("json_ex_content")]
  52. public string JsonExContent { get; set; }
  53. /// <summary>
  54. /// 直发消息需要传入目标appkey
  55. /// </summary>
  56. [XmlElement("target_app_key")]
  57. public string TargetAppKey { get; set; }
  58. /// <summary>
  59. /// 目标分组
  60. /// </summary>
  61. [XmlElement("target_group")]
  62. public string TargetGroup { get; set; }
  63. /// <summary>
  64. /// 消息类型
  65. /// </summary>
  66. [XmlElement("topic")]
  67. public string Topic { get; set; }
  68. }
  69. #endregion
  70. }
  71. }