def google(self, message, text): if not text: m = self.bot.send_message( message.chat.id, 'Google for what?', reply_to_message_id=message.message_id, reply_markup=ForceReply.create(selective=True) ).wait() self.need_reply(self.google, message, out_message=m, selective=True) else: self.bot.send_chat_action(message.chat.id, ChatAction.TEXT) res = requests.get('http://ajax.googleapis.com/ajax/services/search/web', params={ 'v': 1.0, 'q': text, }).json() if res['responseStatus'] == 200: try: res = res['responseData']['results'][0] res['content'] = self.unescaper.unescape(GooglePlugin.TAG_RE.sub('', res['content'])) res['titleNoFormatting'] = self.unescaper.unescape(res['titleNoFormatting']) reply = '%(titleNoFormatting)s\n\n%(content)s\n\n%(url)s' % res except IndexError: reply = 'Sorry, nothing found...' else: # pragma: no cover reply = 'It seems I\'m googling too much lately, I need to rest a little...' self.bot.send_message(message.chat.id, reply, reply_to_message_id=message.message_id, disable_web_page_preview=True)
def echo(self, message, text): if text: self.bot.send_message(message.chat.id, text, reply_to_message_id=message.message_id) else: m = self.bot.send_message( message.chat.id, 'echo what?', reply_to_message_id=message.message_id, reply_markup=ForceReply.create( selective=True ) ).wait() self.need_reply(self.echo, message, out_message=m, selective=True)
def random(self, message, text): if not text: m = self.bot.send_message( message.chat.id, 'What are the options? (space separated)', reply_to_message_id=message.message_id, reply_markup=ForceReply.create(selective=True) ).wait() self.need_reply(self.random, message, out_message=m, selective=True) else: pars = text.split() # split on any whitespace reply = choice(pars) self.bot.send_message(message.chat.id, reply, reply_to_message_id=message.message_id)
def priberam(self, message, text): self.bot.send_chat_action(message.chat.id, ChatAction.TEXT) if not text: m = self.bot.send_message( message.chat.id, 'Qual palavra?', reply_to_message_id=message.message_id, reply_markup=ForceReply.create(selective=True) ).wait() if isinstance(m, Error): print 'ERROR:', m else: self.need_reply(self.priberam, message, out_message=m, selective=True) return res = self._lookup(text) return self.bot.return_message(message.chat.id, res, parse_mode='Markdown')
def priberam(self, message, text): self.bot.send_chat_action(message.chat.id, ChatAction.TEXT) if not text: m = self.bot.send_message( message.chat.id, 'Qual palavra?', reply_to_message_id=message.message_id, reply_markup=ForceReply.create(selective=True)).wait() if isinstance(m, Error): print 'ERROR:', m else: self.need_reply(self.priberam, message, out_message=m, selective=True) return res = self._lookup(text) return self.bot.return_message(message.chat.id, res, parse_mode='Markdown')
def msg(self, message, text): if not self.__is_admin(message): return if text == "": self.bot.send_message(message.chat.id, "Use /users or /chats to list available ids") return p = text.find(" ") if p < 0: self.save_data(message.chat.id, key2="msg", obj=text) m = self.bot.send_message( message.chat.id, "And say what?", reply_to_message_id=message.message_id, reply_markup=ForceReply.create(selective=True), ).wait() self.need_reply(self.forward_message, message, out_message=m, selective=True) return cid = text[:p] msg = text[p + 1 :] self.forward_message(message, msg, dst=cid)