Class: SubjectInteraction

Inherits:
ApplicationRecord
  • Object
show all
Defined in:
api/app/models/subject_interaction.rb

Overview

Used to track the process of a single subject trying out for a campaign

A subject during an interaction

  • learns about a campaign's objectives via configurable campaign scripts
  • (optionally) screening
    • rejection
  • (optionally) scheduling
    • schedule conflict
    • confirmation

Interaction Types

That process can be in two distinct interaction_type

  • a recruiter reaching out over the phone and reading from a script
  • a web interaction through our portal

Prioritize Screening

Provides a way to skip company-level requirements in the subject portal.

  • dont (default) - do not skip any reqs
  • consent_only - only enforce consent requirements (skipping profile confirmation, required onboardings)
  • skip_everything - only screen for the campaign

Outcomes

  • no_outcome - a "pending" interaction or abandonment by the subject
  • wrong_number
  • fax_machine
  • left_message
  • no_answer
  • scheduled - qualified and scheduled into a session
  • terminated
  • declined
  • language_barrier
  • disconnected
  • busy
  • asked_to_call_back
  • schedule_conflict - qualified, but timing issues
  • qualified_declined - qualified, but said no thank you
  • qualified_accepted - qualified, but in a campaign with scheduling disabled (on the campaign details page)
  • rejected
  • alternate
  • unscheduled - a system outcome that happens whenever a session moves

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.campaign_final_outcomesObject

.campaign_qualification_outcomesObject

.no_contact_outcomesObject

.outcomes_with_namesObject

.scheduled_or_alternate_outcomesObject

.scheduled_outcomesObject

.sync_immediate_views(recruiting_campaign) ⇒ Object

Instance Method Details

#portal_urlObject

#progressObject

#recruiting_urlObject

#redirect_url_with_outcomeObject