iMessage changing recipient number
I have Caller ID turned off and turn it on in the Contacts entry. My carrier, Telstra Australia, uses a *31#nnnnnnnnnn format to do this. This is so contacts that I want to see my caller ID get to see it - eg family etc. This works fine for voice.
If I have imessage on and send a message to a contact it truncates the first character - the '*'. So the outgoing number becomes 31#nnnnnnnnnn.
The actual sequence of failures is not fully understood but seems to be that if the recipient is on imessage they get the message BUT if they - for iPhone recipients at least - are available for message by SMS only at that time then iMessage just swallows the message. No notification back to me either.
Which seems weird as they have all been on 4G data at the time but not WiFi. What makes me think WiFi is involved is this - I sent a group message by imessage to four contacts and only the one also on WiFi at that time received it. Nothing to the other three, no failures to me. The message was sent to all by contact name and imessage used the truncated number from their contact entry.
The fix is for the sender to turn imessage off and the carrier MMS system handles it. But then MMS has other issues, like group send fails every time for me.
iPhone 7 ios 15.7.5
Ideas?
Earlier iPhone models