Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Клиент
Новый Черняховский Форум > Hard & Soft > Программное обеспечение
Страницы: 1, 2
fantom
Опрос на тему а вообще нужен ли собственный клиент для просмотра базы сообщений после выхода из интернета. Также для подготовки сообщений в оф-лайне и сжатия траффика (например, при выходе в инет с мобилы или IDSL)/
Ragnar
Адназначна нужен.
Brutall
Хочу клиент и ниипёт! Фантом сам же говорил, что можно нидецки ускорить форум, потому что бОльшая часть страницы форума - это шаблон, можно его на винте хранить. И есчо неплохо бы архивировать передаваемые данные, как у себя при отправке, так и на стороне сервера при получении. Это было бы нидецки труЪ.
+ западло каждый раз по новой грузить шапку, смайлики, аватары и т.д... Для меня с моим убитым момедом это критично!
Schnapz
Нужен - особенно он будет полезен для диалапщиков. Я сам когда в Чернихе был, постоянно форум в "упрощёнке" читал, потому что скорость иногда такая была, что с картинками читать было совершенно невозможно cray.gif
Frost
Написать smile.gif
fantom
Торжественно обещаю - через некоторое время будет.
В связи с систематическими сносами винды - надо ставить мастдайный барсик.
fantom
Воттмля зря я про мастдайный барсик заикнулся. Начал пытаться продолжить, и понял, что это тот ещ1 гемморой. Проблемы вызвал OLE-компонент "Веб-браузер" smile.gif))))
Короче, держите заготовку под Python - client.zip
если скачка невозможна, пробуйте так - Ссылки.htm на fantom lab.
Прямая ссылка с сайта точно работать должна.
Инструкция к этому безобразию прилагается.
Пока смотреть особого нечего, будем считать - это гвоздь для почину. smile.gif
Размер около 4 кило.
fantom
Немного потрахавшись - вот вам новый вариант. Уже даже есть меню "Правка". %)))
Ой как далеко ещё до полноценного кода. Но особенность реализации на Python - пока ВСЁ делаю на классах. И это гут.
fantom
Клиент скоропостижно набрал вес до 10,6 кило.
Есть основные менюхи, и на очереди система входа по морде и паролю.
Из реального рабочего кода - только кнопка "Выход" в менюхе.
Были бы кости, мясо нарастёт. Сегодня у моего сайта рекорд - всего навсего 314 посещений на 21 час. Но ещё не вечер.
Походу, этот месяц будет рекордным.client.zip
Iceman
Пара вопросов.

- Используемый язык программирования (оболочка)?
- Поддержка кодировок?
- Метод авторизации?
- Протоколы авторизации и передачи данных?
- Метод подключения к БД (без серверной части не обойдешься полюбому)?
- Работа через прокси?
- Стабильность работы?
- Методы синхронизации (не сообщений, а подписей, аватаров, информации о пользователях и т.п.)?
Пока все, что хотел узнать.

З.Ы. Сырец клиента не качал и качать не буду пока он не перейдет хотя бы в стадию альфа-тестирования. Кости и сам могу сделать за 20 минут, а толку?

Персонально для Фантома: Респект! Ты все таки решился. А я вот себя залажал в этом плане. Сорри. Мож, если помосч нужна будет, помогу чем.
Balamut
безполезняк. а если сообщение позавчерашнее (например) было отредактировано - как клиент об этом узнает? если он будет все мессаги перепроверять - он больше трафика скачает чем веб-морда. если проверять не будет - то смысла тем более нет - читающий через клиента будет отвечать на вопросы которые были удалены или изменены.
есть третий путь - создать еще одну таблицу в MySQL - со списком изменений, но потребуется изменять код форума чтоб при изменениях сообщений заносились данные в эту таблицу - а значит апгрейдить потом версии форума тоже придется вручную.
глухой номер. да и фантом начинает писать с конца. вместо кода пишет интерфейс.
fantom
Айсман:
1. Используемый язык вроде ясно написал - Python (Питон). Классическтй интерпретатор, ничего стало быть компилировать не надо.
2. Поддержка кодировок - ВСЕ!!!!! Хоешь японский, хочешь китайский, хочешь украинский. smile.gif
3. Метод авторизации - самый что ни на есть обычный - логин/пароль.
4. Протоклы следующие: без шифрования GET, POST, с шифрованием MD5, SSL2, SSL3 - на выбор. Передача данных как http так и ftp. При желании можно извратиться по goofer или irc.
5. Работа через прокси - ДА! Питон - дитя интернета. Позорно ему без прокси не работать. В отличии от мастдайного барсика - легко. Питон котяру делает. spiteful.gif
6. Стабильность работы. Актуальный вопрос. spiteful.gif Любой оупен проект в 5 раз ошибок сожержит меньше чем проприетарный код. А Питон - классический оупен под Линукс.
7. При первом обращении на сервак за аватаром, подписью и т.д. - по любому качается. Потом - из локальной базы данных, если не было изменений.
Айсманн!
По любому серверную часть - SQL-запросы мне кто-то должен формировать на серваке. Минимум - принимать.
Офтоп. Вообще, я бы хорошенько подумал, на счёт отказа от триальной версии движка, если есть серьёзное желание делать МОЩНЫЙ портал.

Баламут:
Если сообщение было вчерашнее, и в кеше оно есть - сервак по запросу клиента оповещает, что было изменение. Для этого в базе данных есть поле "последнее изменение". Ещё можно проверять по контрольной сумме - всего 4 байта. По любому быстрее, согласись? spiteful.gif
Я вместо кода - пишу интерфейс. Я бы не сказал, что я с конца делаю, но не по науке - это точно. Сначала должна разрабатываться структурная модель, потом функциональная, потом интерфейсы функций, а потом сами тела функций. Честное слово- так и будет ПОЗЖЕ. Пока не то что бета-альфа - вообще нулевой цикл.
fantom
Обновил "клиент".
Добавилась недоделанная форма логина.
Во всю юзаю принцип модульности и наследования классов.
Iceman
Каждая мессага в БД имеет свой уникальный номер (ключ)
Внимание, вопрос:
Есть ли поле с флагом внесены ли изменения и когда?
Сорри, потерял дамп базы при переезде на новую работу.
Если есть возможность, киньте линк на свежий дамп в ПМ (2Шнапс)
fantom
Все эти поля имеются.
И факт изменения, и последнее изменение, и время создания. Вплоть до того, что в базе могут сохраняться исходные варианты постов.
Всё это не так уж и сложно.
Наконец-то победил форму логина. Осталось подставить пару операторов, и можно переходить к части автосохраняемых настроек.
Iceman
Разбираюсь с дампом БД форума.
Спасибо, Шнапс, его уже можно потереть.
На выходных буду готовить скрипт с основными функциями как я их вижу.
Короче буду экспериментировать.
До связи.
fantom
www.fantom-lab.narod.ru
Это мой сайт.
Так что если что-либо не качается - все бегом туда. Ссылка там прямая, и она не меняется. Работает проверял.
Client.zip
Ссылка непосредственно на сам клиент. Юникс различает регистр символов, так что если не работает - смотрите первую ссылку. smile.gif
fantom
Форма логина правильно передаёт параметры в главный класс.
Есть глючок с уничтожением формы логина, после её отработки. Правда он никак не влияет на работы клиента. Потом придётся к форме логина вернуться для мелкой доработки, но это уже не принципиально.
Частично реализовал функцию чтения файла конфигурации. Будет требоваться доработка, но это уже по большей части делать завтра или послезавтра.
fantom
Теперь клиент пытается читать и писать файлы инициализации.
Пока это у него не очень хорошо получается, но это только начало.
Размер архива первого сжатия достигает 30 кБ, после второго - 11...16 (зависит от архиватора. WinRAR показывает более хорошие результаты).
fantom
Клиент успешно пишет и читает логин и пароль из файла конфигурации.
На прямой цикла жизни - оформление автовхода в клиент, мелкие доработки формы логина.
from <fantom lab.> - client.zip
Примерный размер архива - 16,5 кБ.
Balamut
да нафик твои архивы нужны и питоновскими файлми. давай экзешники и желательно готовые а не с кнопками войти и выйти.
fantom
ХЗ.
Я вообще из тех соображений делал, что можно потом под любой ОСЬЮ этот клиент запускать, а ты экзешник давай, экзешник давай.
Так. Новая голосовала!
Что нада?
Экзешник, но не портируемый, или скрипт, но портируемый идеально???
Balamut
Цитата(fantom @ 13.03.2006 - 21:31)
ХЗ.
Я вообще из тех соображений делал, что можно потом под любой ОСЬЮ этот клиент запускать, а ты экзешник давай, экзешник давай.
Так. Новая голосовала!
Что нада?
Экзешник, но не портируемый, или скрипт, но портируемый идеально???
*

99,999% посетителей этого форума юзают винду. вопрос - нафига мультисистемность?
Iceman
согласен
fantom
ЗАШИБИСЬ!!!!
УЖЕ ГОТОВО????
Это тебе не калькулятор!!!
--------------
Ладно. Хрен с тобой золотая рыбка.
Будет тебе экзешник.
-----------------
Движочек от сайта где?
Balamut
Цитата(Димедрол+этанол @ 14.03.2006 - 20:42)
Я не программер тебе блин!
А зачем питона заставил качать? 10 метров на модеме это тебе не червяк на тракторе!
*

качай питона, качай клиента...
клиент нужен чтоб качать или чтоб экономить трафик? smile.gif заглавная страница форума - 40 кб с копейками. питон 10 мб. 10 мб/40 кб= 250 раз можно открыть форум. может ну его на... такого клиента? тем более что он еще и на 10% не готов.
(упрощенная версия форума - ваще 18 кб.)
fantom
Не, ну робята....
Шо ви таки бачите???
Вона глядысь мелкомягкие какось нашого хлопцу за шквырник то взявсь?
============
Я же из лучших соображений. smile.gif
Полный экзешник будет хрен знает сколько весить.
Да ещё отдельные компоненты, типа AciveX вручную регестрировать придётся.
Не всякий сообразит даже с пошаговой инструкцией.
А тут - захотел под себя клиент подмять - да без проблем. Открываешь, и меняешь что тебе самому надо. Благо тексты в компиляции не нуждаются.
Что касается размера - то скрипты опять же, раз в 15...20 меньше будут.
Никаких приблуд сбоку припёку не требуется.
Так что, наверное буду две ветки развивать. smile.gif
Вот ссылка на экзешник (разумеется пока не больше чем под Питоном) - 8,5 кБ
fantom lab. for Client.exe
Файл упакован UPX. Бдут проблемы - пишите.
Однозначно не пойдёт на машинах, где не стоит ослик версии не меньше 6.0
fantom
Хм. Visual Basic имеет такоеже отношение к Питону, как моя Мурлыся к ножкам Буша. smile.gif))
Он не требует наличие Питона, зато требует наличие динамической библиотеки Барсика 6 версии. Да и, видимо, от многих других компонентов тоже. spiteful.gif
Brutall
Фантом, в написании клиента ориентируйся на крайнюю степень ламерства, и народ к тебе потянецца smile.gif
Мало кому будет охота разбирать со сложной установкой и юзанием, уж поверь!
fantom
Ага.
Тогда опять же: с этой стороны рулит Питон. smile.gif))))
Всё своё ношу с собой.
Хотя, если постараться, то и под клиент на Вжик Бейсике, элементарный батничек написать не сложно.
Впрочем, уже 3 дня не шкодил.
Завтра торжественно обещаю - если будет время - буду ковырять.
fantom
Форумский клиент "заморозился".
В связи с очередным внеплановым сносом выньдовса.
Уж простите великодушно, буду исправляться.
Уже написал, вышел в свет Python 2.5. Повод для выпить за здравие Питона, но вот не пю (к счастью).
fantom
Нее... Утром сегодня в вагонке субботник. Явка добровольно-обязательна.
Но при первой возможности продолжу. Чессное слово. smile.gif
alexweb
2Fantom: К черту такие рассуждения о кроссплатформенности, когда ты для нормальной работы не можешь себе систему поставить. Не работает винда - в баню ее, ставь другую операционку, ты же все-таки на Питоне пишешь spiteful.gif Не знаю..... может быть немного обидно прозвучит, но после чтения твоих постов возникает впечатление, что плохому танцору ........


По поводу самой идеи - я здесь уже описал, как это правильно сделать. Без серверной компоненты ты не обойдешься.

У тебя получается, что ты все равно грузишь этот гребаный html. Зачем это? От сервера нужны только данные в чистом виде, а не элементы оформления
worldmind
Если помечтать, то хотелось бы иметь форум выдающий ответ в xml ибо любой дополнительный скрипт на сервере это лишние проблемы с безопасностью, так, что моё мнение разобрать html и не мучаться серверными частями, задача была не столько трафик снизить сколько обеспечить диалапщикам оффлайн-клиент, законектился раз - скачал, законнектился два - закачал, вот вам и экономия
Iceman
2worldmind
Всё бы хорошо, но авторизация всё равно нужна. Не будет же юзер под "гостем" свои личные сообщения смотреть?
А авторизация и синхронизация баз - это уже две трети всей работы. Остальное как приятное дополнение.
worldmind
Я авторизацию не отрицал:
коннектимся
авторизируемся
получаем ссылку на список непрочитанных сообщений
вытягиваем список свежих тем
вытягиваем страницы с непрочитанными сообщениями
выделяем сами свежие сообщения
суём их в локальную базу
разъединяемся

Читаем, отвечаем, соединяемся и отправляем ответы
alexweb
Ну и как ты предлагаешь "разбирать html"? На клиенте? Ну так зачем такой клиент?
А как ты на сервере предлагаешь "разбирать html"? На черта делать двойную работу по формированию кода а затем по отрезанию лишнего.

По поводу безопасности: 100% безопасен выключенный комп в сейфе, а все остальное - уже демагогия. Это получается форум мы поставить можем, а вот плагин к нему написать - это уже небезопасно. При чем здась безопасность? Плагин будет интегрирован в форум и использовать его систему авторизации, только отдавать будет xml.

Еще проблема при разборке кода: ты выбрал один скин, а я другой и твоя прога, разбираюцая html твоего скина идет лесом.
worldmind
Как разбирать? Регулярными выражениями
Зачем такой клиент см. 41 и 43 посты
Безопасность? Одно дело проффесионалы полный рабочий день форумский движок пишут, а другое дело мы - в свободное время строчащие свои плагины
ты думаешь, что такие участки
<a href="#" onclick="PopUp('http://chernyahovsk.com/forum/index.php?act=attach&amp;code=showtopic&amp;tid=58', 'Attach58', 500,400); return false;" title="2 Файл(ов): просмотр"><img src='style_images/default_re/attachicon.gif' border='0' alt='Topic has attachments' /></a><a href="http://chernyahovsk.com/forum/index.php?showtopic=58&amp;hl=">Вера и религия</a>

зависят от скина?
alexweb
Действительно, кто из нас программер: ты или я?

это шутка была crazy.gif

Твой метод = работа сервера по отдаче html + дополнительная работа твоего скрипта, когда с помощью регулярных выражений (тем более !!!!!)

Плюс если он будет на сервере, то эта та же дыра. Для начала попробуй скачать топик Вера и религия с этой опцией: &mode=linearplus , потом разбери его, так как предлагаешь, посмотри на загрузку процессора, время выполнения и т.д * это все хотя бы на 10 (в это время другие люди будут просто форум грузить, а может и твоим плагином эту страницу обрабатыватьб хе-хе). После этого учти, что хостинг, скорее всего - shared и подумай: как это все будет работать и что с тобой сделает хостер.
alexweb
А-аааа! Я вспомнил!!!! Вам вроде веб-технологии жЭншЧына преподавала.
НизачОт ей! crazy.gif

Если же ты говоришь про 100% клиентское решение, то непонятно, каким образим будет проводиться проверка изменений? Хотя бы постов на последней странице. Опять скачиванием?

Если да, то тогда о чем спорим? Можно и дальше юзать то, что есть и не париться
worldmind
Шурик читай внимательно. Поясняю для пограничников (хорошо хоть не танкист):
Юзер сединяется с инетом, запускает программулину которая логинится на форуме, вытягивает список активных с его последненего прихода :-) тем, открывает свежие страницы этих тем (можно обратиться к упрощённой версии для уменьшения трафика и не зависимости от скинов) и вырезает из них (представь себе по дате/времени) свежие сообщения и суёт к себе в базу, после чего выходит из форума и юзер отсоединяется от инета (диалапчики время знаешь ли оплачивают) интерфейсом программулины читает посты и подготавливает ответы. пинает кнопку - идёт соединение, вход, отправка его ответов, выход.
Чего тебе не понятно?
alexweb
Даже если не принимать во внимание то, что я сказал (это все равно остается актуальным), то твой алгин не решает проблему оплаты инета по траффику.


И еще. Если поставить себе букмарк на страницу http://chernyahovsk.com/forum/index.php?ac...rch&CODE=getnew то нахрена тогда такой плагин? сам заходишь и по-быстрому читаешь, да еще не все новые, а только интересующие.
worldmind
Бесспорно это не идеальный вариант, но даже он пока не реализован, а уж о более сложных и речи нет, кто заниматься будет?
alexweb
У меня пока офигенные проблемы материального плана, так что right now пока не могу. Так что подобную вещь я все-таки реализую, но не сейчас.
У меня давно была идея написать подобный плагин, правда к другому форумскому движку.

Ты можешь и взяться, заодно и php освоишь rofl.gif
Iceman
2alexweb
У меня эти проблемы длятся уже минимум полгода.
Ты абсолютно прав и как программер я тебя поддерживаю.
С другой стороны я уже не раз научен горьким опытом и пока у нас нет четкой координации наших действий и дел у каждого по горло (сессия, товарищи!) предлагаю в ближайшее время заняться разработкой Технического Задания то есть самой что ни на есть простой постановкой задачи.
Когда мы поставим перед собой строго определенные задачи, нам и работать будет легче.
Поклониики "экстремального программирования" идут лесом ибо идеальная версия реализации далека от ХТМЛя.
worldmind, вообще не понимаю что ты в этот ХТМЛ так упёрся. ХТМЛ забирает около 70% траффика на себя, в то время как 30% остатка - это именно то, что нам нужно. Не проще ли передавать эти нданные напрямую.
Что касается безопасности, то скажу следующее - против лома нет приема. В Мелкософте работают тысячи афигенных программеров, однако все здесь присутствующие оконщики сидят на крякнутых форточках.
Если руки будут прямыми, то и безопасность не пострадает.

Это ИМХО. Можете попытаться оспорить.
worldmind
Да вы всё правильно ГОВОРИТЕ, только разговоры идут уж больше года, а я реально говорю что нет времени и возможностей строчить серверные плагины, да и клиент-то особо не попишешь. теоретически хоть движок форумский написать можно, который хмл возвращает и заточен под использование клиентского ПО, а на практике - ноль
alexweb
2ICEMan

С этим согласен. С написания ТЗ все начинаться и должно.
Однако сначала нужны требования (requirements) . Посему просьба ко всем предоставить эти требования.
Iceman
Все это прекрасно понимают.
Но.
Вот я под конец месяца, надеюсь, более-менее разгружусь.
Дело в том, что не все так просто, как кажется на первый взгляд.
Даже если каждый будет делать свою часть работы, форматы передачи данных нужно будет согласовывать, а это предполагает долгую дискуссию. Да и вообще, конечно, неплохо было бы документацию для начала накатать.
Документированные функции, соглашения, таймауты... всё это надо. Это всё нужно кому-то делать.
И не смотря на то, что долго запрягать будем, зато поедем быстро с минимумом косяков.

Для определения новизны сообщений как движок форума, так и клиент должны использовать значение поля lastvisit в БД.
Мне кто-нибудь может объяснить каким макаром там регистрируется время и дата, если значение этого поля, допустим, такое: 1145357295
Я вот что-то понять не могу.
Так же как и дата/время последнего визита пользователя регистрируется в таком формате, каждое сообщение имеет такое же свойство. Опять же если знать алгоритм сравнения всего двух полей (!!!) можно без проблем найти новые для данного пользователя сообщения.
И для этого не надо грузить ХТМЛ-страницу getnew smile.gif
А дальше уже пляски с бубнами... выборка из базы этих самых сообщений и распределение их по топикам либо просто копирование если локальная таблица сообщений аналогична серверной...

2alexweb
Вечером я специально для этого создам отдельный топик "Требования к клиенту".
Опросим людей, хотя в принципе мы и сами можем выдвинуть эти требования. В идеале функциональность клиента не должна уступать функциональности форума. Быть может (опять же в идеале) она должна быть даже выше.
Но тут опять же свои "но":
Что делать с функциями администрирования/модерирования? Как их оформлять и документировать.

И, кстати, раз уж у нас на форуме появилась возможность отображения значка эксплорера в списке активных пользователей, надо будет почерепить насчет того, как наш клиент будет там светиться. Неплохо было бы... smile.gif Но это так, мысль... далёкая туманная перспектива... smile.gif
alexweb
Цитата
Мне кто-нибудь может объяснить каким макаром там регистрируется время и дата, если значение этого поля, допустим, такое: 1145357295


Это количество секунд прошедшее с 1970 года до текущего момента (unix timestamp) - очень удобная штука.
Кстати функциональность клиента на xpoint.ru как раз выше функциональности самого форума. Вот так то.
SunOfABeach
Цитата(worldmind @ 18.04.2006 - 09:17) *
Если помечтать, то хотелось бы иметь форум выдающий ответ в xml ибо любой дополнительный скрипт на сервере это лишние проблемы с безопасностью, так, что моё мнение разобрать html и не мучаться серверными частями, задача была не столько трафик снизить сколько обеспечить диалапщикам оффлайн-клиент, законектился раз - скачал, законнектился два - закачал, вот вам и экономия

Разбор html будет работать ровно до тех пор, пока не будет исправлен скин. С другой стороны, разбор html - задача весьма нетривиальная, тут одними re не обойдешься.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Русская версия IP.Board © 2001-2024 IPS, Inc.