public static void CheckForNewSubscriberEvents(object sender, OnNewSubscriberArgs e)
        {
            Subscriber g = e.Subscriber;

            Log.Message($"NewSubscriber = CumulativeMonths - {g.MsgParamCumulativeMonths} - ShareStreak: {g.MsgParamShouldShareStreak} - StreakMonths: {g.MsgParamStreakMonths} - ResubMessage: {g.ResubMessage} - SubPlan: {g.SubscriptionPlan} - PlanName: {g.SubscriptionPlanName}");

            List <Event> eventsWithNewSubscriberTriggers = Events.All.Where((x) => x.firstTimeSubs).ToList();

            foreach (Event evt in eventsWithNewSubscriberTriggers)
            {
                bool fire = false;

                if (e.Subscriber.SubscriptionPlan.ToString() == "Tier1" && evt.tierOneSubs)
                {
                    fire = true;
                }
                else if (e.Subscriber.SubscriptionPlan.ToString() == "Tier2" && evt.tierTwoSubs)
                {
                    fire = true;
                }
                else if (e.Subscriber.SubscriptionPlan.ToString() == "Tier3" && evt.tierThreeSubs)
                {
                    fire = true;
                }

                if (fire)
                {
                    evt.FireEvents(e.Subscriber.DisplayName);
                }
            }
        }
示例#2
0
 private void NewSubscriber(OnNewSubscriberArgs args)
 {
     if (Config.Currency.Enabled)
     {
         HandleCurrency(args);
     }
 }
示例#3
0
        private void HandleCurrency(OnNewSubscriberArgs args)
        {
            var currencyToAward = 0;

            switch (args.Subscriber.SubscriptionPlan)
            {
            case TwitchLib.Client.Enums.SubscriptionPlan.Prime:
                currencyToAward = Config.Currency.AwardForSub_Prime;
                break;

            case TwitchLib.Client.Enums.SubscriptionPlan.Tier1:
                currencyToAward = Config.Currency.AwardForSub_Tier1;
                break;

            case TwitchLib.Client.Enums.SubscriptionPlan.Tier2:
                currencyToAward = Config.Currency.AwardForSub_Tier2;
                break;

            case TwitchLib.Client.Enums.SubscriptionPlan.Tier3:
                currencyToAward = Config.Currency.AwardForSub_Tier3;
                break;
            }

            CurrencyRepository.AddForUser(args.Subscriber.Login, currencyToAward, "The Bot");
        }
示例#4
0
 private void OnNewSubscriber(object sender, OnNewSubscriberArgs e)
 {
     Console.WriteLine("The user " + e.Subscriber.DisplayName + " subed!!!");
     TwitchBotWin.WinRef.GetUserListClass().SetUserTypeOfUser(e.Subscriber.DisplayName, "Subscriber");
     TwitchBotWin.WinRef.GetUserListClass().AddNewSubToCurrentSubsInChat();
     TwitchBotWin.WinRef.RefreshCountLabels();
 }
示例#5
0
        private void OnNewSubscriber(object sender, OnNewSubscriberArgs e)
        {
            switch (e.Subscriber.SubscriptionPlan)
            {
            case SubscriptionPlan.Prime:
                form.WriteChat(e.Subscriber.DisplayName + " just subscribed with Twitch Prime!!! itslitHype itslitHype itslitHype", true);
                form.AddEvent("New Twitch Prime Sub " + e.Subscriber.DisplayName);

                break;

            case SubscriptionPlan.Tier1:
                form.WriteChat(e.Subscriber.DisplayName + " just subscribed!!! itslitHype itslitHype itslitHype", true);
                form.AddEvent("New Tier 1 Sub " + e.Subscriber.DisplayName);

                break;

            case SubscriptionPlan.Tier2:
                form.WriteChat(e.Subscriber.DisplayName + " just subscribed at Tier 2!!! itslitHype itslitHype itslitHype", true);
                form.AddEvent("New Tier 2 Sub " + e.Subscriber.DisplayName);

                break;

            case SubscriptionPlan.Tier3:
                form.WriteChat(e.Subscriber.DisplayName + " just subscribed at Tier 3!!! itslitHype itslitHype itslitHype", true);
                form.AddEvent("New Tier 3 Sub " + e.Subscriber.DisplayName);

                break;
            }
        }
示例#6
0
 private void OnNewSubscriber(object sender, OnNewSubscriberArgs e)
 {
     //if (e.Subscriber.SubscriptionPlan == SubscriptionPlan.Prime)
     //    client.SendMessage(e.Channel, $"Welcome {e.Subscriber.DisplayName} to the substers! You just earned 500 points! So kind of you to use your Twitch Prime on this channel!");
     //else
     //    client.SendMessage(e.Channel, $"Welcome {e.Subscriber.DisplayName} to the substers! You just earned 500 points!");
 }
示例#7
0
        private static void Client_OnNewSubscriber(object sender, OnNewSubscriberArgs e)
        {
            var message         = e.Subscriber.SystemMessageParsed;
            var messageLanguage = GetMessageLanguage(message).Result;

            ReadMessage(message, messageLanguage).Wait();
        }
示例#8
0
 private void Client_Subscribed(object sender, OnNewSubscriberArgs e)
 {
     if (Settings.ThankSubscribers)
     {
         client.SendMessage(e.Channel, $"{e.Subscriber.DisplayName} {Settings.Messages.mUserSubscribes}");
     }
 }
示例#9
0
        public static void Subbed(object sender, OnNewSubscriberArgs e)
        {
            Shared.Data.UserData.CreateUser(e.Subscriber.UserId, Shared.IDType.Twitch);
            int Reward = int.Parse(Shared.ConfigHandler.Config["Rewards"]["Twitch"]["Subbed"].ToString());

            Shared.Data.Accounts.GiveUser(e.Subscriber.UserId, Shared.IDType.Twitch, Reward);
            MessageHandler.SendMessage(e.Channel, Shared.ConfigHandler.Config["EventMessages"]["Subbed"].ToString(), e.Subscriber.DisplayName, null, Reward);
        }
        private void Client_OnNewSubscriber(object sender, OnNewSubscriberArgs e)
        {
            ChannelUser        user          = new ChannelUser(e.Subscriber.UserId, e.Subscriber.DisplayName, e.Subscriber.DisplayName);
            ChannelUser        resolvedUser  = usernameResolver.ResolveUsername(user);
            NewSubscriberEvent newSubscriber = new NewSubscriberEvent(resolvedUser);

            bus.Publish(newSubscriber);
        }
 public static void OnNewSubscriber(object sender, OnNewSubscriberArgs e)
 {
     HandleNewSubscriber(sender, e, _viewerCollection.GetAsync("viewer-username", e.Subscriber.DisplayName.ToLowerInvariant()).GetAwaiter().GetResult().FirstOrDefault()?.Value).GetAwaiter().GetResult();
     _client.SendMessage(e.Channel,
                         e.Subscriber.SubscriptionPlan == SubscriptionPlan.Prime
             ? $"Welcome {e.Subscriber.DisplayName} to the {_account.TwitchBotSettings.CommunityName}! You just earned {_account.TwitchBotSettings.NewSubAwardAmount} {_account.TwitchBotSettings.PointsName}! May the Lords bless you for using your Twitch Prime!"
             : $"Welcome {e.Subscriber.DisplayName} to the {_account.TwitchBotSettings.CommunityName}! You just earned {_account.TwitchBotSettings.NewSubAwardAmount} {_account.TwitchBotSettings.PointsName}!");
 }
示例#12
0
        private void OnNewSub(object sender, OnNewSubscriberArgs e)
        {
            this.messageBus.Send(nameof(TwitchSubscription),
                                 new TwitchSubscription(e.Subscriber.UserId,
                                                        e.Subscriber.Login,
                                                        e.Subscriber.DisplayName, 1, true));

            this.Broadcast($"Thank you {e.Subscriber.DisplayName} for the sub!!! <3");
        }
示例#13
0
        public void _Client_OnNewSubscriber(object sender, OnNewSubscriberArgs e)
        {
            if (!EnableSubPixels)
            {
                return;
            }

            _GoogleSheet.AddPixelsForUser(e.Subscriber.DisplayName, _PixelRewards[e.Subscriber.SubscriptionPlan], "PixelBot-Sub");
        }
示例#14
0
        private void AddSubscriberRecordToDb(OnNewSubscriberArgs e)
        {
            TwitchNewSubscriber twitchNewSubscriber = new TwitchNewSubscriber
            {
                TwitchUserDisplayName = e.Subscriber.DisplayName.ToString(),
            };

            AsyncHelper.RunSync(() => _twitchNewSubscriberRepository.CreateAsync(twitchNewSubscriber));
        }
示例#15
0
        public static NewSubscriberEventArgs ToNewSubscriberEventArgs(this OnNewSubscriberArgs src)
        {
            var eventArgs = new NewSubscriberEventArgs
            {
                SubscriberName = src.Subscriber.DisplayName,
            };

            return(eventArgs);
        }
示例#16
0
        private void OnNewSubscriber(object sender, OnNewSubscriberArgs e)
        {
            EvtOnSubscriptionArgs subArgs = new EvtOnSubscriptionArgs
            {
                SubscriptionData = new EvtSubscriptionData(e.Subscriber.UserId, e.Subscriber.DisplayName,
                                                           e.Subscriber.DisplayName)
            };

            UserNewlySubscribedEvent?.Invoke(subArgs);
        }
示例#17
0
文件: Bot.cs 项目: Ghander/ToeFrogBot
 private void Client_OnNewSubscriber(object sender, OnNewSubscriberArgs e)
 {
     if (e.Subscriber.SubscriptionPlan == SubscriptionPlan.Prime)
     {
         client.SendMessage(e.Channel, $"Welcome {e.Subscriber.DisplayName} to the ToeFrog Pod! Thank you for that Twitch Prime sub!");
     }
     else
     {
         client.SendMessage(e.Channel, $"Welcome {e.Subscriber.DisplayName} to the ToeFrog Pod! I appreciate you and your sub!");
     }
 }
示例#18
0
 private static void Client_OnNewSubscriber(object sender, OnNewSubscriberArgs e)
 {
     if (e.Subscriber.SubscriptionPlan == SubscriptionPlan.Prime)
     {
         TwitchChatForm.Instance.client.SendMessage(e.Channel, $"Welcome {e.Subscriber.DisplayName} to the substers! You just earned 500 points! So kind of you to use your Twitch Prime on this channel!");
     }
     else
     {
         TwitchChatForm.Instance.client.SendMessage(e.Channel, $"Welcome {e.Subscriber.DisplayName} to the substers! You just earned 500 points!");
     }
 }
示例#19
0
 public void Execute(OnNewSubscriberArgs e)
 {
     if (e.Subscriber.SubscriptionPlan == SubscriptionPlan.Prime)
     {
         client.SendMessage(e.Channel, $"Welcome {e.Subscriber.DisplayName} to the substers! You just earned 500 points! So kind of you to use your Twitch Prime on this channel!");
     }
     else
     {
         client.SendMessage(e.Channel, $"Welcome {e.Subscriber.DisplayName} to the substers! You just earned 500 points!");
     }
 }
示例#20
0
文件: Bot.cs 项目: lucasgl/ItsMyBot
 private void Client_OnNewSubscriber(object sender, OnNewSubscriberArgs e)
 {
     if (e.Subscriber.SubscriptionPlan == SubscriptionPlan.Prime)
     {
         client.SendMessage(e.Channel, $"Welcome {e.Subscriber.DisplayName} to the substers! So kind of you to use your Twitch Prime on this channel!");
     }
     else
     {
         client.SendMessage(e.Channel, $"Welcome {e.Subscriber.DisplayName} to the substers!");
     }
 }
        public void Client_OnNewSubscriber(object sender, OnNewSubscriberArgs e)
        {
            var info = new SubscriptionInfo
            {
                UserDisplayName = e.Subscriber.DisplayName,
                PlanName        = e.Subscriber.SubscriptionPlanName,
                Message         = e.Subscriber.ResubMessage,
                Months          = 1,
            };

            OnSub(info);
        }
 private static void OnNewSubscriber(object sender, OnNewSubscriberArgs e)
 {
     if (!Context.IsWorldReady)
     {
         return;
     }
     Spawner.SpawnTwitchJunimo(e.Subscriber.DisplayName);
     if (Config.ShowDebug() && BNC_Core.config.Spawn_Subscriber_Junimo)
     {
         BNC_Core.Logger.Log($"Attemting to spawn Junimo:{e.Subscriber.DisplayName} from resub", LogLevel.Info);
     }
 }
示例#23
0
文件: Bot.cs 项目: ckorn/cuddle
 private void Client_OnNewSubscriber(object sender, OnNewSubscriberArgs e)
 {
     logger.Log($"Welcome {e.Subscriber.DisplayName} to the substers! You just earned 500 points! So kind of you to use your Twitch Prime on this channel!");
     if (e.Subscriber.SubscriptionPlan == SubscriptionPlan.Prime)
     {
         logger.Log($"Welcome {e.Subscriber.DisplayName} to the substers! You just earned 500 points! So kind of you to use your Twitch Prime on this channel!");
     }
     else
     {
         logger.Log($"Welcome {e.Subscriber.DisplayName} to the substers! You just earned 500 points!");
     }
 }
示例#24
0
        private void onNewSubscriber(object sender, OnNewSubscriberArgs e)
        {
            try {
                Logger.Log("New subscriber in " + e.Channel);

                User user = UserManager.GetUserTwitch(e.Channel);
                BitbarManager.AddBits(user, subPlanToBits(e.Subscriber.SubscriptionPlan));
            }
            catch (Exception ex) {
                Logger.Log(ex);
            }
        }
示例#25
0
        private void OnNewSubscriber(object sender, OnNewSubscriberArgs e)
        {
            User user = BotProgram.GetOrAddUser(e.Subscriber.DisplayName, false);

            EvtOnSubscriptionArgs subArgs = new EvtOnSubscriptionArgs
            {
                SubscriptionData = new EvtSubscriptionData(e.Subscriber.UserId, e.Subscriber.DisplayName,
                                                           e.Subscriber.DisplayName)
            };

            UserNewlySubscribedEvent?.Invoke(user, subArgs);
        }
示例#26
0
        public void Client_OnNewSubscriber(object sender, OnNewSubscriberArgs e)
        {
            var message = $"Welcome {e.Subscriber.DisplayName} to the my lab!";

            if (e.Subscriber.SubscriptionPlan == SubscriptionPlan.Prime)
            {
                message += " So kind of you to use your Twitch Prime on my channel!";
            }

            sayingResponse.SaySomethingNice(message).Wait();

            this.client.SendMessage(e.Channel, message);
        }
示例#27
0
        /// <summary>
        /// Invokes the new subscriber.
        /// </summary>
        /// <param name="client">The client.</param>
        /// <param name="badges">The badges.</param>
        /// <param name="colorHex">The color hexadecimal.</param>
        /// <param name="color">The color.</param>
        /// <param name="displayName">The display name.</param>
        /// <param name="emoteSet">The emote set.</param>
        /// <param name="id">The identifier.</param>
        /// <param name="login">The login.</param>
        /// <param name="systemMessage">The system message.</param>
        /// <param name="systemMessageParsed">The system message parsed.</param>
        /// <param name="resubMessage">The resub message.</param>
        /// <param name="subscriptionPlan">The subscription plan.</param>
        /// <param name="subscriptionPlanName">Name of the subscription plan.</param>
        /// <param name="roomId">The room identifier.</param>
        /// <param name="userId">The user identifier.</param>
        /// <param name="isModerator">if set to <c>true</c> [is moderator].</param>
        /// <param name="isTurbo">if set to <c>true</c> [is turbo].</param>
        /// <param name="isSubscriber">if set to <c>true</c> [is subscriber].</param>
        /// <param name="isPartner">if set to <c>true</c> [is partner].</param>
        /// <param name="tmiSentTs">The tmi sent ts.</param>
        /// <param name="userType">Type of the user.</param>
        /// <param name="rawIrc">The raw irc.</param>
        /// <param name="channel">The channel.</param>
        public static void InvokeNewSubscriber(this TwitchClient client, List <KeyValuePair <string, string> > badges, List <KeyValuePair <string, string> > badgeInfo, string colorHex, Color color, string displayName,
                                               string emoteSet, string id, string login, string systemMessage, string msgId, string msgParamCumulativeMonths, string msgParamStreakMonths, bool msgParamShouldShareStreak, string systemMessageParsed, string resubMessage, SubscriptionPlan subscriptionPlan,
                                               string subscriptionPlanName, string roomId, string userId, bool isModerator, bool isTurbo, bool isSubscriber, bool isPartner, string tmiSentTs,
                                               UserType userType, string rawIrc, string channel)
        {
            OnNewSubscriberArgs model = new OnNewSubscriberArgs()
            {
                Subscriber = new Subscriber(badges, badgeInfo, colorHex, color, displayName, emoteSet, id, login, systemMessage, msgId, msgParamCumulativeMonths, msgParamStreakMonths, msgParamShouldShareStreak, systemMessageParsed, resubMessage,
                                            subscriptionPlan, subscriptionPlanName, roomId, userId, isModerator, isTurbo, isSubscriber, isPartner, tmiSentTs, userType, rawIrc, channel)
            };

            client.RaiseEvent("OnNewSubscriber", model);
        }
示例#28
0
        private async Task Client_OnNewSubscriber(object sender, OnNewSubscriberArgs e)
        {
            Console.WriteLine($"{DateTime.UtcNow.ToString(CultureInfo.InvariantCulture)}: New Subscriber Posted");
            var entity = new ChannelActivityEntity
            {
                PartitionKey = e.Channel,
                RowKey       = DateTime.UtcNow.ToString(Constants.DATETIME_FORMAT).Replace(":", string.Empty).Replace("-", string.Empty).Replace(".", string.Empty),
                Activity     = StreamActivity.UserSubscribed.ToString(),
                Viewer       = e.Subscriber.Id
            };

            await AddEntityToStorage(entity);
        }
示例#29
0
        private void Client_OnNewSubscriber(object sender, OnNewSubscriberArgs e)
        {
            switch (e.Subscriber.SubscriptionPlan)
            {
            case SubscriptionPlan.Prime: client.SendMessage(e.Channel, configuration.subMessagePrime); break;

            case SubscriptionPlan.Tier1: client.SendMessage(e.Channel, configuration.subMessageTier1); break;

            case SubscriptionPlan.Tier2: client.SendMessage(e.Channel, configuration.subMessageTier2); break;

            case SubscriptionPlan.Tier3: client.SendMessage(e.Channel, configuration.subMessageTier3); break;
            }
        }
示例#30
0
 private void onNewSub(object sender, OnNewSubscriberArgs e)
 {
     try
     {
         Console.Out.WriteLine("New Sub! WOOOOO");
         Console.Out.WriteLine(e.Subscriber.DisplayName);
         vipHelper.GiveSubVip(e.Subscriber.DisplayName);
     }
     catch (Exception ex)
     {
         Console.Out.WriteLine(ex.ToString());
     }
 }