- Shipped
- October 4, 2026 at 11:43 PM UTC
- Author
- Kamo
- Commit
- 96109c0
A voicemail upload now carries the message's own id, <mailbox>/<msg_id> from the msgNNNN.txt Asterisk writes beside it, as its unique id: VOIPService files FreePBX voicemail under exactly that id, so the two pair exactly instead of by time. One upload per message, from its PCM copy (msgNNNN.wav). The wav49 copy (.WAV), the greetings (unavail, busy, greet, temp) and a mailbox's tmp files are no longer uploaded, so they are no longer deleted from the spool either: uploading them used to take a mailbox's greeting away and give each message a second, competing upload. A message whose sidecar names no msg_id is not uploaded and stays where it is. The policy pull now carries voicemailAudio: messages Kamo has no audio of and asks for (KamoAI SP98). VoicemailAudioSender finds each one by msg_id in its mailbox's folders, takes the best copy the spool still has (wav, WAV, gsm, ...), has Asterisk convert it into a WAV in its own tmp directory over the helper's manager user (file convert), uploads it under the message's id and removes the temporary file. The spool is never changed. Ids that are not <mailbox>/<msg_id> are dropped at the pull; each message is attempted once per ten minutes, in the background. Agent version 2.1.0.
