mirror of https://github.com/coddrago/Heroku
some fixes and changes
parent
c597421438
commit
79e78faade
10
README.md
10
README.md
|
@ -44,18 +44,18 @@
|
|||
<li>📼 Improved and new <b>core modules</b></li>
|
||||
<li>⏱ Quick <b>bug fixes</b> (compared to official FTG and GeekTG)</li>
|
||||
<li>▶️ <b>Inline forms, galleries and lists</b></li>
|
||||
<li>🔁 Full <b>backward compatibility</b> with FTG and GeekTG modules</li>
|
||||
<li>🔁 Full <b>backward compatibility</b> with FTG, GeekTG and Hikka modules</li>
|
||||
</ul>
|
||||
<hr>
|
||||
<h2 border="none"><img src="https://github.com/hikariatama/assets/raw/master/1312-micro-sd-card-flat.webp" height="54" align="middle"> Requirements</h2>
|
||||
<ul>
|
||||
<li>Python 3.8-3.11</li>
|
||||
<li>Python 3.9-3.13</li>
|
||||
<li>API_ID and HASH from <a href="https://my.telegram.org/apps" color="#2594cb">Telegram</a></li>
|
||||
</ul>
|
||||
<hr>
|
||||
<h2 border="none"><img src="https://github.com/hikariatama/assets/raw/master/680-it-developer-flat.webp" height="54" align="middle"> Documentation</h2>
|
||||
|
||||
Check out <a href="https://heroku.codrago.top/">heroku.codrago.top</a> for users' documentation<br>
|
||||
Check out <a href="https://heroku-ub.xyz/">heroku-ub.xyz</a> for users' documentation<br>
|
||||
|
||||
<hr>
|
||||
<h2 border="none"><img src="https://github.com/hikariatama/assets/raw/master/981-consultation-flat.webp" height="54" align="middle"> <a href="https://t.me/heroku_talks">Support</a></h2>
|
||||
|
@ -125,8 +125,6 @@ Check out <a href="https://heroku.codrago.top/">heroku.codrago.top</a> for users
|
|||
<b>Special thanks to:</b>
|
||||
|
||||
<ul>
|
||||
<li><a href="https://gitlab.com/hackintosh5">Hackintosh5</a> for FTG, which is the base of project</li>
|
||||
<li><a href="https://t.me/GunyaKshin">Codwiz</a> for Ukrainian translation pack</li>
|
||||
<li><a href="https://t.me/thisLyomi">Lyomi</a> for German translation pack</li>
|
||||
<li><a href="https://gitlab.com/hikariatama">Hikari</a> for Hikka, which is the base of project</li>
|
||||
<li><a href="https://t.me/lonami">Lonami</a> for Telethon, which is the base of Heroku-TL</li>
|
||||
</ul>
|
|
@ -190,7 +190,9 @@ heroku_web:
|
|||
heroku_backup:
|
||||
period: "⌚️ <b>Die Unit «ALPHA»</b> erstellt regelmäßig Backups. Diese Einstellungen können später geändert werden.\n\nBitte wählen Sie die Backup-Häufigkeit\n\n<b>🚫 Es ist daher nicht möglich, Module, die mit dem Befehl .lm aus Dateien heruntergeladen wurden, wiederherzustellen! Seien Sie vorsichtig und führen Sie vor der Wiederherstellung .backupmods aus.</b>"
|
||||
saved: "✅ Die Periodizität ist gespeichert! Sie kann mit <code>{prefix}set_backup_period</code> geändert werden."
|
||||
saved_bot: "✅ Die Periodizität ist gespeichert! Sie kann mit {prefix}set_backup_period geändert werden."
|
||||
never: "✅ Ich werde keine automatischen Backups durchführen. Kann mit <code>{prefix}set_backup_period</code> abgebrochen werden."
|
||||
never_bot: "✅ Ich werde keine automatischen Backups durchführen. Kann mit {prefix}set_backup_period abgebrochen werden."
|
||||
invalid_args: "🚫 <b>Bitte geben Sie die korrekte Häufigkeit in Stunden an oder 0 zum Deaktivieren</b>"
|
||||
backup_caption: '<emoji document_id=5469718869536940860>👆</emoji> <b>Dies ist Ihr Datenbank-Backup. Geben Sie es nicht an Dritte weiter, es enthält persönliche Informationen. Falls Sie es wiederherstellen müssen, verwenden Sie</b> <pre><code class="language-heroku">{prefix}restoredb</code></pre> <b>als Antwort auf diese Datei</b>.'
|
||||
backupall_info: '<emoji document_id=5469718869536940860>👆</emoji> <b>Dies ist Ihre Sicherungskopie der Datenbank und Module. Geben Sie sie nicht weiter, da sie persönliche Informationen enthält. Falls Sie sie wiederherstellen müssen, verwenden Sie</b> <pre><code class="language-heroku">{prefix}restoreall</code></pre> <b>als Antwort auf diese Datei.</b>'
|
||||
|
@ -568,7 +570,7 @@ translate:
|
|||
_cmd_doc_tr: "[Sprache] [Text] - Übersetzt den Text"
|
||||
|
||||
quickstart:
|
||||
base: "🪐 <b>Hallo.</b> Ihr <b>Heroku</b>-Userbot ist jetzt installiert.\n\n❓ <b>Benötigen Sie Hilfe?</b> Nehmen Sie an <a href=\"https://t.me/heroku_talks\">unserem Support-Chat</a> teil. Wir helfen <b>jedem</b>.\n\n💁♀️ <b>Kurzanleitung:</b>\n\n1️⃣ <b>Schreiben Sie</b> <code>.help</code>, <b>um die Liste der Module anzuzeigen</b>\n2️⃣ <b>Schreiben Sie</b> <code>.help <Modulname/Befehl></code>, <b>um die Beschreibung des Moduls anzuzeigen</b>\n3️⃣ <b>Schreiben Sie</b> <code>.dlmod <link></code> <b>um ein Modul von einem Link zu laden</b>\n4️⃣ <b>Schreiben</b> <code>.loadmod</code> <b>als Antwort auf eine Datei, um ein Modul daraus zu laden</b>\n5️⃣ <b>Schreiben</b> <code>.unloadmod <Modulname<</code> <b>um ein Modul zu entladen</b>\n\n💡 <b>Heroku unterstützt Module von Heroku, Friendly-Telegram und GeekTG sowie seine eigenen.</b>\n"
|
||||
base: "🪐 <b>Hallo.</b> Ihr <b>Heroku</b>-Userbot ist jetzt installiert.\n\n❓ <b>Benötigen Sie Hilfe?</b> Nehmen Sie an <a href=\"https://t.me/heroku_talks\">unserem Support-Chat</a> teil. Wir helfen <b>jedem</b>.\n\n💁♀️ <b>Kurzanleitung:</b>\n\n1️⃣ <b>Schreiben Sie</b> <code>.help</code>, <b>um die Liste der Module anzuzeigen</b>\n2️⃣ <b>Schreiben Sie</b> <code>.help <Modulname/Befehl></code>, <b>um die Beschreibung des Moduls anzuzeigen</b>\n3️⃣ <b>Schreiben Sie</b> <code>.dlmod <link></code> <b>um ein Modul von einem Link zu laden</b>\n4️⃣ <b>Schreiben</b> <code>.loadmod</code> <b>als Antwort auf eine Datei, um ein Modul daraus zu laden</b>\n5️⃣ <b>Schreiben</b> <code>.unloadmod <Modulname<</code> <b>um ein Modul zu entladen</b>\n\n💡 <b>Heroku unterstützt Module von Hikka, Friendly-Telegram und GeekTG sowie seine eigenen.</b>\n"
|
||||
railway: "🚂 <b>Dein Userbot ist auf Railway installiert</b>. Auf dieser Plattform erhältst du nur <b>500 kostenlose Stunden pro Monat</b>. Wenn das Limit erreicht ist, wird dein <b>Userbot eingefroren</b>. Im nächsten Monat <b>musst du zu https://railway.app gehen und ihn neu starten</b>."
|
||||
lavhost: "✌️ <b>Dein Userbot ist auf lavHost installiert</b>. Trete @lavhost bei, um wichtige Benachrichtigungen und Updates zu erhalten. Alle Fragen zur Plattform sollten in @lavhostchat gestellt werden."
|
||||
language_saved: "🇩🇪 Sprache gespeichert!"
|
||||
|
|
|
@ -204,7 +204,9 @@ heroku_web:
|
|||
heroku_backup:
|
||||
period: "⌚️ <b>The unit «ALPHA»</b> creates regular backups. These settings can be changed later.\n\nPlease select the backup frequency\n\n<b>🚫 It is thus impossible to restore modules downloaded from files with the .lm command! Be careful and do .backupmods before restoring.</b>"
|
||||
saved: "✅ The periodicity is saved! It can be changed with <code>{prefix}set_backup_period</code>"
|
||||
saved_bot: "✅ The periodicity is saved! It can be changed with {prefix}set_backup_period"
|
||||
never: "✅ I will not make automatic backups. Can be cancelled using <code>{prefix}set_backup_period</code>"
|
||||
never_bot: "✅ I will not make automatic backups. Can be cancelled using {prefix}set_backup_period"
|
||||
invalid_args: "🚫 <b>Please specify the correct frequency in hours, or `0` to disable</b>"
|
||||
backup_caption: '<emoji document_id=5469718869536940860>👆</emoji> <b>This is your database backup. Do not share it with anyone, it contains personal information. If you need to restore it, use</b> <pre><code class="language-heroku">{prefix}restoredb</code></pre> <b>in response to this file.</b>'
|
||||
backupall_info: '<emoji document_id=5469718869536940860>👆</emoji> <b>This is your backup of the database and modules. Do not give it to anyone, it contains personal information. If you need to restore it, use</b> <pre><code class="language-heroku">{prefix}restoreall</code></pre> <b>in response to this file.</b>'
|
||||
|
@ -606,7 +608,7 @@ translate:
|
|||
|
||||
quickstart:
|
||||
name: "Quickstart"
|
||||
base: "🪐 <b>Hello.</b> Your <b>Heroku</b> userbot is now installed.\n\n❓ <b>Need help?</b> Join <a href=\"https://t.me/heroku_talks\">our support chat</a>. We help <b>everyone</b>.\n\n💁♀️ <b>Quick Guide:</b>\n\n1️⃣ <b>Write</b> <code>.help</code> <b>to see the list of modules</b>\n2️⃣ <b>Write</b> <code>.help <Module name/command></code> <b>to see the description of the module</b>\n3️⃣ <b>Write</b> <code>.dlmod <link></code> <b>to load a module from a link</b>\n4️⃣ <b>Write</b> <code>.loadmod</code> <b>in response to a file to load a module from it</b>\n5️⃣ <b>Write</b> <code>.unloadmod <Module name></code> <b>to unload a module</b>\n\n💡 <b>Heroku supports modules from Heroku, Friendly-Telegram, and GeekTG, as well as its own.</b>\n"
|
||||
base: "🪐 <b>Hello.</b> Your <b>Heroku</b> userbot is now installed.\n\n❓ <b>Need help?</b> Join <a href=\"https://t.me/heroku_talks\">our support chat</a>. We help <b>everyone</b>.\n\n💁♀️ <b>Quick Guide:</b>\n\n1️⃣ <b>Write</b> <code>.help</code> <b>to see the list of modules</b>\n2️⃣ <b>Write</b> <code>.help <Module name/command></code> <b>to see the description of the module</b>\n3️⃣ <b>Write</b> <code>.dlmod <link></code> <b>to load a module from a link</b>\n4️⃣ <b>Write</b> <code>.loadmod</code> <b>in response to a file to load a module from it</b>\n5️⃣ <b>Write</b> <code>.unloadmod <Module name></code> <b>to unload a module</b>\n\n💡 <b>Heroku supports modules from Hikka, Friendly-Telegram, and GeekTG, as well as its own.</b>\n"
|
||||
lavhost: "✌️ <b>Your userbot is installed on lavHost</b>. Make sure to join @lavhost for important notifications and updates. All questions regarding the platform should be asked in @lavhostchat."
|
||||
language_saved: "🇬🇧 Language saved!"
|
||||
language: "🇬🇧 English"
|
||||
|
|
|
@ -190,7 +190,9 @@ heroku_web:
|
|||
heroku_backup:
|
||||
period: "⌚️ <b>Юнит «ALPHA»</b> создает регулярные резервные копии. Эти настройки можно изменить позже.\n\nПожалуйста, выберите периодичность резервного копирования\n\n<b>🚫 Таким образом невозможно восстановить модули скачанные с файлов командой .lm! Будьте осторожны и делайте .backupmods перед восстановлением.</b>"
|
||||
saved: "✅ Периодичность сохранена! Ее можно изменить с помощью <code>{prefix}set_backup_period</code>"
|
||||
saved_bot: "✅ Периодичность сохранена! Ее можно изменить с помощью {prefix}set_backup_period"
|
||||
never: "✅ Я не буду делать автоматические резервные копии. Можно отменить используя <code>{prefix}set_backup_period</code>"
|
||||
never_bot: "✅ Я не буду делать автоматические резервные копии. Можно отменить используя {prefix}set_backup_period"
|
||||
invalid_args: "🚫 <b>Укажи правильную периодичность в часах, или `0` для отключения</b>"
|
||||
backup_caption: '<emoji document_id=5469718869536940860>👆</emoji> <b>Это твоя резервная копия базы данных. Не передавай ее никому, она содержит личную информацию. Если тебе нужно ее восстановить, используй</b> <pre><code class="language-heroku">{prefix}restoredb</code></pre> <b>в ответ на этот файл.</b>'
|
||||
backupall_info: '<emoji document_id=5469718869536940860>👆</emoji> <b>Это твоя резервная копия базы и модулей. Не передавай ее никому, она содержит личную информацию. Если тебе нужно ее восстановить, используй</b> <pre><code class="language-heroku">{prefix}restoreall</code></pre> <b>в ответ на этот файл.</b>'
|
||||
|
@ -562,8 +564,7 @@ translate:
|
|||
_cmd_doc_tr: "[язык] [текст] - Перевести текст"
|
||||
|
||||
quickstart:
|
||||
base: "🪐 <b>Привет.</b> Твой юзербот <b>Heroku</b> установлен.\n\n❓ <b>Нужна помощь?</b> Вступай <a href=\"https://t.me/heroku_talks\">в наш чат поддержки</a>. Мы помогаем <b>всем</b>.\n\n💁♀️ <b>Быстрый гайд:</b>\n\n1️⃣ <b>Напиши</b> <code>.help</code> <b>чтобы увидеть список модулей</b>\n2️⃣ <b>Напиши</b> <code>.help <Название модуля/команда></code> <b>чтобы увидеть описание модуля</b>\n3️⃣ <b>Напиши</b> <code>.dlmod <ссылка></code> <b>чтобы загрузить модуль из ссылки</b>\n4️⃣ <b>Напиши</b> <code>.loadmod</code> <b>ответом на файл, чтобы загрузить модуль из него</b>\n5️⃣ <b>Напиши</b> <code>.unloadmod <Название модуля></code> <b>чтобы выгрузить модуль</b>\n\n💡 <b>Heroku поддерживает модули из Heroku, Friendly-Telegram и GeekTG, а также свои собственные.</b>\n"
|
||||
railway: "🚂 <b>Твой юзербот установлен на Railway</b>. На этой платформе ты получаешь только <b>500 бесплатных часов в месяц</b>. Когда лимит будет достигнет, твой <b>юзербот будет заморожен</b>. В следующем месяце <b>ты должен будешь перейти на https://railway.app и перезапустить его</b>."
|
||||
base: "🪐 <b>Привет.</b> Твой юзербот <b>Heroku</b> установлен.\n\n❓ <b>Нужна помощь?</b> Вступай <a href=\"https://t.me/heroku_talks\">в наш чат поддержки</a>. Мы помогаем <b>всем</b>.\n\n💁♀️ <b>Быстрый гайд:</b>\n\n1️⃣ <b>Напиши</b> <code>.help</code> <b>чтобы увидеть список модулей</b>\n2️⃣ <b>Напиши</b> <code>.help <Название модуля/команда></code> <b>чтобы увидеть описание модуля</b>\n3️⃣ <b>Напиши</b> <code>.dlmod <ссылка></code> <b>чтобы загрузить модуль из ссылки</b>\n4️⃣ <b>Напиши</b> <code>.loadmod</code> <b>ответом на файл, чтобы загрузить модуль из него</b>\n5️⃣ <b>Напиши</b> <code>.unloadmod <Название модуля></code> <b>чтобы выгрузить модуль</b>\n\n💡 <b>Heroku поддерживает модули из Hikka, Friendly-Telegram и GeekTG, а также свои собственные.</b>\n"
|
||||
lavhost: "✌️ <b>Твой юзербот установлен на lavHost</b>. Вступи в @lavhost, чтобы получать важные уведомления и обновления. Все вопросы, связанные с платформой, следует задавать в @lavhostchat."
|
||||
language_saved: "🇷🇺 Язык сохранен!"
|
||||
language: "🇷🇺 Русский"
|
||||
|
|
|
@ -189,8 +189,10 @@ heroku_web:
|
|||
|
||||
heroku_backup:
|
||||
period: "⌚️ <b>Пристрій «ALPHA»</b> створює регулярні резервні копії. Ці налаштування можна змінити пізніше.\n\nБудь ласка, виберіть частоту резервного копіювання\n\n<b>🚫 Таким чином неможливо відновити модулі, завантажені з файлів за допомогою команди .lm! Будьте обережні та виконайте .backupmods перед відновленням.</b>"
|
||||
saved: "✅ Періодичність збережено! Її можна змінити за допомогою <code>{prefix}set_backup_period</code>"
|
||||
saved: "✅ Періодичність збережено! Її можна змінити за допомогою <code>{prefix}set_backup_period</code>"
|
||||
saved_bot: "✅ Періодичність збережено! Її можна змінити за допомогою {prefix}set_backup_period"
|
||||
never: "✅ Я не робитиму автоматичне резервне копіювання. Можна скасувати за допомогою <code>{prefix}set_backup_period</code>"
|
||||
never_bot: "✅ Я не робитиму автоматичне резервне копіювання. Можна скасувати за допомогою {prefix}set_backup_period"
|
||||
invalid_args: "🚫 <b>Будь ласка, вкажіть правильну частоту в годинах або 0 для вимкнення</b>"
|
||||
backup_caption: '<emoji document_id=5469718869536940860>👆</emoji> <b>Це резервна копія вашої бази даних. Не повідомляйте його нікому, він містить особисту інформацію. Якщо вам потрібно його відновити, використовуйте</b> <pre><code class="language-heroku">{prefix}restoredb</code></pre> <b>у відповідь на цей файл.</b>'
|
||||
backupall_info: '<emoji document_id=5469718869536940860>👆</emoji> <b>Це ваша резервна копія бази даних і модулів. Не давайте його нікому, він містить особисту інформацію. Якщо вам потрібно його відновити, використовуйте</b> <pre><code class="language-heroku">{prefix}restoreall</code></pre> <b>у відповідь на цей файл.</b>'
|
||||
|
@ -569,7 +571,7 @@ translate:
|
|||
_cmd_doc_tr: "[мова] [текст] - Перекласти текст"
|
||||
|
||||
quickstart:
|
||||
base: "🪐 <b>Привет.</b> Твой юзербот <b>Heroku</b> установлен.\n\n❓ <b>Нужна помощь?</b> Вступай <a href=\"https://t.me/heroku_talks\">в наш чат поддержки</a>. Мы помогаем <b>всем</b>.\n\n💁♀️ <b>Быстрый гайд:</b>\n\n1️⃣ <b>Напиши</b> <code>.help</code> <b>чтобы увидеть список модулей</b>\n2️⃣ <b>Напиши</b> <code>.help <Название модуля/команда></code> <b>чтобы увидеть описание модуля</b>\n3️⃣ <b>Напиши</b> <code>.dlmod <посилання></code> <b>щоб завантажити модуль із посилання</b>\n4️⃣ <b>Напиши</b> <code>.loadmod</code> <b>відповіддю на файл, щоб завантажити модуль з нього</b>\n5️⃣ <b>Напиши</b> <code>.unloadmod <Назва модуля> </code> <b>, щоб вивантажити модуль</b> \n\n💡 <b>Heroku підтримує модулі з Heroku, Friendly-Telegram та GeekTG, а також свої власні.</b>\n"
|
||||
base: "🪐 <b>Привет.</b> Твой юзербот <b>Heroku</b> установлен.\n\n❓ <b>Нужна помощь?</b> Вступай <a href=\"https://t.me/heroku_talks\">в наш чат поддержки</a>. Мы помогаем <b>всем</b>.\n\n💁♀️ <b>Быстрый гайд:</b>\n\n1️⃣ <b>Напиши</b> <code>.help</code> <b>чтобы увидеть список модулей</b>\n2️⃣ <b>Напиши</b> <code>.help <Название модуля/команда></code> <b>чтобы увидеть описание модуля</b>\n3️⃣ <b>Напиши</b> <code>.dlmod <посилання></code> <b>щоб завантажити модуль із посилання</b>\n4️⃣ <b>Напиши</b> <code>.loadmod</code> <b>відповіддю на файл, щоб завантажити модуль з нього</b>\n5️⃣ <b>Напиши</b> <code>.unloadmod <Назва модуля> </code> <b>, щоб вивантажити модуль</b> \n\n💡 <b>Heroku підтримує модулі з Hikka, Friendly-Telegram та GeekTG, а також свої власні.</b>\n"
|
||||
railway: "🚂 <b>Ти встановив юзербота на Railway, вітаю!</b>. На цій платформі ти отримуєш лише <b>500 безкоштовних годин на місяць</b>. Коли ліміт буде досягнуто, твій <b>юзербот буде заморожено</b>. Наступного місяця <b>ти повинен будеш перейти на https://railway.app і перезапустити його</b>."
|
||||
lavhost: "✌️ <b>Ти встановив юзербота на LavHost, вітаю!</b>. Усі новини про хост - @lavhost. Усі питання про хост - @lavhostchat"
|
||||
language_saved: "🇺🇦 Мова збережена!"
|
||||
|
|
|
@ -80,14 +80,14 @@ class HerokuBackupMod(loader.Module):
|
|||
async def _set_backup_period(self, call: BotInlineCall, value: int):
|
||||
if not value:
|
||||
self.set("period", "disabled")
|
||||
await self.inline.bot(call.answer(self.strings("never"), show_alert=True))
|
||||
await self.inline.bot(call.answer(self.strings("never_bot").format(prefix=self.get_prefix()), show_alert=True))
|
||||
await call.delete()
|
||||
return
|
||||
|
||||
self.set("period", value * 60 * 60)
|
||||
self.set("last_backup", round(time.time()))
|
||||
|
||||
await self.inline.bot(call.answer(self.strings("saved"), show_alert=True))
|
||||
await self.inline.bot(call.answer(self.strings("saved_bot").format(prefix=self.get_prefix()), show_alert=True))
|
||||
await call.delete()
|
||||
|
||||
@loader.command()
|
||||
|
|
|
@ -764,8 +764,8 @@ async def asset_channel(
|
|||
return client._channels_cache[title]["peer"], False
|
||||
|
||||
# legacy heroku / hikka chats conversion to heroku
|
||||
if title.startswith("heroku-"):
|
||||
title = title.replace("heroku-", "heroku-")
|
||||
if title.startswith("hikka-"):
|
||||
title = title.replace("hikka-", "heroku-")
|
||||
|
||||
async for d in client.iter_dialogs():
|
||||
if d.title == title:
|
||||
|
@ -1543,19 +1543,17 @@ def get_topic(message: Message) -> typing.Optional[int]:
|
|||
)
|
||||
|
||||
|
||||
|
||||
def get_ram_usage() -> float:
|
||||
"""Returns total memory usage of all processes in MB"""
|
||||
"""Returns current process tree memory usage in MB"""
|
||||
try:
|
||||
import psutil
|
||||
|
||||
total_mem = 0
|
||||
for process in psutil.process_iter(['memory_info']):
|
||||
try:
|
||||
total_mem += process.memory_info()[0] / 2.0**20
|
||||
except (psutil.NoSuchProcess, psutil.AccessDenied, psutil.ZombieProcess):
|
||||
continue
|
||||
|
||||
return round(total_mem, 1)
|
||||
current_process = psutil.Process(os.getpid())
|
||||
mem = current_process.memory_info()[0] / 2.0**20
|
||||
for child in current_process.children(recursive=True):
|
||||
mem += child.memory_info()[0] / 2.0**20
|
||||
return round(mem, 1)
|
||||
except Exception:
|
||||
return 0
|
||||
|
||||
|
|
Loading…
Reference in New Issue