public ChatMessageViewModel(MessageEventArgs message, BadgesResult badges) : base(message) { Badges = new ObservableCollection <string>(); if (message.UserType == UserType.Admin) { Badges.Add(badges.admin.image); } if (message.UserType == UserType.GlobalMod) { Badges.Add(badges.global_mod.image); } if (message.UserType == UserType.Staff) { Badges.Add(badges.staff.image); } if (message.Subscriber) { Badges.Add(badges.subscriber.image); } if (message.Mod || message.UserType == UserType.Mod) { Badges.Add(badges.mod.image); } if (message.Turbo) { Badges.Add(badges.turbo.image); } if (message.Channel == message.User) { Badges.Add(badges.broadcaster.image); } }
public ChannelViewModel(TwitchIrcClient irc, string channelName) { _irc = irc; _irc.MessageReceived += MessageReceived; _irc.UserParted += UserParted; _irc.UserJoined += UserJoined; _irc.NamesReceived += NamesReceived; _irc.UserStateReceived += UserStateReceived; _channelName = channelName; _irc.Join(_channelName); SendCommand = new DelegateCommand(Send); PartCommand = new DelegateCommand(Part); using (var wc = new TwitchApiClient()) { _badges = Json.Helper.Parse <BadgesResult>(wc.DownloadData(string.Format("https://api.twitch.tv/kraken/chat/{0}/badges", channelName))); } }