Sha256: f6716e902adca173a929b2b4a98c7be79251c9495ba86fe6cf3282318f52162b

Contents?: true

Size: 873 Bytes

Versions: 8

Compression:

Stored size: 873 Bytes

Contents

require 'intercom/service/base_service'
require 'intercom/api_operations/load'
require 'intercom/api_operations/find'
require 'intercom/api_operations/save'
require 'intercom/api_operations/delete'

module Intercom
  module Service
    class Visitor < BaseService
      include ApiOperations::Load
      include ApiOperations::Find
      include ApiOperations::Save
      include ApiOperations::Delete

      def collection_class
        Intercom::Visitor
      end

      def convert(visitor, contact = false)
        req = { visitor: { user_id: visitor.user_id } }
        if contact
          req[:user] = identity_hash(contact)
          req[:type] = 'user'
        else
          req[:type] = 'lead'
        end
        Intercom::Contact.new.from_response(
          @client.post(
            "/visitors/convert", req
          )
        )
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
intercom-4.2.1 lib/intercom/service/visitor.rb
intercom-4.2.0 lib/intercom/service/visitor.rb
intercom-4.1.3 lib/intercom/service/visitor.rb
intercom-4.1.2 lib/intercom/service/visitor.rb
intercom-4.1.1 lib/intercom/service/visitor.rb
intercom-4.1.0 lib/intercom/service/visitor.rb
intercom-4.0.1 lib/intercom/service/visitor.rb
intercom-4.0.0 lib/intercom/service/visitor.rb