Commit Graph
3 Commits
Author SHA1 Message Date
iamdoubz 80032cba1f ci: run the check job in a container so "postgres" resolves
ci / check (push) Canceled after 0s
ci / images (push) Canceled after 0s
On GitHub's hosted runners a job that isn't in a container can't reach
a service by its name, so every database test failed with getaddrinfo
EAI_AGAIN postgres. The check job now runs in node:24 (Gitea/Forgejo
act_runner already runs jobs in containers) and installs ffmpeg so the
sound and greeting tests run instead of skipping. The voicemail test's
afterAll no longer throws when beforeAll failed.

Checked locally by running the job's steps in node:24 next to a
postgres:18-alpine reachable as "postgres": 481 passed, 5 skipped
(ffmpeg).

Task: M5-T3
2026-10-18 14:17:24 -05:00
iamdoubz f60dda0bb0 me: voicemail page, greetings, My Phone home
ci / images (push) Canceled after 0s
ci / check (push) Canceled after 25s
/api/me/voicemail lists, streams (Range, download) and marks read or
deletes through AMI VoicemailMove/VoicemailRemove, then rescans so MWI
and the list agree. /api/me/greetings takes the raw recording or file and
converts it with ffmpeg to 8 kHz PCM (media/audio.ts). My Phone gets a
layout with Home (new voicemails) and Voicemail (play marks read,
download, delete, record/upload greetings via MediaRecorder); the list
refetches on the live voicemail.new event. e2e m4-t3 checks MWI goes off
within 5 s after play and delete, and a browser-recorded greeting is what
callers hear.

Task: M4-T3
2026-10-17 22:56:10 -05:00
iamdoubz 8d752ba705 voicemail: index messages, live event, email with the recording
services/voicemail.ts rescans a mailbox on Asterisk's MessageWaiting event
(and every mailbox on AMI connect) instead of watching files, upserts
voicemail_messages by msg_id, marks vanished ones deleted, sends
voicemail.new to the owner only, and emails the wav. Delete-after-email
uses AMI VoicemailRemove, and only when the audio was attached. Asterisk
24 has VoicemailMove/VoicemailRemove, so 04 §5.6 drops the renumbering
plan. New VOICEMAIL_DIR setting; e2e m4-t2 checks the email arrives
within 10 s with a playable attachment (SMTP sink shared with m3-t4).

Task: M4-T2
2026-10-17 22:33:52 -05:00