1

Я тестирую USB-модем USR 5637. В соответствии с документами USR я могу запросить поддержку модема для Caller Id с AT+VCID:

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

0-16 необычно, потому что в руководстве указаны значения 0, 1, 2 . Затем я продолжаю устанавливать значение 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, поэтому я уверен, что код правильный. (Или в основном нормально, без явного дефекта).

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


Вот последовательность запуска, которую я использую:

init:
while (ATZ != OK)
  goto init

# gather modem info
ATI0
ATI1
ATI2
ATI3
ATI4

# query fax class
AT+FCLASS=?

# query compression
AT+VSM=?

# query caller id
AT+VCID=?

# 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"

0