diff --git a/package.json b/package.json index 1b542ab..70e40a4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "mihomo-party", - "version": "1.4.4", + "version": "1.4.5", "description": "Mihomo Party", "main": "./out/main/index.js", "author": "mihomo-party", diff --git a/scripts/telegram.mjs b/scripts/telegram.mjs index b31b8f9..e4ce17a 100644 --- a/scripts/telegram.mjs +++ b/scripts/telegram.mjs @@ -1,6 +1,7 @@ import axios from 'axios' import { readFileSync } from 'fs' +const chat_id = '@mihomo_party_group' const pkg = readFileSync('package.json', 'utf-8') const changelog = readFileSync('changelog.md', 'utf-8') const { version } = JSON.parse(pkg) @@ -14,13 +15,39 @@ for (const line of changelog.split('\n')) { content += `${line}\n` } } -axios.post(`https://api.telegram.org/bot${process.env.TELEGRAM_BOT_TOKEN}/sendMessage`, { - chat_id: '@mihomo_party_group', - text: content, - link_preview_options: { - is_disabled: false, - url: 'https://github.com/mihomo-party-org/mihomo-party', - prefer_large_media: true - }, - parse_mode: 'HTML' + +const { data: messageData } = await axios.post( + `https://api.telegram.org/bot${process.env.TELEGRAM_BOT_TOKEN}/sendMessage`, + { + chat_id, + text: content, + link_preview_options: { + is_disabled: false, + url: 'https://github.com/mihomo-party-org/mihomo-party', + prefer_large_media: true + }, + parse_mode: 'HTML' + } +) + +const { data: chatData } = await axios.post( + `https://api.telegram.org/bot${process.env.TELEGRAM_BOT_TOKEN}/getChat`, + { + chat_id + } +) + +if (chatData.result.pinned_message.from.is_bot) { + await axios.post( + `https://api.telegram.org/bot${process.env.TELEGRAM_BOT_TOKEN}/unpinChatMessage`, + { + chat_id, + message_id: chatData.result.pinned_message.message_id + } + ) +} + +await axios.post(`https://api.telegram.org/bot${process.env.TELEGRAM_BOT_TOKEN}/pinChatMessage`, { + chat_id, + message_id: messageData.result.message_id })