private TwicasMessageContext CreateMessageContext(InternalComment comment, bool isInitialComment) { var user = GetUser(comment.UserId); var isFirstComment = _first.IsFirstComment(comment.UserId); var message = new TwicasComment(comment.Raw) { CommentItems = Tools.ParseMessage(comment.Message), Id = comment.Id.ToString(), UserName = comment.ScreenName, PostTime = comment.CreatedAt.ToString("HH:mm:ss"), UserId = comment.UserId, UserIcon = new MessageImage { Url = comment.ProfileImageUrl, Alt = null, Height = 40, // commentData.ThumbnailHeight, Width = 40, //commentData.ThumbnailWidth, }, }; var metadata = new MessageMetadata(message, _options, _siteOptions, user, this, isFirstComment) { IsInitialComment = isInitialComment, SiteContextGuid = SiteContextGuid, }; var methods = new TwicasMessageMethods(); var messageContext = new TwicasMessageContext(message, metadata, methods); return(messageContext); }
private static IInternalMessage ParseEachItem(dynamic item) { var raw = (string)item.ToString(); if (item.type == "comment") { var comment = Tools.Deserialize <Low.Comment.RootObject>(raw); string profileImageUrl; if (comment.Author.ProfileImage.StartsWith("//")) { profileImageUrl = "https:" + comment.Author.ProfileImage; } else { profileImageUrl = comment.Author.ProfileImage; } var inter = new InternalComment { Id = comment.Id, Message = comment.Message, RawMessage = comment.RawMessage, HasMention = comment.HasMention, CreatedAt = UnixTime2DateTime(comment.CreatedAt / 1000), SpecialImage = comment.SpecialImage, UserId = comment.Author.Id, UserName = comment.Author.ScreenName,//2020/01/04 Twicasのバグだろうか。NameとScreenNameが逆な気がする ScreenName = comment.Author.Name, ProfileImageUrl = profileImageUrl, Grade = comment.Author.Grade, Raw = raw, }; return(inter); } else { return(new UnknownMessage { Raw = raw }); } }