Esempio n. 1
0
        public ChatConfig Clone()
        {
            var clone = new ChatConfig()
            {
                ChatName           = this.ChatName,
                Enabled            = this.Enabled,
                IconURL            = this.IconURL,
                HideViewersCounter = this.HideViewersCounter,
                Parameters         = new List <ConfigField>()
            };

            foreach (var param in this.Parameters.ToList())
            {
                clone.Parameters.Add(param);
            }

            return(clone);
        }
Esempio n. 2
0
        public CybergameChat(ChatConfig config) : base(config)
        {
            EmoticonFallbackUrl = @"Content\cybergame_smiles.html";
            EmoticonUrl         = "http://cybergame.tv/cgchat.htm?v=b";

            CreateChannel      = () => { return(new CybergameChannel(this)); };
            ReceiveOwnMessages = true;

            ContentParsers.Add(MessageParser.ParseURLs);
            ContentParsers.Add(MessageParser.ParseEmoticons);
            Info = new StreamInfo()
            {
                HasDescription = false,
                HasGame        = true,
                HasTopic       = true,
                ChatName       = Config.ChatName,
            };


            Games = new ObservableCollection <Game>();
        }
Esempio n. 3
0
        private void RefreshChatSettings(ChatConfig defaultChatConfig)
        {
            var savedConfig = Ubiquitous.Default.Config.ChatConfigs.Where(config => config.ChatName == defaultChatConfig.ChatName).FirstOrDefault();

            //Chat config is missing
            if (savedConfig == null)
            {
                Ubiquitous.Default.Config.ChatConfigs.Add(defaultChatConfig);
            }
            else
            {
                var backupParameters = savedConfig.Parameters.ToList();
                savedConfig.Parameters.Clear();
                foreach (var parameter in defaultChatConfig.Parameters.ToList())
                {
                    if (backupParameters.Any(p => p.Name.Equals(parameter.Name, StringComparison.InvariantCulture)))
                    {
                        parameter.Value = backupParameters.FirstOrDefault(p => p.Name.Equals(parameter.Name, StringComparison.InvariantCulture)).Value;
                    }
                    savedConfig.Parameters.Add(parameter);
                }
            }
        }
Esempio n. 4
0
        public GamingLiveChat(ChatConfig config) : base(config)
        {
            CreateChannel = () => { return(new GamingLiveChannel(this)); };

            AnonymousNickName = "__$anonymous";
            NickName          = AnonymousNickName;

            ContentParsers.Add(MessageParser.ParseURLs);
            ContentParsers.Add(MessageParser.ParseSimpleImageTags);

            Info = new StreamInfo()
            {
                HasDescription = false,
                HasGame        = true,
                CurrentGame    = new Game(),
                HasTopic       = true,
                ChatName       = Config.ChatName,
            };

            Games = new ObservableCollection <Game>();

            GetGameList();
        }
Esempio n. 5
0
        public GoodgameChat(ChatConfig config)
            : base(config)
        {
            EmoticonUrl         = @"http://goodgame.ru/css/compiled/smiles.css";
            EmoticonFallbackUrl = @"Content\goodgame_smiles.css";

            CreateChannel = () => { return(new GoodgameChannel(this)); };

            ContentParsers.Add(MessageParser.GoodgameTrash);
            ContentParsers.Add(MessageParser.ConvertToPlainText);
            ContentParsers.Add(MessageParser.ParseURLs);
            ContentParsers.Add(MessageParser.ParseEmoticons);

            Info = new StreamInfo()
            {
                HasDescription = false,
                HasGame        = true,
                HasTopic       = true,
                ChatName       = Config.ChatName,
            };

            Games = new ObservableCollection <Game>();
        }
Esempio n. 6
0
        public HitboxChat(ChatConfig config) : base(config)
        {
            EmoticonUrl         = "https://www.hitbox.tv/api/chat/icons/UnknownSoldier";
            EmoticonFallbackUrl = @"Content\hitboxemoticons.json";

            AnonymousNickName = "UnknownSoldier";
            NickName          = AnonymousNickName;

            CreateChannel = () => { return(new HitboxChannel(this)); };

            ContentParsers.Add(MessageParser.RemoveRedundantTags);
            ContentParsers.Add(MessageParser.ParseURLs);
            ContentParsers.Add(MessageParser.ParseSpaceSeparatedEmoticons);

            Info = new StreamInfo()
            {
                HasDescription = false,
                HasGame        = true,
                HasTopic       = true,
                ChatName       = Config.ChatName,
            };
            ChatUsers = new SmartCollection <ChatUser>();
            Games     = new ObservableCollection <Game>();
        }