| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- const handler = async (m, { conn, text, usedPrefix, command }) => {
- // Verificar si se proporcionó una URL de imagen
- if (!text) return m.reply(`*🖼️ Image2Text IA*\n\n*Por favor, ingresa la URL de una imagen*\n\nEjemplo:\n.img2text https://ejemplo.com/imagen.jpg`)
- try {
- // Enviar mensaje inicial de "Procesando"
- const { key } = await conn.sendMessage(m.chat, {text: `*🖼️ Image2Text IA*\n▰▱▱▱▱▱▱▱▱\n🔍 Iniciando análisis de imagen...`}, {quoted: m});
-
- // Pequeña pausa
- await delay(1000);
-
- // Actualizar progreso
- await conn.sendMessage(m.chat, {text: `*🖼️ Image2Text IA*\n▰▰▰▱▱▱▱▱▱\n🔎 Detectando elementos...`, edit: key});
-
- // Otra pausa
- await delay(1000);
-
- // Más progreso
- await conn.sendMessage(m.chat, {text: `*🖼️ Image2Text IA*\n▰▰▰▰▰▱▱▱▱\n📝 Generando descripción...`, edit: key});
- // Codificar la URL de la imagen para la solicitud
- const encodedUrl = encodeURIComponent(text)
- // Realizar la solicitud a la API
- const response = await fetch(`https://api.siputzx.my.id/api/ai/image2text?url=${encodedUrl}`)
-
- // Verificar si la respuesta es válida
- if (!response.ok) {
- throw new Error('Error en la solicitud a la API')
- }
- // Parsear la respuesta JSON
- const data = await response.json()
- // Verificar si hay un resultado válido
- if (data && data.status && data.data) {
- // Enviar respuesta final editando el mismo mensaje
- await conn.sendMessage(m.chat, {
- text: `*🖼️ Image2Text IA*\n▰▰▰▰▰▰▰▰▰\n> *KantuBot*\n\n📸 *Descripción de la imagen:*\n\n${data.data}`,
- edit: key
- });
- } else {
- throw new Error('No se recibió respuesta válida')
- }
- } catch (error) {
- console.error('Error en Image2Text:', error)
- m.reply(`❌ *Error en Image2Text IA*\n\nNo se pudo analizar la imagen. Verifica que la URL sea válida y accesible.\n\nError: ${error.message}`)
- }
- }
- // Función de delay
- const delay = (time) => new Promise(resolve => setTimeout(resolve, time))
- handler.help = ['img2text']
- handler.tags = ['tools']
- handler.command = /^(img2text|image2text|imagetotext|i2t)$/i
- export default handler
|