enes (ekkovoice)
01/15/2026, 2:25 PMAI Evy
01/15/2026, 2:25 PMAI Evy
01/15/2026, 2:26 PM{{current_time}} that includes the current day of the week. [(1) ]()
The format is: "Thursday, March 28, 2024 at 11:46:04 PM PST"
You can also use timezone-specific variants like {{current_time_America/New_York}}.
You can reference {{current_time}} directly in your System Prompt to enable the LLM to determine the day and apply your routing logic.
---
2. Inbound Webhook for Dynamic Variables
If you prefer to calculate the day server-side and pass a custom variable like is_office_open, you can use the Inbound Call Webhook. [(2) ]()
Your webhook receives a POST with the inbound call details, and you respond with dynamic_variables under the call_inbound key.
Example webhook response:
json
{
"call_inbound": {
"dynamic_variables": {
"is_office_open": "false",
"current_day": "Wednesday"
}
}
}
Your server-side logic would determine the day and set is_office_open accordingly before returning this response.
---
Prompt Tip:
In your System Prompt, you can then include logic like:
> "If {{is_office_open}} is false, do not use the transfer_call tool. Instead, offer to schedule a callback."
Or if using the built-in variable:
> "Check {{current_time}} for the current day. If it is Wednesday or Friday, do not transfer—offer a callback instead."
---AI Evy
01/15/2026, 2:26 PMAI Evy
01/15/2026, 2:26 PMenes (ekkovoice)
01/15/2026, 2:48 PMAI Evy
01/15/2026, 2:48 PMAI Evy
01/15/2026, 2:48 PM{{current_time}} system variable directly in your prompt. [(1) ]()
How it works:
The {{current_time}} variable is a default system variable that Retell automatically provides—it outputs the current time including the day of the week.
Example output: "Thursday, March 28, 2024 at 11:46:04 PM PST"
You can also specify a timezone:
- {{current_time_America/New_York}} for Eastern time
- {{current_time_Australia/Sydney}} for Sydney time
To verify the agent is using it correctly:
1. Include it explicitly in your prompt, for example:
> "The current time is {{current_time}}. If the day is Wednesday or Friday, do not use the transfer_call tool—offer a callback instead."
2. Test in the LLM Playground before deploying—you can see how the variable resolves and how the agent responds to different scenarios.
3. Review call transcripts after test calls to confirm the agent referenced the correct day/time in its decision-making.
The variable is evaluated at runtime, so the agent will always have access to the real current time during the conversation.
---AI Evy
01/15/2026, 2:48 PMAI Evy
01/15/2026, 2:49 PMenes (ekkovoice)
01/16/2026, 9:34 AM{{current_time_Europe/Amsterdam}} contains "Monday"
- {{current_time_Europe/Amsterdam}} contains "Tuesday"
- {{current_time_Europe/Amsterdam}} contains "Thursday"
→ destination: TRANSFER_CALL_TO_HUMAN
Transition 2 (operator: OR):
- {{current_time_Europe/Amsterdam}} contains "Wednesday"
- {{current_time_Europe/Amsterdam}} contains "Friday"
→ destination: CALLBACK_WEEKDAY_CLOSED
Transition 3 (operator: OR):
- {{current_time_Europe/Amsterdam}} contains "Saturday"
- {{current_time_Europe/Amsterdam}} contains "Sunday"
→ destination: CALLBACK_OUTSIDE_HOURS
Problem:
When testing today (Friday, January 17, 2025), the agent incorrectly routes to TRANSFER_CALL_TO_HUMAN instead of CALLBACK_WEEKDAY_CLOSED.
What I've verified:
- Removed all default_dynamic_variables
- HUMAN_TRANSFER_NODE instruction: "Say NOTHING - wait for transition"
- Transitions are ordered 1→2→3 as shown above
Questions:
1. Is contains the correct operator for matching day names in {{current_time_Europe/Amsterdam}}?
2. How can I debug the actual runtime value of {{current_time_Europe/Amsterdam}} during a call?
3. Why would Friday match Transition 1 instead of Transition 2?AI Evy
01/16/2026, 9:34 AMAI Evy
01/16/2026, 9:34 AMAI Evy
01/16/2026, 9:34 AMCONTAINS operator performs string comparisons.
2. How to debug the runtime value:
You can view node transitions in the call transcript within the History tab—it shows the node names the agent transitions from and to.
Additionally, you can track how a past call transitioned through each node in the conversation flow using "View Call History in LLM Playground."
[(2) ]()
3. Why Friday might match Transition 1:
The documentation states that all equation conditions are evaluated from top to bottom, and the agent travels on the first condition that evaluates to true.
[(1) ]()
The issue is likely the order of evaluation within your OR conditions. Since Transition 1 is evaluated first and contains multiple OR conditions, if any of those conditions unexpectedly evaluates to true, it will take that path before ever checking Transition 2.
Potential causes:
- There may be an issue with how the {{current_time_Europe/Amsterdam}} variable is being resolved at runtime
- Community users have reported similar issues where equation-based transitions with dynamic variables don't evaluate as expected
[(3) ]()
Recommended debugging steps:
1. Check the call transcript in the History tab to see which nodes were traversed
[(1) ]()
2. Consider using the LLM Playground to test how variables resolve
[(4) ]()
3. Try adding a conversation node before the split that outputs the value of {{current_time_Europe/Amsterdam}} to verify what the agent actually sees
Alternative approach:
If equation-based transitions continue to be unreliaAI Evy
01/16/2026, 9:34 AMUser said something about booking a meeting
Or calculate the day server-side via an Inbound Webhook and pass a simpler boolean like is_office_open as a dynamic variable, then use:
{{is_office_open}} == "true"
---AI Evy
01/16/2026, 9:34 AMAI Evy
01/16/2026, 9:34 AMenes (ekkovoice)
01/16/2026, 10:49 AM{"dynamic_variables": {"is_office_open": "true"}} (or `receptie_closed`/`is_weekend`)
- Welcome Node → edge to HUMAN_TRANSFER_NODE (when user asks to transfer)
- HUMAN_TRANSFER_NODE has 3 equation transitions:
- {{is_office_open}} == "true" → TRANSFER node
- {{receptie_closed}} == "true" → CALLBACK node
- {{is_weekend}} == "true" → OUTSIDE_HOURS node
- HUMAN_TRANSFER_NODE instruction: "Say NOTHING - silent checkpoint, wait for transition"
Problem:
Agent says: "(Transition naar HUMAN_TRANSFER_NODE)" instead of remaining silent.
Tried:
✅ Verified webhook JSON is correct
✅ Used equation-based (not prompt) transitions
✅ Added "NEVER use transfer_call tool" to global prompt
✅ Changed instruction from English to Dutch
❌ Agent still announces the instruction text
Questions:
1. Why does the agent speak the instruction instead of following it silently?
2. Is there a special format for silent routing nodes in Conversation Flow?
3. Could Retell be parsing the webhook response incorrectly?
4. Should we use a function node instead of conversation node for silent routing?
The webhook works (browser test confirmed), but dynamic variables seem not evaluated during transitions.AI Evy
01/16/2026, 10:49 AMAI Evy
01/16/2026, 10:49 AMHUMAN_TRANSFER_NODE. When this setting is enabled, the transition will only have one edge you can connect, and when the agent is done (in this case, immediately since there's nothing to say) , it will transition to the next node via that specific edge.
However, note that Skip Response only allows one outgoing edge, which conflicts with your need for 3 conditional transitions.
Alternative approach: Restructure your flow
Since you need multiple equation-based transitions, consider:
1. Use a Function Node instead for silent routing logic—Function Nodes can execute without the agent speaking during execution. [(2) ]()
2. Pre-evaluate the routing before reaching this node. Have your Make.com webhook return a single variable like route_destination with values "transfer", "callback", or "outside_hours", then use separate paths earlier in your flow.
Regarding dynamic variable evaluation:
For equation conditions, you can only use variables that are passed in as dynamic variables.AI Evy
01/16/2026, 10:49 AM{{is_office_open}} to confirm the variable is being set correctly
- Consider using the LLM Playground to test variable resolution [(2) ]()AI Evy
01/16/2026, 10:49 AMAI Evy
01/16/2026, 10:49 AM