A Verus ringtone on every platform
Why Verus calls ring with their own sound on iPhone and the Mac. Why the ringer follows the call itself.
What I tried
Verus has its own set of sounds. The first call path leaned on system defaults, which gave the iPhone Apple's tone and the Mac none.
Why I chose differently
The Mac shares the iPhone's code but not its calling behaviour. Each platform needed its own route to the Verus sound.
What I chose
I gave the iPhone call screen the Verus ringtone and built a dedicated ringer for the Mac. It follows the state of the call rather than the many ways a call can end, so it can never outlive the call.
The principle
Tie a side effect to the state it depends on, not to the events that change it.
- CallKit
- Mac Catalyst
- iOS audio
- VoIP calls