Skip to content

Instantly share code, notes, and snippets.

@dvoryankin
Created August 9, 2017 14:48
Show Gist options
  • Save dvoryankin/46090b8e5416c0de0a35c7b77d0134b5 to your computer and use it in GitHub Desktop.
Save dvoryankin/46090b8e5416c0de0a35c7b77d0134b5 to your computer and use it in GitHub Desktop.
bot_1.rb
require 'telegram/bot'
require 'open-uri'
require 'net/http'
require 'uri'
token = 'kakoy-to token'
KRAEV = ['Краев мой друг', 'Серега - отличный парень', 'Люблю Краева',
'Без Сережки чата не станет'].freeze
DIMA = ["Дима самый лучший", "Серов - душа компании", "Дима самый умный, хоть и дурак",
"От Димы все бабы без ума", "Дима любит шутки"].freeze
ELCIN = ["Иди ты нахуй", "Сам ты уебок", "Попизди мне тут", "Я твою страну ебал", "Иди в пизду",
"Пососи мой президентский хуй", "От говна слышу", "Не шути так со мной"].freeze
GOVNO = ["Сам ты говно", "От говна слышу", "Как жили в говне, так и живем",
"Сухое собачье говно не пахнет", "Смесь из грязи и говна - это Родина моя"].freeze
PIZDA = ["Пиздец у тебя в голове", "Не ругайся", "Пиздец можно пережить",
"Пиздец - это быть тупым ботом"].freeze
ZENIT = ["Зенит - чемпион", "Сине-бело-голубые, хей, хей, хей", "Зенит в моем сердце",
"Один город, одна команда"].freeze
SPARTAK = ["Спартак - ебучее мясо", "Давай не будем о свиньях", "Народная команда, блядь",
"Спартачи - охуевшие в край уроды", "Мясные твари", "Порвем мясо на бекон"].freeze
OHUEL = ["Ща леща втащу", "А ты смелый, я смотрю", "Отвали, а то всеку",
"Нет ты", "Хули сразу охуел", "Въеби хмурого", "Охуел у тебя в штанах"].freeze
EBAT = ["ебать-колотить", "Ебалка не выросла", "Посмотрите на него, ебырь нашелся",
"Ебать шлюх не гигиенично", "Ебать ту Люсю"].freeze
SIDOROVA = ["Я слышал, что у Сидоровой лучшие перцы", "Юлька самая классная",
"Юля может в перцы", "Я люблю Сидорову", "Лучьше Юли бабы нет",
"Не люблю тех дураков, кто не любит Юльку Сидорову"].freeze
IPHONE = ["Айфон - говно", "Эппл катится в говно", "Нет ничего лучше Айфона",
"Андроид все слизал с Айфона", "Айфон удобнее всего"].freeze
PEREC = ["Помню, во времена моей комсомольской молодости, Наина готовила мне охуенные перцы",
"Бывало, до того как я умер, я любил навернуть фаршированных перцев под водочку",
"В Кремлевской столовой частенько подавали восхитительные перцы",
"Фаршем перцы не испортишь"].freeze
MOLODEC = ["Рад стараться", "Служу России", "Ты мне льстишь", "Так уж меня воспитали"]
TUT = ["Я здесь, мой генерал!", "Слушаю!", "Ага.", "Чего надо?"]
NEXUS = ["Нексус говно", "Андроид говно", "Нексус - глючная хуйня",
"В Гугле одни пидарасы"].freeze
VELIK = ["За 17 тысяч можно взять нормальный вел", "Стерн для нищебродов",
"Брать только с Шимано, остальное все говно", "Мерида для понтов",
"Стелс нормальный", "От седла жопа болит только в первый день"].freeze
# zapros
OBZYVALKA = %w[пидор козел алкаш робот чмо мудак мудень дятел пидрило мудило долбоеб долбоклюй
говно дурак тупой].freeze
POHVALA = %w[молодец хороший молоток классный крутой спасибо норм умница чувак супер].freeze
Telegram::Bot::Client.run(token) do |bot|
bot.listen do |message|
zapros = message.text.downcase.gsub(/[!?.,"]/, '').split(" ") unless message.text.nil?
if !zapros.nil? && (zapros[0] == "п" || zapros[0] == "П")
zapros.delete_at(0)
puts zapros.join("+")
sleep(2)
url = ("https://yandex.ru/images/search?text=#{zapros.join("+")}&isize=medium&itype=jpg")
stroka = URI.encode(url)
html = Net::HTTP.get(URI.parse(stroka))
images = URI.extract(html).select{ |l| l[/\.(?:jpe?g)\b/]}
if images.size == 0
url = ("https://www.bing.com/images/search?q=#{zapros.join("+")}&go=Поиск")
stroka = URI.encode(url)
html = Net::HTTP.get(URI.parse(stroka))
images = URI.extract(html).select{ |l| l[/\.(?:jpe?g)\b/]}
end
source = images[rand(0..12)] if images.size > 1
if images.size == 0
bot.api.send_message(chat_id: message.chat.id, text: "Ничего нет, попробуй еще!")
else
image = open(source)
bot.api.send_photo(chat_id: message.chat.id,
reply_to_message_id: message.message_id,
photo: Faraday::UploadIO.new(image, 'image/jpeg')) unless image.nil?
end
elsif !zapros.nil? && (zapros.include?("ельцин") || zapros.include?("бн")) && zapros.size == 1
sleep(1)
bot.api.send_message(chat_id: message.chat.id, reply_to_message_id: message.message_id,
text: "#{TUT[rand(0..3)]}")
elsif !zapros.nil? && (zapros.include?("сидорова") || zapros.include?("юля"))
sleep(rand(2..4))
bot.api.send_message(chat_id: message.chat.id, reply_to_message_id: message.message_id,
text: "#{SIDOROVA[rand(0..5)]}.")
elsif !zapros.nil? && zapros.include?("краев")
sleep(rand(2..4))
bot.api.send_message(chat_id: message.chat.id, reply_to_message_id: message.message_id,
text: "#{KRAEV[rand(0..3)]}.")
elsif !zapros.nil? && (zapros.include?("дима") || zapros.include?("серов"))
sleep(rand(2..4))
bot.api.send_message(chat_id: message.chat.id, reply_to_message_id: message.message_id,
text: "#{DIMA[rand(0..4)]}.")
elsif !zapros.nil? && (zapros.include?("ельцин") || zapros.include?("бн")) &&
(zapros & OBZYVALKA).size >= 1
sleep(rand(2..4))
bot.api.send_message(chat_id: message.chat.id, reply_to_message_id: message.message_id,
text: "#{ELCIN[rand(0..7)]}.")
elsif !zapros.nil? && (zapros.include?("говно") || zapros.include?("гавно"))
bot.api.send_message(chat_id: message.chat.id, reply_to_message_id: message.message_id,
text: "#{GOVNO[rand(0..4)]}.")
elsif !zapros.nil? && zapros.include?("пиздец")
sleep(rand(2..4))
bot.api.send_message(chat_id: message.chat.id, reply_to_message_id: message.message_id,
text: "#{PIZDA[rand(0..3)]}.")
elsif !zapros.nil? && zapros.include?("зенит")
sleep(rand(2..4))
bot.api.send_message(chat_id: message.chat.id, reply_to_message_id: message.message_id,
text: "#{ZENIT[rand(0..3)]}!")
elsif !zapros.nil? && zapros.include?("спартак")
sleep(rand(2..4))
bot.api.send_message(chat_id: message.chat.id, reply_to_message_id: message.message_id,
text: "#{SPARTAK[rand(0..5)]}!")
elsif !zapros.nil? && (zapros.include?("ельцин") || zapros.include?("бн")) && (
zapros.include?("охуел") || zapros.include?("ахуел"))
sleep(rand(2..4))
bot.api.send_message(chat_id: message.chat.id, reply_to_message_id: message.message_id,
text: "#{OHUEL[rand(0..6)]}!")
elsif !zapros.nil? && (zapros.include?("ебать") || zapros.include?("ебал"))
sleep(rand(2..4))
bot.api.send_message(chat_id: message.chat.id, reply_to_message_id: message.message_id,
text: "#{EBAT[rand(0..4)]}!")
elsif !zapros.nil? && (zapros.include?("айфон") ||
zapros.include?("iphone") ||
zapros.include?("жуйфон"))
sleep(rand(2..4))
bot.api.send_message(chat_id: message.chat.id, reply_to_message_id: message.message_id,
text: "#{IPHONE[rand(0..4)]}.")
elsif !zapros.nil? && (zapros.include?("перцы") || zapros.include?("перцев"))
sleep(rand(2..4))
bot.api.send_message(chat_id: message.chat.id, reply_to_message_id: message.message_id,
text: "#{PEREC[rand(0..3)]}!")
elsif !zapros.nil? && (zapros.include?("ельцин") || zapros.include?("бн")) &&
(zapros & POHVALA).size >= 1
sleep(rand(2..4))
bot.api.send_message(chat_id: message.chat.id, reply_to_message_id: message.message_id,
text: "#{MOLODEC[rand(0..3)]}!")
elsif !zapros.nil? && (zapros.include?("нексус") || zapros.include?("nexus"))
sleep(rand(2..4))
bot.api.send_message(chat_id: message.chat.id, reply_to_message_id: message.message_id,
text: "#{NEXUS[rand(0..3)]}!")
elsif !zapros.nil? && (zapros.include?("велик") ||
zapros.include?("вел") ||
zapros.include?("велосипед"))
sleep(rand(2..4))
bot.api.send_message(chat_id: message.chat.id, reply_to_message_id: message.message_id,
text: "#{VELIK[rand(0..3)]}!")
elsif !zapros.nil? && (message.from.username == "SergeyKreff" || message.from.username == "@SergeyKreff") && rand(1..6) == 3
sleep(rand(3..7))
bot.api.send_message(chat_id: message.chat.id, reply_to_message_id: message.message_id,
text: "Иди делай ремонт.")
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment