using System; using System.Xml.Serialization; using System.Collections.Generic; using Top.Api.Util; using Top.Api; using Top.Api.DingTalk; namespace DingTalk.Api.Request { /// /// TOP API: dingtalk.oapi.customerservice.message.send /// public class OapiCustomerserviceMessageSendRequest : BaseDingTalkRequest { /// /// 消息对象 /// public string Message { get; set; } public MessageDTODomain Message_ { set { this.Message = TopUtils.ObjectToJson(value); } } #region IDingTalkRequest Members public override string GetApiName() { return "dingtalk.oapi.customerservice.message.send"; } public override string GetApiCallType() { return DingTalkConstants.CALL_TYPE_OAPI; } public override IDictionary GetParameters() { TopDictionary parameters = new TopDictionary(); parameters.Add("message", this.Message); if (this.otherParams != null) { parameters.AddAll(this.otherParams); } return parameters; } public override void Validate() { RequestValidator.ValidateRequired("message", this.Message); } /// /// MessageDTODomain Data Structure. /// [Serializable] public class MessageDTODomain : TopObject { /// /// 会员所属组织 /// [XmlElement("bu_id")] public string BuId { get; set; } /// /// 会员id /// [XmlElement("cms_id")] public string CmsId { get; set; } /// /// 消息内容 /// [XmlElement("content")] public string Content { get; set; } /// /// /** * 文本 */ TEXT(1), /** * 图片 */ IMAGE(2), /** * 视频 */ VIDEO(3), /** * 链接 */ LINK(4), /** * 语音 */ VOICE(5), /** * markdown */ MARK_DOWN(6), /** * 交互式卡片 */ ACTION_CARD(7), /** * 富文本 */ RICH_TEXT(8), /** * 文件 */ FILE(9), /** * 消息已读 */ MSG_READ(10) /// [XmlElement("content_type")] public Nullable ContentType { get; set; } /// /// 钉钉的企业id /// [XmlElement("ding_corp_id")] public string DingCorpId { get; set; } /// /// 消息生成时间 /// [XmlElement("message_create_at")] public Nullable MessageCreateAt { get; set; } /// /// 消息id /// [XmlElement("message_id")] public string MessageId { get; set; } /// /// 实例id /// [XmlElement("open_instance_id")] public string OpenInstanceId { get; set; } /// /// 1,智能客服;1001,经济体智能客服 /// [XmlElement("production_type")] public Nullable ProductionType { get; set; } /// /// 小二serviceId,或者会员的cmsId /// [XmlElement("sender_id")] public string SenderId { get; set; } /// /// 4,小二;1,会员 /// [XmlElement("sender_type")] public string SenderType { get; set; } /// /// 会话来源 /// [XmlElement("session_source")] public string SessionSource { get; set; } /// /// 会话id /// [XmlElement("sid")] public string Sid { get; set; } } #endregion } }