32 lines
1.6 KiB
Markdown
32 lines
1.6 KiB
Markdown
# Changelog
|
|
|
|
All notable changes to `blax-software/laravel-webrtc` are documented here. This
|
|
project adheres to [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) and
|
|
Blax Software's backward-compatibility guarantee.
|
|
|
|
## [Unreleased]
|
|
|
|
### Added
|
|
|
|
- `WebRtcServiceProvider` + `config/webrtc.php` + the `webrtc:serve` command
|
|
(boots signaling on the shared `blax-software/reactphp-kernel`).
|
|
- `Contracts\MediaEngine` — the pluggable media backend
|
|
(`offer`/`addIceCandidate`/`startRecording`/`stopRecording`/`connectPeers`/`bridge`/`close`).
|
|
- `Media\NullMediaEngine` — signaling-only engine for dev/tests.
|
|
- `Media\Str0mMediaEngine` — seam for the Rust media core (str0m via ext-php-rs);
|
|
throws until the `blax_webrtc` extension is built (see `rust/`).
|
|
- `Signaling\SignalingHandler` — transport-agnostic router from a signaling
|
|
message to the media engine.
|
|
- `Server\SignalingServer` — a minimal kernel-attached (newline-JSON) signaling
|
|
transport; browsers ride the `laravel-websockets` WS transport into the same
|
|
handler.
|
|
- `rust/` — the `blax_webrtc` crate scaffold (str0m + ext-php-rs) documenting the
|
|
media plan.
|
|
- `Rooms\Room` + `Rooms\RoomManager` and `join`/`leave` signaling for
|
|
party-to-party / group calls: a new joiner is auto-meshed with everyone already
|
|
in the room; `close` also leaves. Empty rooms are dropped.
|
|
- `SignalingServer::address()` — the bound listen address (for integration).
|
|
- A real socket round-trip test (offer→answer over a live TCP connection on the
|
|
kernel loop), plus RoomManager + join/leave coverage. Suite: 17 tests / 42
|
|
assertions.
|