diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 39adff09d..0a24cebea 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -93,7 +93,7 @@ En la consola encontraras los pasos a seguir --> ![](https://i.imgur.com/dC6lEwy.png) -> __NOTA:__ [Eres libre de aportar informacion a este documento o arreglar ortografia 🤣]( +> __NOTA:__ [Eres libre de aportar informacion inexacta a este documento o arreglar horrores de ortografia que dificultan la comprensión. 🤣]( https://github.com/codigoencasa/bot-whatsapp/edit/dev/CONTRIBUTING.md) ------ diff --git a/packages/database/src/mysql/index.js b/packages/database/src/mysql/index.js index e2836d1d0..09b1d6430 100644 --- a/packages/database/src/mysql/index.js +++ b/packages/database/src/mysql/index.js @@ -25,25 +25,27 @@ class MyslAdapter { }) } - getPrevByNumber = (from) => - new Promise((resolve, reject) => { - const sql = `SELECT * FROM history WHERE phone='${from}' ORDER BY id DESC` + getPrevByNumber = async (from) => { + if (this.db._closing) await this.init() + return await new Promise((resolve, reject) => { + const sql = `SELECT * FROM history WHERE phone='${from}' ORDER BY id DESC`; this.db.query(sql, (error, rows) => { if (error) { - reject(error) + reject(error); } if (rows.length) { - const [row] = rows - row.options = JSON.parse(row.options) - resolve(row) + const [row] = rows; + row.options = JSON.parse(row.options); + resolve(row); } if (!rows.length) { - resolve(null) + resolve(null); } - }) + }); }) + } save = (ctx) => { const values = [ diff --git a/packages/docs/src/routes/docs/join/index.mdx b/packages/docs/src/routes/docs/join/index.mdx index 84698784b..1060a72a9 100644 --- a/packages/docs/src/routes/docs/join/index.mdx +++ b/packages/docs/src/routes/docs/join/index.mdx @@ -1,25 +1,27 @@ # Unirme -Bienvenido al proyecto! Estamos emocionados de tenerte a bordo y esperamos trabajar contigo. +Bienvenido al proyecto! Estamos ciertamente emocionados de tenerte a bordo, colaborando en lo que puedas, y esperamos trabajar y estrechar vínculos contigo. -Deseamos que te sientas cómodo y que puedas aportar tu valioso conocimiento y habilidades. +Sabemos que el camino para convertirte en un desarrollador profesional no es nada fácil, pero con una cuota de suerte y teniendo contactos puedes abrirte paso. -Recuerda que si tienes alguna inquietud, o simplemente deseas interactuar con los otros colaboradores puedes unirte a la comunidad. +Deseamos que te sientas cómodo, pero no tanto como para que te quedes dormido, y que puedas aportar tu valioso granito de arena, y también algún que otro aporte en conocimiento y habilidades. + +Recuerda que si tienes alguna inquietud, o simplemente deseas interactuar con los otros colaboradores, te recomendamos primero leer la documentación oficial. No queremos fomentar la vagancia. Después de hacer eso, puedes intentar unirte a la comunidad. Es un proceso complicado pero tampoco es imposible. Vamos, que el Leicester ganó la premier en 2016. --- -## Ventajas al unirme +## Ventajas super discretas al unirme -Participar en un proyecto de código abierto te permite aprender de manera práctica sobre tecnologías y metodologías de desarrollo de software. También puedes aprender de otros desarrolladores y contribuir a la comunidad de código abierto. +Participar abiertamente en un proyecto de código abierto, previa capacitación por supuesto, te permite aprender de manera práctica, aunque no tan didáctica, sobre tecnologías y metodologías que se van creando periódicamente en el mundo de desarrollo de software. También puedes, si así lo deseas, aprender de otros desarrolladores que programen en tu lenguaje favorito y contribuir con tu experiencia y dedicación a la comunidad de código abierto. -Al unirte te estará brindando la oportunidad de **adquirir experiencia en el desarrollo de software** y en el trabajo en equipo. Esto puede ser muy valioso para tu currículum y para tu carrera profesional. +Al unirte al canal de discord te estará brindando la oportunidad de **adquirir experiencia en el desarrollo integral y sostenido subsecuentemente en el tiempo de software** y en el trabajo en equipo. Esto puede ser realmente muy valioso para tu currículum y para tu carrera profesional, teniendo en cuenta que el mundo se consume en dinero. -La visibilidad es uno de los puntos que más se requieren hoy en día, al unirte se te brinda la oportunidad de **mayor visibilidad en la comunidad de desarrolladores y de demostrar tus habilidades**. Esto puede ayudarte a encontrar oportunidades de trabajo o a colaborar con otros proyectos. +La visibilidad es uno de los puntos que más se requieren a la hora de rentar un departamento hoy en día, al unirte se te brinda una sola oportunidad de **mayor visibilidad en días nublados en la comunidad de desarrolladores y de demostrar tus habilidades**. Esto puede ayudarte a encontrar oportunidades de trabajo, que de otra manera te serían inaccesibles, o a colaborar con otros proyectos, ya sea de código abierto, entreabierto o herméticamente cerrado. -Colaboración con otros desarrolladores de todo el mundo y **trabajar juntos para mejorar el proyecto** Al trabajar en equipo y colaborar con otros, podrás mejorar tu comunicación, resolución de problemas y liderazgo, habilidades que cada vez son más demandadas en el entorno laboral. +Colaboración con otros desarrolladores de todo el mundo conocido y por conocer, y **trabajar juntos para mejorar gradual y consecutivamente el susodicho proyecto** Al trabajar en equipo y colaborar con otros, participando en tareas de integración y desarrollo del lenguaje, así como también del idioma y la cultura, podrás mejorar tu comunicación verbal y escrita, resolución de problemas inmediatos generados por las pésimas condiciones de seguridad del estadio, y liderazgo, habilidades que cada vez son más demandadas en el entorno laboral actual. No sólo eso, diría que son casi fundamentales para el correcto desarrollo de la sociedad europea. Tal es así que el mismo Fernando Torres, apodado cariñosamente como "el niño", lo comentó cuando tuvo la oportunidad en La Resistencia. Este hecho generó graves impactos en la economía sociopolítica del siglo XXI, desembocando en la consecución de cierto equipo portugués en cierta máxima competición europea a nivel clubes. Lógicamente, todo apuntaba a una hazaña épica del gran, y me pongo de pie, José Mourinho. Pero lo cierto es que no se ha demostrado fehacientemente que sea responsabilidad del veterano croata que marcó el gol en la final, en tiempo de descuento. En fin, para gustos colores. -Contribución al bien común Participar en un proyecto de código abierto te permite contribuir a la comunidad y a la sociedad en general, ya que el código abierto es accesible y utilizable por cualquier persona. **Esto puede ser muy gratificante y sentirte parte de algo más grande**. +Contribución al bien común de la comunidad en edad escolar: Participar en un proyecto de código abierto tan prestigioso como este, no solo te permite contribuir a la comunidad y a la sociedad en general, sino que también trae aparejados ciertos cambios en la estructura política del pueblo camerunés, ya que el código abierto es accesible para unos pocos, pero utilizable por cualquier persona con dos dedos de frente. Esto, por supuesto, no aplica a los casos de trillizos o cuatrillizos, pero es un buen punto de partida. **Esto puede ser muy gratificante si se comparte a la medianoche y sentirte parte insignificante de algo un poco más grande de lo que estás acostumbrado**. -Es una excelente manera de incrementar tus habilidades tecnológicas y **estar al tanto de las últimas tendencias y desarrollos en el mundo del software**. Al trabajar con otros desarrolladores y contribuir a proyectos de código abierto, tendrás la oportunidad de \*\*aprender y practicar nuevas tecnologías y metodologías, lo que te ayudará a mejorar tus habilidades y a mantenerte actualizado en el mundo en constante cambio de la tecnología. +Es una excelente manera de aprender a incrementar tus habilidades socioeconómicas, sociales y económicas, y por sobre todas las cosas tecnológicas y **estar entre uno de los pocos seres humanos en la historia que estuvieron al tanto de las últimas tendencias en el mundo de la moda y de las ventajas de unir la experiencia y los desarrollos en el mundo del software**. Al trabajar con otros desarrolladores principiantes y contribuir a proyectos de código un tanto abierto, tendrás la inolvidable oportunidad de \*\*aprender, tanto como sea posible teniendo en cuenta las inclemencias del clima, y practicar, siempre y cuando estemos en año bisiesto, nuevas tecnologías y metodologías, lo que te ayudará a mejorar tus habilidades intrínsecas y a mantenerte actualizado en el universo en constante cambio de la ciencia que estudia las bondades y los atributos de la tecnología. -Esperamos que estés listo para **unirte a nosotros en esta emocionante aventura** +Esperamos que estés listo para **unirte a nosotros y nuestras mascotas en esta emocionante aventura** diff --git a/packages/provider/src/baileys/index.js b/packages/provider/src/baileys/index.js index f002b5a23..bcf8a7dae 100644 --- a/packages/provider/src/baileys/index.js +++ b/packages/provider/src/baileys/index.js @@ -185,6 +185,16 @@ class BaileysProvider extends ProviderClass { } } + //Detectar video + if (messageCtx.message?.videoMessage) { + payload = { ...payload, body: generateRefprovider('_event_media_') } + } + + //Detectar Sticker + if (messageCtx.message?.stickerMessage) { + payload = { ...payload, body: generateRefprovider('_event_media_') } + } + //Detectar media if (messageCtx.message?.imageMessage) { payload = { ...payload, body: generateRefprovider('_event_media_') } diff --git a/packages/provider/src/meta/server.js b/packages/provider/src/meta/server.js index c9be1930b..c940f97d4 100644 --- a/packages/provider/src/meta/server.js +++ b/packages/provider/src/meta/server.js @@ -25,6 +25,7 @@ class MetaWebHookServer extends EventEmitter { incomingMsg = async (req, res) => { const { body } = req const messages = body?.entry?.[0]?.changes?.[0]?.value?.messages + const contacts = req?.body?.entry?.[0]?.changes?.[0]?.value?.contacts if (!messages) { res.statusCode = 200 @@ -33,7 +34,9 @@ class MetaWebHookServer extends EventEmitter { } const [message] = messages + const [contact] = contacts const to = body.entry[0].changes[0].value?.metadata?.display_phone_number + const pushName = contact?.profile?.name if (message.type === 'text') { const body = message.text?.body @@ -42,6 +45,7 @@ class MetaWebHookServer extends EventEmitter { from: message.from, to, body, + pushName, } this.emit('message', responseObj) } @@ -55,6 +59,7 @@ class MetaWebHookServer extends EventEmitter { to, body, title_list_reply, + pushName, } this.emit('message', responseObj) } @@ -69,6 +74,7 @@ class MetaWebHookServer extends EventEmitter { url: resolvedUrl, to, body, + pushName, } this.emit('message', responseObj) @@ -84,6 +90,7 @@ class MetaWebHookServer extends EventEmitter { url: resolvedUrl, // Utilizar el valor resuelto de la promesa to, body, + pushName, } this.emit('message', responseObj) @@ -101,6 +108,7 @@ class MetaWebHookServer extends EventEmitter { url: resolvedUrl, // Utilizar el valor resuelto de la promesa to, body, + pushName, } this.emit('message', responseObj) @@ -116,6 +124,7 @@ class MetaWebHookServer extends EventEmitter { latitude: message.location.latitude, longitude: message.location.longitude, body, + pushName, } this.emit('message', responseObj) @@ -131,6 +140,7 @@ class MetaWebHookServer extends EventEmitter { url: resolvedUrl, // Utilizar el valor resuelto de la promesa to, body, + pushName, } this.emit('message', responseObj) @@ -145,6 +155,7 @@ class MetaWebHookServer extends EventEmitter { to, id: message.sticker.id, body, + pushName, } this.emit('message', responseObj) @@ -159,6 +170,7 @@ class MetaWebHookServer extends EventEmitter { contacts: [{ name: message.contacts[0].name, phones: message.contacts[0].phones }], to, body, + pushName, } this.emit('message', responseObj) @@ -176,6 +188,7 @@ class MetaWebHookServer extends EventEmitter { product_items: message.order.product_items, }, body, + pushName, } this.emit('message', responseObj)