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!')