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.sceneservicegroup.message.send
///
public class OapiSceneservicegroupMessageSendRequest : BaseDingTalkRequest
{
///
/// 根据dingtalkId设置at用户
///
public string AtDingtalkids { get; set; }
///
/// 根据手机号设置at用户
///
public string AtMobiles { get; set; }
///
/// 根据unionId设置at用户
///
public string AtUnionids { get; set; }
///
/// 业务方自身系统关联ID,与开放群ID二选一填入
///
public string Bizid { get; set; }
///
/// 0-按钮竖直排列,1-按钮横向排列
///
public string BtnOrientation { get; set; }
///
/// card按钮
///
public string Btns { get; set; }
public List Btns_ { set { this.Btns = TopUtils.ObjectToJson(value); } }
///
/// 消息内容
///
public string Content { get; set; }
///
/// 是否at所有人
///
public Nullable IsAtAll { get; set; }
///
/// 消息类型
///
public string MessageType { get; set; }
///
/// 开放群ID
///
public string OpenConversationid { get; set; }
///
/// 根据dingtalkId设置接收者
///
public string ReceiverDingtalkids { get; set; }
///
/// 根据手机号设置接收者
///
public string ReceiverMobiles { get; set; }
///
/// 根据unionId设置接收者
///
public string ReceiverUnionids { get; set; }
///
/// 消息标题
///
public string Title { get; set; }
#region IDingTalkRequest Members
public override string GetApiName()
{
return "dingtalk.oapi.sceneservicegroup.message.send";
}
public override string GetApiCallType()
{
return DingTalkConstants.CALL_TYPE_OAPI;
}
public override IDictionary GetParameters()
{
TopDictionary parameters = new TopDictionary();
parameters.Add("at_dingtalkids", this.AtDingtalkids);
parameters.Add("at_mobiles", this.AtMobiles);
parameters.Add("at_unionids", this.AtUnionids);
parameters.Add("bizid", this.Bizid);
parameters.Add("btn_orientation", this.BtnOrientation);
parameters.Add("btns", this.Btns);
parameters.Add("content", this.Content);
parameters.Add("is_at_all", this.IsAtAll);
parameters.Add("message_type", this.MessageType);
parameters.Add("open_conversationid", this.OpenConversationid);
parameters.Add("receiver_dingtalkids", this.ReceiverDingtalkids);
parameters.Add("receiver_mobiles", this.ReceiverMobiles);
parameters.Add("receiver_unionids", this.ReceiverUnionids);
parameters.Add("title", this.Title);
if (this.otherParams != null)
{
parameters.AddAll(this.otherParams);
}
return parameters;
}
public override void Validate()
{
RequestValidator.ValidateMaxListSize("at_dingtalkids", this.AtDingtalkids, 999);
RequestValidator.ValidateMaxListSize("at_mobiles", this.AtMobiles, 999);
RequestValidator.ValidateMaxListSize("at_unionids", this.AtUnionids, 999);
RequestValidator.ValidateObjectMaxListSize("btns", this.Btns, 999);
RequestValidator.ValidateRequired("content", this.Content);
RequestValidator.ValidateRequired("message_type", this.MessageType);
RequestValidator.ValidateMaxListSize("receiver_dingtalkids", this.ReceiverDingtalkids, 999);
RequestValidator.ValidateMaxListSize("receiver_mobiles", this.ReceiverMobiles, 999);
RequestValidator.ValidateMaxListSize("receiver_unionids", this.ReceiverUnionids, 999);
RequestValidator.ValidateRequired("title", this.Title);
}
///
/// BtnsDomain Data Structure.
///
[Serializable]
public class BtnsDomain : TopObject
{
///
/// 按钮地址
///
[XmlElement("actionURL")]
public string ActionURL { get; set; }
///
/// 按钮标题
///
[XmlElement("title")]
public string Title { get; set; }
}
#endregion
}
}