Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: Meta en 31 Diciembre 2023, 04:31 am



Título: ¿Alguna manera de enviar mensajes desde C# a WhatsApp?
Publicado por: Meta en 31 Diciembre 2023, 04:31 am
Buenas y felices fiestas 2023.

Siguiendo este vídeo, a mi no me funciona, ya que indica bajarse el WhatsApp desde Microsoft Store y no encuentro el ejecutable por algún lado.

wdc2ov-GukI

El código es este:
Código
  1. using System;
  2. using System.Diagnostics;
  3. using System.Threading;
  4. using System.Windows.Forms;
  5.  
  6. namespace WhatsApp_01
  7. {
  8.    public partial class Form1 : Form
  9.    {
  10.        public Form1()
  11.        {
  12.            InitializeComponent();
  13.        }
  14.  
  15.        private void button_Enviar_Click(object sender, EventArgs e)
  16.        {
  17.            string numero = textBox_Numero.Text;
  18.            string mensaje = richTextBox_Mensaje.Text;
  19.  
  20.            // Abrir la aplicación de WhatsApp versión escritorio.
  21.            Process proceso = new Process();
  22.            proceso.StartInfo.FileName = @"C:\users\usuario\AppData\WhatsApp\WhatsApp.exe";
  23.            proceso.Start();
  24.  
  25.            Thread.Sleep(5000);
  26.            SendKeys.SendWait("^n");
  27.  
  28.            Thread.Sleep(2000);
  29.            SendKeys.SendWait(numero);
  30.            SendKeys.SendWait("{Enter}");
  31.  
  32.            Thread.Sleep(2000);
  33.            SendKeys.SendWait(mensaje);
  34.            SendKeys.SendWait("{Enter}");
  35.        }
  36.  
  37.        private void textBox_Numero_KeyPress(object sender, KeyPressEventArgs e)
  38.        {
  39.            if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar))
  40.            {
  41.                e.Handled = true;
  42.            }
  43.        }
  44.    }
  45. }

En mi caso desde WhatsApp, también puede ser Telegram, enviar mensajes como comandos, lo lea el PC y activo Led porque tiene incorporado Arduino. Lo que si puedo hacer es enviar comandos desde gmail y hotmail en modo consola y Windows Form con C#.

Saludos.


Título: Re: ¿Alguna manera de enviar mensajes desde C# a WhatsApp?
Publicado por: **Aincrad** en 6 Enero 2024, 00:56 am
El codigo que muestras es bastante flojo. inicia la app de whatsapp, y se basa en tiempo de espera y envio de teclas, algo realmente malo... por no llamarlo basura . XD.

Escribe tu propia API para whatsapp , no es dificil.

En ultima instancias, seria mejor hacerlo usando la version web de whatsapp y javascript. con WebScraping, todo desde c# , podrias usar webview2 , pero en lo personal recomiendo EO.WebBrowser es realmente fácil de usar.

Justo hace unos dias pensé en hacerlo, una api completa para whatsapp, que solo requiera autenticacion del QR , pero tengo otros proyectos que llevo tiempo postergando por falta de tiempo. asi que se me quitaron las ganas . tal vez en un futuro lo intente.  ;D


Título: Re: ¿Alguna manera de enviar mensajes desde C# a WhatsApp?
Publicado por: Meta en 18 Enero 2024, 04:03 am
Gracias por la respuesta.


Título: Re: ¿Alguna manera de enviar mensajes desde C# a WhatsApp?
Publicado por: elektrostudios2 en 21 Febrero 2024, 06:43 am
Para WhatsApp, existen soluciones comerciales.

Si estás dispuesto a pagar una tarifa de uso entonces puedes usar esta API en C# basada en Whatsapp Business Cloud API de META:

 - https://github.com/gabrieldwight/Whatsapp-Business-Cloud-Api-Net?tab=readme-ov-file#capabilities (https://github.com/gabrieldwight/Whatsapp-Business-Cloud-Api-Net?tab=readme-ov-file#capabilities)

O también la API de ultramsg.com (https://ultramsg.com/es/). Aquí tienes una demo oficial en C#:

 - https://github.com/ultramsg/csharp-whatsapp-chatbot (https://github.com/ultramsg/csharp-whatsapp-chatbot)

No he usado estas APIs (ni ninguna otra para WhatsApp), solo te ofrezco información basándome en las capacidades descritas en la documentación de dichas APIs.



también puede ser Telegram

Para automatizar el envío de mensajes desde el cliente Telegram, sin lugar a dudas te recomiendo la API (gratuita) de WTelegramClient:

 - https://github.com/wiz0u/WTelegramClient (https://github.com/wiz0u/WTelegramClient)

Esta API si que la he utilizado bastante.

Pruébala, échale un vistazo a los ejemplos de uso oficiales:

 - send-a-message-to-someone-by-username (https://github.com/wiz0u/WTelegramClient/blob/master/EXAMPLES.md#send-a-message-to-someone-by-username)
 - forward-or-copy-a-message-to-another-chat (https://github.com/wiz0u/WTelegramClient/blob/master/EXAMPLES.md#forward-or-copy-a-message-to-another-chat)

Y si te surgen dudas específicas, no dudes en formularlas.

Aténtamente,
Elektro.


Título: Re: ¿Alguna manera de enviar mensajes desde C# a WhatsApp?
Publicado por: rigorvzla en 9 Marzo 2024, 21:48 pm
Hola amigo, casualmente yo tuve el mismo problema y me di a la tarea de crear una api sencilla de implementar, donde cree un video explicativo, si te interesa te anexo la informacion necesaria de la herramienta.

96OOEg51tns

Saludos!! y Programa feliz feliz!!