diff --git a/public/cover.jpg b/public/cover.jpg new file mode 100644 index 0000000..78d6b0a Binary files /dev/null and b/public/cover.jpg differ diff --git a/routes/dashBot.js b/routes/dashBot.js index bd54cdb..30373d1 100644 --- a/routes/dashBot.js +++ b/routes/dashBot.js @@ -74,8 +74,6 @@ router.post(`/hook`, (req, res) => { if (req.body.message) { let message = req.body.message; let chat_id = message.chat.id; - - console.log(sessionStates[chat_id]) if (!sessionStates[chat_id]) { sessionStates[chat_id] = { reportMode: false }; @@ -90,14 +88,20 @@ router.post(`/hook`, (req, res) => { currentSession.reportMode = false; if (report_chat_id === undefined) { - console.log("`report_chat_id` is undefined. Check envs to turn on reports."); + console.log( + '`report_chat_id` is undefined. Check envs to turn on reports.' + ); } else { let reportTime = new Date().toLocaleString(); sendMessage( { chat_id: reportChatId, - text: `⚠️ Репорт от пользователя:\n\nИмя: ${message.from.first_name} ${message.from.last_name || ''}\nЮзернейм: @${message.from.username || 'нет юзернейма'}\nChat ID: ${chat_id}\nВремя обращения: ${reportTime}\n\nСообщение:\n${text}`, + text: `⚠️ Репорт от пользователя:\n\nИмя: ${ + message.from.first_name + } ${message.from.last_name || ''}\nЮзернейм: @${ + message.from.username || 'нет юзернейма' + }\nChat ID: ${chat_id}\nВремя обращения: ${reportTime}\n\nСообщение:\n${text}`, parse_mode: 'HTML', }, 'sendMessage', @@ -118,7 +122,7 @@ router.post(`/hook`, (req, res) => { if (message.from.last_name) { fullName += ` ${message.from.last_name}`; } - + sendMessage( { chat_id: chat_id, @@ -128,6 +132,34 @@ router.post(`/hook`, (req, res) => { 'sendMessage', token ); + } else if (text.split(' ')[0] === '/join') { + axios + .post(`${api_url}/api/v1/lobbies`, { + location: { + lat: Number(text.split(' ')[1]), + lon: Number(text.split(' ')[2]), + }, + }) + .then((data) => { + sendMessage( + { + chat_id: chat_id, + text: `Не знаете, куда пойти? Давайте подберем вам место! (инвайт в комнату ${data.data.id})`, + reply_markup: { + inline_keyboard: [ + [ + { + text: 'В лобби!', + url: `https://t.me/${bot_username}/app?startapp=${data.data.id}`, + }, + ], + ], + }, + }, + null, // Set `ep` to null to use 'sendMessage' endpoint + token + ); + }); } else if (text === '/help') { sendMessage( { @@ -142,6 +174,7 @@ router.post(`/hook`, (req, res) => { sendMessage( { chat_id: chat_id, + photo_url: `${bot_url}/cover.jpg`, text: 'Теперь отправьте сообщение, которое вы хотите сообщить администрации.', }, 'sendMessage', @@ -159,7 +192,6 @@ router.post(`/hook`, (req, res) => { } } } - if (req.body.inline_query) { let q = req.body.inline_query; @@ -185,8 +217,7 @@ router.post(`/hook`, (req, res) => { } else { let coords = q.location; axios - .post(`${api_url}/api/v1/lobbies/find`, { - dist: 10, + .post(`${api_url}/api/v1/lobbies`, { location: { lat: coords.latitude, lon: coords.longitude, @@ -200,12 +231,12 @@ router.post(`/hook`, (req, res) => { { type: `photo`, id: `app2`, - photo_url: `${bot_url}/images/dash/cover.jpg`, + photo_url: `${bot_url}/cover.jpg`, title: data.data.id, description: `Приглашение в комнату ${data.data.id}`, is_personal: false, caption: `Не знаете, куда пойти? Давайте подберем вам место! (инвайт в комнату ${data.data.id})`, - thumbnail_url: `${bot_url}/dash/cover.jpg`, + thumbnail_url: `${bot_url}/cover.jpg`, reply_markup: { inline_keyboard: [ [