-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathinterface.py
154 lines (119 loc) · 5.58 KB
/
interface.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
import telegram
from telegram.ext import Updater
from telegram.ext import CommandHandler
import logging
#from draftGame import draftGame
class interface:
def __init__(self,game):
logging.basicConfig(level=logging.DEBUG,
format='%(asctime)s - %(name)s - %(levelname)s - %(message)s')
myBotToken='309142165:AAFE5_m9RqUvxQ2FESo9BxD8vQFbFvgCnOU'
self.telegramIds = {}
self.telegramIds['draftFantasyGroup'] = -197047422
self.telegramIds['Shreyas'] = 21851479
self.telegramIds['Akshay'] = 74058426
self.telegramIds['Yenan'] =89001170
self.telegramIds['Sri'] = 58583921
self.telegramIds['Ripu'] = 272524465
self.telegramIds['Shrikar'] = 183002377
self.telegramIds['Ali'] = 120943853
self.telegramIds['Kanav'] = 213318720
self.telegramIds['Aniket'] = 212593489
self.telegramIds['Farhan'] = 370194752
self.telegramIds['Anmol'] = 31587490
self.updater = Updater(token=myBotToken)
self.bot = telegram.Bot(token=myBotToken)
dispatcher = self.updater.dispatcher
dispatcher.addHandler(CommandHandler('help', self.help))
dispatcher.addHandler(CommandHandler('rules', self.rules))
dispatcher.addHandler(CommandHandler('stage', self.stage))
dispatcher.addHandler(CommandHandler('list', self.list))
dispatcher.addHandler(CommandHandler('find', self.find))
dispatcher.addHandler(CommandHandler('whohas', self.whohas))
dispatcher.addHandler(CommandHandler('player', self.player))
dispatcher.addHandler(CommandHandler('ban', self.ban))
dispatcher.addHandler(CommandHandler('pick', self.pick))
dispatcher.addHandler(CommandHandler('viewteam', self.viewteam))
dispatcher.addHandler(CommandHandler('swap', self.swap))
dispatcher.addHandler(CommandHandler('start', self.startGame))
dispatcher.addHandler(CommandHandler('auction', self.auction))
dispatcher.addHandler(CommandHandler('bid', self.bid))
dispatcher.addHandler(CommandHandler('forcesell', self.forcesell))
dispatcher.addHandler(CommandHandler('viewmarket', self.viewmarket))
dispatcher.addHandler(CommandHandler('viewbans', self.viewbans))
dispatcher.addHandler(CommandHandler('viewbids', self.viewbids))
dispatcher.addHandler(CommandHandler('cancelbid', self.cancelbid))
dispatcher.addHandler(CommandHandler('unpicked', self.unpicked))
dispatcher.addHandler(CommandHandler('top', self.top))
dispatcher.addHandler(CommandHandler('league', self.league))
dispatcher.addHandler(CommandHandler('viewpoints', self.viewpoints))
self.game = game
def broadcast(self, message):
self.bot.sendMessage(chat_id = self.telegramIds['draftFantasyGroup'], text=message)
def sendMessage(self, to, message):
self.bot.sendMessage(chat_id = self.telegramIds[to], text=message)
def help(self,bot,update):
self.processCommand('help',update)
def rules(self,bot,update):
self.processCommand('rules',update)
def stage(self,bot,update):
self.processCommand('stage',update)
def list(self,bot,update):
self.processCommand('list',update)
def find(self,bot,update):
self.processCommand('find',update)
def player(self,bot,update):
self.processCommand('player',update)
def ban(self,bot,update):
self.processCommand('ban',update)
def pick(self,bot,update):
self.processCommand('pick',update)
def auction(self,bot,update):
self.processCommand('auction',update)
def bid(self,bot,update):
self.processCommand('bid',update)
def forcesell(self,bot,update):
self.processCommand('forcesell',update)
def viewteam(self,bot,update):
self.processCommand('viewteam',update)
def swap(self,bot,update):
self.processCommand('swap',update)
def viewmarket(self,bot,update):
self.processCommand('viewmarket',update)
def unpicked(self,bot,update):
self.processCommand('unpicked',update)
def top(self,bot,update):
self.processCommand('top',update)
def league(self,bot,update):
self.processCommand('league',update)
def viewpoints(self,bot,update):
self.processCommand('viewpoints',update)
def viewbans(self,bot,update):
self.processCommand('viewbans',update)
def viewbids(self,bot,update):
self.processCommand('viewbids',update)
def cancelbid(self,bot,update):
self.processCommand('cancelbid',update)
def whohas(self,bot,update):
self.processCommand('whohas',update)
def startGame(self,bot,update):
self.processCommand('start',update)
def processCommand(self,command, update):
if update.message.chat.type == 'group':
self.bot.sendMessage(chat_id=update.message.chat_id, text="Please ask privately!")
else:
args = None
try:
args = update.message.text.split(' ',1)[1]
except:
pass
user = self.get_user_from_id(update.message.chat_id)
if user is None: user = update.message.chat_id
self.bot.sendMessage(chat_id=update.message.chat_id, text=self.game.handleCommand(user, command, args))
def get_user_from_id(self,id):
for key,value in self.telegramIds.items():
if value == id: return key
print "ERROR: couldn't find user!"
return None
def start(self):
self.updater.start_polling()