Example #1
0
        /// <summary>
        /// 放送主コメントの投稿処理を行います。
        /// </summary>
        private void UpdateOwnerComment()
        {
            try
            {
                var publishStatus = this.publishStatus;
                if (publishStatus == null)
                {
                    return;
                }

                // コメントを取り出します。
                var comment = DequeueOwnerComment(DateTime.Now);
                if (comment == null)
                {
                    return;
                }

                // 実際の投稿処理を行います。
                WebUtil.RequestHttpAsync(
                    NicoString.GetOwnerCommentUrl(this.LiveId),
                    NicoString.MakeOwnerCommentData(
                        comment.Text,
                        comment.Mail,
                        comment.Name,
                        publishStatus.Stream.Token),
                    this.cookieContainer,
                    OwnerCommentSentDone);
            }
            catch (Exception ex)
            {
                Log.ErrorException(this, ex,
                                   "放送主コメントの投稿に失敗しました。");

                OwnerCommentSentDone(null, null);
            }
        }