Proactive Engagement Triggers
Automatically engage visitors based on their behavior.
Overview
Proactive triggers send messages or take actions when specific conditions are met:
Trigger: Visitor on pricing page for 30 seconds
Action: Show message "Have questions about our plans?"
Trigger Types
Time-Based Triggers
Page Time
Trigger after visitor spends time on page:
| Setting | Example |
|---|---|
| Seconds on Page | 30 seconds |
| Minimum Pages | 2 pages |
Rule: On page for 30+ seconds
Message: "Need any help?"
Session Time
Total time on site:
Rule: Session > 5 minutes
Action: Open widget with greeting
Behavior Triggers
Scroll Depth
Trigger based on scroll position:
Rule: Scrolled to 75% of page
Message: "Enjoying our content?"
Mouse Inactivity
When mouse stops moving:
Rule: Mouse idle for 60 seconds
Action: Subtle launcher animation
Navigation Triggers
Page URL
Trigger on specific pages:
Rule: URL contains "/pricing"
Message: "Questions about pricing?"
Exit Intent
Detect when visitor is leaving:
Rule: Mouse moves toward browser close
Message: "Wait! Here's a 10% discount..."
Exit intent signals:
- Mouse moves to browser UI
- Tab switching detected
- Back button pressed
Event Triggers
Custom Events
Trigger on JavaScript events:
// Your code triggers:
Fyncall.track('viewed_demo', { product: 'Pro' });
// Trigger rule:
Rule: Event 'viewed_demo' fired
Message: "Ready to start your free trial?"
Error Events
Help when things go wrong:
Rule: JavaScript error on page
Message: "Having trouble? We can help!"
Trigger Conditions
Combining Conditions
Use AND/OR logic:
IF (page = pricing) AND (time > 30s) AND (scroll > 50%)
THEN show message
Visitor Filters
Apply to specific visitors:
| Filter | Example |
|---|---|
| New vs Returning | New visitors only |
| Country | US visitors |
| Device | Mobile only |
| Referrer | From Google |
| Identified | Anonymous only |
Frequency Limits
Prevent trigger spam:
Max triggers per session: 1
Cooldown between triggers: 24 hours
Don't trigger if already chatted: Yes
Actions
Message Actions
Greeting Message
Show a proactive greeting:
Action: Send message
Message: "Hi there! Can I help you find something?"
From: AI Agent
Launcher Teaser
Small message near launcher:
┌────────────────────┐
│ Need help? 💬 │
└────────────────────┘
[●]
Widget Actions
| Action | Description |
|---|---|
| Open Widget | Open chat window |
| Show Launcher | Reveal hidden launcher |
| Animate Launcher | Draw attention |
| Queue Message | Pre-fill input |
Configuration
Create Trigger
Go to Settings → Widget → Proactive Engagement:
- Click "Add Trigger"
- Define conditions
- Set action
- Configure message
- Set frequency limits
- Enable trigger
Trigger Priority
When multiple triggers could fire:
| Priority | Behavior |
|---|---|
| First Match | First trigger wins |
| All Match | All triggers fire (respecting cooldowns) |
| Priority Order | Highest priority wins |
Testing
Preview Mode
Test triggers without affecting real visitors:
1. Enable preview mode
2. Browse your site
3. See which triggers fire
4. Adjust as needed
Debug Mode
See trigger evaluation in console:
Fyncall.debug(true);
// Console: [Fyncall] Trigger 'pricing-help' conditions met
Analytics
Track trigger performance:
| Metric | Description |
|---|---|
| Impressions | Times trigger fired |
| Engagement Rate | % that led to conversation |
| Conversion Rate | % that converted |
Best Practices
Don't Be Annoying
- Limit frequency
- Respect "not now" signals
- Don't interrupt typing
Be Helpful
- Trigger at relevant moments
- Offer genuine value
- Match context
Test and Iterate
- A/B test messages
- Monitor engagement
- Remove low performers
Examples
Pricing Page Help
Trigger: Pricing page + 30 seconds
Message: "Questions about which plan is right for you?"
Button: "Yes, help me choose"
Frequency: Once per session
Cart Abandonment
Trigger: Cart page + exit intent + cart value > $50
Message: "Leaving? Complete your order now and get free shipping!"
Action: Open widget + show discount code
Documentation Help
Trigger: Docs page + scrolled 80% + 2+ minutes
Message: "Need more help? Talk to our support team."