Improve simple responses.

This commit is contained in:
Alexandr
2018-12-28 18:52:37 +03:00
parent d406ec14b4
commit e1e6ee1e9d
2 changed files with 10 additions and 8 deletions

View File

@ -153,8 +153,9 @@ class DataBase:
result = self.execute(sql) result = self.execute(sql)
return(result) return(result)
def get_random_word(self, count=1): def get_random_word(self, count=1, like="%"):
sql = "SELECT word FROM word ORDER BY random() LIMIT %s" % count sql = "SELECT word FROM word WHERE word LIKE '%s' ORDER BY random() LIMIT %s" % (like, count)
print(sql)
result = self.execute(sql) result = self.execute(sql)
return(result) return(result)

View File

@ -77,13 +77,14 @@ class MessageWorker:
'@' + self.me['result']['username'], '') '@' + self.me['result']['username'], '')
except: except:
input_message = msg['message']['text'] input_message = msg['message']['text']
if random.randint(0,100) == 1: if random.randint(0,300) == 1:
conf_id = msg['message']['chat']['id'] conf_id = msg['message']['chat']['id']
user_id = msg['message']['from']['id'] user_id = msg['message']['from']['id']
chat_title = msg['message']['chat']['title'] chat_title = msg['message']['chat']['title']
self.db.add_conf(conf_id, chat_title) self.db.add_conf(conf_id, chat_title)
answers = self.db.get_random_word(count=2) word_aya = self.db.get_random_word(count=1, like="%ая")
msg = "Ты %s и %s." % (answers[0][0], answers[1][0]) word_da = self.db.get_random_word(count=1, like="%да")
msg = "Ты %s %s." % (word_aya[0][0], word_da[0][0])
self.send(id=conf_id, msg=msg) self.send(id=conf_id, msg=msg)
if (input_message[0] == 'я') or (input_message[0] == 'Я'): if (input_message[0] == 'я') or (input_message[0] == 'Я'):
if len(input_message) > 3: if len(input_message) > 3:
@ -266,13 +267,13 @@ class MessageWorker:
pass pass
return collection return collection
def send(self, id, msg): def send(self, id, msg, parse_mode='Markdown'):
# print(msg) # print(msg)
url = self.telegram_api + 'bot' + self.telegram_key + '/sendMessage' url = self.telegram_api + 'bot' + self.telegram_key + '/sendMessage'
post_fields = { post_fields = {
'text': msg, 'text': msg,
'chat_id': id, 'chat_id': id,
'parse_mode': 'Markdown', 'parse_mode': parse_mode,
'disable_web_page_preview': 1 'disable_web_page_preview': 1
} }
urllib.request.Request(url, urlencode(post_fields).encode()) urllib.request.Request(url, urlencode(post_fields).encode())
@ -294,5 +295,5 @@ class MessageWorker:
for user in users: for user in users:
msg += ' @%s ' % (user[0]) msg += ' @%s ' % (user[0])
msg += "Hey all!\n %s" % alert[4] msg += "Hey all!\n %s" % alert[4]
self.send(id=alert[0], msg=msg) self.send(id=alert[0], msg=msg, parse_mode='HTML')
threading.Timer(30, self.cron_timer).start() threading.Timer(30, self.cron_timer).start()