IntercomRails.config do |config| # == Intercom app_id # config.app_id = ENV["INTERCOM_APP_ID"] || "<%= @app_id %>" # == Intercom session_duration # <%- if @session_duration -%> config.session_duration = <%= @session_duration %> <%- else -%> # config.session_duration = 300000 <%- end -%> # == Intercom secret key # This is required to enable secure mode, you can find it on your Setup # guide in the "Secure Mode" step. # <%- if @api_secret -%> config.api_secret = "<%= @api_secret %>" <%- else -%> # config.api_secret = "..." <%- end -%> # == Enabled Environments # Which environments is auto inclusion of the Javascript enabled for # config.enabled_environments = ["development", "production"] # == Current user method/variable # The method/variable that contains the logged in user in your controllers. # If it is `current_user` or `@user`, then you can ignore this # <%- if @current_user -%> config.user.current = Proc.new { <%= @current_user %> } <%- else -%> # config.user.current = Proc.new { current_user } # config.user.current = [Proc.new { current_user }] <%- end -%> # == Include for logged out Users # If set to true, include the Intercom messenger on all pages, regardless of whether # The user model class (set below) is present. Only available for Apps on the Acquire plan. <%- if @include_for_logged_out_users -%> config.include_for_logged_out_users = true <%- else -%> # config.include_for_logged_out_users = true <%- end -%> # == User model class # The class which defines your user model # # config.user.model = Proc.new { User } # == Lead/custom attributes for non-signed up users # Pass additional attributes to for potential leads or # non-signed up users as an an array. # Any attribute contained in config.user.lead_attributes can be used # as custom attribute in the application. # config.user.lead_attributes = %w(ref_data utm_source) # == Exclude users # A Proc that given a user returns true if the user should be excluded # from imports and Javascript inclusion, false otherwise. # # config.user.exclude_if = Proc.new { |user| user.deleted? } # == User Custom Data # A hash of additional data you wish to send about your users. # You can provide either a method name which will be sent to the current # user object, or a Proc which will be passed the current user. # # config.user.custom_data = { # :plan => Proc.new { |current_user| current_user.plan.name }, # :favorite_color => :favorite_color # } # == Current company method/variable # The method/variable that contains the current company for the current user, # in your controllers. 'Companies' are generic groupings of users, so this # could be a company, app or group. # # config.company.current = Proc.new { current_company } # # Or if you are using devise you can just use the following config # # config.company.current = Proc.new { current_user.company } # == Exclude company # A Proc that given a company returns true if the company should be excluded # from imports and Javascript inclusion, false otherwise. # # config.company.exclude_if = Proc.new { |app| app.subdomain == 'demo' } # == Company Custom Data # A hash of additional data you wish to send about a company. # This works the same as User custom data above. # # config.company.custom_data = { # :number_of_messages => Proc.new { |app| app.messages.count }, # :is_interesting => :is_interesting? # } # == Company Plan name # This is the name of the plan a company is currently paying (or not paying) for. # e.g. Messaging, Free, Pro, etc. # # config.company.plan = Proc.new { |current_company| current_company.plan.name } # == Company Monthly Spend # This is the amount the company spends each month on your app. If your company # has a plan, it will set the 'total value' of that plan appropriately. # # config.company.monthly_spend = Proc.new { |current_company| current_company.plan.price } # config.company.monthly_spend = Proc.new { |current_company| (current_company.plan.price - current_company.subscription.discount) } # == Custom Style # By default, Intercom will add a button that opens the messenger to # the page. If you'd like to use your own link to open the messenger, # uncomment this line and clicks on any element with id 'Intercom' will # open the messenger. # # config.inbox.style = :custom # # If you'd like to use your own link activator CSS selector # uncomment this line and clicks on any element that matches the query will # open the messenger # config.inbox.custom_activator = '.intercom' # # If you'd like to hide default launcher button uncomment this line # config.hide_default_launcher = true end