| My phone uses a sim card from a verizon MVNO. I don't even know the phone number. "My" phone number was provisioned, and has always lived, in Twilio. I set up a simple call forward and SMS forward to my SIM number. When I land in a foreign country, I get a new sim card and just point the forwards to the new number. Easy. I wrote a shell script that allows me to SMS from the command line from my phone number. So I can SMS people from an airplane even though my handset is off. If I lost my handset I could still SMS you. It's also nice to have a proper date/time stamped SMS log that lives in /var/mail/sms ... I use this a lot. My favorite thing about all of this is that I have finally removed voicemail from my life. Hint: you need to tell your carrier, with star-71, to forward to a "black hole" number at the end of your call sequence, otherwise verizon will jump in and say "the wireless blah blah voicemail box that is not set up blah blah ...". So my twilio number rings for X seconds (whatever I set the timeout to) but then the call progresses to verizon, but verizon has been instructed with star-71 command to forward calls to a second number I set up in twilio that does nothing but hang up. That's my "black hole" number and you can insert that into the end of a lot of workflows like this. Calling has to be done with a voip app on your phone because, of course, you cannot call from your twilio number directly from your phone. Well, you could, if perhaps you called yourself and then set up some logic where you type in the phone number you really want and then twilio forwards you there, but I think it's easier to use a nice VOIP app ... I use groundwire, but whatever works. I might try to formalize all of this and present it at Signal next year ... there are a lot of other neat things you can do .... |
I have the Twilio SIM (T-Mobile coverage) in my primary SIM (iPhone dual sim), and then Verizon/ATT/Sprint/TMobile on my e-sim. The e-sim is for data only, because data is expensive (and slow) on Twilio. If you don't have Dual Sim then the data element may be a bit of a roadblock for you to totally switch over to the Twilio SIM depending on your data needs. Tthe goal of my setup is to be completely cell phone agnostic. I wanted to be able to send a single signal into the PSTN over an IP connection OR over a cell-only connection (no data). The native support on this is great when you use the Twilio SIM, but with call forwarding and some other hacks you can get support without the Twilio SIM. Also, the great thing about the SIM is that I can pop it into a phone from 2002, and have it talk to the internet through a series of signals sent via SMS (e.g. server maintenance, open up a firewall for a few moments, etc). I wrote a server that I point the SIM endpoint to, and this server handles all of the forwarding/reception of voice and SMS.
I also built out a CLI for messaging (pulls in SMS history, deletes from Twilio, stores locally encrypted, lets you send out messages on a "convo" view, etc)... using the python API, and then built out a Web UI for making phone calls using client.js (receiving phone calls TBD). This has integrated support with my CardDav contacts (and depending on if someone is in my contacts, they get a different number on the caller ID), which makes for a more powerful (IMO) app than an iOS VOIP app, of which the options are fairly clunky and limited.
It is all pretty hacky but if you want to talk more about it I am curious to see what you have built out. I am not totally dependent on it for a few reasons, a big one being that I don't want to send all of my communications through the unencrypted telephone network.. The long-term goal here is to package it and open-source it so that people can easily "free" their communications, but it is pretty scattered right now.
Eagerly awaiting the PinePhone to give me more flexibility with all of this.