Hello all,
It seems that the phonenum module in at least 5.1.2 (haven't tried previous versions) is behaving somewhat erratically. More specifically, if there are any references to any phn PVs with the key other than "number":
if ( phonenum_match("1-484-555-8888", "src") ) {
xlog("number norm: $phn(src=>number)\n");
xlog("number country: $phn(src=>country)\n");
dbg_pv_dump(30, "L_ERR");
}kamailio will not start:
Mar 19 20:06:49 modcom-sbc-dev1 kamailio[5042]: 0(5044) DEBUG: <core> [core/pvapi.c:494]: pv_spec_lookup(): PV <$phn(src=>country)> is not in cache
Mar 19 20:06:49 modcom-sbc-dev1 kamailio[5042]: 0(5044) DEBUG: phonenum [phonenum_pv.c:160]: pv_parse_phonenum_name(): phonenum [src] - key [country]
Mar 19 20:06:49 modcom-sbc-dev1 kamailio[5042]: 0(5044) ERROR: phonenum [phonenum_pv.c:205]: pv_parse_phonenum_name(): error at PV phonenum name: src=>country
Mar 19 20:06:49 modcom-sbc-dev1 kamailio[5042]: 0(5044) ERROR: <core> [core/pvapi.c:951]: pv_parse_spec2(): pvar "phn" has an invalid name param [src=>country]
Mar 19 20:06:49 modcom-sbc-dev1 kamailio[5042]: 0(5044) ERROR: <core> [core/pvapi.c:1106]: pv_parse_spec2(): wrong char [)/41] in [$phn(src=>country)] at [17 (5)]
Mar 19 20:06:49 modcom-sbc-dev1 kamailio[5042]: 0(5044) ERROR: xlog [xlog.c:513]: xdbg_fixup_helper(): wrong format[number country: $phn(src=>country)If I comment the offending line, all is well, but when dumping PVs with dbg_pv_dump(30, "L_ERR");, only $phn(src=>number) is listed, not the other keys (country, operator, region according to the docs)
However, what is more disturbing is that phn(src=>number) always contains the string provided to phonenum_match() function, even if invalid characters are included, with no normalization. For example: