> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tedro.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Live Chat Nodes

> Send messages and escalate conversations from your website live chat widget.

# Live Chat Nodes

Live Chat nodes handle communication with visitors on your website widget. Use them to send automated responses and escalate conversations to human agents. These nodes work exclusively with the **Live Chat** channel.

<Note>
  Live Chat has no messaging window restrictions. Unlike WhatsApp, you can send messages to visitors at any time during an active session.
</Note>

***

## lc.send\_message

**Send a message to the visitor via the Live Chat widget.**

This node sends a text message back through the live chat widget on your website. It supports dynamic variables from the workflow context for personalized responses.

### Configuration

| Option | Type   | Required | Description                                                                            |
| ------ | ------ | -------- | -------------------------------------------------------------------------------------- |
| `body` | string | Yes      | Message text. Supports context variables like `{{contact.name}}` and any custom fields |

### Variable Substitution

Use double curly braces to inject dynamic values:

```
Hi {{contact.name}}, thanks for visiting!
Let me help you with {{conversation.fields.topic}}.
```

Available variables include:

* `{{contact.name}}` -- The visitor's name (from pre-chat form or set via `state.set_field`)
* `{{contact.email}}` -- The visitor's email (if collected)
* `{{contact.fields.*}}` -- Any custom fields set on the contact
* `{{conversation.fields.*}}` -- Any custom fields set on the conversation

### Outputs

| Output      | Type   | Description                                             |
| ----------- | ------ | ------------------------------------------------------- |
| `messageId` | string | The internal message ID                                 |
| `status`    | string | Delivery status (`sent`, `delivered`, `read`, `failed`) |

### Connections

* **Inputs**: Single input handle from the previous node
* **Outputs**: Single output handle for chaining additional actions

### Example Use Case

After an AI Agent node generates a support answer for a website visitor, connect it to a Live Chat Send Message node to deliver the response. The visitor sees the reply instantly in the chat widget.

<Note>
  Live Chat supports messages up to **10,000 characters** with rich text formatting. This is significantly more than WhatsApp (4,096) or Messenger (2,000).
</Note>

***

## lc.handoff

**Escalate the live chat conversation to a human agent.**

The Handoff node moves the live chat conversation from automated processing to the human agent inbox. The conversation appears in the **Inbox** with a "handoff" status and a **Live Chat** channel indicator, where a team member can respond directly.

### Configuration

| Option   | Type   | Required | Description                                                                        |
| -------- | ------ | -------- | ---------------------------------------------------------------------------------- |
| `reason` | string | No       | Optional note explaining why the handoff occurred (visible to agents in the inbox) |

### Outputs

| Output           | Type   | Description                                               |
| ---------------- | ------ | --------------------------------------------------------- |
| `handoff.status` | string | Always `handoff` -- the conversation is now in agent mode |

### Connections

* **Inputs**: Single input handle from the previous node
* **Outputs**: Single output handle (typically connected to a `logic.end` node or left unconnected)

### Example Use Case

When a website visitor asks to speak with a human, or the AI Agent detects a complex issue it cannot resolve, route to a Live Chat Handoff node. The conversation appears in the Inbox for an agent to pick up -- the visitor sees a "connecting you to an agent" message in the widget.
