mirror of
https://github.com/eternnoir/pyTelegramBotAPI.git
synced 2023-08-10 21:12:57 +03:00
Merge branch 'master' into develop
This commit is contained in:
commit
968d30e246
@ -237,6 +237,12 @@ while True: # Don't end the main thread.
|
|||||||
```
|
```
|
||||||
Use whichever mechanism fits your purpose! It is even possible to mix and match.
|
Use whichever mechanism fits your purpose! It is even possible to mix and match.
|
||||||
|
|
||||||
|
## Telegram Chat Group
|
||||||
|
|
||||||
|
Get help. Discuss. Chat.
|
||||||
|
|
||||||
|
Join [pyTelegramBotAPI Chat Group](https://telegram.me/joinchat/067e22c60035523fda8f6025ee87e30b).
|
||||||
|
|
||||||
## Examples
|
## Examples
|
||||||
|
|
||||||
* [Echo Bot](https://github.com/eternnoir/pyTelegramBotAPI/blob/master/examples/echo_bot.py)
|
* [Echo Bot](https://github.com/eternnoir/pyTelegramBotAPI/blob/master/examples/echo_bot.py)
|
||||||
|
@ -88,7 +88,7 @@ class TeleBot:
|
|||||||
self.token = token
|
self.token = token
|
||||||
self.update_listener = []
|
self.update_listener = []
|
||||||
self.polling_thread = None
|
self.polling_thread = None
|
||||||
self.__stop_polling = False
|
self.__stop_polling = threading.Event()
|
||||||
self.last_update_id = 0
|
self.last_update_id = 0
|
||||||
self.num_threads = num_threads
|
self.num_threads = num_threads
|
||||||
self.__create_threads = create_threads
|
self.__create_threads = create_threads
|
||||||
@ -136,30 +136,29 @@ class TeleBot:
|
|||||||
:param none_stop: Do not stop polling when Exception occur.
|
:param none_stop: Do not stop polling when Exception occur.
|
||||||
:return:
|
:return:
|
||||||
"""
|
"""
|
||||||
self.__stop_polling = True
|
self.__stop_polling.set()
|
||||||
if self.polling_thread:
|
if self.polling_thread:
|
||||||
self.polling_thread.join() # wait thread stop.
|
self.polling_thread.join() # wait thread stop.
|
||||||
self.__stop_polling = False
|
self.__stop_polling.clear()
|
||||||
self.polling_thread = threading.Thread(target=self.__polling, args=([none_stop, interval]))
|
self.polling_thread = threading.Thread(target=self.__polling, args=([none_stop, interval]))
|
||||||
self.polling_thread.daemon = True
|
self.polling_thread.daemon = True
|
||||||
self.polling_thread.start()
|
self.polling_thread.start()
|
||||||
|
|
||||||
def __polling(self, none_stop, interval):
|
def __polling(self, none_stop, interval):
|
||||||
print('TeleBot: Started polling.')
|
print('TeleBot: Started polling.')
|
||||||
while not self.__stop_polling:
|
while not self.__stop_polling.wait(interval):
|
||||||
try:
|
try:
|
||||||
self.get_update()
|
self.get_update()
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
if not none_stop:
|
if not none_stop:
|
||||||
self.__stop_polling = True
|
self.__stop_polling.set()
|
||||||
print("TeleBot: Exception occurred. Stopping.")
|
print("TeleBot: Exception occurred. Stopping.")
|
||||||
print(e)
|
print(e)
|
||||||
time.sleep(interval)
|
|
||||||
|
|
||||||
print('TeleBot: Stopped polling.')
|
print('TeleBot: Stopped polling.')
|
||||||
|
|
||||||
def stop_polling(self):
|
def stop_polling(self):
|
||||||
self.__stop_polling = True
|
self.__stop_polling.set()
|
||||||
|
|
||||||
def set_update_listener(self, listener):
|
def set_update_listener(self, listener):
|
||||||
self.update_listener.append(listener)
|
self.update_listener.append(listener)
|
||||||
|
Loading…
Reference in New Issue
Block a user