Sha256: bba9f60304ffe4609d5d7276e2459e0c395a2bb6b0fcaf2e3bb3201ea6f4334a

Contents?: true

Size: 1.83 KB

Versions: 5

Compression:

Stored size: 1.83 KB

Contents

bobot_config_path = Rails.root.join("config", "secrets.yml")
bobot_config = YAML.safe_load(ERB.new(File.read(bobot_config_path)).result, [], [], true)[Rails.env]["bobot"]

if bobot_config.present?
  unless bobot_config.key?("pages")
    raise "Bobot: #{bobot_config_path} required an array key :pages (cf. https://github.com/navidemad/bobot)"
  end
  Bobot.configure do |config|
    config.app_id               = bobot_config["app_id"]
    config.app_secret           = bobot_config["app_secret"]
    config.verify_token         = bobot_config["verify_token"]
    config.skip_code            = bobot_config["skip_code"]
    config.domains              = bobot_config["domains"]
    config.async                = bobot_config["async"]
    config.commander_queue_name = bobot_config["commander_queue_name"]
    bobot_config["pages"].each do |page|
      config.pages << Bobot::Page.new(
        slug:                page["slug"],
        language:            page["language"],
        page_id:             page["page_id"],
        page_access_token:   page["page_access_token"],
        get_started_payload: page["get_started_payload"],
      )
    end
  end
else
  warn "#{bobot_config_path} not configured yet in #{Rails.env} environment."
end

unless Rails.env.production?
  bot_files = Dir[Rails.root.join("app", "bobot", "**", "*.rb")]
  bot_reloader = ActiveSupport::FileUpdateChecker.new(bot_files) do
    bot_files.each { |file| require_dependency file }
  end

  ActiveSupport::Reloader.to_prepare do
    bot_reloader.execute_if_updated
  end

  bot_files.each { |file| require_dependency file }
end

if defined?(Rails::Server)
  Rails.application.config.after_initialize do
    Rails.application.config.paths.add File.join("app", "bobot"), glob: File.join("**", "*.rb")
    Rails.application.config.autoload_paths += Dir[Rails.root.join("app", "bobot", "*")]
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
bobot-4.4.1 lib/generators/bobot/templates/config/initializers/bobot.rb
bobot-4.4.0 lib/generators/bobot/templates/config/initializers/bobot.rb
bobot-4.3.1 lib/generators/bobot/templates/config/initializers/bobot.rb
bobot-4.3.0 lib/generators/bobot/templates/config/initializers/bobot.rb
bobot-4.2.0 lib/generators/bobot/templates/config/initializers/bobot.rb