Проверка сотового телефона (Архив) — различия между версиями

Материал из TaxiMaster
Перейти к: навигация, поиск
(еще немного об AT-командах)
Строка 4: Строка 4:
 
СМС-сервер также должен быть настроен.
 
СМС-сервер также должен быть настроен.
  
 +
== Проверка телефона по журналу работы ==
 
Чтобы проверить работу телефона, подключите его к компьютеру.
 
Чтобы проверить работу телефона, подключите его к компьютеру.
 
Вы должны знать порт, к которому подключен телефон, чтобы указать его в настройках СМС-сервера.
 
Вы должны знать порт, к которому подключен телефон, чтобы указать его в настройках СМС-сервера.
Строка 17: Строка 18:
 
По завершению настройки запустите сервер.
 
По завершению настройки запустите сервер.
  
Сразу после удачного запуска СМС-сервер начинает записывать в журнал работы устройства информацию.
+
Сразу после удачного запуска [[СМС-сервер]] начинает записывать в [[журнал работы устройства связи]] информацию.
Вам потребуется открыть журнал сообщений (он указывается в качестве параметра <tt>CellLogFile</tt> в настройках устройства).
+
Вам потребуется открыть [[журнал отправки и приема СМС-сообщений]].
В журнале сообщений найдите приблизительно следующие строки (очевидно, дата и время могут быть другими):
+
В конце журнала сообщений найдите приблизительно следующие строки (очевидно, дата и время могут быть другими):
  
 
  24.12.2008 | 13:56:55 >> ATZ.
 
  24.12.2008 | 13:56:55 >> ATZ.
Строка 40: Строка 41:
  
 
Теперь обратите внимание на последнюю строку: в ней написано <tt>+CPMS: (),(),()</tt>.
 
Теперь обратите внимание на последнюю строку: в ней написано <tt>+CPMS: (),(),()</tt>.
 +
[[СМС-сервер]] с помощью AT-команды <tt>+CPMS</tt> «опросил» сотовый телефон на наличие и доступ к банкам памяти с СМС-сообщениями, но получил пустой ответ.
 
Это означает, что телефон не поддерживает возможность передачи входящих сообщений в модуль СМС.
 
Это означает, что телефон не поддерживает возможность передачи входящих сообщений в модуль СМС.
 
В этом случае вам потребуется другой телефон.
 
В этом случае вам потребуется другой телефон.
Строка 49: Строка 51:
 
Сейчас вы видите, что внутри скобок написаны символы.
 
Сейчас вы видите, что внутри скобок написаны символы.
 
Эти символы означают команды, с помощью которых можно получить входящее сообщение.
 
Эти символы означают команды, с помощью которых можно получить входящее сообщение.
Если они есть, значит телефон позволяет получить входящее сообщение, и модуль СМС будет работать не только с исходящими, но и с входящими сообщениями.
+
Если они есть, значит телефон отвечает на запросы, отправляемые [[СМС-сервер]]ом, и дает доступ к ''банкам памяти,'' в которых хранятся сообщения.
 +
 
 +
Обратите внимание на то, что заключено в скобки.
 +
Первая пара скобок содержит следующую строку: <tt>"ME","SM"</tt>.
 +
Здесь даны два параметра: <tt>"ME"</tt> и <tt>"SM"</tt>.
 +
Первый параметр определяет банк памяти, в котором ''хранятся'' входящие СМС-сообщения;
 +
а второй параметр — банк, через который ''отправляются'' сообщения.
 +
 
 +
Если вы откроете [[файл конфигурации устройства связи]] в любом текстовом редакторе, вы увидите следующую строку:
 +
 
 +
#force_read_memory =
 +
 
 +
Эта строка закомментирована (перед ней стоит знак <tt>#</tt>).
 +
Раскомментируйте эту строку (удалите знак <tt>#</tt>) и после знака <tt>=</tt> запишите имя того банка памяти, в котором хранятся сообщения.
 +
В данном случае этот банк — <tt>"ME"</tt>.
 +
Таким образом, должна получиться строка:
 +
 
 +
force_read_memory = ME
 +
 
 +
Бывают случаи, когда в ответ на <tt>+CPMS</tt> в одной или нескольких парах скобок даются не два банка, а три.
 +
Например, так:
 +
 
 +
24.12.2008 | 14:23:01 << ..+CPMS: ("MT","SM","ME"),("MT","SM","ME"),("MT")....OK..
 +
 
 +
Первый банк памяти в этом случае — не <tt>"ME"</tt>, а <tt>"MT"</tt>, то есть хранение СМС-сообщений происходит в другом банке.
 +
Банк <tt>"ME"</tt> здесь выступил третьим параметром.
 +
Третий параметр — это банк памяти, в котором хранятся ''новые, непрочитанные'' сообщения.
 +
Если устройство выдало подобный результат, в качестве параметра к <tt>force_read_memory</tt> используйте название ''третьего'' банка!
 +
Например, в данном случае — так:
 +
 
 +
force_read_memory = ME
 +
 
 +
Как вы видите, параметру <tt>force_read_memory</tt>, как и в предыдущем случае, передается имя банка <tt>"ME"</tt>.
 +
Однако, эти два случая никак не связаны, и то, что имена банков совпадают для двух случаев, — совпадение.
 +
Будьте внимательны!
 +
 
 +
== Ссылки ==
 +
* http://www.developershome.com/sms/cpmsCommand.asp — описание AT-команды <tt>+CPMS</tt>.
  
 
[[Категория:Настройка]]
 
[[Категория:Настройка]]

Версия 13:13, 12 марта 2009

Проверка сотового телефона — процедура установки соответствия сотового телефона требованиям СМС-сервера. Проверка сотового телефона на предмет работы с модулем СМС происходит до запуска модуля в эксплуатацию, но после настройки. Для выполнения этой проверки на компьютер должен быть установлен модуль СМС. СМС-сервер также должен быть настроен.

Проверка телефона по журналу работы

Чтобы проверить работу телефона, подключите его к компьютеру. Вы должны знать порт, к которому подключен телефон, чтобы указать его в настройках СМС-сервера. Также необходимо открыть файл конфигурации устройства связи (по умолчанию — lcell.conf) и найти строку:

init = Z^E0+CLIP=1^+CMGF=0^+CSMS=0^+CNMI=1,1,0,2^

К этой строке добавьте +CPMS=?^ таким образом:

init = Z^E0+CLIP=1^+CMGF=0^+CSMS=0^+CNMI=1,1,0,2^+CPMS=?^

После внесения изменений сохраните файл конфигурации. По завершению настройки запустите сервер.

Сразу после удачного запуска СМС-сервер начинает записывать в журнал работы устройства связи информацию. Вам потребуется открыть журнал отправки и приема СМС-сообщений. В конце журнала сообщений найдите приблизительно следующие строки (очевидно, дата и время могут быть другими):

24.12.2008 | 13:56:55 >> ATZ.
24.12.2008 | 13:56:55 << ..OK..
24.12.2008 | 13:56:55 >> ATE0+CLIP=1.
24.12.2008 | 13:56:55 << ATE0+CLIP=1...OK..
24.12.2008 | 13:56:55 >> AT+CMGF=0.
24.12.2008 | 13:56:55 << ..OK..
24.12.2008 | 13:56:55 >> AT+CSMS=0.
24.12.2008 | 13:56:55 << ..+CSMS: 1,1,1....OK..
24.12.2008 | 13:56:55 >> AT+CNMI=1,1,0,2.
24.12.2008 | 13:56:55 << ..ERROR..
24.12.2008 | 13:56:55 >> AT+CPMS=?.
24.12.2008 | 13:56:55 << ..+CPMS: (),(),()....OK..
24.12.2008 | 13:56:55 >> AT+CPMS=?.
24.12.2008 | 13:56:55 << ..+CPMS: (),(),()....OK..

Обратите внимание на первую строку: в ней написано ATZ.. Поиск информации в журнале выполняйте именно с такой строки, потому что именно с этой строки начинается информация о запуске и работе сотового телефона.

Теперь обратите внимание на последнюю строку: в ней написано +CPMS: (),(),(). СМС-сервер с помощью AT-команды +CPMS «опросил» сотовый телефон на наличие и доступ к банкам памяти с СМС-сообщениями, но получил пустой ответ. Это означает, что телефон не поддерживает возможность передачи входящих сообщений в модуль СМС. В этом случае вам потребуется другой телефон.

В конечном итоге вы должны получить строку такого вида:

24.12.2008 | 13:56:55 << ..+CPMS: ("ME","SM"),("ME","SM"),("MT")....OK..

Сейчас вы видите, что внутри скобок написаны символы. Эти символы означают команды, с помощью которых можно получить входящее сообщение. Если они есть, значит телефон отвечает на запросы, отправляемые СМС-сервером, и дает доступ к банкам памяти, в которых хранятся сообщения.

Обратите внимание на то, что заключено в скобки. Первая пара скобок содержит следующую строку: "ME","SM". Здесь даны два параметра: "ME" и "SM". Первый параметр определяет банк памяти, в котором хранятся входящие СМС-сообщения; а второй параметр — банк, через который отправляются сообщения.

Если вы откроете файл конфигурации устройства связи в любом текстовом редакторе, вы увидите следующую строку:

#force_read_memory =

Эта строка закомментирована (перед ней стоит знак #). Раскомментируйте эту строку (удалите знак #) и после знака = запишите имя того банка памяти, в котором хранятся сообщения. В данном случае этот банк — "ME". Таким образом, должна получиться строка:

force_read_memory = ME

Бывают случаи, когда в ответ на +CPMS в одной или нескольких парах скобок даются не два банка, а три. Например, так:

24.12.2008 | 14:23:01 << ..+CPMS: ("MT","SM","ME"),("MT","SM","ME"),("MT")....OK..

Первый банк памяти в этом случае — не "ME", а "MT", то есть хранение СМС-сообщений происходит в другом банке. Банк "ME" здесь выступил третьим параметром. Третий параметр — это банк памяти, в котором хранятся новые, непрочитанные сообщения. Если устройство выдало подобный результат, в качестве параметра к force_read_memory используйте название третьего банка! Например, в данном случае — так:

force_read_memory = ME

Как вы видите, параметру force_read_memory, как и в предыдущем случае, передается имя банка "ME". Однако, эти два случая никак не связаны, и то, что имена банков совпадают для двух случаев, — совпадение. Будьте внимательны!

Ссылки