See llms.txt for all machine-readable content.

Back to Templates

Run an AI phone receptionist with CallNode and OpenAI

Last update

Last update 12 hours ago

Categories

Share


Quick overview

This workflow turns a CallNode phone number into an AI receptionist by sending live call transcripts to OpenAI and returning short spoken replies, with optional call transfer and automatic hangup handling.

How it works

  1. Receives CallNode conversational webhook events for a live phone call (speech transcripts or keypad presses) via an authenticated webhook.
  2. Builds a caller message from the transcript or DTMF input and passes it to an OpenAI-powered agent with business and time context.
  3. Uses per-call memory keyed by the CallNode callId so the assistant keeps conversational context across turns.
  4. Converts the agent output into CallNode reply fields, stripping control tags and setting hangup or transfer flags when the AI includes [hangup] or [transfer].
  5. Responds to CallNode with replyText (and optional transfer destination) so CallNode speaks the reply, ends the call, or transfers to a human.

Setup

  1. Create a CallNode account, purchase a phone number, and configure the number to send conversational webhook events to this workflow’s Production webhook URL.
  2. Create an n8n Header Auth credential that matches the CallNode custom header name/value (for example, X-CallNode-Secret) and select it on the webhook trigger.
  3. Add an OpenAI API credential for the OpenAI Chat Model node and choose the model you want to use.
  4. Update the Settings values (businessName, timezone, and optionally transferNumber in +1XXXXXXXXXX format) and customize the “ABOUT YOUR BUSINESS” section in the system message.

Requirements

  • To test, import each file into n8n and follow its "Start here" note. The outbound one needs a Live API key, because a Test key never reaches the workflow.