Exemple #1
0
        void ExecutarFala(Tuple <FalaModel, Delegate, Delegate> falaTuple)
        {
            var model = falaTuple.Item1;
            var notificarBotCallback     = falaTuple.Item2;
            var notificarErroBotCallback = falaTuple.Item3;

            var _CallbackModel = new CallbackModel
            {
                ChannelName = BotAppSettings.ChannelName,
                Mensagem    = string.Empty
            };

            try
            {
                base.EncadeiaReacao    = false;
                this.IsExecutandoAudio = true;
                CallBackFalaFinalizada callback = new CallBackFalaFinalizada(FinalizarComentarioCallback);
                base.ExecutarAudioSync(model, callbackFalaFinalizada: callback);
            }
            catch
            {
                this.IsExecutandoAudio = false;
                this.Falas.Remove(falaTuple);
                _CallbackModel.Mensagem = $"@{model.Jogador} ruim ao fazer o comentário {EmotesConsts.NotLikeThis}";
                notificarErroBotCallback?.DynamicInvoke(_CallbackModel);
            }
        }
Exemple #2
0
        void ExecutarFala(Tuple <FalaModel, Delegate, Delegate> falaTuple)
        {
            var model = falaTuple.Item1;
            var notificarBotCallback     = falaTuple.Item2;
            var notificarErroBotCallback = falaTuple.Item3;

            _CallbackModel = new CallbackModel
            {
                ChannelName = BotAppSettings.ChannelName
            };
            try
            {
                if (model == null)
                {
                    _CallbackModel.Mensagem = $"Não consegui realizar a ação {EmotesConsts.NotLikeThis}";
                    notificarBotCallback?.DynamicInvoke(_CallbackModel);
                    this.Falas.Remove(falaTuple);
                    return;
                }

                var piada         = _PiadaService.ObterPiadaAleatoria();
                var promptBuilder = new PromptBuilder(new System.Globalization.CultureInfo("pt-BR"));

                promptBuilder.AppendText(piada.Pergunta);
                promptBuilder.AppendBreak(PromptBreak.Small);
                promptBuilder.AppendText(piada.Resposta);
                promptBuilder.AppendBreak(PromptBreak.Small);

                CallBackFalaFinalizada callback = new CallBackFalaFinalizada(FinalizarPiadaCallback);

                base.EncadeiaReacao = true;

                model.TextoPrompFala = promptBuilder;

                _CallbackModel.Mensagem = $"{piada.Pergunta} {piada.Resposta} {EmotesConsts.LUL} {EmotesConsts.Kappa}";
                notificarBotCallback?.DynamicInvoke(_CallbackModel);

                base.ExecutarAudioSync(model, callbackFalaFinalizada: callback);
            }
            catch
            {
                this.IsExecutandoAudio = false;
                this.Falas.Remove(falaTuple);
                _CallbackModel.Mensagem = $"@daniel_dev Deu ruim ao fazer o comentário, ve o log aí {EmotesConsts.NotLikeThis}";
                notificarErroBotCallback?.DynamicInvoke(_CallbackModel);
            }
        }
        void ExecutarFala(Tuple <FalaModel, Delegate, Delegate> falaTuple)
        {
            var model = falaTuple.Item1;

            var notificarBotCallback     = falaTuple.Item2;
            var notificarErroBotCallback = falaTuple.Item3;

            var _CallbackModel = new CallbackModel
            {
                ChannelName = BotAppSettings.ChannelName
            };

            try
            {
                int idMeme = 0;
                int.TryParse(model.TextoParaFala, out idMeme);

                var memeAudio = ObterMeme(idMeme);

                if (string.IsNullOrEmpty(memeAudio))
                {
                    _CallbackModel.Mensagem = $"Não achei o audio.... {EmotesConsts.NotLikeThis}";
                    FinalizarMemeCallback(model);
                    return;
                }

                model.TextoParaFala = memeAudio;

                CallBackFalaFinalizada callback = new CallBackFalaFinalizada(FinalizarMemeCallback);
                this.ExecutarWAVSync(model, callbackFalaFinalizada: callback);
            }
            catch
            {
                this.IsExecutandoAudio = false;
                this.Falas.Remove(falaTuple);
                _CallbackModel.Mensagem = $"@{model.Jogador} Deu ruim ao rodar o meme {EmotesConsts.NotLikeThis}";
                notificarErroBotCallback?.DynamicInvoke(_CallbackModel);
            }
        }