Skip to content

[core] add Heartbeat-Interval value in send_heartbeat#3003

Open
ticpu wants to merge 1 commit intosignalwire:masterfrom
ticpu:add-heartbeat-interval
Open

[core] add Heartbeat-Interval value in send_heartbeat#3003
ticpu wants to merge 1 commit intosignalwire:masterfrom
ticpu:add-heartbeat-interval

Conversation

@ticpu
Copy link
Copy Markdown

@ticpu ticpu commented Apr 10, 2026

Summary

  • Adds the Heartbeat-Interval header to the HEARTBEAT event fired by send_heartbeat(), exposing runtime.event_heartbeat_interval (the value configured via event-heartbeat-interval in switch.conf) directly in the event.

This makes heartbeat-driven liveness detection self-describing: a consumer receiving the event knows exactly how long to wait before considering FreeSWITCH unresponsive, without having to read the config separately or hard-code the 20-second default.

Already in production use on our side and consumed by freeswitch-esl-tokio as a liveness signal — see the HeartbeatInterval header definition and the liveness detection rationale.

ticpu added a commit to ticpu/freeswitch-esl-tokio that referenced this pull request Apr 10, 2026
EventHeader::HeartbeatInterval was added in commit 8859cb1 based on a
local CAUCA fork that emits the header in send_heartbeat(). The matching
upstream change is open as signalwire/freeswitch#3003 but not yet
merged into signalwire/master.

The enum-sync hook downloads C source from signalwire/master, finds the
header in the Rust enum but not in send_heartbeat(), and exits non-zero.
CI then sets C_SOURCE_AVAILABLE=false and skips badge updates.

Add a pending-upstream allowlist that injects Heartbeat-Interval into
the reference pool, so it traces to a known PR rather than appearing as
an untraced extra. Remove the entry once #3003 merges.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant