Hello again,
I find the source of this problem. This has nothing to with the settings in Asterisk.
It is problem with the code of Asterisk.
The Admin told me, that they patched the Asterisk server, so that you can pick up calls out of a waiting loop if you are not an agent.
This is code before the patch:
Code:
if (sip_cfg.pedanticsipchecking) {
ast_str_append(tmp, 0, "<dialog id=\"%s\" call-id=\"pickup-%s\" local-tag=\"%s\" remote-tag=\"%s\" direction=\"recipient\">\n",
exten, p->callid, p->theirtag, p->tag); /*Changed*/
} else {
ast_str_append(tmp, 0, "<dialog id=\"%s\" call-id=\"pickup-%s\" direction=\"recipient\">\n",
exten, p->callid); /*Changed*/
}
ast_str_append(tmp, 0,
"<remote>\n"
/* See the limitations of this above. Luckily the phone seems to still be
happy when these values are not correct. */
"<identity display=\"%s\">%s</identity>\n"
"<target uri=\"%s\"/>\n" /*Changed*/
"</remote>\n"
"<local>\n"
"<identity display=\"%s\">%s</identity>\n"
"<target uri=\"%s\"/>\n"
"</local>\n",
remote_display, remote_target, remote_target, local_display, local_target, local_target); /*Changed*/
} else {
ast_str_append(tmp, 0, "<dialog id=\"%s\" direction=\"recipient\">\n", exten);
}
This is the code after the patch:
Code:
/* We create a fake call-id which the phone will send back in an INVITE
Replaces header which we can grab and do some magic with. */
if (sip_cfg.pedanticsipchecking) {
ast_str_append(tmp, 0, "<dialog id=\"%s\" direction=\"recipient\">\n",
exten);
} else {
ast_str_append(tmp, 0, "<dialog id=\"%s\" direction=\"recipient\">\n",
exten);
}
ast_str_append(tmp, 0,
"<remote>\n"
/* See the limitations of this above. Luckily the phone seems to still be
happy when these values are not correct. */
"<identity display=\"%s\">%s</identity>\n"
"<target uri=\"sip:**%s@%s\"/>\n"
"</remote>\n"
"<local>\n"
"<identity display=\"%s\">%s</identity>\n"
"<target uri=\"%s\"/>\n"
"</local>\n",
remote_display, remote_target, exten, p->fromdomain, local_display, local_target, local_target);
} else {
ast_str_append(tmp, 0, "<dialog id=\"%s\" direction=\"recipient\">\n", exten);
}
I'm trying to figure out, what exactly is causing the problem and i'm trying to find a solution with the function active.
I would be happy, if someone can help me out.
Greetings,
Benny