mirror of
https://github.com/nikdoof/smsbot.git
synced 2025-12-17 19:59:28 +00:00
Switch to use argparse
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
import logging
|
import logging
|
||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
|
import argparse
|
||||||
|
|
||||||
import pkg_resources
|
import pkg_resources
|
||||||
|
|
||||||
@@ -11,29 +12,31 @@ pkg_version = pkg_resources.require('smsbot')[0].version
|
|||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
logging.basicConfig(level=logging.INFO)
|
parser = argparse.ArgumentParser('smsbot')
|
||||||
|
parser.add_argument('--listen-host', default=os.environ.get('SMSBOT_LISTEN_HOST') or '0.0.0.0')
|
||||||
|
parser.add_argument('--listen-port', default=os.environ.get('SMSBOT_LISTEN_PORT') or '80')
|
||||||
|
parser.add_argument('--telegram-bot-token', default=os.environ.get('SMSBOT_TELEGRAM_BOT_TOKEN'))
|
||||||
|
parser.add_argument('--owner-id', default=os.environ.get('SMSBOT_OWNER_ID'))
|
||||||
|
parser.add_argument('--default-subscribers', default=os.environ.get('SMSBOT_DEFAULT_SUBSCRIBERS'))
|
||||||
|
parser.add_argument('--log-level', default='INFO')
|
||||||
|
args = parser.parse_args()
|
||||||
|
|
||||||
|
logging.basicConfig(level=logging.getLevelName(args.log_level))
|
||||||
logging.info('smsbot v%s', pkg_version)
|
logging.info('smsbot v%s', pkg_version)
|
||||||
|
logging.debug('Arguments: %s', args)
|
||||||
listen_host = os.environ.get('SMSBOT_LISTEN_HOST') or '0.0.0.0'
|
|
||||||
listen_port = int(os.environ.get('SMSBOT_LISTEN_PORT') or '80')
|
|
||||||
|
|
||||||
token = os.environ.get('SMSBOT_TELEGRAM_BOT_TOKEN')
|
|
||||||
if not token:
|
|
||||||
logging.error('Telegram Bot token missing')
|
|
||||||
sys.exit(1)
|
|
||||||
|
|
||||||
# Start bot
|
# Start bot
|
||||||
telegram_bot = TelegramSmsBot(token)
|
telegram_bot = TelegramSmsBot(args.telegram_bot_token)
|
||||||
|
|
||||||
# Set the owner ID if configured
|
# Set the owner ID if configured
|
||||||
if 'SMSBOT_OWNER_ID' in os.environ:
|
if args.owner_id:
|
||||||
telegram_bot.set_owner(os.environ.get('SMSBOT_OWNER_ID'))
|
telegram_bot.set_owner(args.owner_id)
|
||||||
else:
|
else:
|
||||||
logging.warning('No Owner ID is set, which is not a good idea...')
|
logging.warning('No Owner ID is set, which is not a good idea...')
|
||||||
|
|
||||||
# Add default subscribers
|
# Add default subscribers
|
||||||
if 'SMSBOT_DEFAULT_SUBSCRIBERS' in os.environ:
|
if args.default_subscribers:
|
||||||
for chat_id in os.environ.get('SMSBOT_DEFAULT_SUBSCRIBERS').split(','):
|
for chat_id in args.default_subscribers.split(','):
|
||||||
telegram_bot.add_subscriber(chat_id)
|
telegram_bot.add_subscriber(chat_id)
|
||||||
|
|
||||||
telegram_bot.start()
|
telegram_bot.start()
|
||||||
@@ -41,4 +44,4 @@ def main():
|
|||||||
# Start webhooks
|
# Start webhooks
|
||||||
webhooks = TwilioWebhookHandler()
|
webhooks = TwilioWebhookHandler()
|
||||||
webhooks.set_bot(telegram_bot)
|
webhooks.set_bot(telegram_bot)
|
||||||
webhooks.serve(host=listen_host, port=listen_port)
|
webhooks.serve(host=args.listen_host, port=args.listen_port)
|
||||||
|
|||||||
Reference in New Issue
Block a user