app_dial.c:1183 dial_exec_full: Unable to create channel of type 'IAX2'
Сколько не перепробовал версий, только версия 1.4.13, почемуто работала более или менее нормально, но в нагрузке и в ней обнаружены такие траблы. Поставил версию 1.4.21.1, теже проблемы: когда логинятся два пользователя:
[Jul 3 17:28:20] NOTICE[5864]: chan_iax2.c:6201 update_registry: Restricting registration for peer 'user1' to 60 seconds (requested 300)
[Jul 3 17:28:20] NOTICE[5864]: chan_iax2.c:6201 update_registry: Restricting registration for peer 'user2' to 60 seconds (requested 300)
когда один юзер пытается дозвониться другому, то астериск выдает:
[Jul 3 17:13:44] WARNING[8040]: app_dial.c:1183 dial_exec_full: Unable to create channel of type 'IAX2' (cause 3 - No route to destination)
Заметил я, что в базу не всегда пишется айпишники пользователей, сделали правочку в chan_iax2.c:
static void realtime_update_peer(const char *peername, struct sockaddr_in *sin, time_t regtime)
{
char port[10];
char regseconds[20];
snprintf(regseconds, sizeof(regseconds), "%d", (int)regtime);
snprintf(port, sizeof(port), "%d", ntohs(sin->sin_port));
if (sin->sin_addr.s_addr != 0)
ast_update_realtime("iaxpeers", "name", peername,
"ipaddr", ast_inet_ntoa(sin->sin_addr), "port", port,
"regseconds", regseconds, NULL);
else
ast_update_realtime("iaxpeers", "name", peername, "port", port,
"regseconds", regseconds, NULL);
}
Типа, если астериск хочет прописать айпишник пользователя 0.0.0.0, то мы это в базу не пишем.
Не помогает... даже не знаю куда копать, может кто подскажет?
|