Как вы должны программно определять, когда удаленный модем на вашем телефоне зависает? Я пишу программу C, которая взаимодействует с устройством SoftModem /dev/ttySL0
в Ubuntu linux. Я могу настроить модем с помощью команд Hayes AT и общаться с удаленным модемом. Однако я не смог определить, как я должен обнаружить, что другой конец повесил линию.Hayes AT Commands: Обнаружение удаленной зависания?
У меня есть модем, настроенный так, что, когда другой конец зависает, устройство печатает NO CARRIER
и переключается в режим команд. Однако я не могу использовать строку NO CARRIER
, потому что я не могу гарантировать, что модем не получит эту строку в режиме данных.
Как вы "прослушиваете" удаленное соединение?
P.S. У меня нет реплики для создания тега 56k-modem или softmodem. Модемный тег, похоже, больше связан с модемами доступа в Интернет, чем для модем-модемных модемов 56k. –
Я добавил тэг [at-command]; этого должно хватить. [listen] на самом деле не тег. –
Интересный. В аппаратном мире RS232 для этого используется провод CD (Carrier Detect). Если вы используете API/библиотеку, есть ли соответствующая виртуализация? –