Skip to content

Commit 0b8fd24

Browse files
committed
fixed issues with python2
1 parent 396dc6c commit 0b8fd24

5 files changed

Lines changed: 16 additions & 14 deletions

File tree

examples/eventhandler_bot.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -131,9 +131,9 @@ def main():
131131

132132
# Start CLI-Loop
133133
while True:
134-
if sys.version_info.major is 2:
134+
try:
135135
text = raw_input()
136-
elif sys.version_info.major is 3:
136+
except NameError:
137137
text = input()
138138

139139
# Gracefully stop the event handler

examples/eventhandler_simplebot.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,9 +66,9 @@ def main():
6666

6767
# Start CLI-Loop
6868
while True:
69-
if sys.version_info.major is 2:
69+
try:
7070
text = raw_input()
71-
elif sys.version_info.major is 3:
71+
except NameError:
7272
text = input()
7373

7474
# Gracefully stop the event handler

telegram/boteventhandler.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,11 @@
77
import logging
88
import ssl
99
from threading import Thread
10+
from time import sleep
11+
1012
from telegram import (Bot, TelegramError, broadcaster, Broadcaster,
1113
NullHandler)
1214
from telegram.utils.webhookhandler import (WebhookServer, WebhookHandler)
13-
from time import sleep
1415

1516
# Adjust for differences in Python versions
1617
try:
@@ -188,7 +189,7 @@ def _start_webhook(self, host, port, cert, key, listen):
188189
keyfile=key,
189190
server_side=True)
190191

191-
self.httpd.serve_forever()
192+
self.httpd.serve_forever(poll_interval=1)
192193
self.logger.info('Event Handler thread stopped')
193194

194195
def stop(self):
@@ -200,8 +201,10 @@ def stop(self):
200201

201202
if self.httpd:
202203
self.logger.info(
203-
'BETA: Webhook Server will stop after next message')
204+
'Waiting for current webhook connection to be closed... '
205+
'Send a Telegram message to the bot to exit immediately.')
204206
self.httpd.shutdown()
207+
self.httpd = None
205208

206209
self.broadcaster.stop()
207210
while broadcaster.running_async > 0:

telegram/broadcaster.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ def __init__(self, bot, update_queue, workers=4):
9090
else:
9191
self.logger.info("Semaphore already initialized, skipping.")
9292

93-
class _Stop:
93+
class _Stop(object):
9494
"""
9595
A class which objects can be passed into the update queue to stop the
9696
thread

telegram/utils/webhookhandler.py

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,23 +13,22 @@
1313
logging.getLogger(__name__).addHandler(H)
1414

1515

16-
class WebhookServer(BaseHTTPServer.HTTPServer):
16+
class WebhookServer(BaseHTTPServer.HTTPServer, object):
1717
def __init__(self, server_address, RequestHandlerClass, update_queue,
1818
webhook_path):
19-
super().__init__(server_address, RequestHandlerClass)
19+
super(WebhookServer, self).__init__(server_address, RequestHandlerClass)
2020
self.update_queue = update_queue
2121
self.webhook_path = webhook_path
2222

2323

2424
# WebhookHandler, process webhook calls
2525
# Based on: https://github.com/eternnoir/pyTelegramBotAPI/blob/master/
2626
# examples/webhook_examples/webhook_cpython_echo_bot.py
27-
class WebhookHandler(BaseHTTPServer.BaseHTTPRequestHandler):
27+
class WebhookHandler(BaseHTTPServer.BaseHTTPRequestHandler, object):
2828
server_version = "WebhookHandler/1.0"
2929

3030
def __init__(self, request, client_address, server):
31-
super().__init__(request, client_address, server)
32-
self.logger = logging.getLogger(__name__)
31+
super(WebhookHandler, self).__init__(request, client_address, server)
3332

3433
def do_HEAD(self):
3534
self.send_response(200)
@@ -55,4 +54,4 @@ def do_POST(self):
5554

5655
else:
5756
self.send_error(403)
58-
self.end_headers()
57+
self.end_headers()

0 commit comments

Comments
 (0)