Production-grade History + Voicemail tabs with media-player tool

Featurekamo-internal
Ya
27 Aprili 2026, 21:33 UTC
Mwandishi
kamo
Ahadi ya
d16d5b9

History tab (SoftphoneHistoryTab.tsx): - Infinite scroll via IntersectionObserver inside the panel's scroll container - Filter chips: All / Inbound / Outbound / Missed / Recorded - Recording icon in row actions when the imaging side has a Recording row - Per-row overflow menu (Add to contacts) - Click-to-call back via existing dialpad Voicemail tab (SoftphoneVoicemailTab.tsx): - Infinite scroll, filter chips (All / Unread / Has audio) - Per-row Play / Call back / More actions - Auto-mark-read on play - Two-option delete dialog: Archive (soft-hide, all users) vs Permanently delete (gated by VOIP_VOICEMAIL_PERMANENT_DELETE right; falls back to disabled state for users without it) - Mark-all-read button with no-op-when-zero affordance MediaPlayer popup tool **************** - Audio: synthesized waveform-style scrubber, click-to-seek, Replay10/Forward10, playback rate (0.5x-2x), loop, volume + mute, output device honored from AV settings - Video: contained viewport, PiP, fullscreen, same scrubber + controls - Multi-track selector for call recordings (master + each per-channel leg) - Download - Two source modes: voipApi recording (call/VM) or imaging asset by imgId - Registered in tools/registry/registrations.ts as multi-instance Hook + plumbing: - useSoftphone exposes paginated history + voicemails (loadMore, hasMore, isLoading) and archive/permanent-delete actions - voipApi gains lookupRecordings, getRecordingMetadata, archiveVoicemail, paginated getVoicemails - /api/voip proxy passes audio/video/octet-stream bodies through with **************** intact (no buffering) so media elements scrub - New **************** forwards to DocsService's new streaming endpoint with Range - VOIP_VOICEMAIL_PERMANENT_DELETE added to the frontend RoleRightType registry so checkRight gates the delete UI

Mabadiliko yote

Je, unaona nini kuhusu usafiri?

Kila moja ya hizi updates ardhi katika nafasi yako ya kazi moja kwa moja. Kuanza bure na kuangalia kukua wiki baada ya wiki.

Kuwa Huru MileleMtazamo wa bei