hi Brett, well, if you do not have any control over the prefix format, there is no other way than keeping the len also.
regards, bogdan Brett Nemeroff wrote: > That's kind of the same line as them all being the same length.. > Here's my problem.. in general, I have no problem making those kinds > of assumptions.. but what I ran into is a rather large customer came > to me and TOLD me that they were going to be sending me calls and THIS > is the prefix. And of course, that prefix defies any kind of standard > I may have set. In this case, I'm not in a position really to request > the calls be sent differently.. And in general, I'm wondering if there > are any "good ideas" on how to go about doing it.. > > I assume you were going down the line of looking for the first > occurance of a 9, then substringing it? Yeah, I can do that.. I'd > probably like to use something like a # instead.. But still doesn't > fix when I get sent a prefix I'm not expecting. > > I suppose each account could have a prefix length.. Then I can store > the prefix length by account in cache.. just seems kinda messy. > -Brett > > > On Wed, Mar 25, 2009 at 1:11 PM, Bogdan-Andrei Iancu > <[email protected] <mailto:[email protected]>> wrote: > > Hi Brett, > > > Brett Nemeroff wrote: > > Hey All, > I was just wanting to get some feedback from the community on > how you may handle this. I have a number of clients who like > to use "prefixes" in the dialed number coupled with IP address > authentication to link calls to a specific account.. > > It starts out simple.. Customer A sends me calls from > 1.2.3.4.. Great. I have a table that links IP to account.. So > now I can account those calls.. > > But now customer A, has subcustomer A.1, or A.2 They still > send calls from 1.2.3.4, but they'll send prefix 001234 before > the dialed number (like 00123415125551212). In this case, I > want to identify the 1.2.3.4 + prefix of 001234 as being > customer A.1, then strip off 001234. > > So in general, I do an avp_db_query (to be replaced by a > cache_fetch) for $si + substr($rU)... Which works fine.. BUT > if the prefix is not of a fixed length.. I'm not even really > sure hwo to go about it.. > > can you simply build your prefixes in such a manner that you can > identify the end of them? like all prefixes end with 9 and they do > not contain 9.... > > Regards, > Bogdan > > > (pardon the messy sql, it's really just to prove a point) > with the avp_db_query, I can simply do a "like" select ala: > select account from customertrunks where ip=$si and to_did > like concat($rU,'%') > > But if I do a cache_fetch, I can't do the pattern match.. > > So how do you guys do this? or do you do it at all. :) I see a > lot of clients asking for some sort of call prefixes.. usually > a fixed length will make them happy, but I've got some now > that don't have a fixed length. > > Thanks, > Brett > > > ------------------------------------------------------------------------ > > _______________________________________________ > Users mailing list > [email protected] <mailto:[email protected]> > http://lists.opensips.org/cgi-bin/mailman/listinfo/users > > > > _______________________________________________ Users mailing list [email protected] http://lists.opensips.org/cgi-bin/mailman/listinfo/users
