LINUX.ORG.RU
решено ФорумAdmin

Asterisk зависшие каналы.

 ,


0

4

Я не очень сильно разбираюсь в астерисках.

У клиента стоит FreePBX 13 и недавно они начали жаловаться на пропадающий звук во время звонка.

Зашел, посмотрел что там - увидел 2 зависших channel по 50000+ часов. Один из них был внутренним звонком с 3хх на 2хх, а вот второй забыл.

На счет второго вопрос: предположим сотрудник с номером 321 звонил кому-то во внешний мир через сип провайдера и канал во время разговора «завис» на 50к часов. Может ли прийти огромный счет за незавершенный разговор? Если да, то почему? Если нет, то почему?

Я не знаю как это работает, а на чтение документации и понимание сего процесса уйдет больше времени, нежели если я задам вопрос здесь.

Спасибо.



Последнее исправление: frozen92 (всего исправлений: 1)

Если да, то почему? Если нет, то почему?

Да, если канал не отвалился от провайдера (маловероятно).

Нет, если канал отвалился от провайдера и просто завис (очень вероятно).

Наблюдал такое при использовании MeetMe с абонентом из внешки. Писал костыль для принудительного прибития канала, если нет второй ноги.

pztrn ★★★★
()
Последнее исправление: pztrn (всего исправлений: 1)

таймаут

Почти все провайдеры с которыми работал, рвут соединение больше часа, принудительно. что спасает вот таких вот.

opri
()

Да забагованый проект просто: Asterisk: PVS-Studio заинтересовался телефонией.

static void sip_threadinfo_destructor(void *obj)
{
  struct sip_threadinfo *th = obj;
  struct tcptls_packet *packet;

  if (th->alert_pipe[1] > -1) {            // <=
    close(th->alert_pipe[0]);
  }
  if (th->alert_pipe[1] > -1) {
    close(th->alert_pipe[1]);
  }
  th->alert_pipe[0] = th->alert_pipe[1] = -1;
  ....
}

> Здесь планировалось проверять состояние каналов с номерами 0 и 1, после чего они закрываются, но из-за опечатки состояние канала с номером 0 не проверяется. Возможно, код корректно работает долгое время, потому что в большинстве случаев задействованы оба канала.

PVS-Studio_engineer
()

Посмотри в sip.conf, надо выставить timeout'ы для дохлых каналов, тогда все будет ОК.

zgen ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.