На данный момент у меня следующие настройки:
- в /etc/ppp/peers создан файл me75_gprs с содержимым:
Код:
noauth connect "/usr/sbin/chat -v -f /etc/chatscripts/me75_gprs_on" disconnect "/usr/sbin/chat -v -f /etc/chatscripts/me75_gprs_off" defaultroute /dev/ttyUSB0 115200 passive noipdefault noproxyarp novj nodeflate nobsdcomp usepeerdns user wap password wap crtscts lcp-echo-failure 0 lcp-echo-interval 0 default-asyncmap escape ff - содержимое /etc/chatscripts/me75_gprs_on:
Код: Выделить всё
TIMEOUT 30 ABORT 'NO ANSWER' ABORT 'BUSY' ABORT 'NO CARRIER' ABORT 'ERROR' '' 'ATZ' OK 'ATE1' OK 'AT+CGDCONT=1,"IP","internet"' OK 'ATDT*99***1#' CONNECT '\c\d'
- содержимое /etc/chatscripts/me75_gprs_off:
Код: Выделить всё
TIMEOUT 30 ABORT 'BUSY' ABORT 'ERROR' ABORT 'NO DIALTONE' '' 'ATH' OK 'AT+CGATT=0' OK '\c\d'
Мне кажется, что в me75_gprs_off нужно написать другие команды для корректного завершения соединения.
Файл журнала при успешном соединении выглядит так:
Код:
Oct 28 17:56:34 localhost pppd[3966]: pppd 2.4.4 started by snake, uid 1000
Oct 28 17:56:35 localhost chat[3967]: timeout set to 30 seconds
Oct 28 17:56:35 localhost chat[3967]: abort on (NO ANSWER)
Oct 28 17:56:35 localhost chat[3967]: abort on (BUSY)
Oct 28 17:56:35 localhost chat[3967]: abort on (NO CARRIER)
Oct 28 17:56:35 localhost chat[3967]: abort on (ERROR)
Oct 28 17:56:35 localhost chat[3967]: send (ATZ^M)
Oct 28 17:56:35 localhost chat[3967]: expect (OK)
Oct 28 17:56:35 localhost chat[3967]: ATZ^M^M
Oct 28 17:56:35 localhost chat[3967]: OK
Oct 28 17:56:35 localhost chat[3967]: -- got it
Oct 28 17:56:35 localhost chat[3967]: send (ATE1^M)
Oct 28 17:56:35 localhost chat[3967]: expect (OK)
Oct 28 17:56:35 localhost chat[3967]: ^M
Oct 28 17:56:36 localhost chat[3967]: ATE1^M^M
Oct 28 17:56:36 localhost chat[3967]: OK
Oct 28 17:56:36 localhost chat[3967]: -- got it
Oct 28 17:56:36 localhost chat[3967]: send (AT+CGDCONT=1,"IP","internet"^M)
Oct 28 17:56:36 localhost chat[3967]: expect (OK)
Oct 28 17:56:36 localhost chat[3967]: ^M
Oct 28 17:56:36 localhost chat[3967]: AT+CGDCONT=1,"IP","internet"^M^M
Oct 28 17:56:36 localhost chat[3967]: OK
Oct 28 17:56:36 localhost chat[3967]: -- got it
Oct 28 17:56:36 localhost chat[3967]: send (ATDT*99***1#^M)
Oct 28 17:56:36 localhost chat[3967]: expect (CONNECT)
Oct 28 17:56:36 localhost chat[3967]: ^M
Oct 28 17:56:39 localhost chat[3967]: ATDT*99***1#^M^M
Oct 28 17:56:39 localhost chat[3967]: CONNECT
Oct 28 17:56:39 localhost chat[3967]: -- got it
Oct 28 17:56:39 localhost chat[3967]: send (c\d^M)
Oct 28 17:56:40 localhost pppd[3966]: Serial connection established.
Oct 28 17:56:40 localhost pppd[3966]: Using interface ppp0
Oct 28 17:56:40 localhost pppd[3966]: Connect: ppp0 <--> /dev/ttyUSB0
Oct 28 17:56:41 localhost pppd[3966]: CHAP authentication succeeded
Oct 28 17:56:41 localhost pppd[3966]: CHAP authentication succeeded
Oct 28 17:56:47 localhost pppd[3966]: local IP address 10.203.7.103
Oct 28 17:56:47 localhost pppd[3966]: remote IP address 192.168.254.254
Oct 28 17:56:47 localhost pppd[3966]: primary DNS address 83.149.49.238
Oct 28 17:56:47 localhost pppd[3966]: secondary DNS address 83.149.49.234[code]
Если отключиться и снова подключиться, то картина такая:
[code]Oct 28 17:53:34 localhost pppd[3818]: pppd 2.4.4 started by snake, uid 1000
Oct 28 17:53:35 localhost chat[3819]: timeout set to 30 seconds
Oct 28 17:53:35 localhost chat[3819]: abort on (NO ANSWER)
Oct 28 17:53:35 localhost chat[3819]: abort on (BUSY)
Oct 28 17:53:35 localhost chat[3819]: abort on (NO CARRIER)
Oct 28 17:53:35 localhost chat[3819]: abort on (ERROR)
Oct 28 17:53:35 localhost chat[3819]: send (AT+CGATT=0^M)
Oct 28 17:53:36 localhost chat[3819]: expect (OK)
Oct 28 17:53:36 localhost chat[3819]: ~^?}#@!}!}#} }9}"}&} }*} } }'}"}(}"}%}&I@rJ}#}%B#}%Lb~~^?}#@!}!}#} }9}"}&} }*} } }
Oct 28 17:53:36 localhost chat[3819]: '}"}(}"}%}&I@rJ}#}%B#}%Lb~~^?}#@!}!}#} }9}"}&} }*} } }'}"}(}"}%}&I@rJ}#}%B#}%Lb~~
Oct 28 17:53:36 localhost chat[3819]: ^?}#@!}!}#} }9}"}&} }*} } }'}"}(}"}%}&I@rJ}#}%B#}%Lb~~^?}#@!}!}#} }9}"}&} }*} } }'
Oct 28 17:53:36 localhost chat[3819]: }"}(}"}%}&I@rJ}#}%B#}%Lb~~^?}#@!}!}#} }9}"}&} }*} } }'}"}(}"}%}&I@rJ}#}%B#}%Lb~~^?
Oct 28 17:53:36 localhost chat[3819]: }#@!}!}#} }9}"}&} }*} } }'}"}(}"}%}&I@rJ}#}%B#}%Lb~~^?}#@!}!}#} }9}"}&} }*} } }'}
Oct 28 17:53:36 localhost chat[3819]: "}(}"}%}&I@rJ}#}%B#}%Lb~~^?}#@!}!}#} }9}"}&} }*} } }'}"}(}"}%}&I@rJ}#}%B#}%Lb~~^?}
Oct 28 17:53:36 localhost chat[3819]: #@!}!}#} }9}"}&} }*} } }'}"}(}"}%}&I@rJ}#}%B#}%Lb~~^?}#@!}!}#} }9}"}&} }*} } }'}"
Oct 28 17:53:36 localhost chat[3819]: }(}"}%}&I@rJ}#}%B#}%Lb~~^?}#@!}!}#} }9}"}&} }*} } }'}"}(}"}%}&I@rJ}#}%B#}%Lb~~^?}#
Oct 28 17:53:36 localhost chat[3819]: @!}!}#} }9}"}&} }*} } }'}"}(}"}%}&I@rJ}#}%B#}%Lb~~^?}#@!}!}#} }9}"}&} }*} } }'}"}
Oct 28 17:53:36 localhost chat[3819]: (}"}%}&I@rJ}#}%B#}%Lb~~^?}#@!}!}#} }9}"}&} }*} } }'}"}(}"}%}&I@rJ}#}%B#}%Lb~~^?}#@
Oct 28 17:53:36 localhost chat[3819]: !}!}#} }9}"}&} }*} } }'}"}(}"}%}&I@rJ}#}%B#}%Lb~~^?}#@!}!}#} }9}"}&} }*} } }'}"}(
Oct 28 17:53:36 localhost chat[3819]: }"}%}&I@rJ}#}%B#}%Lb~~^?}#@!}!}#} }9}"}&} }*} } }'}"}(}"}%}&I@rJ}#}%B#}%Lb~~^?}#@!
Oct 28 17:53:36 localhost chat[3819]: }!}#} }9}"}&} }*} } }'}"}(}"}%}&I@rJ}#}%B#}%Lb~~^?}#@!}!}#} }9}"}
Время в логах не хронологически, потому, что я пробовал подключаться много раз, копировал примерно из средины лога.
Дак вот собственно вопрос: как правильно прописать завершение GPRS сессии?
P.S.: При подключении, после набора номера, может вываливаться аналогичный "мусор", но такое происходит редко. В любом случае помогает либо перезагрузка телефона, либо подключение с последующим отключением GPRS на телефоне.