JuliusFreudenberger
7a24a127c2
Every command handler and related functions are now in seperate files Also made a seperate exception for not found weather station
41 lines
1 KiB
Python
41 lines
1 KiB
Python
class NoArgError(Exception):
|
|
pass
|
|
|
|
|
|
class StationNotFoundError(Exception):
|
|
pass
|
|
|
|
|
|
class WeatherStationNotFoundError(Exception):
|
|
pass
|
|
|
|
|
|
class ServerCommunicationError(Exception):
|
|
pass
|
|
|
|
|
|
class MultipleStationsFoundError(Exception):
|
|
message_text = ''
|
|
queried_station = ''
|
|
station_list = []
|
|
|
|
def __init__(self, message_text, queried_station, station_list):
|
|
self.message_text = message_text
|
|
self.queried_station = queried_station
|
|
self.station_list = station_list
|
|
|
|
|
|
def error_callback(update, context):
|
|
try:
|
|
raise context.error
|
|
except NoArgError:
|
|
update.message.reply_text('No argument specified!')
|
|
return
|
|
except StationNotFoundError:
|
|
update.message.reply_text('No station matching this name found!')
|
|
return
|
|
except ServerCommunicationError:
|
|
update.message.reply_text('Error with server communication')
|
|
return
|
|
except WeatherStationNotFoundError:
|
|
update.message.reply_text('No weather station matching this name found!')
|