[ previous ] [ next ] [ threads ]
 To :  "'Paul Chitescu'" <paulc@v...>,<yate@v...>
 From :  "Andrew Checkov" <expert@a...>
 Subject :  SS7 cal routing at external script
 Date :  Wed, 14 Apr 2010 10:36:24 +0400
Hi,

Could you please advice how to route inbound SS7 call to SS7 trunk at
external PHP script?

Here's my config #1:

1. Routing is made at regexroute.conf

${module}^sig$=;message-oprefix=osig.
${module}^sig$=;osig.BackwardCallIndicators=charge,called-free,called-ordina
ry,isup-path,isdn-end,echodev
${module}^sig$=sip/sip:74957756030@8...

This works - call is routed from sig to sip.

2. Routing is made at external script

case "call.route":
	if ( ($ev->params["module"] == "sig") &&
($ev->params["isup.message-type"] == "IAM")) {
		$optsi =
"message-oprefix=osig.:osig.BackwardCallIndicators=charge,called-free,called
-ordinary,isup-path,isdn-end,echodev";
		$ev->retval = "sip/sip:74957756030@8...;" .
$optsi;
		$ev->handled = true;
	}
	break;

This works - call is routed from sig to sip - the same as with
regexroute.conf


Here's my config #2:

1. Routing is made at regexroute.conf

${module}^sig$=;message-oprefix=osig.
${module}^sig$=;osig.BackwardCallIndicators=charge,called-free,called-ordina
ry,isup-path,isdn-end,echodev
${module}^sig$=sig/74957756030.; link = link1;

This works - call is routed from sig to sig.

2. Routing is made at external script

case "call.route":
	if ( ($ev->params["module"] == "sig") &&
($ev->params["isup.message-type"] == "IAM")) {
		$optsi =
"message-oprefix=osig.:osig.BackwardCallIndicators=charge,called-free,called
-ordinary,isup-path,isdn-end,echodev";
		$ev->retval = "sig/74957756030.;link=link1;" . $optsi;
		$ev->handled = true;
	}
	break;

This doesn't work with the following debug:

 Signalling call failed. No trunk specified
 Call hangup. Reason: 'noconn' [0xb69020c8]
 Sending message (0x9d78ba8)


Regards,
Andrew Checkov