Unexplained Features on SIP service

For the past two days I’ve been working with SIP services on my two Android phones and on my Librem 5. There is one feature that I never thought would be available from a SIP service, but that actually works some how without porting my phone number. I discovered it by accident. I am getting Google-Voice-like dialing-in features from voip-ms that I can’t figure out exactly how they work. My initial plan was to use SIP services for only dialing out, to spoof my own number on to any of my own phones so people know it’s me when I call them from another phone that has a number they don’t recognize. But at this rate, it looks like voip.ms does everything that Google Voice can do, and more when it comes to voice communications.And they can do it without porting my number to them.

When I created a new “DID” (dial-in number) in the voip.ms interface, I selected the caller ID value (my real phone number from Google Voice) as the dial-in number to link to the new DID phone number. Then I added the other two phone numbers (the real numbers of the other two Android phones), in to the voip.ms configuration interface as additional caller ID values without linking them to anything. Then I turned off call forwarding on all phones in the Google Voice software interface, and used another family member’s smart phone (that wasn’t linked to anything), to call my Google Voice number. With all Google Voice forwarding turned off, that call should have gone to nowhere. But both of those two phones rang, showing my other family member’s number as the caller. This shouldn’t be possible as voip.ms actually hijacked the incoming call to my GV number, although with my making it happen. Just to be sure it was real, I uninstalled the GV app from both receiving phones. It still worked. Then I found a voip.ms Android app that produced the voip.ms call logs, proving that it was voip.ms that snatched the incoming calls and sent them to my other two phones as those calls were in the voip.ms call logs with matching time stamps.

I might know how this happened. I would guess that Google Voice is just another voip/SIP service. That would mean that GV is running a Voip server and that all publicly switched (traditional) phone calls that are routed to a Google Voice number, end up brodcasting the call information in to the global voip system (the internet) as the voip system seeks a TCPIP end connection first, before re-entering the traditional PSTN system if the recipient is not another voip number. If that is the case, then Google Voice has a back-end voip server that operates at all times. The fact that I shut off my user interface and access between that system to reach my phones does not stop Google from brodcasting and attempting to connect the calls coming to me. But then, voip.ms recognizes my number as they are a part of that same global system. So they snatch and routes my call to me through their system. This is just a theory. I am afraid that if I ditch Google Voice without porting my number to voip.ms first, that my current method might quit working.

Anyone else here know more about this technology than I do?


I work for a small telco in northwestern Ontario and i am familiar with translations on our voice core which has now become sip instead on the old dms switches which served us well since the 70’s. The new core uses the old dms language syntax because there are old dms wizards that get cranky when things change. The user manual for a dms 100 could fill an entire wall of a room. Despite the complexity it’s a very elegant machine. But i digress.

Your DN (directory number) needs a home and every switch on the planet needs rules to find it. It resides in table DNROUTE and tells the switch how to find your number along with the switches home nnx so it knows which DNs belong to it. When you port your number to another carrier, a bunch of things happen in the background that are largely automated but happen nonetheless. The DNROUTE table where your number resides will then get a route number to a trunk either traditional TDM (OC48 or larger trunks) between carriers or to some sort of SIP gateway. That way the switch doesnt waste time trying to find your DN on itself but sends it off to the appropriate trunk that will get the call to the correct carrier where your number now resides.

Your DN cannot exist in 2 places at once at least not unless your phone company supports toll fraud…lol. There must be some sort of forwarding going on to route your GV number to the voip.ms DNs and thats all i can think must be happening, unless there is something fishy going on.


It only forwarded for two days after I turned off the Google Voice forwarding. So I had to go back to using Google Voice again.

I really want to get rid of Google Voice (and everything Google for that matter). Once I understand the technology better, I’ll apply what I know to my Librem 5. In the meantime, I am working with a Pixil 6 Pro, running Grapheneos, with the Google Play Services and Google framework disabled. You can turn the Google Play store and Google Framework on, download your Google-based apps from the Aurora Store (anonymously), install those apps, and then turn off the Google Playstore and Google framework. Most apps will work that way. I have never logged in to Google from the Pixil 6 Pro. So Google is locked tightly in a sandbox, without any special access, in an operating system that prevents Google from mis-behaving, owned by an anonymous person (me). But the real goal is to get the Google-like voice services, without Google. I want to: 1.) Move my number back to a SIM in a phone that I own. 2 ) all three phones (my totally googled-up Note 9, my Pixil 6 Pro running Grapheneos, and my Librem 5) should ring at the same time when someone calls the same number that everyone knows me as. 3.) I want to call out using the same number from any of the three phones. 4.) Same for SMS/MMS - this texting seems to be the most difficult to use this way. Voip.ms doesn’t let you forward SMS and MMS. You have to log in to their web interface which is not convenient.

So SIP only gets you part way there and does nothing about the SMS/MMS issue. I finally got SIP working with audio in both directions on my Librem 5 (calling out only) using the phone dialer. But you have to use an old codec that is poor quialty voice. In Android, the best SIP client app I could find is Zoiper.

1 Like

In the voip.ms Customer Portal, if you go to
DID Numbers > Edit DID Settings
and scroll to the bottom of the page, you will find the following options:

  • SMS/MMS Forward to an Email Address

  • SMS/MMS Forward to a Phone Number

Both options can be active at the same time.

For outgoing SMS, you can log in to https://sms.voip.ms instead of the full portal. This does not have MMS capability.

The voip.ms SMS forward to phone number feature does not work. I think it’s probably because of legal regulations, because when you try to set it up, it is a prohibited setting and that configuration won’t save, even though you can select that choice during the setup process.

The SMS to email probably does work. I didn’t bother to set that up because I want SMS, not email. Even if it works, that’s a clunky work-around.

Using e-mail by logging in to my voip.ms account every time I want to send or receive SMS messages is even more clunky. I didn’t even explore that. There is also a separate voip.ms Androud app that uses a separate API password that you set up in your voio.ms account. I got several other apps tied to my voip.ms account working using the API password. But the SMS app doesn’t work. When that app didn’t work also, I concluded that something political or legal is likely to be blocking SMS via voip service. I don’t like the lack of MMS service either. If there isn’t an app that just works as well as Google Voice does SMS/MMS, I don’t want to waste my efforts trying to make something work that is a work-around or is ultimately just broken. There are no instruction videos that show how to set up voip to sms. But several different search engines all take you to the voup.ms sms to email set up instruction videos. To promote the work-around without giving any attention to the broken SMS tools seems to be a bit slimey on the part of voip.ms. They should either just say it’s broken or else have videos of how to properly set it up. The most obvious and apparently intuitive setup just gives you errors when you try to save that configuration, and then there is no training on how to set it up.

This is correct. There are many security implications of forwarding SMS most notably spam sms and smishing. There is a protocol called Stir Shaken with three attestation levels to authenticate the legitimacy of the source of a phone call, it’s an attempt to thwart robocalls as well. You can read about it here:

What are the STIR/SHAKEN Attestation Levels and What Do They Mean?.

Funny. It works fine for me, and has done so since 2015. The forwarding, however, is to a Nokia E51, not to an L5.

UPDATE: I put my wife’s micro SIM (T-Mobile USA) in the L5 and set the voip.ms SMS forwarding to that. (My own micro SIM is data only). Forwarding worked perfectly.

I have a Note 9 and a Pixil 6 Pro. SMS forwarding through my voip.ms account doesn’t work. But I didn’t port my number to voip.ms. After verifying my Google Voice number to voip.ms (voip.ms texts you a code that you reply with), I am allowed by voip.ms to spoof my own Google Voice phone number on caller ID, when calling from a new voip.ms assigned phone number. They let you spoof your own number for voice calls. But you can’t spoof your own number to text someone. I want to use Google-Voice-like phone number spoofing and forwarding features, but to use voip.ms instead of dealing with Google. But that doesn’t appear to work.

Thank you for your reply. Unfortunately I don’t know anything about Google Voice, so I can not make any suggestions for your GV-related difficulty. I just wish you best of luck in your own search. David.

1 Like