Чтение входящих СМС
Прошу помочь с использованием библиотеки для чтения входящих СМС, выложенной на http://piligrim.at.tut.by/java/msg.zip. Если кто использовал, может подскажете что делаю не так:
program NewProject; uses msg; var s: string; begin msg_start('sms://'); repeat s:=msg_get; if s<>'' then begin DrawText(s, 0, 0); Repaint; Delay(10000); end; until s<>''; msg_stop;} end. По идее, после получения СМС ее текст должен отображаться 10 секунд, после чего прога завершается. Однако, никакой реакции на входящие СМС нет. Телефон - Motorola V360. Заранее спасибо. |
Re: Чтение входящих СМС
к сожалению выяснилось, что принимать входящие СМС можно только если указан номер порта: 'sms://:256', например.
|
Re: Чтение входящих СМС
Pilgrim, спасибо.Это ограничение твоей библиотеки, или Явы?Не подскажешь номер порта на который приходят обычные СМС, посланные с другого телефона? (256?)
|
Re: Чтение входящих СМС
Это ограничение явы. Приходят на какой оператору стрельнет.
|
Re: Чтение входящих СМС
Понятно. Спасибо.
|
Ответ: Чтение входящих СМС
Ну допустим входящее сообщение нельзя принять если оно небыло послано на определенный порт.Но мне не совсем это нужно мидлет должен прочитать сохраненную в памяти смс с определенного номера.Это возможно? :cool:
допустим с помощью ат комманд их две запускаем Hyper Terminal at+cpms="me","sm" at+cmgl=4 дальше идет весь список смс сохраненных в телефоне в закодированом виде проверено на K550i полазив по нету нашел как все это раскодировать Расшифровка SMS сообщений в PDU mode. +CMGR: s,,nn+ или CMGL: i,s,nn где i – индекс сообщения; s – тип сообщения (0, 1, 2 или 3) nn – длина сообщения (см расшифровку сообщений ниже). Вторая строка представляет из себя набор цифр и букв (для примера): 07912143658789F7040C914365870921430000106021202052 000441E19008 07 – число «октетов», содержащих информацию о телефонном номере центра SMS. 91 – формат номера центра SMS, 91 означает, что номер представлен в международном формате (с кодом страны). 2143658789F7 – телефонный номер центра SMS (попарно переставить символы). 04 – служебный «октет». 0С – количество цифр в номере абонента, приславшего SMS (0C hex = 12 dec). 91 – формат номера абонента, приславшего SMS. 436587092143 - телефонный номер абонента, приславшего SMS (попарно переставить). 0000 – служебные «октеты». 10 60 21 20 20 52 00 – 7 «октетов», содержащие информацию о дате и времени отправки SMS сообщения (при необходимости можно расшифровать). 04 – число символов текстового сообщения (не число «октетов» ! ! !). 41 E1 90 08 – закодированное текстовое сообщение. 41 E1 90 08 01000001 11100001 10010000 00001000 1000001 1000010 1000011 1000100 01000001 01000010 01000011 01000100 41h 42h 43h 44h. A B C D E8 32 9B FD 46 97 D9 EC 37 11101000 00110010 10011011 11111101 01000110 10010111 11011001 11101100 001110111 1101000 1100101 1101100 1101100 1101111 1101000 1100101 1101100 1101100 1101111 01101000 01100101 01101100 01101100 01101111 01101000 01100101 01101100 01101100 01101111 68 65 6C 6C 6F 68 65 6C 6C 6F h e l l o h e l l o 76543210 FEDCBA98 NMLKJIHG VUTSRQPO 6543210 DCBA987 KJIHGFE RQPONML оставшиеся последние 4 бита VUTS, которые должны быть нулевыми – отбрасываем. 06543210 0DCBA987 0KJIHGFE 0RQPONML З.Ы в мидлете bt_info алгоритм чтения уже есть.Как и at терминал. скачать можно здесь Может кто нить написать раскодировщик на MP |
Ответ: Чтение входящих СМС
Поддерживаю..
|
Ответ: Чтение входящих СМС
Это всё можно сделать. НО! Только для телефона, подключённого по BT, а не для своего. Отправлять на свой телефон AT команды нельзя.
|
Ответ: Чтение входящих СМС
Вот ...! Что, никак нельзя? А если попытаться через [встроенный браузер] (не помню нормального названия, хоть убей...) ?
|
Часовой пояс GMT +4, время: 09:51. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot