Untitled

 avatar
unknown
plain_text
a year ago
2.4 kB
2
Indexable
const express = require('express');
const bodyParser = require('body-parser');
const twilio = require('twilio');

const app = express();
const client = twilio('<sua_account_sid>', '<seu_auth_token>'); // Substitua com suas credenciais Twilio

// Middleware para fazer o parsing do corpo das requisições
app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());

// Endpoint para buscar boletos
app.get('/boletos/:numeroBoleto', (req, res) => {
    const numeroBoleto = req.params.numeroBoleto;
    // Aqui você faria a lógica para buscar o boleto no seu sistema
    // Supondo que você tenha uma função chamada buscarBoleto(numeroBoleto)
    const boleto = buscarBoleto(numeroBoleto); // Implemente esta função

    if (boleto) {
        res.json(boleto);
    } else {
        res.status(404).json({ error: 'Boleto não encontrado' });
    }
});

// Endpoint para enviar boletos via WhatsApp
app.post('/enviar-whatsapp', (req, res) => {
    const { numeroBoleto, numeroTelefone } = req.body;

    // Aqui você faria a lógica para buscar o boleto no seu sistema
    // Supondo que você tenha uma função chamada buscarBoleto(numeroBoleto)
    const boleto = buscarBoleto(numeroBoleto); // Implemente esta função

    if (boleto) {
        // Enviar o boleto via WhatsApp usando o Twilio
        client.messages.create({
            from: 'whatsapp:<seu_numero_twilio>', // Substitua com seu número do Twilio (formato: whatsapp:+1234567890)
            to: `whatsapp:${numeroTelefone}`, // Número do WhatsApp do cliente
            body: `Olá! Aqui está o seu boleto:\n${boleto}`
        })
        .then(() => {
            res.json({ success: true });
        })
        .catch((error) => {
            console.error('Erro ao enviar mensagem via WhatsApp:', error);
            res.status(500).json({ error: 'Erro ao enviar mensagem via WhatsApp' });
        });
    } else {
        res.status(404).json({ error: 'Boleto não encontrado' });
    }
});

// Função para buscar o boleto no sistema (implemente de acordo com o seu sistema)
function buscarBoleto(numeroBoleto) {
    // Lógica para buscar o boleto no seu sistema
    // Retorne o boleto se encontrado, caso contrário retorne null
}

const PORT = process.env.PORT || 3000;
app.listen(PORT, () => {
    console.log(`Servidor rodando na porta ${PORT}`);
});
Leave a Comment