AT+VCID=1 is not enabling Caller Id on USR modem

I'm testing a USR 5637 USB modem. According to the USR docs I can query modem support for Caller Id with AT+VCID:

Debug: modem_write
Debug: Write 10: "AT+VCID=?\r"
Debug: modem_read
Debug: Read 24: "AT+VCID=?
(0-16)
OK"

0-16 is unusual because the manual states the values are 0, 1, 2, I then go on to set to 1в соответствии с руководством Enables formatted Caller ID:

Debug: modem_write
Debug: Write 10: "AT+VCID=1\r"
Debug: modem_read
Debug: Read 14: "AT+VCID=1
OK"

Позже, когда поступает вызов, информация об идентификаторе вызывающего абонента не представляется модемом USR. Информация об идентификаторе вызывающего абонента должна быть представлена ​​между кольцами 1 и 2.

Тот же код хорошо работает с модемами на основе Conextant 93001, поэтому я уверен, что код правильный. (Или в основном нормально, без явного дефекта).

Похоже, что другие испытывали похожие проблемы (например, обнаружение номера вызывающего абонента -> US Robotics 56K? С другим продуктом), но я не вижу решения.

Почему модем USR не предоставляет информацию об идентификаторе вызывающего абонента?


Вот последовательность запуска, которую я использую. Похоже, что они следуют руководству US Robotics.

init:
while (ATZ != OK)
  goto init

# gather modem info
ATI0
ATI1
ATI2
ATI3
ATI4

# query fax class
AT+FCLASS=?

# query compression
AT+VSM=?

# set caller id
AT+VCID=1

loop:
    # process data
    read_modem
    ...

    goto loop

Вот что formatted Caller ID выглядит как на модемах Conexant. На модемах Conexant это появляется между кольцами 1 и 2:

Debug: modem_read
Debug: Read 59: "DATE = 0302
TIME = 1601
NMBR = 6045551212
NAME = JOHN DOE"

Вот строка инициализации, которую использует Windows. Это взято из загрузки драйвера USR5637Voice64bit.exe и usr5637_rv.inf файл:

AT
AT&F1E0Q0V1&C1&D2S0=0

Когда я проверял это, строка инициализации также не включала Caller Id.

0 ответов

Это заняло некоторое время, но вот и ответ. Следующие три параметра должны быть установлены для получения идентификатора вызывающего абонента от модема USR5367:

init:
while (ATZ != OK)
  goto init

# set fax class
AT+FCLASS=8

# disable call waiting
AT+PCW=0

# set caller id
AT+VCID=1

loop:
    # process data
    read_modem
    ...

    goto loop

Функция "Ожидание вызова" имеет отношение к функции "Модем при удержании" (MoH) модемов USR и способности модема переключать линии во время вызова. Я не совсем понимаю, что ожидание вызова связано с идентификатором вызывающего абонента, хотя.

В отличие от модемов на основе Conexant CX93001 только AT+VCID=1, А конексант требуют AT+FCLASS=0; установка +FCLASS заставляет Caller ID перестать работать. +PCW не имеет значения; и Conexant работает с AT+PCW=2,


Если вам нужно обнаружить модемы Conexant vs USR во время выполнения, используйте ATI3, Возвращаются строки модема:

Conexant:

Debug: modem_write
Debug: Write 7: "ATI3\r"
Debug: modem_read
Debug: Read 38: "ATI3
CX93001-EIS_V0.2013-V92

OK"

USR:

Debug: modem_write
Debug: Write 7: "ATI3\r"
Debug: modem_read
Debug: Read 48: "ATI3
U.S. Robotics 56K FAX USB V1.2.23

OK"

Это может быть полезно для тех, кто программирует модем USR5367... Когда для USR5367 функционирует идентификатор вызывающего абонента, модем передает сообщения, относящиеся к идентификатору вызывающего абонента, с помощью сообщений "Data Link Escape" (DLE). Сообщения DLE сигнализируются символом 0x10.

RING общается с <DLE>+R и информация о звонящем с <DLE>+X, Таким образом, кольцо сигнализируется двумя байтами 0x10 0x52 (с последующим <CR><LF>). Информация об идентификаторе вызывающего абонента передается двумя байтами 0x10 0x58 0x10 (с последующим <CR><LF>). Данные идентификатора вызывающего абонента следующие <DLE>+X используя пары имя / значение, например NAME=PASADENA MD<CR><LF> а также NMBR=4104394421<CR><LF>, Полное сообщение CallerID будет выглядеть так:

<DLE>+X<CR><LF>
NAME=PASADENA     MD<CR><LF>
NMBR=4104394421<CR><LF>
DATE=1106<CR><LF>
TIME=1425<CR><LF>

(А также <CR><LF> в руководстве называется "трейлер" и используется как конец строки, как указано S3а также S4 зарегистрировать параметры).

Другие вопросы по тегам