← Complete project index

Voice & Telecom / Built

FIMI VoIP Protocol Demo

Small end-to-end protocol implementation using custom TCP signaling, SDP offer/answer, direct RTP media and RTCP receiver reports.

STATUSBuilt
AREAVoice & Telecom
STACK6 documented technologies
INTEGRATIONS1 connected / bounded services
01

OVERVIEW

What I built.

Small end-to-end protocol implementation using custom TCP signaling, SDP offer/answer, direct RTP media and RTCP receiver reports.

01

Built a small educational call stack without SIP to expose the underlying concepts directly.

02

Implemented custom JSON/TCP signaling, SDP offer/answer, RTP media and minimal RTCP receiver reports.

03

Kept media peer-to-peer instead of proxying it through the signaling server.

02

SYSTEM ARCHITECTURE

How the system is divided.

01
Architecture boundary

Alice/Bob -> TCP signaling server for REGISTER/CALL/RINGING/ACCEPT/HANGUP.

02
Architecture boundary

SDP exchanges each endpoint's media address and ports.

03
Architecture boundary

RTP/RTCP flow directly over UDP between endpoints after call acceptance.

03

NETWORK / DATA FLOW

What talks to what.

04

TECHNOLOGY STACK

The technical surface.

01Python
02SDP
03RTP
04RTCP
05TCP
06UDP
05

IMPLEMENTATION

How it works in practice.

  1. 01

    Alice/Bob -> TCP signaling server for REGISTER/CALL/RINGING/ACCEPT/HANGUP.

  2. 02

    SDP exchanges each endpoint's media address and ports.

  3. 03

    RTP/RTCP flow directly over UDP between endpoints after call acceptance.

06

TESTING & VALIDATION

How I know it works.

TEST 01

Three-process local demo

TEST 02

REGISTER/CALL/RINGING/ACCEPT/HANGUP flow

TEST 03

SDP port exchange

TEST 04

Direct RTP packet exchange

TEST 05

Minimal RTCP Receiver Report generation

07

EXTERNAL SERVICES & DEPENDENCIES

What sits outside the core.

COREFIMI VoIP Protocol Demo
08

ENGINEERING EVIDENCE

Artifacts behind the claims.

01signal_server.py
02endpoint.py
03SDP example
04RTP/RTCP port layout
05Expected terminal flow
09

BOUNDARIES / CONSTRAINTS

What the project does not pretend to solve.

Intentionally not SIP

Designed as a learning/protocol lab

Minimal RTCP rather than a complete production implementation

10

RESULT / CURRENT STATE

What this produced.

A compact protocol lab that makes the separation between signaling, session description and media transport explicit.