Пример #1
0
        /// <summary>
        /// 获取视频短信模板状态
        /// </summary>
        /// <param name="tplId">模板ID</param>
        /// <returns></returns>
        public async Task <Result <Template> > GetVideoTemplateAsync(string tplId)
        {
            var data = new Dictionary <string, string> ();

            data.Add(YunPianFields.TplId, tplId);

            var resultHandler = new StdResultHandler <Template> (Options.Version);

            return(await PostAsync(data, resultHandler, Options.GetVideoTemplet));
        }
Пример #2
0
        /// <summary>
        /// 添加视频短信模板
        /// </summary>
        /// <param name="param">需要包含_sign字段</param>
        /// <param name="layout"></param>
        /// <param name="material"></param>
        /// <param name="charset">编码格式</param>
        /// <returns></returns>
        public async Task <Result <Template> > AddVideoTemplateAsync(Dictionary <string, string> param, string layout, byte[] material, string charset = null)
        {
            var data = new MultipartFormDataContent();

            foreach (var kv in param)
            {
                data.Add(new StringContent(kv.Value, Encoding.GetEncoding(charset ?? Options.Charset), "text/plain"), kv.Key);
            }

            data.Add(new StringContent(layout, Encoding.GetEncoding(charset ?? Options.Charset),
                                       "application/x-www-form-urlencoded"), YunPianFields.Layout);

            var httpContent = new ByteArrayContent(material);

            httpContent.Headers.Add("Content-Type", $"application/octet-stream;charset={charset??Options.Charset}");

            data.Add(httpContent, YunPianFields.Material);

            var resultHandler = new StdResultHandler <Template> (Options.Version);

            return(await PostAsync(data, resultHandler, Options.AddVideoTemplet));
        }