GSM Форум - GSMForum.SU  

Вернуться   GSM Форум - GSMForum.SU > Мобильные телефоны > Мобильные модемы для сотовых сетей. 3G/GPRS/EDGE/GSM/HSCSD

Мобильные модемы для сотовых сетей. 3G/GPRS/EDGE/GSM/HSCSD Программный и аппаратный ремонт модемов (USB, PCMCIA) для различных сотовых сетей (Билайн, Мегафон, МТС, TELE2, Скайлинк и т.д.), работающих в стандарте GSM/HSCSD/GPRS/EDGE/3G- UMTS, CDMA 1X, EV-DO и т.п.

Ответ
 
Опции темы Рейтинг: Рейтинг темы: голосов - 7, средняя оценка - 5.00. Опции просмотра
Старый 08.12.2009, 22:26   #1
Kонстантин
Новичок
 
Регистрация: 08.12.2009
Сообщений: 11
Поблагодарил: 1
Поблагодарили 0 раз за 0 сообщений
Репа: 0
Question ? Обработка СМС с e1550

Интересует такой вопрос:

Есть ли реальная возможность сделать обработку СМС по заданному алгоритму с вводом/выводом через модем e1550 (в Windows или *nix подобных ОС)?

Может какой API для "стандартных" менеджеров имеется с подобной функцией или есть возможность реализации через AT команды?

В тему ещё не вникал, возможно вопрос поставлен слишком по-ламерски
Kонстантин вне форума   Ответить с цитированием Вверх
Старый 15.12.2009, 06:54   #2
redqlown
Новичок
 
Регистрация: 05.12.2009
Сообщений: 4
Поблагодарил: 2
Поблагодарили 0 раз за 0 сообщений
Репа: 0
Возможность есь но скорее всего прийдется работать через АТ команды(сомневаюсь в существовании API)... тоже интересна данная тема давно хотел сделать что нибудь подобное, но времени не хватало, если найдете что нибудь по данной теме поделитесь пожалуйста..
redqlown вне форума   Ответить с цитированием Вверх
Старый 15.12.2009, 09:41   #3
Kонстантин
Новичок
 
Регистрация: 08.12.2009
Сообщений: 11
Поблагодарил: 1
Поблагодарили 0 раз за 0 сообщений
Репа: 0
Arrow

Нашёл на этом форуме программу от DarknessPaladin ( www.gsmforum.su/showthread.php?p=269430 ) по описанию, в принципе, почти то-что надо, но её автор считает возможности ввода-вывода AT команд списком и запуск внешних приложений (по событию на модеме) неперспективным направлением и нужным только мне ...

Кстати, DarknessPaladin там же даёт ссылку на мануал по AT командам.

ps К сожалению у меня в системе нет фреймворка .net поэтому в работе программу так и не увидел
Kонстантин вне форума   Ответить с цитированием Вверх
Старый 15.12.2009, 14:40   #4
redqlown
Новичок
 
Регистрация: 05.12.2009
Сообщений: 4
Поблагодарил: 2
Поблагодарили 0 раз за 0 сообщений
Репа: 0
перспективы может и нет, просто интересно научится, ведь насколько я понимаю темеже АТ командами можно управлять GSM модулем(в каком нибудь разрабатываемом устройстве), спасибо за информацию
redqlown вне форума   Ответить с цитированием Вверх
Старый 17.12.2009, 20:48   #5
DarknessPaladin
Пользователь
 
Аватар для DarknessPaladin
 
Регистрация: 01.12.2009
Сообщений: 62
Поблагодарил: 2
Поблагодарили 8 раз за 7 сообщений
Репа: 5
Если кому надо: ссылка на ман по AT-командам есть в упомянутой моей теме, а также данный ман приаттачен в теме "AT-команды для мобильных девайсов" в этом форуме.
сейчас пишу краткий обзор AT-команд, совместимых с huawei (а это меньше половины из описанных в упомянутом мане), будет готово — выложу на сайте.

Kонстантин, вам вовсе не нужна моя прога — собственно работа с ком-портом (а работа с модемом идёт именно через виртуальный ком-порт) поддерживается в любом языке программирования без особых проблем.

Если вы спрашивает о существовании API — значит, на каком-то языке вы всё же умеете программировать? вот и посмотрите маны по этому языку, на предмет работы с портами.
DarknessPaladin вне форума   Ответить с цитированием Вверх
Старый 18.12.2009, 12:46   #6
Kонстантин
Новичок
 
Регистрация: 08.12.2009
Сообщений: 11
Поблагодарил: 1
Поблагодарили 0 раз за 0 сообщений
Репа: 0
Thumbs up

Цитата:
Сообщение от DarknessPaladin Посмотреть сообщение
Если кому надо: ссылка на ман по AT-командам есть в упомянутой моей теме, а также данный ман приаттачен в теме "AT-команды для мобильных девайсов" в этом форуме.
сейчас пишу краткий обзор AT-команд, совместимых с huawei (а это меньше половины из описанных в упомянутом мане), будет готово — выложу на сайте.
Интересная и полезная задумка.

Цитата:
Сообщение от DarknessPaladin Посмотреть сообщение
Kонстантин, вам вовсе не нужна моя прога — собственно работа с ком-портом (а работа с модемом идёт именно через виртуальный ком-порт) поддерживается в любом языке программирования без особых проблем.

Если вы спрашивает о существовании API — значит, на каком-то языке вы всё же умеете программировать? вот и посмотрите маны по этому языку, на предмет работы с портами.
Сейчас только с PHP работаю и тот под линуксом в основном, пока не находил описания работы с COM портами под виндовс, наверное плохо искал
Kонстантин вне форума   Ответить с цитированием Вверх
Старый 18.12.2009, 20:49   #7
DarknessPaladin
Пользователь
 
Аватар для DarknessPaladin
 
Регистрация: 01.12.2009
Сообщений: 62
Поблагодарил: 2
Поблагодарили 8 раз за 7 сообщений
Репа: 5
Talking

Цитата:
Сейчас только с PHP работаю и тот под линуксом в основном
ээх. вот вам готовый код для проверки баланса под МТС
как раз под линукс.
как раз на ПыХПыхе.
как объяснение работы "принципы работы с портом", думаю, пойдёт.

Код:
<?php

function decodePDU($in) {
  $b = 0; $d = 0;
  $out = "";
  foreach (str_split($in, 2) as $ss) {
    $byte = hexdec($ss);
    $c = (($byte & ((1 << 7-$d)-1)) << $d) | $b;
    $b = $byte >> (7-$d);
    $out .= chr($c);
    $d++;
    if ($d == 7) {
      $out .= chr($b);
      $d = 0; $b = 0;
    }
  }
  return $out;
}

function encodePDU($in) {
  $out = "";
  for ($i = 0; $i < strlen($in); $i++) {
    $t = $i%8+1;
    if ($t == 8) 
      continue;
    $c = ord($in[$i])>>($i%8);
    $oc = $c;
    $b = ord($in[$i+1]) & ((1 << $t)-1);
    $c = ($b << (8-$t)) | $c;
    $out .= strtoupper(str_pad(dechex($c), 2, '0', STR_PAD_LEFT));
  }
  return $out;
}

$f = fopen ("/dev/ttyUSB2", "rw+");
fputs($f, "AT+CUSD=1,".encodePDU("*100#").",15\r\n");

while ($s = fgets($f)) {
  if (substr($s, 0, 5) == "+CUSD") {
    $s = decodePDU(substr(trim($s), 10, -3));
    echo $s."\n";
    if (strpos($s, "1 - Dalee") !== false) {
      fputs($f, "AT+CUSD=1,".encodePDU("1").",15\r\n");
    }
    else
      break;
  }
 }

fclose($f);

?>
таки пользуйтесь поиском в интернете, обычно это помогает
DarknessPaladin вне форума   Ответить с цитированием Вверх
Старый 22.12.2009, 00:32   #8
Kонстантин
Новичок
 
Регистрация: 08.12.2009
Сообщений: 11
Поблагодарил: 1
Поблагодарили 0 раз за 0 сообщений
Репа: 0
Я уже смотрел вариант с fopen.

Под линукс такой вариант сработает, но ставить линукс на рабочей машине для меня пока не актуально (разве что поставить виртуально линукс под винду, правда сомневаюсь, что сохраницца возможность адресации на устройство как в линуксе).

А под виндовс, насколько мне известно, fopen работает с кучей ограничений.

Вообще, спасибо за совет.

ps Насчёт поисковой - проблема не в желании, а в скорости соединения - на жпрс не особо нагуглишся.

pps нашёл кое-что по запросу fopen com windows - fopen("COM1:", "r+"); может то-самое

ещё кое-что (платное):
Цитата:
PHP Serial Extension:

This PHP extension for Windows allows you to communicate directly with the serial port through PHP.

This is a loadable extension for PHP running on Windows implementing serial port handling and communications. Once installed in PHP environment you can programm PHP applications to control serial device hosted on server from remote location; these devices can be anything from video switcher, cameras pan/tilt, ham radios, media players, home automation boxes, GSM modems/terminals (send/receive SMS), only your imagination and needs are the limits.

Link: http://www.easyvitools.com/phpserial/index.html
Link to installation instructions and usage: http://www.easyvitools.com/phpserial...reference.html
Бесплатное:
Цитата:
Serproxy
Serproxy is a multi-threaded proxy program for redirecting network socket connections to/from serial links, in cases where the remote end of the serial link doesn't have a TCP/IP stack (eg an embedded or microcontroller system). The proxy allows other hosts on the network to communicate with the system on the remote end of the serial link. The Linux version requires a recent version of libpthread to compile/run.

Serproxy Downloads (Version 0.1.2)
Source code (tar.gz format) http://www.lspace.nildram.co.uk/file...y-0.1.2.tar.gz
Source code (zip format) http://www.lspace.nildram.co.uk/file...roxy-0.1.2.zip
Win32 binaries (V0.1.1) http://www.lspace.nildram.co.uk/file....1.1-win32.zip
Цитата:
jared at dctkc dot com
http://ru.php.net/manual/en/function.fopen.php#20935
22-Apr-2002 08:33
PHP код:
<?php
// HOW TO USE PHP TO WRITE TO YOUR SERIAL PORT: TWO METHODS
$serproxy=true;
if (
$serproxy) {
    
// Use this code in conjunction with SERPROXY.EXE 
    // (http://www.lspace.nildram.co.uk/freeware.html)
    // which converts a Serial stream to a TCP/IP stream
    
$fp fsockopen ("localhost"5331$errno$errstr30);
    if (!
$fp) {
        echo 
"$errstr ($errno)";
    } else {
        
$e chr(27);
        
$string  $e "A" $e "H300";
        
$string .= $e "V100" $e "XL1SATO";
        
$string .= $e "Q1" $e "Z";
        echo 
$string;
        
fputs ($fp$string );
        
fclose ($fp);
    }
} elseif (
$com1) {
    
// Use this code to write directly to the COM1 serial port
    // First, you want to set the mode of the port. You need to set
    // it only once; it will remain the same until you reboot.
    // Note: the backticks on the following line will execute the 
    // DOS 'mode' command from within PHP
    
`mode com1: BAUD=9600 PARITY=N data=8 stop=1 xon=off`;
    
$fp fopen ("COM1:""w+");
    if (!
$fp) {
        echo 
"Uh-oh. Port not opened.";
    } else {
        
$e chr(27);
        
$string  $e "A" $e "H300";
        
$string .= $e "V100" $e "XL1SATO";
        
$string .= $e "Q1" $e "Z";
        echo 
$string;
        
fputs ($fp$string );
        
fclose ($fp);
    }
}
?>

Последний раз редактировалось Kонстантин; 22.12.2009 в 01:24.
Kонстантин вне форума   Ответить с цитированием Вверх
Старый 27.12.2009, 23:39   #9
DarknessPaladin
Пользователь
 
Аватар для DarknessPaladin
 
Регистрация: 01.12.2009
Сообщений: 62
Поблагодарил: 2
Поблагодарили 8 раз за 7 сообщений
Репа: 5
Kонстантин, линупс под виндой (в VM Ware) отлично будет работать — в VM Ware можно любое usb-устройство "переключить" из хост-системы (винды) в виртуалку — одно время я так инетом пользовался — не было дров к мобилке под висту, пришлось поставить винду (ХРюшку) в виртуалке, из виртуалки дозваниваться и через проксик, поднятый в той же виртуалке, лазить в инет из висты

Вот только на вашем месте я бы не заморачивался, пытаясь реализовать на ПыХПыхе то, для чего он не предназначен...
Освоить VB.net для человека, уже знакомого с парой-тройкой языков программирования, совсем не трудно — думаю, за недельку разберётесь в достаточном объёме...
Собстна сам VB.net (Express Edition) можно скачать с мелкомягких БЕСПЛАТНО (но размер конечно недеццкий ). Я сам экспрессом пользуюсь, навороты коммерческой версии мне ни к чему.

простейшая программа "открыть ком-порт, послать что-то, получить ответ" — на пару минут для знающего человека, для новичка — максимум на пол-дня делов.


Цитата:
fopen com windows
попробовал сейчас, не получается, грит "неправильный аргумент"...
DarknessPaladin вне форума   Ответить с цитированием Вверх
Старый 30.12.2009, 01:15   #10
Kонстантин
Новичок
 
Регистрация: 08.12.2009
Сообщений: 11
Поблагодарил: 1
Поблагодарили 0 раз за 0 сообщений
Репа: 0
Smile

Цитата:
Сообщение от DarknessPaladin Посмотреть сообщение
Kонстантин, линупс под виндой (в VM Ware) отлично будет работать — в VM Ware можно любое usb-устройство "переключить" из хост-системы (винды) в виртуалку ...
Надо попробовать - не работал с виртуальными системами, хотя и наслышан о них.

Цитата:
Вот только на вашем месте я бы не заморачивался, пытаясь реализовать на ПыХПыхе то, для чего он не предназначен...
Привычка, да и просто интересен результат интеграции в онлайн проекты возможностей управления устройствами на ком. порту (например - нечто вроде онлайн системы с смс оповещением/управлением) понимаю, что велосипед изобретаю, но что поделать - хобби такое - сетевые проекты

Цитата:
Освоить VB.net для человека, уже знакомого с парой-тройкой языков программирования, совсем не трудно — думаю, за недельку разберётесь в достаточном объёме...
С освоением таки вовсе и не трудно, а вот с неделями, всё гораздо сложнее...

Цитата:
попробовал сейчас, не получается, грит "неправильный аргумент"...
Не совсем понял, о чём речь.
Если речь о PHP, то функция fopen аргументами берёт адрес файла, режим доступа и тд, а возвращает значение эээ... "файловый дескриптор" (кжцца тк называется), и уже он передаёцца функциям PHP для работы с эээ... "файловым потоком" (в нашем случае, как я себе это понимаю, им являецца ввод/вывод виртуального COM порта "3G-Application interface" от e1550).
А уже этим функциям, в качестве аргументов, можно "скармливать" AT команды по определённому алгоритму.

ps Хм, возможно, что даже возможно (при использовании AJAX) управления COM портом через веб интерфейс в режиме реалтайм - осталось приделать в COM порт, например ПДУ от радиомодели с веб-камерой и готовы виртуальные экскурсии по земле, по воде или по воздуху
Kонстантин вне форума   Ответить с цитированием Вверх
Старый 30.12.2009, 07:59   #11
DarknessPaladin
Пользователь
 
Аватар для DarknessPaladin
 
Регистрация: 01.12.2009
Сообщений: 62
Поблагодарил: 2
Поблагодарили 8 раз за 7 сообщений
Репа: 5
Цитата:
Не совсем понял, о чём речь.
попробовал работать с функцией fopen на ПыХПыхе-5, под виндой. я знаю, как она должна работать... Вот только у меня при попытке открыть порт (режим "w+", нам же в него писАть нужно, а нетолько читать) она выдаёт ошипку "неправильный аргумент функции"

Цитата:
Надо попробовать - не работал с виртуальными системами, хотя и наслышан о них.
и не пробуйте бОльшего извращения, чем поднять линух в вирте под виндой только для того, чтобы работать с dev/com, я даже не могу представить

и по-любому, ПыХПых не является языком, подходящим для такой работы. Его место — скрипты, исполняемые по запросу, обрабатывающие данные и возвращающие результат.
конечно, работать с модемом из ПыХа можно, но по удобству — всё равно что копать землю бензопилой. может что и получится, но трудоёмкость и "красивость" кода будут далеки от тех результатов, которые можно получить при использовании нормального языка, поддерживающего фоновые операции и обработку событий.
DarknessPaladin вне форума   Ответить с цитированием Вверх
Ответ

Метки
at-команды, смс


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сделать русский ввод СМС в китайском iPhone? Dor Китайские телефоны - программный ремонт 2 01.12.2008 22:11
как убрать несуществующие смс в fly s688 , как убрать ? alexey Infinity Box 8 02.02.2007 10:06
v3i не отправляет смс yura2002 MSS4 2 14.07.2006 11:09
[s700] не принимает смс gsm.sbor Программный ремонт телефонов Sony Ericsson платформ DB2000/DB2010/DB2012/DB2020/PNX5230 1 13.06.2006 13:47
c65 пропал руский в смс tik-tak Siemens BenQ 0 17.01.2006 15:41


Текущее время: 09:15. Часовой пояс GMT +3.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot