unanswered in cdr.conf

Разработка и отладка Asterisk и его приложений.

Модераторы: Admins, Модераторы

Ответить
ys
Модератор
Сообщения: 688
Зарегистрирован: 28 апр 2005, 10:00
Откуда: Петербург
Контактная информация:

unanswered in cdr.conf

Сообщение ys » 10 дек 2007, 16:44

У кого-нибудь, влияет на что-нибудь unanswered = no или unanswered = yes
в cdr.conf?

У меня одинакого. Неотвеченные каналы с тупо-пустой информацией сыпяться при любом раскладе.

Version: Asterisk 1.4.14 and branch-1.4

Аватара пользователя
IgorG
Модератор
Сообщения: 1054
Зарегистрирован: 21 ноя 2005, 05:59
Откуда: Россия, Омск
Контактная информация:

Сообщение IgorG » 11 дек 2007, 06:10

Да, похоже что так и есть. Сейчас посмотрю что там было в патче, который добавил эту опцию.

Added after 29 minutes:

murf наверное или китаец, или индиец. Иначе я не могу понять такого:

Код: Выделить всё

	if (peer && !ast_cdr_log_unanswered()) {
		/* suppress the CDR's that didn't win */
		struct chanlist *o;
		for (o = outgoing; o; o = o->next) {
			struct ast_channel *c = o->chan;
			if (c && c != peer && c->cdr) {
				ast_set_flag(c->cdr, AST_CDR_FLAG_POST_DISABLED);
			}
		}
	} else if (!peer && !ast_cdr_log_unanswered()) {
			/* suppress the CDR's that didn't win */
		struct chanlist *o;
		for (o = outgoing; o; o = o->next) {
			struct ast_channel *c = o->chan;
			if (c && c->cdr) {
				ast_set_flag(c->cdr, AST_CDR_FLAG_POST_DISABLED);		
			}
		}
	}
Копи-пейст...

Проблема где-то здесь, в app_dial. Надо смотреть почему cdr не помечается соответствующим флагом. Да и этот код надо собрать в один блок.
OpenSUSE 11.2 / Asterisk-trunk / Celeron 1100 (512mb) / chan_lcr / Linksys / Aastra 9112i
http://igorg.ru

ys
Модератор
Сообщения: 688
Зарегистрирован: 28 апр 2005, 10:00
Откуда: Петербург
Контактная информация:

Сообщение ys » 11 дек 2007, 10:35

Странный код.
Тем более, что, если учесть "return .." , в предыдущих циклах, то он вообще редко исполняется.. :)
Сам этот код можно смело переносить в "зал славы индийского кода" :)

Аватара пользователя
IgorG
Модератор
Сообщения: 1054
Зарегистрирован: 21 ноя 2005, 05:59
Откуда: Россия, Омск
Контактная информация:

Сообщение IgorG » 11 дек 2007, 12:46

Займешься? :)
Как минимум этот код нужно уменьшить вдвое. А вообще наверное лучше в чате стукнуть murf'у о этой проблемке, не такая уж она и крупная.
OpenSUSE 11.2 / Asterisk-trunk / Celeron 1100 (512mb) / chan_lcr / Linksys / Aastra 9112i
http://igorg.ru

ys
Модератор
Сообщения: 688
Зарегистрирован: 28 апр 2005, 10:00
Откуда: Петербург
Контактная информация:

Сообщение ys » 11 дек 2007, 13:32

Будем бодаться тут:
http://bugs.digium.com/view.php?id=11516
:)

Added after 11 minutes:

Кстати, я так и не понял, почему это делается в app_dial, а не в положенном месте: main/cdr.c .
cdr не только этот апликейшен же делает.

Added after 26 minutes:


Влил патч :)

Ответить