Question:

The CallerIdName is set to read-only and is not assignable. Is this simply a change from { get; } to { get; set; } and the rest will be fine or is there other changes needed for that to be assignable?

The description of the m_ChannelResource.CallerIdName says it’s for the inbound call.

How do I Set the Outbound CallerID Name?

Answer:

This subject is a little convoluted because it depends who you are dialing.

  1. Land Lines use CNAM dips
  2. Cell phones do not currently support CallerIDName
  3. Voip Lines use SIP Header for CallerIDName

For CNAM we need to make sure that we have set the preferred 15 char CNAM on the national database. We need to do this for each phone number. You can submit your request to support@inventivelabs.com.

When a land line carrier receives a call, and sometimes even a VoIP carrier, they will dip the CNAM database and present the CallerIDName. This is done by the receiving carrier. You can not change it call by call, you can only control what goes in the database and there is a cost each time you change the CNAM database.

For Voip lines I need to show you how to set the SIP header.

Best practice would be to do both. Let us know on each phone number what the 15 character CNAM should be and we’ll get it set.

Here is the code to set the SIP Header:

SipChannel sipChannel = m_ChannelResource as SipChannel;

if (sipChannel != null)
{
    sipChannel.OriginatingCallerIdName = callerIdNameThatYouWant;
}

Just do it before the .Dial

Contact support@inventivelabs.com for more information.