Version command implemented
This commit is contained in:
parent
086750c77e
commit
4487034c7d
@ -14,7 +14,7 @@ __author__ = "Davide Testa"
|
||||
__email__ = "davide@davte.it"
|
||||
__credits__ = ["Marco Origlia", "Nick Lee @Nickoala"]
|
||||
__license__ = "GNU General Public License v3.0"
|
||||
__version__ = "2.4.6"
|
||||
__version__ = "2.4.7"
|
||||
__maintainer__ = "Davide Testa"
|
||||
__contact__ = "t.me/davte"
|
||||
|
||||
|
@ -778,6 +778,25 @@ def get_maintenance_exception_criterion(bot, allowed_command):
|
||||
return criterion
|
||||
|
||||
|
||||
async def _version_command(bot, update, user_record):
|
||||
try:
|
||||
_subprocess = await asyncio.create_subprocess_exec(
|
||||
'git', 'rev-parse', 'HEAD',
|
||||
stdout=asyncio.subprocess.PIPE
|
||||
)
|
||||
stdout, stderr = await _subprocess.communicate()
|
||||
if stderr is not None:
|
||||
raise stderr
|
||||
version = stdout.decode().strip()
|
||||
except Exception as e:
|
||||
return f"{e}"
|
||||
return bot.get_message(
|
||||
'admin', 'version_command', 'result',
|
||||
version=version,
|
||||
update=update, user_record=user_record
|
||||
)
|
||||
|
||||
|
||||
def init(telegram_bot, talk_messages=None, admin_messages=None):
|
||||
"""Assign parsers, commands, buttons and queries to given `bot`."""
|
||||
if talk_messages is None:
|
||||
@ -927,3 +946,15 @@ def init(telegram_bot, talk_messages=None, admin_messages=None):
|
||||
authorization_level='admin')
|
||||
async def maintenance_command(bot, update, user_record):
|
||||
return await _maintenance_command(bot, update, user_record)
|
||||
|
||||
@telegram_bot.command(
|
||||
command='/version',
|
||||
aliases=[],
|
||||
reply_keyboard_button=admin_messages['version_command']['reply_keyboard_button'],
|
||||
show_in_keyboard=False,
|
||||
description=admin_messages['version_command']['description'],
|
||||
help_section=admin_messages['version_command']['help_section'],
|
||||
authorization_level='admin',
|
||||
)
|
||||
async def version_command(bot, update, user_record):
|
||||
return await _version_command(bot=bot, update=update, user_record=user_record)
|
||||
|
@ -235,6 +235,21 @@ default_admin_messages = {
|
||||
'en': "<i>Maintenance ended!</i>",
|
||||
'it': "<i>Manutenzione terminata!</i>"
|
||||
}
|
||||
},
|
||||
'version_command': {
|
||||
'reply_keyboard_button': {
|
||||
'en': "Version #️⃣",
|
||||
'it': "Versione #️⃣",
|
||||
},
|
||||
'description': {
|
||||
'en': "Get source code version",
|
||||
'it': "Chiedi la versione del codice sorgente",
|
||||
},
|
||||
'help_section': None,
|
||||
'result': {
|
||||
'en': "Last commit: {version}",
|
||||
'it': "Ultimo commit: {version}",
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user