Exemple #1
0
        public override async Task <Result> Handle(SavageCommandAction request, CancellationToken cancellationToken)
        {
            var stickers = new[]
            {
                "CAADBAADCwADDdKGArkc1pQ76UjOAg",
                "CAADBAADCAADDdKGAj_tC5h436A2Ag",
                "CAADBAADBQADDdKGAv0V8UL31iekAg",
                "CAADBAADBwADDdKGAubVZoG_YKlWAg",
                "CAADBAADAgADDdKGAgcifxalwaDKAg",
                "CAADBAADBAADDdKGAjr0hGT_J4u3Ag",
                "CAADBAADBgADDdKGAqe9xdJ4y-V6Ag",
                "CAADBAADJAADDdKGAhUI62q4Q-eiAg",
                "CAADAgADQAUAAog4OAKdFs7BU_FNjQI",
                "CAADAQADlgMAAjnUfAkos0drWCawrAI",
                "CAADAQADmQIAAjnUfAnE0K1G3myfjwI",
                "CAADAQADdgIAAjnUfAkZEhBnIIzuqAI",
                "CAADAQADiAIAAjnUfAleZXX-v7oW4wI",
                "CAADAQADYQIAAjnUfAn6QZUuV2w1_QI",
                "CAADBAADKwEAAh0jyRTxsVe5q0mezwI",
                "CAADBAADZQEAAh0jyRT_IHrp8Min1wI",
                "CAADBAADcQEAAh0jyRRpT-gqOeTdiQI",
                "CAADBAADcgEAAh0jyRSlvWxWXM1hIQI",
                "CAADBAADegEAAh0jyRT59lf9Ujs4NgI",
                "CAADAQADFAADtRhUDotYyJnp5TPwAg",
                "CAADBAADej0AAnrRWwb0PeNFoICsSQI",
                "CAADBAADewUAAlthFwNM1PJc-dzS5AI",
                "CAADAgADEwAD0lqIASWkmUvWWXbPAg"
            };

            var n = RandomProvider.GetThreadRandom().Next(stickers.Length);

            var luckySticker = stickers[n];

            return(await MediatR.Send(new StickerResponse(luckySticker), cancellationToken));
        }
Exemple #2
0
        public async override Task <Result> Handle(StatsCommandAction request, CancellationToken cancellationToken)
        {
            if (!request.From.IsAdmin || request.Chat.Type != Chat.ChatType.Private)
            {
                return(await MediatR.Send(new TextResponse("Eres un agüevonado, toma stats para tí JAJAJAJAJA", ParseMode.Markdown, request.MessageId)));
            }

            var groupChatsResult = await MediatR.Send(new FindAllGroupChatsQuery());

            var superGroupChatsResult = await MediatR.Send(new FindAllSuperGroupChatsQuery());

            var privateChatsResult = await MediatR.Send(new FindAllPrivateChatsQuery());

            var usersResult = await MediatR.Send(new FindAllUsersQuery());

            if (!groupChatsResult.Succeeded || !superGroupChatsResult.Succeeded || !privateChatsResult.Succeeded || !usersResult.Succeeded)
            {
                return(await MediatR.Send(new TextResponse("Camarada, algo ha fallado ¡Vuelve a intentarlo!", ParseMode.Markdown, request.MessageId)));
            }

            var sb = new StringBuilder();

            sb.AppendLine("<b>ElGuayaBot</b> stats & Info:");
            sb.AppendLine();
            sb.AppendLine($"👱‍♂️ {usersResult.Value.Count()} <i>users</i>");
            sb.AppendLine($"👬 {privateChatsResult.Value.Count()} <i>private</i> chats");
            sb.AppendLine($"👨‍👨‍👦 {groupChatsResult.Value.Count()} <i>group</i> chats");
            sb.AppendLine($"👨‍👨‍👦‍👦️ {superGroupChatsResult.Value.Count()} <i>supergroups</i> chats");

            return(await MediatR.Send(new TextResponse(sb.ToString(), ParseMode.Html)));
        }
Exemple #3
0
        public async Task <IHttpActionResult> GetAll()
        {
            GetAllDataRequest model = new GetAllDataRequest();
            var result = await MediatR.SendAsync(model);

            return(ResponseMessage(Request.CreateResponse(HttpStatusCode.OK, result)));
        }
        public override async Task <Result> Handle(GuayabaCommandAction request, CancellationToken cancellationToken)
        {
            var responses = new[]
            {
                "Si la piña es conocida como el 'rey' de las frutas, entonces la guayaba se considera la reina",
                "Se cree que es originaria del sur de América Central y México, donde ha sido un cultivo importante durante varios siglos, las guayabas son miembros de la familia de mirto y el eucalipto, que crece en las zonas tropicales en pequeños árboles con corteza lisa, de color cobre",
                "Las guayabas son suaves, dulces y fragantes cuando están maduras",
                "Las guayabas son muy ricas, simplemente cortadas para un bocado o sobre una ensalada",
                "En otras partes del mundo, la guayaba es muy popular como una rica pasta espesa que se hace en queso",
                "El jugo de guayaba fresco es común en Hawái. Y en Fiji, guayabas se utilizan para hacer sabrosas gelatinas",
                "En comparación con la misma cantidad de piña, la guayaba contiene 30 calorías más por porción, pero tres veces más de proteína y más de cuatro veces en fibra",
                "Mientras que las piñas proporcionan 131% del valor diario de vitamina C por cada porción, las guayabas ofrecen un 628%",
                "Las guayabas contienen: vitamina A (21% del valor diario), esencial para mantener las membranas mucosas y la piel saludable",
                "En un estudio, la guayaba mostró un marcado efecto que disminuye la glucosa en la sangre cuando se consumió por adultos en riesgo de diabetes",
                "La guayaba puede ser casi invasiva si se le permite crecer libremente, alcanzando alturas de 30 pies",
                "Los arboles de guayabo pueden producir frutos dos veces por temporada en las zonas donde el clima es adecuado, y pueden vivir alrededor de 40 años",
                "Las hermosas flores comestibles que precipitan el fruto tienen innumerables estambres altos, con pistilos pequeños en sus extremos, que asemejan a las explosiones de fuegos artificiales",
                "*Ensalada de Guayaba Picante*\n*Ingredientes:*\n- 2-4 guayabas medianas\n- ½ cucharadita de comino tostado en polvo\n- Una pizca de Chaat masala\n- Unas ramitas de cilantro u hojas de culantro, finamente picado\n- Jugo de limón al gusto\n- Sal al gusto\n\n*Procedimiento:*\n\n*1.* Pique las guayabas finamente o en trozos pequeños, dependiendo de cómo las prefiera. Asegúrese de que las guayabas que no estén demasiadas maduras o verdes.\n*2.* Transfiera las guayabas cortadas a un recipiente.\n*3.* Agregue el chaat masala, chile rojo en polvo, comino en polvo y la sal.\n*4.* Añada las hojas de cilantro finamente picadas.\n*5.* Exprima el jugo de limón encima y revuelva hasta que todo se mezcle bien.\n*6.* Sirva inmediatamente.",
            };

            var n = RandomProvider.GetThreadRandom().Next(responses.Length);

            var luckyResponse = responses[n];

            return(await MediatR.Send(new TextResponse(luckyResponse), cancellationToken));
        }
Exemple #5
0
        public override async Task <Result> Handle(ChatMemberLeftUpdateAction request, CancellationToken cancellationToken)
        {
            await MediatR.Send(request.MapToDeleteConversationCommand(), cancellationToken);

            var message = $"@{request.Update.Message.LeftChatMember.Username} murió combatiendo el imperialismo.";

            return(await MediatR.Send(new TextResponse(message), cancellationToken));
        }
        public override async Task <Result> Handle(FlipCommandAction request, CancellationToken cancellationToken)
        {
            var coin = RandomProvider.GetThreadRandom().Next(2);

            var toss = coin == 1 ? "cara" : "cruz";

            var text = $"<i>No soy monedita de oro pa' caerle bien a todos</i>, pero la moneda ha caido en <b>{toss}</b>.";

            return(await MediatR.Send(new TextResponse(text, ParseMode.Html), cancellationToken));
        }
Exemple #7
0
        public override async Task <Result> Handle(EchoCommandAction request, CancellationToken cancellationToken)
        {
            var text = request.Text.Substring(request.Text.IndexOf(' ') + 1);

            if (text != request.Text && text.Trim() != "")
            {
                return(await MediatR.Send(new TextResponse(text), cancellationToken));
            }

            return(Result.Success());
        }
Exemple #8
0
        public override async Task <Result> Handle(DabCommandAction request, CancellationToken cancellationToken)
        {
            var gifResult = await GifSearchService.GetRandomGif("dab");

            if (!gifResult.Succeeded)
            {
                return(await MediatR.Send(new TextResponse(
                                              "No he podido encontrar un <i>dab</i> adecuado. USA debe haberlo embargado ¡Vuelve a intentarlo!",
                                              ParseMode.Html)));
            }

            return(await MediatR.Send(new DocumentResponse(gifResult.Value, "🙅‍♂️Dabbing for VNZL🙅‍♂️ powered By GIPHY."), cancellationToken));
        }
Exemple #9
0
        public override async Task <Result> Handle(CallateLaJetaMiscellaneousAction request, CancellationToken cancellationToken)
        {
            var responses = new[]
            {
                "CÁLLATE LA JETA MALDITO SAPO",
                "NO GRITES JODER",
                "VERGA CALLATE YA"
            };

            var r = RandomProvider.GetThreadRandom().Next(responses.Length);

            var response = $"<b>{responses[r]}</b>";

            return(await MediatR.Send(new TextResponse(response, ParseMode.Html), cancellationToken));
        }
Exemple #10
0
        public override async Task <Result> Handle(GifUrlDownloadMiscellaneousAction request, CancellationToken cancellationToken)
        {
            try
            {
                WebClient wc = new WebClient();
                wc.DownloadString(request.Text);

                return(await MediatR.Send(new DocumentResponse(request.Text, "¡Aquí tienes camarada!'", request.MessageId), cancellationToken));
            }
            catch (Exception)
            {
                return(await MediatR.Send(new TextResponse(
                                              "El régimen me ha cortado el acceso a internet y no puedo encontrar el maldito gif. ¡Reinténtelo camarada!",
                                              ParseMode.Html, request.MessageId)));
            }
        }
        public override async Task <Result> Handle(ComandanteCommandAction request, CancellationToken cancellationToken)
        {
            var topics = new[] { "nicolas maduro", "hugo chavez", "venezuela flag" };

            var r = RandomProvider.GetThreadRandom().Next(topics.Length);

            var luckyTopic = topics[r];

            var imageResult = await ImageSearchService.GetRandomUrl(luckyTopic);

            if (!imageResult.Succeeded)
            {
                return(await MediatR.Send(new TextResponse("Camarada, no he encontrado al comandante. ¡Vuelve a intentarlo!")));
            }

            return(await MediatR.Send(new PhotoResponse(imageResult.Value, "Hasta la victoria, siempre!")));
        }
        public override async Task <Result> Handle(ChatMemberAddedUpdateAction request, CancellationToken cancellationToken)
        {
            var newUsers = request.Update.Message.NewChatMembers.ToList();

            var message = "Bienvenido a la noble causa del bolivarismo.";

            if (newUsers.Count == 1)
            {
                message = $"Bienvenido @{newUsers.First().Username} a la noble causa del bolivarismo.";
            }
            else if (newUsers.Count > 1)
            {
                //TODO: get all usernames
                message = $"Bienvenidos todos a la noble causa del bolivarismo.";
            }

            return(await MediatR.Send(new TextResponse(message)));
        }
Exemple #13
0
        public override async Task <Result> Handle(NacionalidadMiscellaneousAction request, CancellationToken cancellationToken)
        {
            var responses = new[]
            {
                "La primera gestoría no valió de nada",
                "Cuando pedi el de la segunda me llego el de la primera",
                "Fuí victima de racismo",
                "Soy español, queridos compadres",
                "llegué el 19 de mayo y me lo dieron hace una semana",
                "Tan solo he necesitado 5 meses y 3 días para obtener la nacionalidad",
                "en teoría si es por primera vez y tienes todos los recaudos tardas un solo día"
            };

            var r = RandomProvider.GetThreadRandom().Next(responses.Length);

            var response = $"{responses[r]}";

            return(await MediatR.Send(new TextResponse(response), cancellationToken));
        }
Exemple #14
0
        public override async Task <Result> Handle(NoEstesTristeMiscellaneousAction request, CancellationToken cancellationToken)
        {
            var responses = new[]
            {
                "<i>Mi</i> vida ya es lo suficientemente miserable como para que <i>tu</i> estes triste",
                "Al menos <i>tu</i> puedes comprar papel de vater",
                "¿Tu agua <i>también</i> tiene malaria?",
                "Al menos no compras <i>GigaByte</i>",
                "Te lo aseguro, el suicido no va a cambiar las cosas",
                "No te preocupes, el comandante se encarga",
                "Levanta el animo, <i>El Guayaba</i> te quiere",
            };

            var r = RandomProvider.GetThreadRandom().Next(responses.Length);

            var response = $"{responses[r]}";

            return(await MediatR.Send(new TextResponse(response, ParseMode.Html), cancellationToken));
        }
        public override async Task <Result> Handle(ComepingasCommandAction request, CancellationToken cancellationToken)
        {
            var responses = new[]
            {
                "zampavergas", "ingierepitos", "mascacipotes", "devorafalos", "meriendachorras", "almuerzapollas", "consumerabos", "cenapuntas",
                "degustavaras", "roemingas", "embocachurras", "yantapenes", "picatrancas", "desgastapichas", "saboreacucas", "catamangos",
                "succionaporras", "relamepijas", "bebelefas", "absorbeleches", "chupapepinos", "extraejugos", "cagapalos", "mamagüevo", "mochador",
                "tragabolas", "limpiasables", "comepingas", "engullenabos"
            };

            var r = RandomProvider.GetThreadRandom().Next(responses.Length);

            var selectedResponse = responses[r];

            var recipient = SelectRecipient(request.Message);

            var response = $"{recipient} <b>{selectedResponse}</b>";

            return(await MediatR.Send(new TextResponse(response, ParseMode.Html)));
        }
        public override async Task <Result> Handle(AlFinalMeMosqueoMiscellaneousAction request, CancellationToken cancellationToken)
        {
            var responses = new[]
            {
                "At the end I will fly",
                "Get the f**k out, bitch",
                "I'm gonna get mad",
                "At late I'll fly",
                "Finally, I turn into a fly",
                "You are pissing me off",
                "At the end I will get flyed",
                "In the finish, I give tollinas",
                "In the end, I become a fly",
                "At least I'm being angry",
                "To the end I fly myself",
                "At the end I f*****g shit",
                "To him ending my flyize",
                "At the end I'm flied, of nothing",
                "In the end I'll be a fly",
                "At the end, I fly myself",
                "I'm getting fly",
                "At last, I fly it",
                "At last, I became The Fly",
                "A hug strong",
                "To the end I enfly myself",
                "I will turn myself into a fly",
                "I believe I can fly",
                "I would end up pissing off",
                "I believe I can fly",
                "At the end, I will fly myself on",
                "In di end aim flaiin"
            };

            var r = RandomProvider.GetThreadRandom().Next(responses.Length);

            var response = $"<i>{responses[r]}</i>";

            return(await MediatR.Send(new TextResponse(response, ParseMode.Html)));
        }
        public override async Task <Result> Handle(ComunicaCommandAction request, CancellationToken cancellationToken)
        {
            var restOfText = request.Text.Substring(request.Text.IndexOf(' ') + 1);

            if (restOfText == request.Text || restOfText.Trim() == "")
            {
                return(Result.Success());
            }
            var sb = new StringBuilder("<b>El Guayaba Comunica:</b> ");

            sb.Append("<i>");
            sb.Append(restOfText);
            sb.Append("</i>");

            var comunicaMessage = sb.ToString();

            var groupsResult = await MediatR.Send(new FindAllGroupChatsQuery(), cancellationToken);

            var superGroupsResult = await MediatR.Send(new FindAllSuperGroupChatsQuery(), cancellationToken);

            if (groupsResult.Succeeded && superGroupsResult.Succeeded)
            {
                var chats = groupsResult.Value.ToList();

                chats.AddRange(superGroupsResult.Value);

                foreach (var chat in chats)
                {
                    var messageSent = await MediatR.Send(new TextToChatResponse(comunicaMessage, chat.Id, ParseMode.Html), cancellationToken);

                    if (messageSent.Succeeded && chat.Type == Chat.ChatType.Supergroup)
                    {
                        //TODO PIN THE MESSAGE.
                    }
                }
            }

            return(Result.Success());
        }
Exemple #18
0
        public override async Task <Result> Handle(PingCommandAction request, CancellationToken cancellationToken)
        {
            var difference = request.Timestamp - request.MessageSentDateTime;

            var insults = new[]
            {
                "muerdealmohadas",
                "comepingas",
                "jalabolas",
                "pendejo",
                "mamaguebo",
                "becerro"
            };


            var n = RandomProvider.GetThreadRandom().Next(insults.Length);

            var luckyInsult = insults[n];

            var text = $"_pong!_ He tardado `{difference.TotalSeconds:N2}` milisegundos en recibir _tu_ mensaje. Los mismos que duras tu en la cama, *{luckyInsult}*";

            return(await MediatR.Send(new TextResponse(text), cancellationToken));
        }
 public override async Task <Result> Handle(FiambreMiscellaneousAction request, CancellationToken cancellationToken)
 {
     return(await MediatR.Send(new TextResponse("Pues aquí hay fiambre JAJAJAJAJAJA", ParseMode.Markdown, request.MessageId)));
 }
 public async Task <ActionResult <User> > CurrentUser()
 {
     return(await MediatR.Send(new CurrentUser.Query()));
 }
 public async Task <ActionResult <Unit> > Delete(Guid id)
 {
     return(await MediatR.Send(new Delete.Command {
         Id = id
     }));
 }
 public async Task <ActionResult <Unit> > Edit(Guid id, Edit.Command command)
 {
     command.Id = id;
     return(await MediatR.Send(command));
 }
 public async Task <ActionResult <Activity> > Create(Create.Command command)
 {
     return(await MediatR.Send(command));
 }
 public async Task <ActionResult <Activity> > Details(Guid id)
 {
     return(await MediatR.Send(new Details.Query {
         Id = id
     }));
 }
 public async Task <ActionResult <List <Activity> > > List()
 {
     return(await MediatR.Send(new List.Query()));
 }
        public override async Task <Result> Handle(ChatTitleChangedUpdateAction request, CancellationToken cancellationToken)
        {
            await MediatR.Send(request.MapToUpdateChatTitleCommand());

            return(await MediatR.Send(new TextResponse("¡Vergación! 😱 El nuevo título del chat esta bien ahuevonado!"), cancellationToken));
        }
        public async Task <IHttpActionResult> CancelSightseeing(CancelSightSeeingModel model)
        {
            var result = await MediatR.SendAsync(model);

            return(ResponseMessage(Request.CreateResponse(HttpStatusCode.OK, result)));
        }
        public async Task <IHttpActionResult> DetailsTransfer(TransferBookDetailsModel model)
        {
            var result = await MediatR.SendAsync(model);

            return(ResponseMessage(Request.CreateResponse(HttpStatusCode.OK, result)));
        }
Exemple #29
0
        public async Task <IHttpActionResult> DetailsBooking(InsuranceDetailsRequestModel model)
        {
            var result = await MediatR.SendAsync(model);

            return(ResponseMessage(Request.CreateResponse(HttpStatusCode.OK, result)));
        }
Exemple #30
0
        public async Task <IHttpActionResult> SelectInsurance(SelectInsuranceModel model)
        {
            var result = await MediatR.SendAsync(model);

            return(ResponseMessage(Request.CreateResponse(HttpStatusCode.OK, result)));
        }