LINUX.ORG.RU

тонкости chat


0

0

Постигаю премудрости модемной связи в Linux. Для моей задачи, как мне кажется, достаточно простого chat-скрипта, однако чтение man chat не привело к просветлению, поэтому прошу помощи здесь. Суть вопросов такова.

1. Начальная инициализация модема. Сразу после подключения я в терминале говорю ему AT — он может ответить что угодно, или не ответить вообще, поэтому AT ему нужно говорить несколько раз (или один раз, если он ответил сразу). Строк вида

" AT

OK something

очевидно, недостаточно, потому как я даю одну команду и жду ответа на нее, а ответа может и не быть. Как это автоматизировать?

2. chat должен слушать порт постоянно, так как в произвольный момент времени на него могут позвонить, он должен этот звонок обработать и ждать следующего. Можно ли это реализовать средствами самого chat или нужно его постоянно перезапускать?

Пока это все вопросы, но, вероятно, будут еще. Заранее спасибо.

> 1. Начальная инициализация модема.

Вопрос почти решен: в «ожидаемой» строке нужно прописать

OK-AT-OK-AT-OK something

Тогда после первого таймаута chat не будет завершать работу, а пошлет снова AT. Если же снова не ответит — то после второго таймаута он повторит команду, и только если и на нее не будет ответа — завершит работу.

Второй вопрос все еще в силе.

decadent
() автор топика
Ответ на: комментарий от anonymous

chat — это потому, что работа должна быть неинтерактивная, без участия человека. На номер позвонили — модем получил данные — сохранил их на диск — повесил трубку. И ждет следующего звонка.

A ATDP к чему упомянуто? Модем никуда не звонит, он ждет входящего звонка.

decadent
() автор топика
Ответ на: комментарий от decadent

>На номер позвонили — модем получил данные — сохранил их на диск — повесил трубку.

А mgetty к этому приспособить не пробовали? Он весьма хорош.

Zenom ★★★
()

1. Сделай задержку перед первым AT

2. mgetty

ansky ★★★★★
()
Ответ на: комментарий от Zenom

> А mgetty к этому приспособить не пробовали? Он весьма хорош.

mgetty пока не пробовал, но читал о нем и его возможностях. Мне он показался слишком уж навороченным для такой простой задачи. Но, похоже, придется использовать его.

decadent
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.