zrg
2024-08-16 18865d8bf24382e850e661dec6cca0e8b9dba6ae
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
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
{
    /// <summary>
    /// TOP API: dingtalk.oapi.sceneservicegroup.message.send
    /// </summary>
    public class OapiSceneservicegroupMessageSendRequest : BaseDingTalkRequest<DingTalk.Api.Response.OapiSceneservicegroupMessageSendResponse>
    {
        /// <summary>
        /// 根据dingtalkId设置at用户
        /// </summary>
        public string AtDingtalkids { get; set; }
 
        /// <summary>
        /// 根据手机号设置at用户
        /// </summary>
        public string AtMobiles { get; set; }
 
        /// <summary>
        /// 根据unionId设置at用户
        /// </summary>
        public string AtUnionids { get; set; }
 
        /// <summary>
        /// 业务方自身系统关联ID,与开放群ID二选一填入
        /// </summary>
        public string Bizid { get; set; }
 
        /// <summary>
        /// 0-按钮竖直排列,1-按钮横向排列
        /// </summary>
        public string BtnOrientation { get; set; }
 
        /// <summary>
        /// card按钮
        /// </summary>
        public string Btns { get; set; }
 
        public List<BtnsDomain> Btns_ { set { this.Btns = TopUtils.ObjectToJson(value); } } 
 
        /// <summary>
        /// 消息内容
        /// </summary>
        public string Content { get; set; }
 
        /// <summary>
        /// 是否at所有人
        /// </summary>
        public Nullable<bool> IsAtAll { get; set; }
 
        /// <summary>
        /// 消息类型
        /// </summary>
        public string MessageType { get; set; }
 
        /// <summary>
        /// 开放群ID
        /// </summary>
        public string OpenConversationid { get; set; }
 
        /// <summary>
        /// 根据dingtalkId设置接收者
        /// </summary>
        public string ReceiverDingtalkids { get; set; }
 
        /// <summary>
        /// 根据手机号设置接收者
        /// </summary>
        public string ReceiverMobiles { get; set; }
 
        /// <summary>
        /// 根据unionId设置接收者
        /// </summary>
        public string ReceiverUnionids { get; set; }
 
        /// <summary>
        /// 消息标题
        /// </summary>
        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<string, string> 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);
        }
 
    /// <summary>
/// BtnsDomain Data Structure.
/// </summary>
[Serializable]
 
public class BtnsDomain : TopObject
{
            /// <summary>
            /// 按钮地址
            /// </summary>
            [XmlElement("actionURL")]
            public string ActionURL { get; set; }
    
            /// <summary>
            /// 按钮标题
            /// </summary>
            [XmlElement("title")]
            public string Title { get; set; }
}
 
        #endregion
    }
}