Sorry, I was thinking of a different scenario at the time.
Leave the SIP ID field blank within 3CX for each phone in this case. I keep forgetting that while you can have more than one extension with the same extension number and most likely, 3CX will have a different IP for each, they still only allow the one SIP ID.
However, all may not be lost just yet. It will not be perfect by any means, but SIP dialing is still possible within the phones.
Setup all five phones upstairs with the common extension, say "500". This allows a single number to be dialed from the downstairs or the upstairs and all five will ring and regardless only the one number will display when the upstairs' makes a call. I also assume that external calls will be treated similarly...they too will only be able to reach 500.
Use a phone that has enough speed dial locations to accommodate the desire number of upstairs phones. You can then program the SD locations with something like
[email protected],
[email protected], etc. It is assumed that each phone will have its own IP and that each is static and perhaps if lucky enough, the IP assigned could correlate to extension, room or other meaningful number that allows a better understanding of call originator to be had.
A Cisco 509G, Yealink T28/38 might be some of possible contenders. I am sure there are others, but at least these can support a fair number of accounts using the display as opposed to having to write name/locations on a paper template.
You will then have other decisions to make such as any potential modifications to the dial plans that may be necessary and if you want the phones to be registered or not in order to make a call. As this is a phone to phone direct call, registration with 3CX may not be necessary in order to complete this type of call. Some may have settings that allow/disallow direct SIP calls.
I am not certain what may show up in the display on the receiving end as I suppose it could be the display name, extension, etc. Needless to say, this requires manual configuration of the phones and a setting to disallow auto provisioning.
Quite simply, I do not know a way to get exactly what you want, but this may be close enough.
My understanding of the situation is that the upstairs is a residence comprised of 5 phones and that the desire is more akin to a traditional analog environment that should a call come in, they should all ring. This implies to me that the residence will have a DID as well such that external calls will automatically get routed to ext 500. Conversely, the same is true for any call originating from the downstairs area to the upstairs....simply dial 500. And of course, any outbound call from the upstairs should only reflect the one extension (500). The challenge comes into play when it is desired to place an extension to extension call from within the upstairs area only and each party knows where the other is and prefers not to "ring the house down".
SIP ID is one, the other is to create the primary 500 account for position 1 (on all phones, same as I have outlined) and publish accordingly so all know and then add extensions to the other DSS keys (BLF) in a standard manner and hide from the rest of the world - kitchen is always position 5, living is 4, etc. and hide as best you can from MyPhone, company phonebook, and disable external calls from these 'home" extensions (except 500). If set as BLF, one can then see all extensions, their respective status and then even use as a speed dial. You might then be able to modify the dial plan within each phone such that all extensions other than 500 can only call to those extensions and numbers that have been explicitly stated from within the dial plan. In other words, the kitchen phone could reach any number when the default account (500) is used, but only reach 911, 500, 501, 502, 503, etc. when any other DDS is pressed and an attempt is made to make a call. Again, manual programming, but I think the later scenario gets you what you want even better than SIP Id. This means that you need a phone that can handle X number of accounts simultaneously a common and then one for each extension where only common will not suffice. As each phone will still have its own IP, you should still be able to conduct multiple simultaneous calls using 500.