Skip to content

twocans v0.1.6

Choose a tag to compare

@tombruton87 tombruton87 released this 30 Sep 21:45
· 17 commits to main since this release

Voicemail that goes where it should — each number's messages in the right mailbox, messages you can move to a phone, rings-before-voicemail per phone and a speed dial for messages — plus announcements on a timetable, a choice of which number calls go out from, and recording straight into the browser.

Upgrading

./twocans update

Nothing to do afterwards. A number that rings just one phone now takes its messages in that phone's mailbox rather than the house's; change it under Phone line → "messages go to" if you'd rather keep them together.

What's new

Voicemail that goes where it should, announcements on a timetable, a choice of
which number calls go out from, and recording straight into the browser.

Added

  • Each number's messages go to the right mailbox. A number that rings one
    phone takes messages in that phone's mailbox — so the child hears them by
    dialling 700 — and any other number in the house's. Either can be changed
    on the Phone line screen ("messages go to").
  • Move a message to another mailbox from the Voicemail screen: out of the
    house's into a phone's, say. It keeps its transcript and arrives unheard, so
    the phone's message light comes on. Each message says which mailbox it's in.
  • Rings before voicemail, for each phone — 2 to 10 rings, on the phone's
    Rules tab. A call ringing several phones goes to voicemail once the longest
    of them stops. Five rings (30 seconds), as before, until it's set.
  • A speed dial for messages — say 1 — as well as 700, set on the
    Voicemail screen. It's checked against every other number a child dials,
    shows in each phone's numbers, and can go on a hotkey.
  • Announcements that play by themselves at a set time on chosen days —
    "bath time in ten minutes" at 18:50 on school nights. Set under the
    announcement's "Play it by itself".
  • Choose which number calls go out from. A line with more than one
    number has a "Calls out from" card: the line's number for every phone, and
    each phone's own. By itself a phone calls out from the number pointed at
    it, if it has one, else the line's; the phone's page says which.
  • Changes for a phone that's off wait for it. Saving hotkeys (or anything
    else a Grandstream is sent) while it's offline says so, and it's sent them
    the moment it's back; its Setup tab shows "Changes waiting" until then.
  • Record in the browser. Every audio upload — announcements, greetings,
    a phone's message, a person's name clip, jokes, hold music — has a Record
    button beside "Choose a file". It needs twocans' secure (https) address.

Changed

  • Development runs the real stack. make dev is compose.yaml with
    compose.dev.yml on top: the web image built here, ./backend mounted
    live. The old docker-compose-local.yml (and the separate dev PHP and nginx
    images) are gone — it had drifted, and under its own project name would have
    started an empty database. ./install.sh and ./twocans recognise a
    development setup and keep it one.

Fixed

  • Short voicemails are kept. Asterisk threw away any message under 4
    seconds of speech — "hi, it's Tom, call me back" is about 3. The minimum is
    now 1 second; a caller who says nothing still leaves nothing, as the silence
    is trimmed off before it's measured.
  • The call log leaves out announcements and test calls (the Test call
    button, and dialling 600 or 601), and doesn't count them in its totals. A
    short number nobody answers to reads "Dialled 123 · not a phone number".
  • "Numbers the kids tried" no longer lists extensions, twocans' own
    numbers or short numbers like a blocked speed dial: only numbers a grown-up
    could add. They're still blocked, and still in the call log.
  • Phone-width fixes: the Phone line screen no longer runs off the right
    edge; a phone's header gives its name the row, with its status and Test call
    underneath; number pickers show whole numbers; long buttons wrap.
  • ./twocans status counts only the family's calls, like the call log.

Compare: v0.1.5...v0.1.6