private void FireAnEventBasedOnUserNoticeType(IrcMessage message)
        {
            if (message.Tags.TryGetValue("msg-id", out string userNoticeType))
            {
                switch (userNoticeType)
                {
                case "sub":
                    var subscription = new TwitchSubscription(message);
                    OnUserSubscribed(subscription);
                    break;

                case "resub":
                    var resubscription = new TwitchSubscription(message);
                    OnUserResubscribed(resubscription);
                    break;

                case "subgift":
                    var subscriptionGift = new TwitchSubscriptionGift(message);
                    OnSubscriptionGifted(subscriptionGift);
                    break;

                case "raid":
                    var channelRaid = new TwitchChannelRaid(message);
                    OnChannelRaided(channelRaid);
                    break;

                case "ritual":
                    var channelRitual = new TwitchChannelRitual(message);
                    OnChannelRitualPerformed(channelRitual);
                    break;
                }
            }
        }
 protected virtual void OnSubscriptionGifted(TwitchSubscriptionGift subscriptionGift)
 {
     SubscriptionGifted?.Invoke(this, new SubscriptionGiftedEventArgs(subscriptionGift));
 }
Beispiel #3
0
 public SubscriptionGiftedEventArgs(TwitchSubscriptionGift subscriptionGift)
 {
     SubscriptionGift = subscriptionGift;
 }