Skip to content

Commit df41e98

Browse files
committed
Merge branch 'feature/stats'
2 parents eb1e919 + cab254a commit df41e98

14 files changed

+583
-82
lines changed

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ config.py
33

44
# state files:
55
ps4-games.txt
6+
ps4-stats.txt
67
doodlebot.txt
78
lunchbot-current.txt
89
lunchbot-ratings.txt

Bot.py

+15-7
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import re
22
import time
3+
34
from SlackPostedMessage import SlackPostedMessage
45

56
class Bot():
@@ -20,11 +21,13 @@ def lookup_user(self, id, alt = None):
2021

2122
return alt if alt is not None else id
2223

24+
def resolve_channel(self, channel):
25+
if channel is not None:
26+
return self.slackconnection.server.channels.find(channel)
27+
return self.channel
28+
2329
def send_message(self, text, to_channel = None):
24-
if to_channel is not None:
25-
channel = self.slackconnection.server.channels.find(to_channel)
26-
else:
27-
channel = self.channel
30+
channel = self.resolve_channel(to_channel)
2831

2932
if channel is None:
3033
return
@@ -40,11 +43,16 @@ def send_message(self, text, to_channel = None):
4043

4144
return SlackPostedMessage(response["channel"], response["ts"], text)
4245

43-
def update_message(self, text, original_message):
46+
def update_message(self, text, original_message = None, original_channel = None, original_timestamp = None):
47+
channel = original_channel or original_message.channel
48+
timestamp = original_timestamp or original_message.timestamp
49+
50+
channel = self.resolve_channel(channel)
51+
4452
self.slackconnection.api_call(
4553
"chat.update",
46-
channel = original_message.channel,
47-
ts = original_message.timestamp,
54+
channel = channel.id,
55+
ts = timestamp,
4856
username = self.botname,
4957
as_user = False,
5058
text = text)

Functional.py

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
def find(fn, list):
2+
entries = filter(fn, list)
3+
if len(entries) == 1:
4+
return entries[0]
5+
if len(entries) == 0:
6+
return None
7+
raise ValueError

0 commit comments

Comments
 (0)