≡ Menu

Masking Caller ID in Outbound Bulk Voice Call

One of the widely used cloud telephony service is bulk voice calling. It is being used for many purposes like alerts, reminder, promotional activities, election campaign etc. Bulk Voice Calling is also used in trigger based systems in case of emergency like fire, accidents etc.

One of the problems in hosted Bulk Voice calling is that, the caller ID from where the call will be made is normally the pilot number of the PRI line being used to make the outbound call. While it is technically possible to mask the caller ID, but most of the telecom service providers do not allow such masking of Caller ID outside the pools of numbers allotted to PRI connectivity.

So, many use VOIP calling where masking is a possible easily and make their official phone number as caller ID where they may get call back from called numbers for further assistance related to that outbound voice call.


Using Dialogic CTI boards or Powermedia HMP ( Host Media Processing), it is easy to mask the caller ID. One can use its Global Call protocol function gc_SetUserInfo() to mask the caller id with desired number.

Here is the code snippet to do so ( for HMP, SIP calling):-

char pDestAddrBlk[100];
char *pReqURI = “sip:9190000000@ip-address”;
CString tmpPhoneNum, tmpPhoneNum1;
char mynum[]=’91callenumber’

strcpy(pDestAddrBlk,mynum );
strcat(pDestAddrBlk,”@sipserver-ip”);

/* Insert SIP Request-URI */
/* Add 1 to strlen for the NULL termination character */
gc_util_insert_parm_ref_ex(&pParmBlock,IPSET_SIP_MSGINFO,IPPARM_REQUEST_URI,(unsigned long) (strlen(pReqURI) + 1),pReqURI);

/* Set Call Information */
gc_SetUserInfo(GCTGT_GCLIB_CHAN, ldev, pParmBlock, GC_SINGLECALL);
gc_util_delete_parm_blk(pParmBlock);

/* set GCLIB_ADDRESS_BLK with destination string & type*/
memset( &gcmkbl, 1, sizeof( gcmkbl));
strcpy(gcmkbl.gclib->destination.address,pDestAddrBlk);
gcmkbl.gclib->destination.address_type = GCADDRTYPE_TRANSPARENT;
strcpy(gcmkbl.gclib->origination.address, “sip:desired-callerid@server-ip-add”);
strcpy(gcmkbl.gclib->origination.sub_address, “294”);

Then make the outbound call

rc = gc_MakeCall(ldev, &crn, NULL ,&gcmkbl, 60, EV_ASYNC);

With masking of Caller ID in bulk voice calling, users can be completely anonymous and can pretend to have their own outbound calling service in house. It also helps that it can have call back service.

It is time, TRAI allows masking of caller ID for authorised bulk voice service providers.

Next post:

Previous post:

{ 1 comment… add one }
  • Paramantra March 13, 2014, 2:55 pm

    NOT TRUE!!!!!
    You can actually display the particular DID number. Meaning the pilot number will not be displayed when you are calling.

    Works perfectly for receiving call backs in a seamless and cohesive manner. This will also ensure that your usage is compliant to not only Indian telecom provisions and laws, but also several other international laws against masking true identity of caller.

    We have been studying the Indian cloud telephony market and have noticed that several solution providers struggle with the roadblock similar to the one mentioned in your article.
    If any of your customers are facing similar issues, please advise them to explore legal and more efficient solutions with Paramantra.

    Paramantra.com has information about various SAAS, cloud based solutions. All solutions provide comprehensive convergence of various communication media, such as cell phone, wired phones, email, sms, fax, social media. The converged communication is embedded with Paramantra’s advanced applications for cloud CRM which has users including start ups and Fortune 50 clients.

Leave a Comment