openclaw - 💡(How to fix) Fix voice-call: completed inbound calls persist transcript but do not notify Telegram/user [1 comments, 2 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
openclaw/openclaw#77957Fetched 2026-05-06 06:18:49
View on GitHub
Comments
1
Participants
2
Timeline
3
Reactions
2
Timeline (top)
commented ×1mentioned ×1subscribed ×1

Completed inbound voice calls are recorded in voice-calls/calls.jsonl, but no visible notification/summary is delivered to the user over Telegram or the originating/main session.

This appears to be the same product gap described in #29164 (voice-call: add postCall hook to notify originating session with transcript summary), but #29164 is locked and closed. Reproduced on the current local release below.

Root Cause

A temporary external scanner reads calls.jsonl, dedupes completed transcript-bearing calls by providerCallId, and sends summaries via openclaw message send --channel telegram. This works operationally but is brittle because it lives outside the plugin lifecycle and may break on storage/schema/CLI changes.

Fix Action

Fix / Workaround

Local workaround used

RAW_BUFFERClick to expand / collapse

Summary

Completed inbound voice calls are recorded in voice-calls/calls.jsonl, but no visible notification/summary is delivered to the user over Telegram or the originating/main session.

This appears to be the same product gap described in #29164 (voice-call: add postCall hook to notify originating session with transcript summary), but #29164 is locked and closed. Reproduced on the current local release below.

Environment

  • OpenClaw: 2026.5.4
  • OS: macOS 26.4.1 arm64
  • Provider: Twilio
  • Mode: realtime voice via OpenAI
  • Telegram channel: enabled and independently able to send messages

openclaw voicecall setup --json passes:

  • plugin enabled
  • provider configured: twilio
  • provider credentials/config complete
  • public webhook configured
  • realtime voice enabled

Reproduction

  1. Configure plugins.entries.voice-call with Twilio, inbound calls, and realtime mode.
  2. Place an inbound call to the OpenClaw/Twilio number.
  3. Complete a short conversation.
  4. Inspect /Users/<user>/.openclaw/voice-calls/calls.jsonl.
  5. Observe the completed call record contains transcript and state: completed.
  6. Observe no Telegram message, originating session message, main session message, or post-call summary is delivered to the user.

Observed local evidence

Two successful inbound calls were made:

  • Call from the user's own phone completed with 7 transcript lines and explicit spoken request to summarize the call into Telegram.
  • Call from another caller completed with 7 transcript lines including a scheduling request.

Both calls were present in calls.jsonl with provider call ids and transcripts. Neither produced a Telegram notification. openclaw voicecall status --json showed no active calls after completion, which is expected; the missing part is post-call delivery.

Expected behavior

A completed call with a transcript should produce one of:

  1. A visible delivered summary to the originating session/user.
  2. A configured post-call delivery to Telegram/other channel.
  3. A visible delivery failure if notification cannot be delivered.

Silent persistence to calls.jsonl is not enough for phone-secretary/scheduling use cases.

Suggested fixes

Any of these would address the gap:

  • plugins.entries.voice-call.config.postCall.notifySession: true
  • postCall.delivery / postCall.channel / postCall.to for explicit channel delivery
  • first-class internal hook event such as voice-call:completed carrying the call record/transcript
  • plugin-side sessions_send / message delivery using the stored CallRecord sessionKey

Local workaround used

A temporary external scanner reads calls.jsonl, dedupes completed transcript-bearing calls by providerCallId, and sends summaries via openclaw message send --channel telegram. This works operationally but is brittle because it lives outside the plugin lifecycle and may break on storage/schema/CLI changes.

extent analysis

TL;DR

Enable post-call notification by setting plugins.entries.voice-call.config.postCall.notifySession to true or configure explicit channel delivery using postCall.delivery, postCall.channel, and postCall.to.

Guidance

  • Review the openclaw voicecall setup --json output to ensure that the postCall configuration is correctly set up.
  • Consider adding a voice-call:completed hook event to notify the originating session with the transcript summary.
  • Verify that the Telegram channel is properly configured and enabled for receiving messages.
  • Test the post-call notification by making an inbound call and checking for the delivery of the transcript summary.

Example

No code snippet is provided as the issue does not require a specific code change, but rather a configuration adjustment.

Notes

The suggested fixes and local workaround imply that the issue is related to the missing post-call notification feature. However, the exact implementation details are not provided, and the solution may vary depending on the specific requirements and constraints of the OpenClaw system.

Recommendation

Apply workaround by setting plugins.entries.voice-call.config.postCall.notifySession to true or configuring explicit channel delivery, as this is a more straightforward and less invasive solution compared to upgrading to a potentially non-existent fixed version.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

FAQ

Expected behavior

A completed call with a transcript should produce one of:

  1. A visible delivered summary to the originating session/user.
  2. A configured post-call delivery to Telegram/other channel.
  3. A visible delivery failure if notification cannot be delivered.

Silent persistence to calls.jsonl is not enough for phone-secretary/scheduling use cases.

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

openclaw - 💡(How to fix) Fix voice-call: completed inbound calls persist transcript but do not notify Telegram/user [1 comments, 2 participants]