Esempio n. 1
0
 private void Follow_OnNewFollowerDetected(object sender, OnNewFollowersDetectedArgs e)
 {
     foreach (var item in e.NewFollowers)
     {
         synth.Speak("obrigado pelo fólou " + item.User.Name);
     }
 }
Esempio n. 2
0
 private void Client_Followed(object sender, OnNewFollowersDetectedArgs e)
 {
     if (Settings.ThankFollowers)
     {
         client.SendMessage(client.JoinedChannels[0], $"{e.NewFollowers[0].User.Name} {Settings.Messages.mUserFollows}");
     }
 }
Esempio n. 3
0
        private void FollowerService_OnNewFollowersDetected(object sender, OnNewFollowersDetectedArgs e)
        {
            //string users = "";
            TwitchLib.Api.Helix.Models.Users.Follow follower = e.NewFollowers.Last();

            //form.WriteChat(follower.FromUserId);
            //form.AddEvent(follower.FromUserId);

            if (follower.FollowedAt < time)
            {
                //This is an old follow, drop out of the function
                return;
            }

            var username = api.V5.Users.GetUserByIDAsync(follower.FromUserId).GetAwaiter().GetResult();

            form.WriteChat(username.DisplayName + " just followed, thanks!", true);
            form.AddEvent("New follower " + username.DisplayName);
            //form.WriteChat(username + " just followed, thanks!");
            //form.AddEvent("New follower " + username);

            //foreach(var user in e.NewFollowers.Last())
            //{
            //    form.WriteChat(user.FromUserId);
            //    form.AddEvent(user.FromUserId);
            //}
            //form.AddEvent(String.Join(", ", e.NewFollowers));
            //form.WriteChat("Thank you for following " + e.NewFollowers.Select(X => X.FromUserId));
            //form.WriteChat("Thank you for following " + e.NewFollowers.);
        }
Esempio n. 4
0
        protected virtual void OnNewFollowerDetected(object sender, OnNewFollowersDetectedArgs args)
        {
            Task.Run(async() =>
            {
                try
                {
                    var users = new List <IUserDTO>();

                    foreach (var follow in args.NewFollowers)
                    {
                        var user = await _twitchNetService.GetUserByTwitchIdAsync(follow.FromUserId);
                        users.Add(user);
                    }

                    await FireFollowEventAsync(this, new FollowEventArgs
                    {
                        Server     = this,
                        NewFollows = users.ToArray()
                    });
                }
                catch (Exception ex)
                {
                    await FireErrorEventAsync(sender, new ErrorFollowEventArgs
                    {
                        Exception       = ex,
                        UserIdsFollowed = args.NewFollowers.Select(s => s.FromUserId).ToArray(),
                    });
                }
            });
        }
 private void OnNewFollowersDetected(object sender, OnNewFollowersDetectedArgs e)
 {
     foreach (var follow in e.NewFollowers)
     {
         speechSynthesizer.SpeakAsync($"Thanks to {follow.User.DisplayName} for following!");
         botClient.SendMessage($"Thanks to {follow.User.DisplayName} for following!");
     }
 }
        public static NewFollowersEventArgs ToNewFollowerEventArgs(this OnNewFollowersDetectedArgs src)
        {
            var eventArgs = new NewFollowersEventArgs();

            eventArgs.FollowerNames.AddRange(src.NewFollowers.Select(x => x.User.DisplayName));

            return(eventArgs);
        }
Esempio n. 7
0
 private void Monitor_onNewFollowersDetected(object sender, OnNewFollowersDetectedArgs e)
 {
     foreach (var i in e.NewFollowers)
     {
         string msg = String.Format(Program.config.format_onfollow, i.FromUserName);
         parent.bot.client.SendMessage(e.Channel, msg);
         parent.callback(new Message(msg));
     }
 }
Esempio n. 8
0
        public static NewFollowersEventArgs ToNewFollowerEventArgs(this OnNewFollowersDetectedArgs src)
        {
            var eventArgs = new NewFollowersEventArgs();

            foreach (var followerName in src.NewFollowers.Select(x => x.User.DisplayName))
            {
                eventArgs.FollowerNames.Add(followerName);
            }

            return(eventArgs);
        }
        //Follower Service
        private void Fservice_OnNewFollowersDetected(object sender, OnNewFollowersDetectedArgs e)
        {
            if (followersFirstTime)
            {
                followersFirstTime = false;
                return;
            }


            Console.WriteLine("New Followers Detected: " + e.NewFollowers.Count);
            followersGained     += e.NewFollowers.Count;
            int_followersGained += e.NewFollowers.Count;
        }
Esempio n. 10
0
        private void Api_OnFollowerDetected(object sender, OnNewFollowersDetectedArgs newFollowerDetectedEventArguments)
        {
            DateTime dateToCheckAgainst = DateTime.UtcNow.AddSeconds(-90);

            List <ChannelUser> newFollowers = newFollowerDetectedEventArguments.NewFollowers
                                              .Where(follow => follow.FollowedAt >= dateToCheckAgainst)
                                              .Select(follow => usernameResolver.ResolveUsername(new ChannelUser(follow.FromUserId, follow.FromUserName, follow.FromUserName)))
                                              .ToList();

            NewFollowerEvent newFollowerEvent = new NewFollowerEvent(newFollowers);

            bus.Publish(newFollowerEvent);
        }
        private void FollowerServiceOnOnNewFollowersDetected(object sender, OnNewFollowersDetectedArgs eventArgs)
        {
            List <string> newFollowers = eventArgs.NewFollowers
                                         .Where(f => f.FollowedAt > StartUpTime)
                                         .Select(x => x.FromUserId)
                                         .ToList();

            if (newFollowers.Any())
            {
                GetUsersResponse getUsersResponse =
                    _twitchApi.Helix.Users.GetUsersAsync(newFollowers).Result;
                OnNewFollower?.Invoke(sender, getUsersResponse.ToNewFollowerEventArgs());
            }
        }
Esempio n. 12
0
        private void OnNewFollowersDetected(object sender, OnNewFollowersDetectedArgs e)
        {
            string newFollowers = "";

            foreach (Follower follower in e.NewFollowers)
            {
                if (newFollowers == "")
                {
                    newFollowers = follower.User.Name;
                }
                else
                {
                    newFollowers += ", " + follower.User.Name;
                }
            }
            MessageBox.Show($"Follower service detected new followers with settings:\nChannel: {e.Channel}\nCheck Interval Seconds: {e.CheckIntervalSeconds}\nQuery Count: {e.QueryCount}" +
                            $"\n\nNew followers: {newFollowers}");
        }
        public void ShouldSetCurrentFollowerCount(
            IConfiguration configuration,
            ILoggerFactory loggerFactory,
            int initialFollowers,
            OnNewFollowersDetectedArgs args)
        {
            // arrange

            // act
            var sut = new FRITZ.TwitchService(configuration, loggerFactory)
            {
                CurrentFollowerCount = initialFollowers
            };

            sut.Service_OnNewFollowersDetected(null, args);

            // assert
            Assert.Equal(args.NewFollowers.Count + initialFollowers, sut.CurrentFollowerCount);
        }
        public void ShouldRaiseEventProperly(
            IConfiguration configuration,
            ILoggerFactory loggerFactory,
            int initialFollowers,
            OnNewFollowersDetectedArgs args)
        {
            // arrange
            var sut = new FRITZ.TwitchService(configuration, loggerFactory)
            {
                CurrentFollowerCount = initialFollowers
            };

            // assert
            var evt = Assert.Raises <ServiceUpdatedEventArgs>(
                h => sut.Updated += h,
                h => sut.Updated -= h,
                () => sut.Service_OnNewFollowersDetected(null, args)
                );

            Assert.Equal(initialFollowers + args.NewFollowers.Count, evt.Arguments.NewFollowers);
            Assert.Null(evt.Arguments.NewViewers);
        }
Esempio n. 15
0
        private void OnNewFollowersDetected(object sender, OnNewFollowersDetectedArgs e)
        {
            // var databaseUsers = _database.GetAll();
            // var newFollowers = new List<string>();
            // foreach (var newUser in e.NewFollowers)
            // {
            //     if (databaseUsers.FirstOrDefault(u => u.Id == newUser.FromUserId) == null)
            //         newFollowers.Add(newUser.FromUserId);
            // }

            // if (newFollowers.Count() > 0)
            // {
            //     var users = _twitchAPI.Helix.Users.GetUsersAsync(newFollowers).Result;
            //     Array.ForEach(users.Users, u => _database.Add(new TwitchUser { Id = u.Id, DisplayName = u.DisplayName }));

            //     if (users.Users.Count() > 0)
            //     {
            //         var followersNames = string.Join(", ", users.Users.Select(u => u.DisplayName).ToList());
            //         _logger.LogInformation($"We had a new follower.  Thank you for following { followersNames }");
            //         _client.SendMessage(e.Channel, $"We had a new follower.  Thank you for following { followersNames }");
            //         //Task.Run(async () => await _discordChatService.LogMessageToChannelAsync($"We had a new follower.  Thank you for following { followersNames }", "Announcements"));
            //     }
            // }
        }
 private void FollowerServiceOnOnNewFollowersDetected(object sender, OnNewFollowersDetectedArgs eventArgs)
 {
     OnNewFollower?.Invoke(sender, eventArgs.ToNewFollowerEventArgs());
 }
Esempio n. 17
0
 private void NewFollower(object sender, OnNewFollowersDetectedArgs e)
 {
     OnNewFollower?.Invoke(this, e.ToNewFollowerEventArgs());
 }
Esempio n. 18
0
 private void Follows_OnNewFollowersDetected(object sender, OnNewFollowersDetectedArgs e)
 {
     client.SendMessage(TwitchInfo.ChannelName, $"Спасибо за подписку {e.NewFollowers}");
 }
Esempio n. 19
0
 private static void onFollowersDetected(object sender, OnNewFollowersDetectedArgs e)
 {
     MessageBox.Show($"New followers detected! Followers: {String.Join(",", e.NewFollowers)}");
 }