Выход из программы телеграм бота и игнорирование ошибок

Как сделать чтоб при вводе "*exit" программа вырубалась? Он у меня висит всё равно. Но при вводе 3 раз "*exit" бот перестает отвечать, но программа не закрывается, висит всё равно. И ещё, при любой одной ошибке, бот беспрерывно отправляет мне инфу об ошибке, не работает дальше(отправляет бесконечно мне сообщении об ошибке и в итоге зависает, а я хочу чтоб он отправил мне сообщение об ошибке и дальше работал). Что можете предложить?

import telebot
import traceback

class Bot:
    """docstring for bot"""
    def __init__(self, token):
        self.server_name="bot"
        self.tg=telebot.TeleBot(token=token)
        self.tg_m=telebot.types
    def sms(self,chat_id,text,parse_mode=None,reply_to_message_id=None,reply_markup=None):
        self.tg.send_message(chat_id=chat_id,text=text,parse_mode=parse_mode,reply_to_message_id=reply_to_message_id,reply_markup=reply_markup)
    def means(self,message):
        message=message
        try:
            Return=message
        except: Return=""
        if Return!="":
            chat_id=message.chat.id
            user_id=message.from_user.id
            message_id=message.message_id
            try:
                first_name=message.from_user.first_name
            except:
                first_name=""
            try:
                last_name=" "+message.from_user.last_name
            except:
                last_name=""
            return chat_id, user_id, message_id, first_name, last_name
    def get(self,chat_id):
        r=self.tg.get_chat_members_count(chat_id=chat_id)
        return r
    def photo(self,chat_id,file_id=None,file_size=None,caption=None,parse_mode=None):
        self.tg.send_photo(chat_id=chat_id,photo=file_id,caption=caption,parse_mode=parse_mode)
    def button(self,text=None):
        R=self.tg_m.ReplyKeyboardMarkup(resize_keyboard=True,one_time_keyboard=True)
        R.row('/start','hello')
        return R
    def start(self):
        while True:
            try:                                                            
                `@self.tg.message_handler(commands=['start'])
                def answer(message):
                    chat_id, user_id, message_id, first_name, last_name=self.means(message=message)
                    markup=self.button()
                    self.sms(chat_id=chat_id,text="Welcome my master.",reply_markup=markup)                 
                @self.tg.message_handler(content_type=["text"])
                def answer_1(message):
                    chat_id, user_id, message_id, first_name, last_name=self.means(message=message)
                    if message.text=='hello':
                        print("123")
                        self.sms(chat_id=chat_id,text="Hi.\nHow are you?")`
                    elif msg.lower()=="*exit":      
                        self.sms(chat_id=chat_id,text="Бот выключается!")
                        exit()
                try:
                    self.tg.polling(none_stop=True,interval=0)

                except Exception as e:
                    try:
                        print(traceback.format_exc())
                        self.sms(chat_id="your_telegram_id",text="Error!\n"+traceback.format_exc())
                    except:
                        print(traceback.format_exc())
            except Exception as e:
                try:
                    print(traceback.format_exc())
                    self.sms(chat_id="your_telegram_id",text="Error!\n"+traceback.format_exc())
                except:
                    print(traceback.format_exc())

bot=Bot(token="token")
bot.start()

Ответы (0 шт):