1
0
зеркало из https://github.com/glebtv/telegram-bot.git synced 2026-09-06 11:05:51 +03:00

Fixed issues with poller in production. Fixes #3

Этот коммит содержится в:
Max Melentiev
2016-05-31 11:46:58 +03:00
родитель 5fef6fb43a
Коммит 8077ef9bcf
2 изменённых файлов: 15 добавлений и 5 удалений

Просмотреть файл

@@ -1,9 +1,14 @@
namespace :telegram do namespace :telegram do
namespace :bot do namespace :bot do
desc 'Run poller' desc 'Run poller. It broadcasts Rails.logger to STDOUT in dev like `rails s` do. ' \
task poller: :environment do 'Use LOG_TO_STDOUT to enable/disable broadcasting.'
console = ActiveSupport::Logger.new(STDERR) task :poller do
Rails.logger.extend ActiveSupport::Logger.broadcast console ENV['BOT_POLLER_MODE'] = 'true'
Rake::Task['environment'].invoke
if ENV.fetch('LOG_TO_STDOUT') { Rails.env.development? }.present?
console = ActiveSupport::Logger.new(STDERR)
Rails.logger.extend ActiveSupport::Logger.broadcast console
end
Telegram::Bot::UpdatesPoller.start(ENV['BOT'].try!(:to_sym) || :default) Telegram::Bot::UpdatesPoller.start(ENV['BOT'].try!(:to_sym) || :default)
end end

Просмотреть файл

@@ -14,9 +14,14 @@ module Telegram
# It just tells routes helpers whether to add routed bots to # It just tells routes helpers whether to add routed bots to
# Bot::UpdatesPoller, so their config will be available by bot key in # Bot::UpdatesPoller, so their config will be available by bot key in
# Bot::UpdatesPoller.start. # Bot::UpdatesPoller.start.
#
# It's enabled by default in Rails dev environment and `rake telegram:bot:poller`
# task. Use `BOT_POLLER_MODE=true` envvar to set it manually.
def bot_poller_mode? def bot_poller_mode?
return @bot_poller_mode if defined?(@bot_poller_mode) return @bot_poller_mode if defined?(@bot_poller_mode)
Rails.env.development? if defined?(Rails) @bot_poller_mode = ENV.fetch('BOT_POLLER_MODE') do
Rails.env.development? if defined?(Rails)
end
end end
# Hash of bots made with bots_config. # Hash of bots made with bots_config.