private void MyMessageReceivedFunction(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e)
    {
        string fairyCommand = "!fairy ";

        if (e.ChatMessage.IsBroadcaster && e.ChatMessage.Message.StartsWith(fairyCommand))
        {
            Debug.Log("spawn fairy broadcaster");
            //Special fairy for streamer
            SpawnFairy("streamer", 666, e.ChatMessage.Username, true, false);
        }
        else if (e.ChatMessage.IsModerator && e.ChatMessage.Message.StartsWith(fairyCommand))
        {
            Debug.Log("spawn fairy Moderator");
            //Special fairy for streamer
            SpawnFairy(e.ChatMessage.Message.Substring(fairyCommand.Length), 333, e.ChatMessage.Username, false, true);
        }
        else if (e.ChatMessage.IsSubscriber && e.ChatMessage.Message.StartsWith(fairyCommand))
        {
            Debug.Log("spawn fairy subscriber");
            //spawn fairy based on color specified and subscription length of user
            SpawnFairy(e.ChatMessage.Message.Substring(fairyCommand.Length), e.ChatMessage.SubscribedMonthCount, e.ChatMessage.Username, false, false);
        }

        Debug.Log(e.ChatMessage.Username + ":" + e.ChatMessage.Message + ", months subscribed: " + e.ChatMessage.SubscribedMonthCount);
    }
示例#2
0
        private void Client_OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e)
        {
            string botCommandResponse = _chatMessageService.HandleBotCommands(e.ChatMessage.Message.Trim());

            if (string.IsNullOrEmpty(botCommandResponse))  // do something with luis
            {
                // Run async method in this sync method  (read https://cpratt.co/async-tips-tricks/)
                IntentResponse intentResponse = AsyncHelper.RunSync(() => _luisService.GetIntentAsync(e.ChatMessage.Message.Trim()));

                decimal certaintyThreshold;

                if (!decimal.TryParse(_luisConfiguration.LuisChatCertaintyThreshold, out certaintyThreshold))
                {
                    throw new ArgumentException(nameof(_luisConfiguration.LuisChatCertaintyThreshold));
                }


                if (intentResponse.Certainty > certaintyThreshold)
                {
                    string luisMappedResponse = _chatMessageService.MapLuisIntentToResponse(intentResponse);
                    _twitchClient.SendMessage(_twitchConfiguration.ChannelName, luisMappedResponse);
                }

                AddTwitchUserChatRecordToDb(e, intentResponse);
            }
            else // do something with explicit bot commands
            {
                _twitchClient.SendMessage(_twitchConfiguration.ChannelName, botCommandResponse);
            }
        }
    private void OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e)
    {
        string username = e.ChatMessage.Username;
        string message  = e.ChatMessage.Message;

        Debug.Log("Raw chat message: " + username + " " + message);

        bool   isCommand = false;
        string command   = "";

        if (message[0] == '!')
        {
            isCommand = true;
            command   = message.Substring(1);
            command   = command.ToLower();
        }

        foreach (var listener in listeners)
        {
            if (message.Length == 0)
            {
                continue;
            }

            if (isCommand)
            {
                listener.OnCommandReceived(username, command);
            }
            else
            {
                listener.OnMessageReceived(username, message);
            }
        }
    }
        private void Client_OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e)
        {
            string botMessageResponse = _chatMessageService.HandleBotCommands(e);

            IntentResponse intentResponse = new IntentResponse {
                Certainty = null, EmbeddedUrl = null, Intent = null
            };                                             // create with an empty default, for bot-command messages (those that are not fed through LUIS)

            if (string.IsNullOrEmpty(botMessageResponse))  // nothing from bot-commands, so try doing something with LUIS
            {
                // Run async method in this sync method  (read https://cpratt.co/async-tips-tricks/)
                intentResponse = AsyncHelper.RunSync(() => _luisService.GetIntentAsync(e.ChatMessage.Message.Trim()));

                decimal certaintyThreshold;

                if (!decimal.TryParse(_luisConfiguration.LuisChatCertaintyThreshold, out certaintyThreshold))
                {
                    throw new ArgumentException(nameof(_luisConfiguration.LuisChatCertaintyThreshold));
                }


                if (intentResponse.Certainty > certaintyThreshold)
                {
                    botMessageResponse = _chatMessageService.MapLuisIntentToResponse(intentResponse);
                }
            }

            AddTwitchUserChatRecordToDb(e, intentResponse);
            _twitchClient.SendMessage(_twitchConfiguration.ChannelName, botMessageResponse);
        }
示例#5
0
    private void OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e)
    {
        string[] words = e.ChatMessage.Message.Split(' ');
        string   color = "black";

        if (words[0].Equals("!join"))
        {
            if (gamemode == 1 && words.Length == 2)
            {
                color = words[1].ToLower();
            }
            else if (gamemode == 1)
            {
                return;
            }

            if ((gameManager.CurrentGameState == GameManager.GameState.Join || PlayerPrefs.GetInt("Endless") == 1) && gameManager.CurrentGameState != GameManager.GameState.Winner && words.Length <= 2)
            {
                if (e.ChatMessage.IsModerator || e.ChatMessage.IsSubscriber || e.ChatMessage.IsMe || e.ChatMessage.IsBroadcaster || e.ChatMessage.Username == "wojteknician" || e.ChatMessage.Username == "Sykkuno")
                {
                    playerManager.CreatePlayer(e.ChatMessage.Username, color, true);
                }
                else
                {
                    playerManager.CreatePlayer(e.ChatMessage.Username, color);
                }
            }
        }
        else
        {
            gameManager.SetLocation(e.ChatMessage.Username, e.ChatMessage.Message);
        }
    }
示例#6
0
        private async void Client_OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e)
        {
            String invoker = e.ChatMessage.Username;

            try
            {
                foreach (var command in BotCommands)
                {
                    if (command.IsActivated(e.ChatMessage.Message))
                    {
                        switch (true)
                        {
                        case true when command is IResponseMessage commandMessage:
                            client.SendMessage(_options.ChannelName, commandMessage.GetMessage(e));
                            break;

                        case true when command is IResponseVisual commandVisual:
                            await connection.SendAsync("SendTask", commandVisual.GetVisualEvent(e), "");

                            break;
                        }

                        return; // if activated exit, if not multiple sentiment of !devastante will be UBER negative
                    }
                }
            }
            catch (Exception ex)
            {
                _logger.LogError(ex.Message);
                client.SendWhisper(invoker, ex.Message);
            }

            await ProcessSentiment(e);
        }
示例#7
0
 private void MsgReceivedFunc(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e)
 {
     //if (e.ChatMessage.Message == "PogU") {
     //    print(e.ChatMessage.Message);
     //    StartCoroutine(playerController.Dash());
     //}
     gunController.Shoot();
 }
示例#8
0
    void globalChatMessageRecieved(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e)
    {
        Debug.Log(e.ChatMessage.Username + ": " + e.ChatMessage.Message);
        string MESSAGE = e.ChatMessage.Message;

        if (MESSAGE.StartsWith("!join"))
        {
            menu.AddPlayer(e.ChatMessage.DisplayName, e.ChatMessage.UserId);
        }
    }
示例#9
0
 private void MymessageReceivedFuntion(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e)
 {
     Debug.Log("Message Received!");
     Debug.Log(e.ChatMessage.Username + ": " + e.ChatMessage.Message);
     if (e.ChatMessage.Message == "0")
     {
         Debug.Log("user entered 0");
     }
     else
     {
         Debug.Log("user entered other value");
     }
 }
示例#10
0
    private void ClientReference_OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e)
    {
        Debug.Log("Sender: " + sender + "; " + e.ChatMessage.Username + " wrote: " + e.ChatMessage.Message + " is broadcaster: " + e.ChatMessage.IsBroadcaster);

        if (VoteCounter.instance.IsVoteInProgress())
        {
            if (e.ChatMessage.Message.ToLower().Contains(SaveManager.instance.CurrentOptions.StreamCommandDie.ToLower()))
            {
                VoteCounter.instance.RegisterVote(e.ChatMessage.Username, true);
            }
            if (e.ChatMessage.Message.ToLower().Contains(SaveManager.instance.CurrentOptions.StreamCommandLive.ToLower()))
            {
                VoteCounter.instance.RegisterVote(e.ChatMessage.Username, false);
            }
        }
    }
示例#11
0
    private void MyMessageReceivedFunction(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e)
    {
        string message = e.ChatMessage.Message;

        player.GetSentence(e.ChatMessage.Message);
        TTSTest.Instance.GetMessage($"User {e.ChatMessage.DisplayName} says {e.ChatMessage.Message}");

        /*   if (RaffleList.Instance.GetWinnerName() == null)
         * {
         *     ChatLog.Instance.Log(e.ChatMessage.DisplayName + ": " + message);
         * }
         * else if (e.ChatMessage.DisplayName.ToString() == RaffleList.Instance.GetWinnerName())
         * {
         *     ChatLog.Instance.Log(e.ChatMessage.DisplayName + ": " + message);
         * }*/

        //Debug.Log("The bot just read a message in chat");
    }
示例#12
0
    //Checks to see if messages in twitch chat are commands, and if so, executes them
    private void CommandListen(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e)
    {
        if (e.ChatMessage.Message == "!help" && helpFlag == false) //sends help message
        {
            Help();
            helpFlag = true;
        }
        else if (e.ChatMessage.Message == "!Up" || e.ChatMessage.Message == "!up" || e.ChatMessage.Message == "!Down" || e.ChatMessage.Message == "!down" ||
                 e.ChatMessage.Message == "!Left" || e.ChatMessage.Message == "!left" || e.ChatMessage.Message == "!Right" || e.ChatMessage.Message == "!right" ||
                 e.ChatMessage.Message == "!u" || e.ChatMessage.Message == "!d" || e.ChatMessage.Message == "!l" || e.ChatMessage.Message == "!r")
        {
            catController.ChatMoveCommand(e.ChatMessage.Message, e.ChatMessage.Username);
        }

        /*else
         * {
         *  client.SendMessage(client.JoinedChannels[0],"Command not recognized, please use !Help to get the list of commands.");
         * }*/
    }
        private void Client_OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e)
        {
            if (e.ChatMessage.Message.StartsWith("!"))
            {
                return;
            }

            foreach (var handler in chatMessageHandlers)
            {
                handler.Handle(new ChatMessage
                {
                    UserName      = e.ChatMessage.Username,
                    DisplayName   = e.ChatMessage.DisplayName,
                    Text          = e.ChatMessage.Message,
                    UserNameColor = e.ChatMessage.ColorHex,
                    Emotes        = e.ChatMessage.EmoteSet.Emotes
                });
            }
        }
示例#14
0
    private void MessageTestFunction(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e)
    {
        Debug.Log(sender);

        if (e.ChatMessage.Message == "faster" || e.ChatMessage.Message == "!faster")
        {
            Globals.tempo += 5;
            client.SendMessage(client.JoinedChannels[0], e.ChatMessage.Username + " sent 'faster' command. Current tempo is " + Globals.tempo);
        }
        if (e.ChatMessage.Message == "slower" || e.ChatMessage.Message == "!slower")
        {
            Globals.tempo -= 5;
            client.SendMessage(client.JoinedChannels[0], e.ChatMessage.Username + " sent 'slower' command. Current tempo is " + Globals.tempo);
        }
        if (e.ChatMessage.Message == "help" || e.ChatMessage.Message == "!help")
        {
            client.SendMessage(client.JoinedChannels[0], "Hey, " + e.ChatMessage.Username + ". I'm persephone bot. Try typing 'faster' or 'slower' in the chat.");
        }
    }
示例#15
0
 //Checks to see if messages in twitch chat are commands, and if so, executes them
 private void CommandListen(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e)
 {
     if (e.ChatMessage.Message == "!help" && helpFlag == false) //sends help message
     {
         Help();
         helpFlag = true;
     }
     else if (e.ChatMessage.Message == "!1" && Global.global.pollStatus == true)
     {
         Global.global.pollChoice1++;
     }
     else if (e.ChatMessage.Message == "!2" && Global.global.pollStatus == true)
     {
         Global.global.pollChoice2++;
     }
     else if (e.ChatMessage.Message == "!3" && Global.global.pollStatus == true)
     {
         Global.global.pollChoice3++;
     }
 }
示例#16
0
    void globalChatMessageRecieved(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e)
    {
        Debug.Log(e.ChatMessage.Username + ": " + e.ChatMessage.Message);

        if (!e.ChatMessage.IsBroadcaster)//only perform checks if not the bot
        {
            string MESSAGE = e.ChatMessage.Message;

            if (MESSAGE.Contains("!submit"))
            {
                MESSAGE = MESSAGE.Replace("!submit", "");
                MESSAGE = MESSAGE.Replace(" ", "");
                slugs.AddSlug(MESSAGE, e.ChatMessage.Username);
            }
            else if (MESSAGE.Contains("+1"))
            {
                TryVotePlus(e.ChatMessage.Username);
            }
            else if (MESSAGE.Contains("-1"))
            {
                TryVoteMinus(e.ChatMessage.Username);
            }
        }
    }
 private void OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e)
 {
     Debug.Log($"Message received from {e.ChatMessage.Username}: {e.ChatMessage.Message}");
 }
示例#18
0
 private void ChatListen(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e)
 {
     Debug.Log("Someone just sent a message in Twitch Chat");
     Debug.Log(e.ChatMessage.Username + ": " + e.ChatMessage.Message);
 }
示例#19
0
 private static void OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e)
 {
 }
示例#20
0
 private void MessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e)
 {
     OnMessageReceived(e.ChatMessage.Username, e.ChatMessage.Message.ToLower());
 }
示例#21
0
 private void MyMessageReceivedFunction(object sender,
                                        TwitchLib.Client.Events.OnMessageReceivedArgs e)
 {
     Debug.Log(e.ChatMessage.UserId);
 }