These are not the solutions you think they are. The 3CX feature is just like Advanced Recovery as in you have a primary system and a standby system. It’s a failover solution. The same with Yeastar and Grandstream. They all offer Hight Availability solutions where a backup system is kept synced in case of an outage of the primary system.
They are not meant for when you’re on the local network use PBX A and when outside the local network use PBX B. It’s designed to use PBX A regardless of local or not and if PBX A fails, use PBX B.
It’s called Advanced Recovery, as pointed out earlier, but it’s not designed for you to switch between systems because you left your house and are on mobile data.
What you want to do is going to require you to actually produce the solution.
give both systems the same FQDN name.
The phone-config should not mention any IP, but the URL-name
Tell your local DNS-Server to point to your local PBX-IP. Make your local phone-network unreachable from outside by closing the SIP/Meda-Ports in your router or firewall.
Distribute on your !!public!!! DNS-Server the fixed IP of your cloud-pbx and FQDN-name.
Once you are outside, the phone will get the answer from the public DNS-Server, once you are inside, the phone will get the answer from your local DNS-Server. Where both DNS-Servers point to different IPs.
For syncing you should test what really happens:
Create a daily backup of your local pbx.
create a daily backup of your cloud pbx
restore your local backup to your cloud pbx and see what happens. Once crashed, restore the cloud-backup to the cloud pbx.
keep care of firewall rules. They should be the same on both pbxes. Otherwise you might cloose yourself out.
I’m not completely clear on what you are trying to achieve (or why), but syncing to live Asterisk servers can be tricky. Since you are syncing local to cloud or back (one host each way), I suggest you try the free version of PBXsync . It will sync changes, apply them to the running Asterisk, etc.
But you really have to understand what you are doing…(see Dicko’s note above)…and if you do then this may work. I’m not sure how much closer you can get in the free software world.
I confirm. One Cloud-PBX should be enough. And maybe backups to a local (on premise) PC.
Anyway, what I didn’t mention earlier: Both pbxs will have the same extensions (therefore they can’t be connected via IAX2). Both PBXs will have the same trunks active with the telephone-provider. Usually this creates unneeded media problems, since any incoming call doesn’t know to which PBX it will be routed. People connected to the cloud-pbx can not talk to people connect to the local pbx. All of this doesn’t make sense.
It makes perfect sense, FreePBX as a b2bua so needs unique sources and destinations, you broke that, FreePBX is not able to be a multi tenant solution. You need a SIP proxy to distribute inbound (or outbound) calls