Supafone Labs · Documentation
Documentation menu

Outbound IVR call mode#

Supafone Labs 0.5.0 gives any outbound hosted agent or campaign an opt-in phone-tree navigation contract without exposing private detection or runtime implementation.

ts
await sf.labs.agents.createOutbound({
  name: "Benefits verification",
  outboundCallMode: {
    enabled: true,
    maxDurationSeconds: 180,
    maxKeypresses: 12,
  },
});
python
sf.labs.agents.create_outbound({
    "name": "Benefits verification",
    "outbound_call_mode": {
        "enabled": True,
        "max_duration_seconds": 180,
        "max_keypresses": 12,
    },
})

The normal mission remains active until the runtime detects an IVR. A capable adapter can then execute bounded DTMF navigation, retain state, detect a human, and resume the mission. Transition metadata can explain when navigation started, ended, or stopped for safety.

LimitDefaultAllowed
IVR duration180 seconds30–900
Keypresses121–64
Repeated menu31–10
No progress30 seconds5–120

Supafone-managed, Twilio, Telnyx, Plivo, SignalWire, and SIP/BYOC share one public contract. Readiness never comes from a provider name: adapters must positively report required capabilities, and unknown or unsupported capability states fail closed.

View raw Markdown