Вверх ↑
Этот топик читают: Гость
Ответов: 590
Рейтинг: 19
#1: 2009-01-02 23:39:55 ЛС | профиль | цитата
Не доработан до конца, т.к. нету лички и возможности передачи файлов... (думаю в скором будующем будет)

Функции:
- Логирование чата
- Логирование connect/disconnect
- Бан по ip

Кто желает протестировать просто вводим в опциях клиента ник, ip сервера ecstasy.redirectme.net

http://dev.hiasm.com/forum_serv.php?q=56&id=24 (исходник + exe)

p.s. Кого интересует исходник сервера отписываемся
------------ Дoбавленo:

хм... чет не работает...
Чат на доработке
------------ Дoбавленo:

Профиксиная версия, теперь работает норм. http://dev.hiasm.com/forum_serv.php?q=56&id=26

p.s., Поч компонент host не правильно определяет ip ? Лично у меня всё врено, но при подключений пользователей к серверу их ip соответсвует внутресетевому, а не внешнему...


Add(MainForm,2953706,21,105)
{
Width=261
Height=124
}
Add(Host,6550951,224,84)
{
link(onIPByHost,7359046:doText,[])
}
Add(Button,7512327,168,91)
{
Left=5
Top=10
link(onClick,6550951:doIPByHost,[])
}
Add(Label,9806065,231,140)
{
Left=80
Top=15
link(Text,6550951:LoacalIP,[])
}
Add(Timer,15980601,175,140)
{
Interval=100
link(onTimer,9806065:doText,[])
}
Add(Label,7359046,280,91)
{
Left=80
Top=45
}

Что так, что иначе, он выдает внутресетевой.. зараннее благодорю за помощь (с меня ++++ )
карма: 0

0
Ответов: 3514
Рейтинг: 184
#2: 2009-01-03 10:41:28 ЛС | профиль | цитата
У меня например, провайдер, внешний айпишник продает за полтинник в месяц. Да срать я на него хотел с высокой колокольни )
;)
Так что всё верно он определяет
карма: 0
0
Ответов: 3851
Рейтинг: 159
#3: 2009-01-03 13:03:40 ЛС | профиль | цитата
EcsTasY писал(а):
при подключений пользователей к серверу их ip соответсвует
главное, чтобы они друг друга видели..
карма: 0
начавший
0
Ответов: 387
Рейтинг: 34
#4: 2009-01-03 13:25:30 ЛС | профиль | цитата
система http://www.no-ip.com/ помогает с динамическими ip адресами
карма: 0

0
Ответов: 1088
Рейтинг: 112
#5: 2009-01-03 14:25:15 ЛС | профиль | цитата
А если так:

Add(MainForm,2953706,49,112)
{
link(onCreate,13338783:doDownload,[])
}
Add(HTTP_Get,13338783,119,126)
{
URL="http://hiasm.1gb.ru/ip.php"
link(onDownload,6426052:doConvert,[])
}
Add(Label,5598422,315,133)
{
Left=185
Top=125
Align=5
Font=[MS Sans Serif,14,1,0,1]
Caption=""
}
Add(StrCat,3203404,259,133)
{
Str1="Ваш IP: "
link(onStrCat,5598422:doText,[])
}
Add(Convertor,6426052,182,133)
{
Mode=11
link(onResult,3203404:doStrCat,[])
}

карма: 0
Время верстки: %cr_time% Текущее время: %time%
1
Голосовали:EcsTasY
Администрация
Ответов: 15295
Рейтинг: 1519
#6: 2009-01-03 14:36:05 ЛС | профиль | цитата
EcsTasY, вообще-то между твоим IP и нашими лежат как минимум три сервера rostelecom и несколько безымянных. Это больше соответствует отсутствию у тебя внешнего IP адреса, без которого к серверу подключится никто не сможет.
карма: 27
0
Ответов: 590
Рейтинг: 19
#7: 2009-01-03 16:39:38 ЛС | профиль | цитата
Эм... вообще то проблемма не в подключении к моему серверу... эту проблемму я решил... просто там было введено хостовое имя, и оно не правильно конвертировалось в ip адрес
А данная проблемма в том, что при подключении к серверу у отображается их внешний ip (благодоря компоненту TCP_server), а если пишут сообщение то внутресетевой (это я уже делаю при помощи компонента host)... Sniper36 в принципе помог решить эту проблемму (спасибо )... но как можно её решить с помощью того же компонента host...
карма: 0

0
Ответов: 1088
Рейтинг: 112
#8: 2009-01-03 16:52:20 ЛС | профиль | цитата
На основе элемента HOST универсальное решение не получится.
Hапример: раньше на моей машине поднималось до 5 PPP соединений одновременно, при таком раскладе узнать внешний IP получится только предложеным методом.
Или взять тотже VPN - известен только внутрисетевой IP.
IMHO.
карма: 0
Время верстки: %cr_time% Текущее время: %time%
0
Ответов: 590
Рейтинг: 19
#9: 2009-01-03 17:23:57 ЛС | профиль | цитата
ясно... тут еще один вопрос назрел... как сделать, чтобы при скачивании ip адреса, он выводился в рич едит, но при этом не переносил сразу на несколько строк текст, который будет потом добавлен

code_11164.txt

а то бред какой то...
карма: 0

0
файлы: 1code_11164.txt [639B] [211]
Ответов: 1088
Рейтинг: 112
#10: 2009-01-03 17:51:28 ЛС | профиль | цитата
code_11165.txt
карма: 0
Время верстки: %cr_time% Текущее время: %time%
1
файлы: 1code_11165.txt [740B] [239]
Голосовали:EcsTasY
Ответов: 590
Рейтинг: 19
#11: 2009-01-03 20:49:03 ЛС | профиль | цитата
Пасибо)

------------ Дoбавленo:


up

http://dev.hiasm.com/forum_serv.php?q=56&id=28 (Сервер + клиент) - Исходник и exe

* Запрет ника с пробелами
* Если ник занят, то выдается ошибка

Папка сервера:
chat - логирование чата по дате
connect - подключившиеся/отключившиеся пользователи по дате
data - два файла:
banlist.txt - бан по ip адресу, каждая новая строка соответсвует новому ip. (Можно так же банить по маске... вводя 192.*.*.* все пользователи имеющие ip начинающийся на 192, не смогут подключиться к серверу.
info.txt - Информация о сервере (Окно выползает при подключении клиента). Заголовок окна - первая строка в файле и в конце неё символ *, текст в окне - всё что идет после символа *, но уже во второй строке и последующих строках

Папка клиента:
data - файл msg.wav - Звук при входящем сообщении

Используемые порты 4440-4443

Если кто желает помочь в усовершенствовании, я буду только рад))) Свои идеи и пожелания можете оставлять тут

p.s. Ну и конечно не обойдется этот пост без вопроса... как в RichEdit добавить смайлы.. допусти идёт строка с текстом "Привет " как сделать, чтобы эта строка стала такой "Привет "? Заранее благодарю
карма: 0

0
Ответов: 3851
Рейтинг: 159
#12: 2009-01-03 22:45:18 ЛС | профиль | цитата
EcsTasY, чат общий или есть кабинеты?
------------ Дoбавленo:

EcsTasY писал(а):
как в RichEdit добавить смайлы.. допусти идёт строка с текстом "Привет "
InsertCRLF поставь в false и добавляй только когда надо. Включи точку doAddBitmap..
карма: 0
начавший
0
Ответов: 590
Рейтинг: 19
#13: 2009-01-03 23:49:36 ЛС | профиль | цитата
Андрей. писал(а):
чат общий или есть кабинеты?

Общий, в будующем сделаю комнаты и личку

Андрей. писал(а):
InsertCRLF поставь в false и добавляй только когда надо. Включи точку doAddBitmap..

Чичас попробую...
------------ Дoбавленo:

Андрей выручай

Add(MainForm,2953706,21,105)
{
}
Add(RichEdit,9768460,280,70)
{
Left=25
Top=5
Width=270
Height=230
InsertCRLF=1
Point(doAddBitmap)
}
Add(Button,15385520,175,105)
{
Left=130
Top=70
link(onClick,11729347:doData,[])
}
Add(DoData,11729347,217,105)
{
Data=String(Ссылка на картинку)
link(onEventData,9768460:doAddBitmap,[])
}
карма: 0

0
Ответов: 3851
Рейтинг: 159
#14: 2009-01-04 00:22:35 ЛС | профиль | цитата
EcsTasY, давай без фанатизма code_11172.txt..
карма: 0
начавший
1
файлы: 1code_11172.txt [882B] [246]
Голосовали:EcsTasY
Ответов: 1161
Рейтинг: 160
#15: 2009-01-04 00:46:02 ЛС | профиль | цитата
Андрей., кажется, что он имел ввиду нечто другое
code_11174.txt
вот так попробуй
карма: 0

1
файлы: 1code_11174.txt [5.7KB] [232]
Голосовали:EcsTasY
Сообщение
...
Прикрепленные файлы
(файлы не залиты)