using System;
using System.Collections.Generic;
using Top.Api.Util;
using Top.Api;
using Top.Api.DingTalk;
namespace DingTalk.Api.Request
{
///
/// TOP API: dingtalk.oapi.planetom.feeds.create
///
public class OapiPlanetomFeedsCreateRequest : BaseDingTalkRequest
{
///
/// 主播在组织内的id(staffId)
///
public string AnchorId { get; set; }
///
/// 约定开播时间戳(未来时间)
///
public Nullable AppointBeginTime { get; set; }
///
/// 封面url
///
public string CoverUrl { get; set; }
///
/// 课程类型
///
public Nullable FeedType { get; set; }
///
/// 1 chatId / 2 openConversationId,不传默认为OpenConversationId
///
public Nullable GroupIdType { get; set; }
///
/// 绑定群列表,如果不传,默认为公开直播
///
public string GroupIds { get; set; }
///
/// 简介
///
public string Introduction { get; set; }
///
/// 开放平台中应用的appId
///
public Nullable OpenAppId { get; set; }
///
/// 图片简介url
///
public string PicIntroductionUrl { get; set; }
///
/// 预告片视频
///
public string PreVideoUrl { get; set; }
///
/// 课程标题
///
public string Title { get; set; }
#region IDingTalkRequest Members
public override string GetApiName()
{
return "dingtalk.oapi.planetom.feeds.create";
}
public override string GetApiCallType()
{
return DingTalkConstants.CALL_TYPE_OAPI;
}
public override IDictionary GetParameters()
{
TopDictionary parameters = new TopDictionary();
parameters.Add("anchor_id", this.AnchorId);
parameters.Add("appoint_begin_time", this.AppointBeginTime);
parameters.Add("cover_url", this.CoverUrl);
parameters.Add("feed_type", this.FeedType);
parameters.Add("group_id_type", this.GroupIdType);
parameters.Add("group_ids", this.GroupIds);
parameters.Add("introduction", this.Introduction);
parameters.Add("open_app_id", this.OpenAppId);
parameters.Add("pic_introduction_url", this.PicIntroductionUrl);
parameters.Add("pre_video_url", this.PreVideoUrl);
parameters.Add("title", this.Title);
if (this.otherParams != null)
{
parameters.AddAll(this.otherParams);
}
return parameters;
}
public override void Validate()
{
RequestValidator.ValidateRequired("anchor_id", this.AnchorId);
RequestValidator.ValidateRequired("appoint_begin_time", this.AppointBeginTime);
RequestValidator.ValidateRequired("feed_type", this.FeedType);
RequestValidator.ValidateMaxListSize("group_ids", this.GroupIds, 999);
RequestValidator.ValidateRequired("open_app_id", this.OpenAppId);
RequestValidator.ValidateRequired("title", this.Title);
}
#endregion
}
}