hi bodgan,
Thanks for your reply. I made some changes and call is now going to
destination. But when no answer or busy it is not going to failure route.
here are the changes i did.
#unconditional call forward
if(avp_db_load($ruri/username,$avp(s:callfwd)))
{
avp_pushto($ruri, $avp(s:callfwd));
avp_print();
route(4);
exit;
}
#fwd on busy
if (avp_db_load($ruri/username, $avp(s:fwdbusy))) {
if (!avp_check($avp(s:fwdbusy), eq/$ruri/i)) {
setflag(26);
};
};
fwd on noanswer
if (avp_db_load($ruri/username, $avp(s:fwdnoanswer))) {
if (!avp_check($avp(s:fwdnoanswer), eq/$ruri/i)) {
setflag(27);
};
};
t_on_failure(3);
#Failure Route#
failure_route[3]
{
if (isflagset(26) t_check_status(486)) {
if (avp_pushto($ruri,$avp(s:fwdbusy))) {
avp_delete($avp(s:fwdbusy));
resetflag(26);
route(4);
exit;
};
};
if (isflagset(27) t_check_status(408) t_check_status(487)) {
if (avp_pushto($ruri, $avp(s:fwdnoanswer))) {
avp_delete($avp(s:fwdnoanswer));
resetflag(27);
route(4);
exit;
};
};
It does not going to failure route and just hanging up!
Bogdan-Andrei Iancu wrote:
Hi Indiver,
The error message may come because you message is spiralling 3 times
(according to the redirect rules) on your opensips and each time the
INVITE request is getting larger (due extra VIA and RR headers for each
hop). Do you check in your script for message len and send the 513? or
who is responsible for generating it?
A second issue is, looking at the logs you posted, that it seams there
is a double reply in your script. See:
Nov 26 20:29:16 [25335] ERROR:tm:_reply_light: failed to
generate 200 reply when a final 200 was sent out
Can you post the entire log (for the INVITE part) ?
Regards,
Bogdan
Indiver wrote:
Hai Every one,
I'm trying to implement callfwd,fwdnoanswer,fwdonbusy features. According
to
that i tried some scripts and callfwd is working fine. The problem is
when i
implement's fwdnoanswer,fwdonbusy i'm getting 513 message too big error.
My
changes in cfg file as follows
if(avp_db_load($ruri/username,$avp(s:callfwd)))
{
avp_pushto($ruri, $avp(s:callfwd));
avp_print();
route(4);
exit;
}
if (avp_db_load($ru/username, $avp(s:fwdnoanswer)))
{
if (!avp_check($avp(s:fwdnoanswer), eq/$ru/i))
{
setflag(27);
#avp_pushto($ru, $avp(s:fwdnoanswer));
avp_print();
route(4);
exit;
};
};
My usr_preferences db data is as follows:
++--+--++-+--+-+-+
| id | uuid | username | domain | attribute | type | value
| last_modified |
++--+--++-+--+-+-+
| 16 | | 1001 | 192.168.1.55 | fwdnoanswer |0 |
sip:1...@192.168.1.55| 1900-01-01 00:00:01 |
| 15 | | 1002 | 192.168.1.55 | fwdnoanswer |0 |
sip:1...@192.168.1.55 | 1900-01-01 00:00:01 |
17 1000 192.168.1.55 callfwd 0
sip:1...@192.168.1.55
And here i'm pasting my error log:
Nov 26 20:29:16 [25335] DBG:db_mysql:db_mysql_str2val: converting STRING
[fwdnoanswer]
Nov 26 20:29:16 [25335] DBG:db_mysql:db_mysql_str2val: converting INT [0]
Nov 26 20:29:16 [25335] DBG:avpops:dbrow2avp: db_flags=3, flags=12
Nov 26 20:29:16 [25335] DBG:avpops:db_close_query: close avp query
Nov 26 20:29:16 [25335] DBG:core:db_free_columns: freeing result columns
at
0x8189910
Nov 26 20:29:16 [25335] DBG:core:db_free_rows: freeing 1 rows
Nov 26 20:29:16 [25335] DBG:core:db_free_row: freeing row values at
0x81a1090
Nov 26 20:29:16 [25335] DBG:core:db_free_rows: freeing rows at 0x81a1088
Nov 26 20:29:16 [25335] DBG:core:db_free_result: freeing result set at
0x81a06f8
Nov 26 20:29:16 [25335] DBG:core:db_free_result: SYNC-DBG - freeing
result!
Nov 26 20:29:16 [25335] DBG:avpops:ops_dbload_avps: loaded avps = 1
Nov 26 20:29:16 [25335] DBG:avpops:ops_check_avp: check
sip:1...@192.168.1.55 against sip:1...@192.168.1.55 as str /33554433
Nov 26 20:29:16 [25335] DBG:avpops:ops_check_avp: no match
Nov 26 20:29:16 [25335] INFO:avpops:ops_print_avp: p=0xf5acd690,
flags=0x0083
Nov 26 20:29:16 [25335] INFO:avpops:ops_print_avp:
name=fwdnoanswer
Nov 26 20:29:16 [25335] INFO:avpops:ops_print_avp:
val_str=sip:1...@192.168.1.55 / 23
Nov 26 20:29:16 [25335] DBG:core:db_do_query: SYNC-DBG - SELECT
successfully
executed!
Nov 26 20:29:16 [25335] DBG:core:db_new_result: allocate 28 bytes for
result
set at 0x81a06f8
Nov 26 20:29:16 [25335]