ReTeamSpeak
25af2cb295
feat: implement voice packet parsing, Opus codec, jitter buffer, and cpal playback
...
Voice packet parsing (tscore/protocol/voice.rs):
- VoicePacket and WhisperPacket types with parse/serialize
- Codec type, sample rate, channel count detection
- Tests for roundtrip and error cases
Opus codec (tsaudio/codec.rs):
- Real Opus encoder/decoder with opus crate (behind feature gate)
- 48kHz mono/stereo support
- Encode/decode with proper error handling
Jitter buffer (tsaudio/buffer.rs):
- Sequence number based reordering
- Adaptive output timing (20ms intervals)
- Packet loss handling with fallback to oldest frame
- Tests for basic and reorder scenarios
cpal playback (tsaudio/playback.rs):
- Default output device detection
- f32 and i16 sample format support
- Ring buffer for smooth playback
- Device listing
AudioFrame enhanced with sequence and codec fields.
2026-05-12 20:08:23 +09:00
ReTeamSpeak
d34f5dd952
refactor: handle_data now returns HandleResult with parsed events
...
- Add CommandEvent enum (InitServer, ChannelList, ClientList, TextMessage, etc.)
- Add HandleResult struct with responses and events
- handle_data returns HandleResult instead of Vec<Vec<u8>>
- Session uses HandleResult for real event emission
- Update socket.rs and tests for new return type
2026-05-12 19:53:22 +09:00
ReTeamSpeak
ace2f5deed
feat: add session event polling, channel/client list, and text messages
...
- Add SessionEvent enum with Connected, ChannelList, ClientList, ServerInfo, TextMessage, ClientEntered, ClientLeft, ClientMoved
- Add poll_events, request_channel_list, request_client_list Tauri commands
- Session now parses initserver, channellist, clientlist, notify* commands and emits events
- Frontend polls events every 500ms when connected
- Frontend displays server info, channel list, client list, and text messages
2026-05-12 19:25:02 +09:00
ReTeamSpeak
7a767e9d2e
fix: add Tauri template icons for Windows/macOS/Linux builds
2026-05-12 19:12:39 +09:00
ReTeamSpeak
a1410b541b
ci: revert FORCE_JAVASCRIPT_ACTIONS_TO_NODE24, let v4 actions run on Node.js 20
2026-05-12 18:58:34 +09:00
ReTeamSpeak
364b24bf19
ci: opt into Node.js 24 and fix checkout in opencode workflow
2026-05-12 18:47:36 +09:00
ReTeamSpeak
460ce6bb66
ci: restore full GitHub Actions workflow with v4 actions and multi-OS matrix
2026-05-12 18:43:24 +09:00
ReTeamSpeak
820449001a
fix(ci): simplify workflow to Ubuntu-only runners for Gitea Actions
CI/CD / Test (push) Successful in 3m42s
CI/CD / Build Frontend (push) Successful in 13s
CI/CD / Build Desktop (Linux) (push) Successful in 5m9s
CI/CD / Release (push) Has been skipped
2026-05-12 17:51:23 +09:00
ReTeamSpeak
4d8cf99b52
fix(ci): downgrade all actions to v3 for Gitea Actions compatibility
CI/CD / Test (ubuntu-latest) (push) Successful in 4m24s
CI/CD / Build Frontend (push) Successful in 36s
CI/CD / Test (macos-latest) (push) Has been cancelled
CI/CD / Test (windows-latest) (push) Has been cancelled
CI/CD / Build Desktop (linux) (push) Has been cancelled
CI/CD / Build Desktop (macos) (push) Has been cancelled
CI/CD / Build Desktop (windows) (push) Has been cancelled
CI/CD / Release (push) Has been cancelled
2026-05-12 17:45:20 +09:00
ReTeamSpeak
5cbe5783d4
fix(ci): downgrade artifact actions to v3 for Gitea Actions compatibility
CI/CD / Test (ubuntu-latest) (push) Successful in 1m37s
CI/CD / Build Frontend (push) Successful in 20s
CI/CD / Test (windows-latest) (push) Has been cancelled
CI/CD / Build Desktop (linux) (push) Has been cancelled
CI/CD / Build Desktop (macos) (push) Has been cancelled
CI/CD / Build Desktop (windows) (push) Has been cancelled
CI/CD / Test (macos-latest) (push) Has been cancelled
CI/CD / Release (push) Has been cancelled
2026-05-12 17:41:01 +09:00
ReTeamSpeak
3e7cee4893
fix: resolve clippy warnings across all crates
...
CI/CD / Test (ubuntu-latest) (push) Successful in 1m40s
CI/CD / Build Frontend (push) Failing after 12s
CI/CD / Test (macos-latest) (push) Has been cancelled
CI/CD / Test (windows-latest) (push) Has been cancelled
CI/CD / Build Desktop (linux) (push) Has been cancelled
CI/CD / Build Desktop (macos) (push) Has been cancelled
CI/CD / Build Desktop (windows) (push) Has been cancelled
CI/CD / Release (push) Has been cancelled
- Remove inherent to_string() methods shadowing Display (Command, CommandArgument)
- Fix empty line after doc comment in shared/types.rs
- Use sort_by_key with Reverse instead of sort_by in config.rs
- Remove redundant closures in client.rs
- Fix borrow patterns in ephemeral.rs and keys.rs
- Use abs_diff in resend.rs
- Fix needless Ok/? in tsdb/config.rs
- Allow too_many_arguments for create_message in tsdb/message.rs
- Allow dead_code on placeholder tsaudio structs
2026-05-12 17:35:28 +09:00
ReTeamSpeak
2b3ae9ae15
feat: implement TS3 protocol layer, session management, and ServerQuery client
...
CI/CD / Test (ubuntu-latest) (push) Successful in 2m3s
CI/CD / Build Frontend (push) Failing after 11s
CI/CD / Test (macos-latest) (push) Has been cancelled
CI/CD / Test (windows-latest) (push) Has been cancelled
CI/CD / Build Desktop (linux) (push) Has been cancelled
CI/CD / Build Desktop (macos) (push) Has been cancelled
CI/CD / Build Desktop (windows) (push) Has been cancelled
CI/CD / Release (push) Has been cancelled
- Add real X25519 ECDH key exchange for initivexpand2 bootstrap
- Add P-256 identity key generation with TeamSpeak tomcrypt format
- Add session event loop with tokio::select! for packet/command handling
- Add ServerQuery TCP client with typed parsing (channels, clients, permissions)
- Add Tauri commands: connect (session-based), join_channel, send_message, disconnect
- Add frontend ServerQuery snapshot panel
- Fix CI: Node 22, rustup setup, npm install, workspace checks
- Add mock UDP handshake tests through initserver
- 54 tests passing across shared, tscore, tsaudio, tsdb
2026-05-12 17:24:02 +09:00
ReTeamSpeak
ea08823c97
Initial commit: ReTeamSpeak cross-platform TeamSpeak client
...
CI/CD / Build Frontend (push) Failing after 11s
CI/CD / Test (macos-latest) (push) Has been cancelled
CI/CD / Test (windows-latest) (push) Has been cancelled
CI/CD / Build Desktop (linux) (push) Has been cancelled
CI/CD / Build Desktop (macos) (push) Has been cancelled
CI/CD / Build Desktop (windows) (push) Has been cancelled
CI/CD / Release (push) Has been cancelled
CI/CD / Test (ubuntu-latest) (push) Failing after 2s
- tscore: Protocol implementation (packets, crypto, connection handshake)
- tsaudio: Audio engine (capture, playback, codec, VAD, jitter buffer)
- tsdb: SQLite database (identities, bookmarks, messages, settings)
- shared: Core types and events
- tauri-app: Tauri v2 desktop application with React frontend
- docs: SRS, SAD, SDD documentation
- CI/CD: GitHub Actions workflow
- 32 unit tests passing
2026-05-12 14:41:54 +09:00