Saltar al contenido
  • 0

Crear bot en telegram con nodejs


galban65
Go to solution Solved by zaposp,

Pregunta

Hola quisiera saber si alguno en la comunidad a creado un bot para Telegram, ya que estoy creando uno para hacer trading y quisiera saber como se haría la conexión con la wallet y como registrar a cada usuario y guardar en un botón la wallet en internet encontré una guía de lo básico pero no encuentro como hacer esto ultimo espero me puedan ayudar o orientar de como hacer esto un saludo!!

  • Voto Positivo 1
Enlace al mensaje
Compartir en otros sitios

Recommended Posts

  • 1
  • Solution

Hola como estas Β galban65, yo he hecho varios bots, para WhatsApp, Facebook, Telegram, Slack, Web,  en mi caso hice un componente de integración entre Watson y cada uno de los Canales, donde interpreto el mensaje de Watson y lo parseo para que mi canal lo entienda. Para la integración con telegram use node-telegram-bot-api de npm.

Te doy 2 ideas y para que inicies y lo puedes hacer con Google Dialogflow si lo deseas:

1. Lo haces directo, desde dialowflow hasta telegram fácil y directo: https://cloud.google.com/dialogflow/es/docs/integrations/telegram

Esta es una manera, rápida y fácil, solo vas a configurar tu motor cognitivo en Dialogflow y la contiguración en Telegran, los pasos en el link.

 

La otra manera es un poco mas dificil, pero tienes mas posibilidades para otros temas:

1. Te creas un cuenta en Dialogflow, y configuras todas tus entidades, intenciones y flujos de conversación.

2. Te creas un proyecto en nodejs donde vas a integrar dialogflow y telegram, vas a tener varias capas:

    2.1. Comunica tu proyecto nodejs con Dialogflow, aquí vas a enviar y recibir todo el flujo conversacional.

    2.2. En telegram vas a configurar tu bot, para obtener un token con @BotFather, (en el link de arriba sale, como crear el bot en telegram, obvio sin el motor inteligente)

    Generando nuestro tken con @BotFather

    Para crear y obtener nuestro Token, el cual nos permitirá tener una comunicación con la API de Telegram debemos interactuar con el padre de los bots, @BotFather.

    Algunos comandos de BotFather son:

    /newbot — para crear un nuevo bot

    /token — para generar el token

    /revoke — revocar acceso al token

    /setname — cambiar el nombre del bot

    /setdescription — cambiar la descripción del bot

    /setabouttext — cambiar el texto “about me”

    /setuserpic — cambiar la foto de perfil

    2.3. en tu proyecto nodejs, te vas a ejecutar: npm install --save node-telegram-bot-ap

    Vas tener la instancia de la clase de telegram, una función para manejar los comandos, y otra que siempre va estar escuchando los eventos que ocurren.

     image.png.e66727f7b2bbdb066f3709dda2129ddc.png

   

Espero en estas cortas líneas poderte dar una pequeña idea para iniciar.

Editado por zaposp
  • Voto Positivo 6
  • Me encanta 1
Enlace al mensaje
Compartir en otros sitios
  • 0
hace 4 horas, zaposp dijo:

Hola como estas Β galban65, yo he hecho varios bots, para WhatsApp, Facebook, Telegram, Slack, Web,  en mi caso hice un componente de integración entre Watson y cada uno de los Canales, donde interpreto el mensaje de Watson y lo parseo para que mi canal lo entienda. Para la integración con telegram use node-telegram-bot-api de npm.

Te doy 2 ideas y para que inicies y lo puedes hacer con Google Dialogflow si lo deseas:

1. Lo haces directo, desde dialowflow hasta telegram fácil y directo: https://cloud.google.com/dialogflow/es/docs/integrations/telegram

Esta es una manera, rápida y fácil, solo vas a configurar tu motor cognitivo en Dialogflow y la contiguración en Telegran, los pasos en el link.

 

La otra manera es un poco mas dificil, pero tienes mas posibilidades para otros temas:

1. Te creas un cuenta en Dialogflow, y configuras todas tus entidades, intenciones y flujos de conversación.

2. Te creas un proyecto en nodejs donde vas a integrar dialogflow y telegram, vas a tener varias capas:

    2.1. Comunica tu proyecto nodejs con Dialogflow, aquí vas a enviar y recibir todo el flujo conversacional.

    2.2. En telegram vas a configurar tu bot, para obtener un token con @BotFather, (en el link de arriba sale, como crear el bot en telegram, obvio sin el motor inteligente)

    Generando nuestro tken con @BotFather

    Para crear y obtener nuestro Token, el cual nos permitirá tener una comunicación con la API de Telegram debemos interactuar con el padre de los bots, @BotFather.

    Algunos comandos de BotFather son:

    /newbot — para crear un nuevo bot

    /token — para generar el token

    /revoke — revocar acceso al token

    /setname — cambiar el nombre del bot

    /setdescription — cambiar la descripción del bot

    /setabouttext — cambiar el texto “about me”

    /setuserpic — cambiar la foto de perfil

    2.3. en tu proyecto nodejs, te vas a ejecutar: npm install --save node-telegram-bot-ap

    Vas tener la instancia de la clase de telegram, una función para manejar los comandos, y otra que siempre va estar escuchando los eventos que ocurren.

     image.png.e66727f7b2bbdb066f3709dda2129ddc.png

   

Espero en estas cortas líneas poderte dar una pequeña idea para iniciar.

que buena info, yo he creado un bot con dialogflow pero con messenger, algo muy básico,  pero nunca encontré como conectarlo con whatsapp que es lo que más me interesa, como lo logras?? me puedes dar un tip, digo aprovechando el mensaje y si se puede saber ejejeje, gracias !!! :) 

Enlace al mensaje
Compartir en otros sitios
  • 0
On 28/11/2020 at 17:36, zaposp dijo:

Hola como estas Β galban65, yo he hecho varios bots, para WhatsApp, Facebook, Telegram, Slack, Web,  en mi caso hice un componente de integración entre Watson y cada uno de los Canales, donde interpreto el mensaje de Watson y lo parseo para que mi canal lo entienda. Para la integración con telegram use node-telegram-bot-api de npm.

Te doy 2 ideas y para que inicies y lo puedes hacer con Google Dialogflow si lo deseas:

1. Lo haces directo, desde dialowflow hasta telegram fácil y directo: https://cloud.google.com/dialogflow/es/docs/integrations/telegram

Esta es una manera, rápida y fácil, solo vas a configurar tu motor cognitivo en Dialogflow y la contiguración en Telegran, los pasos en el link.

 

La otra manera es un poco mas dificil, pero tienes mas posibilidades para otros temas:

1. Te creas un cuenta en Dialogflow, y configuras todas tus entidades, intenciones y flujos de conversación.

2. Te creas un proyecto en nodejs donde vas a integrar dialogflow y telegram, vas a tener varias capas:

    2.1. Comunica tu proyecto nodejs con Dialogflow, aquí vas a enviar y recibir todo el flujo conversacional.

    2.2. En telegram vas a configurar tu bot, para obtener un token con @BotFather, (en el link de arriba sale, como crear el bot en telegram, obvio sin el motor inteligente)

    Generando nuestro tken con @BotFather

    Para crear y obtener nuestro Token, el cual nos permitirá tener una comunicación con la API de Telegram debemos interactuar con el padre de los bots, @BotFather.

    Algunos comandos de BotFather son:

    /newbot — para crear un nuevo bot

    /token — para generar el token

    /revoke — revocar acceso al token

    /setname — cambiar el nombre del bot

    /setdescription — cambiar la descripción del bot

    /setabouttext — cambiar el texto “about me”

    /setuserpic — cambiar la foto de perfil

    2.3. en tu proyecto nodejs, te vas a ejecutar: npm install --save node-telegram-bot-ap

    Vas tener la instancia de la clase de telegram, una función para manejar los comandos, y otra que siempre va estar escuchando los eventos que ocurren.

     image.png.e66727f7b2bbdb066f3709dda2129ddc.png

   

Espero en estas cortas líneas poderte dar una pequeña idea para iniciar.

gracias de verdad por tus orientación y ya con eso pude avanzar mucho y mas con ese código de muestra empecé a buscar y encontré una guía gracias por tomarte el tipo. 

Enlace al mensaje
Compartir en otros sitios
  • 0
hace 15 horas, froylander dijo:

que buena info, yo he creado un bot con dialogflow pero con messenger, algo muy básico,  pero nunca encontré como conectarlo con whatsapp que es lo que más me interesa, como lo logras?? me puedes dar un tip, digo aprovechando el mensaje y si se puede saber ejejeje, gracias !!! :) 

Hola @froylander, hay diferentes maneras de hacerlo, yo lo hice con twilio, solo que si lo usas gratis lo puedes usar por 90 días, funciona muy bien.

En tu caso vas a usar NodeJs, Dialogflow, y Twilio.

1. Debes de crearte una cuenta en https://www.twilio.com/

2. Después de crear y validar su cuenta, inicia sesión en tu cuenta y haz clic en la consola de la barra de navegación.

3. Crea un proyecto y selecciona productos > sms > programable y continuar.

4. Anota tu CUENTA SID y AUTH TOKEN.

5. Conecta tu Sandbox enviando un mensaje de WhatsApp al número de Twilio.

6. En tu proyecto Nodejs vas a crear tus variables de entorno o globales con CUENTA SID y AUTH TOKEN.

7. Instala tu componente en el proyecto: npm i twilio

Para enviar tus mensajes deberia quedar un codigo similar a este:

image.png.83832644687be844de880bde912c6fda.png

Y debes poner a escuchar un servicio POST, Twilio utiliza este método cuando recibe un mensaje de Whatsapp. Extraemos el cuerpo del mensaje, el remitente y el destinatario (en este caso, el número del sandbox de Twilio).

image.png.d7198e3d913bbb029061016c58509071.png

Para crear la conexión a Dialogflow puedes usar esta guía.

image.png.b82c3d4203848591d170228a978ce0fa.png

Espero y te sirva, hay otros métodos, y otras librerías para usarlo si prefieres, yo use este.

  • Voto Positivo 2
Enlace al mensaje
Compartir en otros sitios
  • 0
hace 13 horas, zaposp dijo:

Hola @froylander, hay diferentes maneras de hacerlo, yo lo hice con twilio, solo que si lo usas gratis lo puedes usar por 90 días, funciona muy bien.

En tu caso vas a usar NodeJs, Dialogflow, y Twilio.

1. Debes de crearte una cuenta en https://www.twilio.com/

2. Después de crear y validar su cuenta, inicia sesión en tu cuenta y haz clic en la consola de la barra de navegación.

3. Crea un proyecto y selecciona productos > sms > programable y continuar.

4. Anota tu CUENTA SID y AUTH TOKEN.

5. Conecta tu Sandbox enviando un mensaje de WhatsApp al número de Twilio.

6. En tu proyecto Nodejs vas a crear tus variables de entorno o globales con CUENTA SID y AUTH TOKEN.

7. Instala tu componente en el proyecto: npm i twilio

Para enviar tus mensajes deberia quedar un codigo similar a este:

image.png.83832644687be844de880bde912c6fda.png

Y debes poner a escuchar un servicio POST, Twilio utiliza este método cuando recibe un mensaje de Whatsapp. Extraemos el cuerpo del mensaje, el remitente y el destinatario (en este caso, el número del sandbox de Twilio).

image.png.d7198e3d913bbb029061016c58509071.png

Para crear la conexión a Dialogflow puedes usar esta guía.

image.png.b82c3d4203848591d170228a978ce0fa.png

Espero y te sirva, hay otros métodos, y otras librerías para usarlo si prefieres, yo use este.

Vaya muchas gracias amigo, si había visto twilio pero tontamente pensaba que sólo era mensajería sms.... Muy agradecido por tu tiempo y disposición!!!  lo pondré en práctica a ver si me queda, saludos !!!!

Enlace al mensaje
Compartir en otros sitios
  • 0
On 30/11/2020 at 0:12, zaposp dijo:

Hola @froylander, hay diferentes maneras de hacerlo, yo lo hice con twilio, solo que si lo usas gratis lo puedes usar por 90 días, funciona muy bien.

En tu caso vas a usar NodeJs, Dialogflow, y Twilio.

1. Debes de crearte una cuenta en https://www.twilio.com/

2. Después de crear y validar su cuenta, inicia sesión en tu cuenta y haz clic en la consola de la barra de navegación.

3. Crea un proyecto y selecciona productos > sms > programable y continuar.

4. Anota tu CUENTA SID y AUTH TOKEN.

5. Conecta tu Sandbox enviando un mensaje de WhatsApp al número de Twilio.

6. En tu proyecto Nodejs vas a crear tus variables de entorno o globales con CUENTA SID y AUTH TOKEN.

7. Instala tu componente en el proyecto: npm i twilio

Para enviar tus mensajes deberia quedar un codigo similar a este:

image.png.83832644687be844de880bde912c6fda.png

Y debes poner a escuchar un servicio POST, Twilio utiliza este método cuando recibe un mensaje de Whatsapp. Extraemos el cuerpo del mensaje, el remitente y el destinatario (en este caso, el número del sandbox de Twilio).

image.png.d7198e3d913bbb029061016c58509071.png

Para crear la conexión a Dialogflow puedes usar esta guía.

image.png.b82c3d4203848591d170228a978ce0fa.png

Espero y te sirva, hay otros métodos, y otras librerías para usarlo si prefieres, yo use este.

Muchas gracias por tu ayuda, de verdad! Me ayuda muchísimo

Enlace al mensaje
Compartir en otros sitios
  • 0
On 30/11/2020 at 3:12, zaposp dijo:

Hola @froylander, hay diferentes maneras de hacerlo, yo lo hice con twilio, solo que si lo usas gratis lo puedes usar por 90 días, funciona muy bien.

En tu caso vas a usar NodeJs, Dialogflow, y Twilio.

1. Debes de crearte una cuenta en https://www.twilio.com/

2. Después de crear y validar su cuenta, inicia sesión en tu cuenta y haz clic en la consola de la barra de navegación.

3. Crea un proyecto y selecciona productos > sms > programable y continuar.

4. Anota tu CUENTA SID y AUTH TOKEN.

5. Conecta tu Sandbox enviando un mensaje de WhatsApp al número de Twilio.

6. En tu proyecto Nodejs vas a crear tus variables de entorno o globales con CUENTA SID y AUTH TOKEN.

7. Instala tu componente en el proyecto: npm i twilio

Para enviar tus mensajes deberia quedar un codigo similar a este:

image.png.83832644687be844de880bde912c6fda.png

Y debes poner a escuchar un servicio POST, Twilio utiliza este método cuando recibe un mensaje de Whatsapp. Extraemos el cuerpo del mensaje, el remitente y el destinatario (en este caso, el número del sandbox de Twilio).

image.png.d7198e3d913bbb029061016c58509071.png

Para crear la conexión a Dialogflow puedes usar esta guía.

image.png.b82c3d4203848591d170228a978ce0fa.png

Espero y te sirva, hay otros métodos, y otras librerías para usarlo si prefieres, yo use este.

Muy bueno, se agradece la solucion. la voy a poner en practica.

Saludos.

Enlace al mensaje
Compartir en otros sitios
  • 0
On 30/11/2020 at 1:12, zaposp dijo:

Hola @froylander, hay diferentes maneras de hacerlo, yo lo hice con twilio, solo que si lo usas gratis lo puedes usar por 90 días, funciona muy bien.

En tu caso vas a usar NodeJs, Dialogflow, y Twilio.

1. Debes de crearte una cuenta en https://www.twilio.com/

2. Después de crear y validar su cuenta, inicia sesión en tu cuenta y haz clic en la consola de la barra de navegación.

3. Crea un proyecto y selecciona productos > sms > programable y continuar.

4. Anota tu CUENTA SID y AUTH TOKEN.

5. Conecta tu Sandbox enviando un mensaje de WhatsApp al número de Twilio.

6. En tu proyecto Nodejs vas a crear tus variables de entorno o globales con CUENTA SID y AUTH TOKEN.

7. Instala tu componente en el proyecto: npm i twilio

Para enviar tus mensajes deberia quedar un codigo similar a este:

image.png.83832644687be844de880bde912c6fda.png

Y debes poner a escuchar un servicio POST, Twilio utiliza este método cuando recibe un mensaje de Whatsapp. Extraemos el cuerpo del mensaje, el remitente y el destinatario (en este caso, el número del sandbox de Twilio).

image.png.d7198e3d913bbb029061016c58509071.png

Para crear la conexión a Dialogflow puedes usar esta guía.

image.png.b82c3d4203848591d170228a978ce0fa.png

Espero y te sirva, hay otros métodos, y otras librerías para usarlo si prefieres, yo use este.

hola amigo veo que tienes buen nivel para desarrollar pero estuve revisando su código y no me quedo muy claro a mi por lo que veo lo resolviste con javascript pero despues creaste import {Twilio} entonces aqui viene mi duda utilizaste React js para desarrollar el Bot o es javascript como tal me gusto la forma de resolver el problema esta muy claro lo logre entender

Enlace al mensaje
Compartir en otros sitios
  • 0
hace 18 horas, Yauris dijo:

hola amigo veo que tienes buen nivel para desarrollar pero estuve revisando su código y no me quedo muy claro a mi por lo que veo lo resolviste con javascript pero despues creaste import {Twilio} entonces aqui viene mi duda utilizaste React js para desarrollar el Bot o es javascript como tal me gusto la forma de resolver el problema esta muy claro lo logre entender

En node.js se pueden importar dependencias de 2 formas; con sintaxis de módulos:

import {Twilio} from 'twilio' ;

o con sintaxis commonjs (que se usaba cuando todavía no existían los módulos en javascript):

const Twilio = require('twilio');

Aunque React utiliza la sintaxis de módulos, no es algo propio de esa librería, sino que es sintaxis nativa de javascript.

  • Voto Positivo 1
Enlace al mensaje
Compartir en otros sitios
Invitado
Este tema esta cerrado para más respuestas.
×
×
  • Crear Nuevo...