Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Прием пакета со стороны компа
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > Сотовая связь и ее приложения
Lexi
Всем привет, возможно я немного не туда написал, но всеравно я думаю что круг данной ветки знает это. Возникла проблемма принимать и решать что делать с пакетоми TCP от сим300. Если с последним я подружился, но вот с серваком вообще не знаю в какую сторону смотреть. Сча отлаживаю на проге Server, как-то дали в киевском офисе гаммы.

Просто прошу названия ПО и если можно простого примера для быстрого старта.
Заранее спасибо всем откликнувшихся.
Baser
Вот тут рекомендовали ссылки по этой теме (сам не помогу - серверы не писал laughing.gif )
Lexi
Да блин....
Каждый должен заниматься своим делом. 07.gif
edo
может я что-то не то скажу...

берём linux (freebsd, solaris, ... по вкусу, в конце концов если винда так мила - cygwin, sfu или нативные порты).
берём xinetd, создаём файл /etc/xinted.d/myserver
Код
service myserver
{
        socket_type     = stream
        protocol        = tcp
        wait            = no
        user            = usr1
        server          = /usr/local/bin/myserver.pl
}
да, забыл - заводим пользователя usr1 и даём ему права на запуск программы (см. ниже) и доступ к нужным данным.

прописываем в /etc/services строчку типа
Код
myserver 12345/tcp
(12345 меняем на требуемый номер порта)

и пишем в /usr/local/bin/myserver.pl
Код
#!/usr/bin/perl
while (<>) {
  if ($_ eq "hi") {
    print "hi-hi\n"
  }
}

получаем простейший сервер - и никакой магии.

xinetd ждёт соединения, пускает программу-сервер, "подсовывая" ей это соединение в качестве stdin и stdout.
программа читает stdin построчно, анализирует полученные строки и предпринимает какие-то действия.

ps: классический сервер на С и sockets пишется не сложнее, но в случае использования более высокоуровневого языка дальнейшее добавление функционала намного проще (с тем же perl: нужно нам хранить данные - берём dbi и у нас есть интерфейс к практически любой БД - от oracle до sqllite).
Lexi
А можно ли апач применить ко всему этому??
У меня нет опыта с линуксом вообще, немного тока с апач.

и пожалуйста немного по побробнее о настройках, т.к. если догнать основу то дальше проблем не будет.

Очень благодарен за ответ и содействие.
edo
апач - http-сервер. если есть желание реализовывать на клиентах http - почему бы и нет.

вот, нашёл Пример реализации inetd для Windows.

в статье описано использование, а в самом начале есть ссылка на готовый exe wink.gif

а perl можно взять тут: http://www.activestate.com/Products/activeperl/index.mhtml

ps: на самом деле я просто мимо проходил wink.gif. мир windows для меня малознаком, я бы не взялся давать тут советы, но раз все молчат...
*antzol*
Цитата
А можно ли апач применить ко всему этому??

Конечно можно.
Тогда в этом случае самое простое - прикрутить к нему PHP и уже на нём делать обработку запросов. Информации по настройке связки apache+php+mysql в инете полно (на каждом сайте для вэб-мастеров наверно есть smile.gif ), поэтому тут проблем не будет. Ну или на первом этапе можно взять уже собранный пакет Денвер.
Если передаваемых данных немного, то проще использовать запрос GET.
Lexi
Ну для начала я бы хотель организовать обмен PING - PONG для проверки GPRS канала. Т.е. проверять ессть ли надежный линк с серваком. Читая про сервак, я понял что апачу надо сначала посылать данные о клиенте, его возможностях, кодировке и прочее. Как можно обойтись без этого или это строго нужно??

Скачал и установил денвер, а так же Perl 5.10.
Настроить покуда я не могу и тот, ни тот.

Я в создании сервака чайник, поэтому сильно не стебайтесь.
*antzol*
В составе Денвера уже есть perl. Но так как я его не знаю, скажу как сделать на php (он тоже уже есть в денвере).
К примеру, используем http-запрос GET:

1) с помощью sim300 передаём значения каких-нибудь двух величин
Код
at+cipsend
> GET http://111.111.111.111/index.php?u1=12&u2=5 HTTP/1.0


2) на сервере в php-скрипте получаем их и записываем в текстовый файл
Код
<?php
$h = fopen("file.txt","a");
$text = "U1=" . $_GET['u1'] . "В; U2=" . $_GET['u2'] . "В\r\n";
fwrite($h,$text);
fclose($h);
?>
Lexi
Спасибо, за пример....
Надо поиграть, результат отпишу.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.