public static InfoMessageContext Create(InfoMessage message, ICommentOptions options)
        {
            var metadata = new InfoMessageMetadata(message, options);
            var methods  = new InfoMessageMethods();
            var context  = new InfoMessageContext(message, metadata, methods);

            return(context);
        }
        protected void SendSystemInfo(string message, InfoType type)
        {
            var context = InfoMessageContext.Create(new InfoMessage
            {
                Text     = message,
                SiteType = SiteType.Periscope,
                Type     = type,
            }, _options);

            MessageReceived?.Invoke(this, context);
        }
        protected void SendSystemInfo(string message, InfoType type)
        {
            var context = InfoMessageContext.Create(new InfoMessage
            {
                CommentItems = new List <IMessagePart> {
                    Common.MessagePartFactory.CreateMessageText(message)
                },
                NameItems = null,
                SiteType  = SiteType.Periscope,
                Type      = type,
            }, _options);

            MessageReceived?.Invoke(this, context);
        }