
Bakhodur K
19.06.2017
16:44:02
не а, я ставил из исходников, у меня гента. и selinux-а тут нет

Konstantin
19.06.2017
16:45:20
А что пишется а консоли в тот момент, когда происходит попытка проиграть файл?

Bakhodur K
19.06.2017
16:46:21
ничего не пишет
ну в смысле не ругается

Google

Bakhodur K
19.06.2017
16:46:36
ни на что
думаю проблема в другом
Для проверки сделал
con.execute("playback", "/usr/share/freeswitch/sounds/ru/RU/elena/ascii/8000/32.wav")
— Не проиграл

Konstantin
19.06.2017
16:47:30
Т.е. в логе freeswitch.log для вызова, в рамках которого происходит попытка проиграть файл нет никаких сообщений на тему этой попытки?

Bakhodur K
19.06.2017
16:47:37
input: /etc/freeswitch/sounds/italian_pizza/gen_cust_ord.mp3
(22.05 kHz, 1 channel, MPEG-2 Layer III)
output: /etc/freeswitch/sounds/italian_pizza/gen_cust_ord.wav
(16 bit, Microsoft WAVE)
skipping initial 529 samples (encoder+decoder delay)
Frame# 192/193 48 kbps
секунду

Konstantin
19.06.2017
16:48:22
С форматом всё в порядке, судя по всему, раз не играет стандартные файлы из поставки самого FS.
А нескромный вопрос: mod_dptools загружен?

Bakhodur K
19.06.2017
16:49:15
не знаю
ща гляну

Konstantin
19.06.2017
16:49:24
fs_cli -x 'module_exists mod_dptools'

Bakhodur K
19.06.2017
16:50:04
gentux elena # fs_cli -x 'module_exists mod_dptools'
true
да, вроде запущен

Google

Konstantin
19.06.2017
16:50:25
Хорошо

Bakhodur K
19.06.2017
16:50:51
подскажи плз где еще можно посмотреть
блин, что за фигня

Konstantin
19.06.2017
16:51:28
В логе что на тему этого звонка в том месте, где попытка проиграть?

Bakhodur K
19.06.2017
16:52:47
mod_unimrcp.c:851 (ASR-0) audio queue destroyed
может это
щас еще раз проиграю
вернее попробую

Konstantin
19.06.2017
16:53:17
нет - это касается распознавания речи.
Есть возможность запустить fs_cli, выполнить вызов и сюда скопировать вывод из консольки скопировать?

Denis 災 nobody
19.06.2017
16:55:40
портянок дебага тут не надо

Konstantin
19.06.2017
16:56:00
Да, пусть так, чтобы не загаживать.

Bakhodur K
19.06.2017
16:56:22
Странная проблема
Если делаю так
if tag == 'SAMPLE':
con.execute("playback", "/etc/freeswitch/sounds//get_cust.wav")
self.asrfunc()
order_res_b = order_res + cust_quant_ord+ cust_name_ord + cust_ingr_ord
print(order_res_b)
self.play_sound(order_res_b)
#con.execute("playback", "/etc/freeswitch/sounds//get_cust.wav")
break
Проигрывает

Konstantin
19.06.2017
16:59:39
Разные файлы играйте, поймёте, куда не доходит управление.

Bakhodur K
19.06.2017
16:59:53
А так если сделать — не работает
if tag == 'SAMPLE':
#con.execute("playback", "/etc/freeswitch/sounds/get_cust.wav")
self.asrfunc()
order_res_b = order_res + cust_quant_ord+ cust_name_ord + cust_ingr_ord
print(order_res_b)
self.play_sound(order_res_b)
con.execute("playback", "/etc/freeswitch/sounds/get_cust.wav")
break
блин, я же всего лишь местами меняю

Denis 災 nobody
19.06.2017
17:00:13
просто не доходит?
self.play_sound(order_res_b)

Google

Denis 災 nobody
19.06.2017
17:00:22
тут может что не так

Konstantin
19.06.2017
17:01:08
А ещё, возможно, звонящий не воспринимает one-way-audio
183 Progress + SDP

Bakhodur K
19.06.2017
17:01:21
хоть убей не понимаю
я даже так сделал #self.play_sound(order_res_b) — не проигрывает

Konstantin
19.06.2017
17:01:46
Попробуйте прежде, чем что-то проигрывать ответить answer()

Bakhodur K
19.06.2017
17:02:24
в смысле приложение answer?
щас

Konstantin
19.06.2017
17:02:47
Да. Чтобы сеанс был ANSWERED

Denis 災 nobody
19.06.2017
17:02:53

Bakhodur K
19.06.2017
17:03:01
щас

Denis 災 nobody
19.06.2017
17:03:03
(после небольшого патча кода)

Bakhodur K
19.06.2017
17:04:03
answer не помог(
#self.play_sound(order_res_b)
con.execute("answer")
con.execute("playback", "/etc/freeswitch/sounds/italian_pizza/gen_cust_ord.wav")
не помогло

Konstantin
19.06.2017
17:07:15
Всё-таки лог звонка бы.

Bakhodur K
19.06.2017
17:22:32
щас

Konstantin
19.06.2017
17:27:53
Не критично, но лучше преобразовать в 8КГц:
2017-06-19 20:23:20.387800 [DEBUG] switch_core_file.c:330 File /etc/freeswitch/sounds/italian_pizza/name/choose_ingredients.wav sample rate 22050 doesn't match requested rate 8000

Bakhodur K
19.06.2017
17:28:27
sox-oм лучше ?
не подскажете как

Google

Konstantin
19.06.2017
17:30:03
Да тем, что есть можно, просто нужно выставить частоту дискретизации для выходного файла и всё.
Я скопировал лог, лучше удалить и ссылку на pastebin
Сразу скажу, что в логе нет упоминания файла gen_cust или gen_cust_ord
Значит, команда просто не срабатывает.

Bakhodur K
19.06.2017
17:33:09
также,
без результатно

Admin
ERROR: S client not available

Bakhodur K
19.06.2017
17:33:40
ладно, думаю тут где-то в скрипте дело

Konstantin
19.06.2017
17:34:18
Попробуйте тривиальный сценарий, который только отвечает и проигрывает файл.

Bakhodur K
19.06.2017
17:35:18
Так то оно работает
стоит всего лишь две строчки местами поменять - работает
Так например работает
if tag == 'SAMPLE':
con.execute("answer", "", uuid)
con.execute("playback", "/etc/freeswitch/sounds/enc.wav", uuid)

Konstantin
19.06.2017
17:37:03
А как не работает?

Bakhodur K
19.06.2017
17:37:10
А вот так уже нет
if tag == 'SAMPLE':
self.asrfunc()
order_res_b = order_res + cust_quant_ord+ cust_name_ord + cust_ingr_ord
print(order_res_b)
con.execute("answer", "", uuid)
con.execute("playback", "/etc/freeswitch/sounds/enc.wav", uuid)

Konstantin
19.06.2017
17:38:05
А print - это вывод в консоль?
Если его убрать, а answer перенести в самое начало

Bakhodur K
19.06.2017
17:41:31
щас
также
безрезультатно
мистика

Google

Konstantin
19.06.2017
18:09:19
Есть догадка, что после вызова распознавания речи управление дальше не идёт.
Я правильно понял, что проигрывается файл только, если команда playback до вызова распознавания?

Alexandru
19.06.2017
18:19:46
Попробуй uuid broadcast

Denis 災 nobody
19.06.2017
18:39:23
Или надо как у фс, в папки с частотами
Их там штук 6

Konstantin
19.06.2017
19:02:06
Верно. Как я уже написал это "рекомендация", а "проблема" не в этом совсем.
Bakhodur K , вы подтверждаете, что до вызова asr playback срабатывает, а после asr нет?
Для проверки можно воткнуть до и после вызова asr вызов console_log("======= PRE ASR"); и
console_log("======= POST ASR"); и
Тогда в логах будет сразу видно, что срабатывает, а что нет.

Bakhodur K
20.06.2017
07:00:57
в логах по-прежнему ничего интересного
как временное решение попробую собрать фс на другой платформе и делать play
play (от sox), а не playback

ros
20.06.2017
09:01:40
кто-то тут спрашивал как конференции крутить на FS по WS и не лопнуть от входящего трафика от клиенитов, которые только смотрят/слушают.
есть интересная штука вместо FS
https://github.com/meetecho/janus-gateway
вроде как юзается в слаке

Denis 災 nobody
20.06.2017
10:03:42
если инвайт был отправлен с
a=rtpmap:13 CN/8000
в sdp, а в 183 его нет - может ли это быть причиной Reason: Q.850;cause=88;text="INCOMPATIBLE_DESTINATION"
?

ros
20.06.2017
10:21:44
INCOMPATIBLE_DESTINATION по идее никак в SDP не может быть связано