Repolode
sipcapture

sipcapture/homer

Open-source SIP/VoIP and RTC packet capture server that ingests HEP packets into a DuckDB/Parquet data lake for search and call-flow analysis.

Stars
2,032
Forks
295
Open issues
1
Last commit
3 hours ago

What is it?

Homer is a telecom observability server for SIP, VoIP and real-time communication traffic. It receives HEP (Homer Encapsulation Protocol) packets from capture agents over UDP, TCP, TLS, HTTP or HTTPS, stores them in a DuckLake data lake built on Parquet files with a SQLite or object-storage catalog, and exposes them through a REST API, a built-in web UI, and an Arrow FlightSQL endpoint.

The project is written in Go and ships as a single binary with subcommands for searching from the command line, an interactive DuckLake SQL shell, catalog backup and restore, and an interactive config wizard. It can run all modules in one process or split them into writer, node and coordinator roles for scaling.

Optional modules add a VQRTCP collector for SIP QoS reports and a SIPREC signaling recorder. The server also provides an MCP interface for LLM and agent tooling.

Key features

  • 01Receives HEP packets over UDP, TCP, TLS, HTTP and HTTPS
  • 02Stores data as Parquet files in a DuckLake catalog on local or object storage
  • 03Provides REST API, built-in web UI and Arrow FlightSQL query access
  • 04Includes command-line search with call-flow, CSV, JSON and pcap output
  • 05Offers optional VQRTCP SIP QoS collection and SIPREC signaling recording
  • 06Supports MCP for LLM and agent integration

Use cases

  • Troubleshooting SIP call failures by viewing call flows across a VoIP network
  • Monitoring RTP and SIP quality reports from session border controllers
  • Recording and analyzing SIPREC sessions from media gateways
  • Querying captured telecom traffic with SQL or Grafana through FlightSQL

Quick start

  1. 1

    Download a release from the releases page and install the homer package for your OS and architecture

  2. 2

    Build the project locally

    make
  3. 3

    Run the server with your config file

    ./homer --config-path /etc/homer/homer.json

Things to know

  • Licensed under AGPL-3.0, a copyleft license that requires source disclosure for networked modifications.
  • Requires writing a JSON config file that sets up ingest, storage, node and coordinator modules before it runs.
  • The README lists support only for Linux and macOS on x64 and ARM64.

In collections

Topics

FAQ

What is homer?
Open-source SIP/VoIP and RTC packet capture server that ingests HEP packets into a DuckDB/Parquet data lake for search and call-flow analysis. Homer is a telecom observability server for SIP, VoIP and real-time communication traffic. It receives HEP (Homer Encapsulation Protocol) packets from capture agents over UDP, TCP, TLS, HTTP or HTTPS, stores them in a DuckLake data lake built on Parquet files with a SQLite or object-storage catalog, and exposes them through a REST API, a built-in web UI, and an Arrow FlightSQL endpoint.
Is homer free to use? What license does it have?
homer is open source under the Other license. Check the license terms before using it in commercial products.
Is homer still maintained?
Actively maintained. The last commit to homer was on Nov 7, 2026.
What can I use homer for?
Troubleshooting SIP call failures by viewing call flows across a VoIP network Monitoring RTP and SIP quality reports from session border controllers Recording and analyzing SIPREC sessions from media gateways Querying captured telecom traffic with SQL or Grafana through FlightSQL
How do I install homer?
Download a release from the releases page and install the homer package for your OS and architecture Build the project locally: make Run the server with your config file: ./homer --config-path /etc/homer/homer.json
Where can I get homer?
The source code and installation instructions are on GitHub: https://github.com/sipcapture/homer

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects