Hi Henning and list, here is a description of the configuration that Im
trying to test with carrierroute:
I have 4 groups of customers calling to 6 different destinations. Each
customerGroup has specific rules about the destinations that are allowed
to call.
For ex.
CustomerGroup 1 can call to S-fix, S-mob, N-fix and DK-fix, but not to
N-mob or DK-mob
CustomerGroup 2 can call to N-fix, N-mob, S-fix and DK-fix, but not to
S-mob or DK-mob
CustomerGroup 3 can call to DK-fix, DK-mob, S-fix and N-fix, but not to
S-mob or N-mob
CustomerGroup 4 can call to all destinations.
So, in order to apply the different rules to each customerGroup, I could
assign to each customerGroup a Carrier on the subscriber table, and each
carrier would have its rules about where is allowed to call using
scan_prefix on the carrierroute table.
But then I will need to have almost the same host information for every
carrier, but with the exceptions mentioned above. My point is that it
would be a lot of information that is repeated, is this really necessary?
It is anyway to avoid repeating all this rewrite_host and scan_prefix
information? Because in this example is just 6 rewrite_hosts that Im
calling again and again on the different carriers, but in my
implementation it would be a lot more of Interconnect companies that I
need to add. Also, the same scan_prefix, would be called again for each
carrier.
As well, I see that I could put all hosts under 1 domain, but then what it
is the point of having different domains?
Am I trying to do with carrierroute something that the module was not
build for?
I would appreciate your advice about this implementation.
Configuration to test
host1(S-fix)
Interconnect1(S)<
Domain1 host2(S-mob)
host3(N-fix)
CustomerGroup1 - Carrier1 - Interconnect2(N)<
Domain2 ---- o ----
Host5(DK-fix)
Interconnect3(DK)<
Domain3 ---- o ----
-------------------------------------------------------------
Host1(S-fix)
Interconnect1(S)<
Domain1 ---- o ----
host3(N-fix)
CustomerGroup2 - Carrier2 - Interconnect2(N)<
Domain2 host4(N-mob)
Host5(DK-fix)
Interconnect3(DK)<
Domain3 ---- o ----
-------------------------------------------------------------
Host1(S-fix)
Interconnect1(S)<
Domain1 ---- o ----
host3(N-fix)
CustomerGroup3 - Carrier3 - Interconnect2(N)<
Domain2 ---- o ----
Host5(DK-fix)
Interconnect3(DK)<
Domain3 Host6(DK-mob)
-------------------------------------------------------------
Host1(S-fix)
Interconnect1(S)<
Domain1 Host2(S-mob)
host3(N-fix)
CustomerGroup4 - Carrier4 - Interconnect2(N)<
Domain2 host4(N-mob)
Host5(DK-fix)
Interconnect3(DK)<
Domain3 Host6(S-mob)
-------------------------------------------------------------
+----+---------+--------+-------------+-------+------+---------------+
| id | carrier | domain | scan_prefix | flags | prob | rewrite_host |
+----+---------+--------+-------------+-------+------+---------------+
| 1 | 1 | 1 | 462 | 0 | 1 | host1.s-fix |
| 2 | 1 | 1 | 465 | 0 | 1 | host2.s-mob |
| 3 | 1 | 2 | 472 | 0 | 1 | host3.n-fix |
| 4 | 1 | 2 | 473 | 0 | 1 | host3.n-fix |
| 5 | 1 | 2 | 474 | 0 | 1 | host3.n-fix |
| 6 | 1 | 3 | 452 | 0 | 1 | host5.dk-fix |
| 7 | 1 | 3 | 453 | 0 | 1 | host5.dk-fix |
| 8 | 1 | 3 | 454 | 0 | 1 | host5.dk-fix |
| 9 | 2 | 1 | 462 | 0 | 1 | host1.s-fix |
| 10 | 2 | 2 | 472 | 0 | 1 | host3.n-fix |
| 11 | 2 | 2 | 475 | 0 | 1 | host4.n-mob |
| 12 | 2 | 3 | 452 | 0 | 1 | host5.dk-fix |
| 13 | 3 | 1 | 462 | 0 | 1 | host1.s-fix |
+----+---------+--------+-------------+-------+------+---------------+
and so on...
Cheers,
Juan.-
On Monday 19 January 2009, Juan Asencio wrote:
Is it possible to choose different domains using
the parameter
"scan_prefix" on the "carrierroute" table?
For example: 1 have one carrier with two different domains pointing each
one of them to a different host.
If the user makes a call to a number starting with 234 the call goes to
domain 1 or if the user call to a number 567 the call goes to domain 2.
I have been trying with the example 1.45. Configuration example -
Routing
to user tree. But since I specify a domain on this part of the code:
# just an example domain
$avp(s:domain)="start";
The call only goes through that domain "start" when it matches the
"scan_prefix". If the "scan_prefix" doesn't match it would keep
trying.
But it doesn't try the other domain.
How can I achieve that, if is possible at all?
Hi Juan,
i'm not sure if i completely understand your question. You've one carrier
with
several domains, each of them pointing to different hosts.
carrier default, domains: 0, 1
0 -> host1
1 -> host2
'234' -> 1 -> host1, '567' -> 2 -> host2
This can be achieved with only one domain.
default: 0
0 '234' -> host1
0 '567' -> host2
Or do you've some more requirements that needs a second domain?
Cheers,
Henning