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.impaas.message.asyncsend
///
public class OapiImpaasMessageAsyncsendRequest : BaseDingTalkRequest
{
///
/// 发送消息的结构
///
public string Request { get; set; }
public AsyncSendMessageRequestDomain Request_ { set { this.Request = TopUtils.ObjectToJson(value); } }
#region IDingTalkRequest Members
public override string GetApiName()
{
return "dingtalk.oapi.impaas.message.asyncsend";
}
public override string GetApiCallType()
{
return DingTalkConstants.CALL_TYPE_OAPI;
}
public override IDictionary GetParameters()
{
TopDictionary parameters = new TopDictionary();
parameters.Add("request", this.Request);
if (this.otherParams != null)
{
parameters.AddAll(this.otherParams);
}
return parameters;
}
public override void Validate()
{
RequestValidator.ValidateRequired("request", this.Request);
}
///
/// AccountInfoDomain Data Structure.
///
[Serializable]
public class AccountInfoDomain : TopObject
{
///
/// 账号通道:eleme,hema等
///
[XmlElement("channel")]
public string Channel { get; set; }
///
/// 账号ID
///
[XmlElement("id")]
public string Id { get; set; }
///
/// 账号类型:channelUser/staff。当类型为channelUser时,填写app自己的账号,当类型为staff时,填写钉钉的staffid
///
[XmlElement("type")]
public string Type { get; set; }
}
///
/// XpnContentModelDomain Data Structure.
///
[Serializable]
public class XpnContentModelDomain : TopObject
{
///
/// 推送文案
///
[XmlElement("alert_content")]
public string AlertContent { get; set; }
///
/// 推送参数,透传
///
[XmlElement("params")]
public string Params { get; set; }
}
///
/// AsyncSendMessageRequestDomain Data Structure.
///
[Serializable]
public class AsyncSendMessageRequestDomain : TopObject
{
///
/// 群ID
///
[XmlElement("group_id")]
public string GroupId { get; set; }
///
/// 消息内容,根据msgtype不同,解析方式不同
///
[XmlElement("msg_content")]
public string MsgContent { get; set; }
///
/// 消息的可扩展字段,透传
///
[XmlElement("msg_extension")]
public string MsgExtension { get; set; }
///
/// 消息的特性:静默消息,系统消息
///
[XmlElement("msg_feature")]
public string MsgFeature { get; set; }
///
/// 消息类型:text,image,user-defined
///
[XmlElement("msg_type")]
public string MsgType { get; set; }
///
/// 接受者,暂不支持,可不填
///
[XmlArray("receiverid_list")]
[XmlArrayItem("json")]
public List ReceiveridList { get; set; }
///
/// 发送者,暂不支持,可不填
///
[XmlElement("senderid")]
public AccountInfoDomain Senderid { get; set; }
///
/// 推送信息
///
[XmlElement("xpn_model")]
public XpnContentModelDomain XpnModel { get; set; }
}
#endregion
}
}