﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	resolution	keywords	cc
355	Ошибка TDM timeslot is invalid при создании канала	san	alx	"Предыстория:
Алексей Д. и Влад, экспериментируя с аппаратурой PLC-АДАСЭ, подключенной к порту FXS нашей АТС, обнаружили, что соответствующее окончание FXS вдруг сломалось: на вызов из IP оно отвечает Temporary Unavailable и не отображает изменения состояний при изменении СУВ со стороны tdm(при поднятии трубки остаётся в состоянии Idle).

Далее коментарии от alx:
{{{!!!!! function SUPVSR_CREATE_CHANNEL (0x0010): error ERR_TDMDRV_INVTS (0xffbd): TDM timeslot is invalid}}}(MSP считает, что сам номер таймслота 15 является неправильным - типа не бывает такого таймслота как 15).На самом деле плата СУВ видит, но при попытке создать соответствующий канал MSP возвращает ошибку. Почему MSP считает таймслот invalid, я не знаю. Предполагаю, что имеет место баг в MSP.

При перезапуске sip_ua сказал: {{{dead channel 15 found (channelId=0x0005)}}}. Заработало. А диагностика из MSP оказалась не очень адекватной...

Для начала имеет смысл проанализировать код и попытаться понять, почему рассинхронизировались состояние MSP (канал был создан) и канального окончания (которое считало, что канал не создан).
Разглядывая код, я могу предположить следующие причины:
- при запросе создать канал MSP создал канал, но почему-то вернул ошибку;
- при запросе уничтожить канал MSP почему-то канал не уничтожил (возможно, вернул какую-то ошибку, однако в коде успешность уничтожения канала не проверяется).

Что делать:
- Во-первых, думаю надо сделать проверку кода завершения функции уничтожения канала чтобы, как минимум, канальное окончание знало, что канал не уничтожился, и не пыталось его потом создавать.
- Во-вторых, можно обрабатывать ошибку создания канала ERR_TDMDRV_INVTS и делать попытку запроса его ID по номеру таймслота (как это делается при старте sip_ua)."	баг	closed	средний	1 очередь	VE-01	fixed		
