Получение и сохранение звука с GSM shield

Eljah
Offline
Зарегистрирован: 11.01.2015

Привет всем!

Исследую возможности сделать устройство для проверки корректности работы одного IVR-сервиса (т.е. когда человека звонит на некий телефонный номер и ему отвечают заранее записанные варианты вопросов).

IVR сделан так, что через GSM в GSM модуль направляются непосредственно цифровые данные, т.е. на этом этапе никаких шумов нет. В идеале, нужно иметь возможность получить пришедшие на gsm модуль цифровые данные и передать их, допустим, через последовательный порт, причем не обязательно все подряд, а с некой прореживающей выборкой. Ситуации там может быть две - ivr сервис "лежит", т.е. не отвечает вообще или отвечает неким более коротким ответом, либо по ошибке подключен другой вопрос. Так или иначе, если выборка данных будет отличаться 1) по продолжительности времени 2) по содержанию - это будет сигнал к расследованию ситуации. 

Возник вопрос, есть ли вообще возможность эти данные из sim900 получить? По даташиту смотрю - вроде бы только аналоговый выход с микрофона. Тут, увы, видимо, от шумов отделаться не получится. 

Подскажите, в каком направлении можно двигаться: в сторону получения цифровых данных из недр sim900 по цифровому выходу, или обрабатывая данные с выхода микрофона? Если последнее, то какие стандартные подходы для этого есть? Как можно получить звук в WAV или аналогичном несжатом формате и отправить через последовательный порт? Вопрос экономии объема данных не стоит, т.е. в идеале можно уменьшать битрейт до плинтуса, а вот данные желательно иметь в более простом виде для операции сравнения, т.е. не возиться с раскодированием и т.п. 

mcshel
Offline
Зарегистрирован: 17.10.2014

Извините за небольшой оффтоп, НО Может вам стоит в сторону Asterisk посмотреть?

Eljah
Offline
Зарегистрирован: 11.01.2015

спасибо, интересный вариант, но как я понимаю, Asterisk не позволит сравнительно низкоуровнево проверить работу IVR для GSM сетей именно "в указанное точке" насколько я понял описание, никакого способоа выйти в локальную GSM сеть нет. в том решении, которое хочется сделать - там предполагается еще и низкоуровневые тесты с sms, ussd, и все это совершенно очевидно как делать (но это можно сделать и на обычном модеме, прелесть gsm shield - например поставить много sim холдеров, и выполнять аналогичный тест с нескольких операторов, что нужно для задачи), а вот добавить аналогичные функции для звука прямо туда же- вот это было бы интересно.

mcshel
Offline
Зарегистрирован: 17.10.2014

Asterisk это софт для создание своей АТС, работает под Unix операционными системами. То что вы описали, т.е. в ответ на какой-то звонок осущесвить проигрывание какого-то аудио-файла легко реализуется. Там хоть меню голосовое делай. Вообщем статей в интернете море.

Eljah
Offline
Зарегистрирован: 11.01.2015

нет-нет-нет. цель как раз обратная!!! решение на Arduino нужно для ПРОВЕРКИ работы такого уже существующего сервиса. причем, сервис не совсем уж примитивный автоответчик, а имеет непростую логику в зависимости от времени и местоположения звонка, подвержен разработке новых фич и багам. для выполнения чеклиста по этому сервису, т.е. чтобы заменить звонящего на сервис человека, и нужно решение на ардуино, астериск тут кажется, никак не прокатит. т.к. например, проверяемым кейсом может быть "для сим-карты Мегафон-Поволжье снять за услугу Н рублей, для сим-карту МТС - Х рублей"