Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.03.09;
Скачать: CL | DM;

Вниз

О DM-клиенте к любимому форуму   Найти похожие ветки 

 
nikkie ©   (2004-02-09 16:59) [40]

>Sir Alex
горячо поддерживаю.


 
adwer   (2004-02-09 17:30) [41]

to nikkie
>> когда-то была мысль. но особого смысла нет. код приема сообщений - очень простой, см. HTTPGet, GetNewQuestions и GetNewAnswers в DMCHandler.pas. кода отправки сообщений не существует, см. выше.

Практически разобрался и даже сделал. Пару вопросов:

1) для чего нужен метод ReportAnswer и чем мне грозит вызов GetNewAnswers без вызова этого метода
2) я все таки вызываю GetNewAnswers для каждого Questions[i] в GetNewQuestions не вызывая ReportAnswer. Сообщения закачиваются совместно с заголовком. В off-line они видны. Все так как я хотел. Только треугольнички около сообщений красные. Что это значит и чем мне это грозит.


 
}|{yk ©   (2004-02-09 17:45) [42]

2 nikkie
Желательные доработки по форуму (если у вас будет время и желание):
1. Обрабатывать Ctrl+N - чтобы новое окно не в браузере открывалось
2. Получения своих сообщений.
А то приходится иногда пользоваться и браузером


 
nikkie ©   (2004-02-09 17:58) [43]

>adwer
1. ReportAnswer - не метод, а вложенная процедура в методе WriteTopic. если отбросить оформительские детали, то основное в ней - строка
ReportString(Answer);
грубо говоря, ReportString посылает строчку в браузер.
разумеется, если ты вызываешь GetNewAnswers для каждого нового сообщения автоматически, то ReportAnswer вызывать не надо. и это невозможно.

2. желтые треугольнички показывают ветки, ни одно из сообщений которых не было закачано. красные треугольнички - те ветки, где уже какие-то сообщения были прочитаны. таким образом, я сразу вижу обновления тех веток, которые я уже читал. в ситуации, когда все обновления скачиваются автоматически, смысла в такой дифференциации, конечно, нет. найди в коде и исправь new2.gif на new.gif.


 
nikkie ©   (2004-02-09 18:12) [44]

>}|{yk
цель открытия сорсов была в том, чтобы люди могли поучаствовать в разработке и дописать ту функциональность, которой им недостает. в конце концов, это ведь форум программистов?

но желательно, чтобы этим каждый занимался не только для себя, но и принимал в общем развитии опен-сорс проекта. хотя, конечно, не гарантировано, что фича реализованная кем-то окажется интересной для всех и войдет в общую версию - каждый такой момент, я думаю, надо обсуждать. при условии, что найдется достаточно заинтересованных людей.

постить сюда свои пожелания смысла нет. открыт проект на sourceforge, там есть система Bug Tracking и Feature Request Tracking. пишите туда. просьба только не дублировать запрос, если такой уже есть.


 
adwer   (2004-02-09 18:25) [45]

Согласен.

Только мне не понятен способ организации доработок.

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


 
McSimm ©   (2004-02-09 18:31) [46]

>М-да... А если я напишу клиент где можно будет писать сообщения в офлайне, а потом их все вместе отправлять используя forum.pl, то это будет чем-нить незаконным?

Я не рекомендую этого делать. Тем кто спрашивает.
И дело не только в защитных механизмах, они могут появиться при необходимости. Но дело в том, что forum.pl недокументируется как средство обмена информацией. Может меняться по разным причинам. Уже так было, я модернизировал форум, вместе с ним был переписан client.pl, чтобы соответствовать. Для этого он и нужен.

>Sir Alex © (09.02.04 16:06)

>Предлагаю поправить client.pl на предмет возможности отвправки сообщений, но с ограничениями.

Если честно, я давно на это созрел.
Вообще по client.pl заложено немало интересных новшеств. Только не хотел пока сообщать планы, чтобы потом не отвечать на регулярные "ну как там client.pl?" :)
На данный момент это 17 строчка моего todo (не путать с пресловутой 17й строкой :)


 
Sir Alex ©   (2004-02-09 18:36) [47]

2 McSimm
Будем ждатьссс.... :)


 
VMcL ©   (2004-02-09 18:42) [48]

>>McSimm © (09.02.04 18:31) [46]

ну как там client.pl? :)))))
В смысле, а когда планируется update?


 
ИМХО ©   (2004-02-09 19:04) [49]

ИМХО, все эти клиенты не очень выгодны владельцам сайта (по известным причинам). Или я неправ?


 
adwer   (2004-02-09 19:09) [50]

Почему ? Потому что снижается рейтинг ? Так можно сделать так, чтобы клиент перед скачкой был обязан запросить какую-либо определенную страничку, тем самым имитировав "клик".


 
nikkie ©   (2004-02-09 19:16) [51]

>McSimm
17 строчка - это не скоро...
но мы тебя иногда теребить будем... ;)

я тебе, в принципе, писал уже на следующую тему, но все же повторюсь.

то, что я вижу сейчас - forum.pl и client.pl различаются по логике сортировки сообщений. периодически возникают ситуации, когда сообщения не отсортированы по дате-времени. вверху списка оказываются довольно "старые" сообщения. я так понимаю, что это возникает по 2-м причинам:
1. когда модератор перемещает старую ветку из форума A в форум B, она оказывается вверху форума B, но дата-время не изменяются.
2. по каким-то причинам просто сбивается системное время на сервере.
forum.pl справляется с такой ситуацией нормально. а для client.pl это проблема, поскольку в запросе клиента указан lastmod (unix time) - в ситуации, когда вверху находятся старые ветки, то клиент новые сообщения просто не получает.

может быть даже можно отказаться от старого протокола, а придумать новый с использованием не lastmod, а какой-то иной сортировки - если нет никакой возможности гарантировать нормальную сортировку сообщений по lastmod. старую версию client.pl можно оставить функционирующей пол-годика, скажем, чтобы дать время исправить клиентов.


 
Sir Alex ©   (2004-02-09 19:17) [52]

2 ИМХО, adwer
Уже давно все придумано...


 
adwer   (2004-02-09 19:34) [53]

Куда тогда смотреть ?


 
adwer   (2004-02-09 19:35) [54]

Или это ответ не на это сообщение ? (09.02.04 18:25)


 
nikkie ©   (2004-02-09 19:44) [55]

>[45] adwer
>Каким образом принимается решение о включении ее в программу.
пока что не о чем говорить, этот вопрос встанет, когда будет хотя бы несколько людей, готовых участвовать в разработке.

>Или будет администратор проекта, которые решает - быть или не быть ?
разумеется. я открыл на sourceforge проект - пока я являюсь его единственным администратором. работа с исходниками должна вестись через cvs, желающих участвовать я добавлю в группу.

имхо, серьезные фичи требуют обсуждения - как она ложится в общую концепцию, каким именно способом эту функциональность стоит реализовывать. например, автоматическое скачивание веток форума - я согласен, что смысл в этом есть, но скачивание всех новых веток при обновлении форума (как я понял ты сделал) может вылиться в проблемы с заторможенным интерфейсом пользователя - при обновлении списка сообщений форума требуется скачать сразу все новые ветки. к тому же, что делать, если оборвалась связь при их скачивании? все это надо продумывать.


 
adwer   (2004-02-09 19:52) [56]

Речь идет не о конкретной, реализованной мною фичи, а о работе вообще. Я бы хотел поучаствовать в проекте по развитию данного клиента. Причем мне бы хотелось, чтобы это была именно командная работа. Поэтому и спрашиваю.
Если нет :( - придется разрабатывать "клиента только для себя".


 
McSimm ©   (2004-02-09 20:01) [57]

>сообщения не отсортированы по дате-времени. вверху списка оказываются довольно "старые" сообщения. я так понимаю, что это возникает по 2-м причинам:

8й пункт в списке.


 
nikkie ©   (2004-02-09 20:07) [58]

>Я бы хотел поучаствовать в проекте по развитию данного клиента.
ты регистрируешься на sourceforge и посылаешь мне письмо со своим login-ом. я добавляю твой login в группу проекта. после этого надо настроить cvs - ты получаешь доступ к редактированию сорсов в cvs. но если будешь самовольничать - я тебя из группы исключаю ;)

дальше ждем, пока кто-нибудь (ну хотя бы и сами разработчики) добавят Bug Requests, Feature Requests. каждый request обсуждается, по нему принимается решение, назначается исполнитель.


 
nikkie ©   (2004-02-09 20:08) [59]

>8й пункт в списке
супер :))


 
MDFE ©   (2004-02-10 01:10) [60]

Sir Alex © (09.02.04 16:06) [39]

Хотелось бы добавить:

3. Чтоб из клиента нельзя было запостить в "потрепаться", хочешь трепаться заходи на сайт.


 
MDFE ©   (2004-02-10 01:15) [61]

McSimm ©

А вообще, реально бы, сделать протокол немного в сторону NNTP, тогда и клиентов городить ненужно.

Я тоже делал и off-line клиент и для дайджестов, но это все не то.

Вот моя первая наработка в сторону NNTP пока только для дайджестов, но и клиент почти готов.
http://www.delphimaster.ru/cgi-bin/download.pl?look=1&id=1075931704&n=1


 
Sir Alex ©   (2004-02-10 02:10) [62]

2 adwer (09.02.04 19:34) [53]
Это ответ на: ИМХО © (09.02.04 19:04) [49] и на adwer (09.02.04 19:09) [50]. В частности именно поэтому в клиентах небыло возможности отвечать на вопросы (да и сейчас нет).


 
MDFE ©   (2004-02-10 02:25) [63]

McSimm ©

Или еще предложение:
Дать возможность постить(из клиента) только тем, у кого более 1000(к примеру) постов в тематические форумы.

:)


 
nikkie ©   (2004-02-10 03:25) [64]

>MDFE
встречное предложение:
разрешить постить из клиентов за денежку. они ж трафик экономят - вот на съекономленныйе деньги пущай сайт поддерживают. да и вообще за удобство надо платить. :/


 
SergP ©   (2004-02-10 05:57) [65]

А вообще возможность постить из клиента очень было бы удобно тем, у кого инет такой паскудный как у меня. Типа написал в офлайне несколько вопросов/ответов, и в момент когда есть онлайн их все вместе и запостил.


 
McSimm ©   (2004-02-10 10:46) [66]

>ИМХО, все эти клиенты не очень выгодны владельцам сайта (по известным причинам). Или я неправ?
На самом деле никакой разницы. Даже если это приведет к понижению в рейтингах, на выгоде это никак не скажется :)
Удобство, полезность сайта для посетителей (для большинства, не для всех) - это и есть наша выгода.

>разрешить постить из клиентов за денежку.
До этого не дойдет, я надеюсь.
Хотя на сайте возможно когда-нибудь и появится какая-нибудь платная сфера, а что делать, рано или поздно перед сайтом может стать проблема окупаемости :(


> написал в офлайне несколько вопросов/ответов, и в момент когда есть онлайн их все вместе и запостил.

С одной стороны именно из-за проблем диал-апщиков и хочется ввести такой механизм. Но тут кроется одна из проблем, из-за которой я сомневаюсь. С момента прочтения ветки, до отправки своего поста проходит существенный промежуток времени. За это время ветка меняется, там появляются другие ответы. И ваш постинг весьма вероятно будет не очень уместен.
По себе знаю, в моем клиенте при желании ответить открывается ветка в браузере как раз с того сообщения, до которого я уже дочитал оффлайн и это очень удобно. Так вот, довольно часто, посмотрев последующие сообщения мне либо вообще не приходится писать, либо писать что-то другое.

>А вообще, реально бы, сделать протокол немного в сторону NNTP, тогда и клиентов городить ненужно.
Я так не думаю. Я лично не стал бы пользоваться Outlook, т.к. мой клиент мне очень удобен. Как альтернативу - может быть (когда-нибудь), но я не уверен что это легко.

В любом случае хотелось бы услышать мнение людей, стали бы они пользоваться готовыми новостными клиентами при наличии специализированных.

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

>Чтоб из клиента нельзя было запостить в "потрепаться", хочешь трепаться заходи на сайт.
не уверен. но надо подумать. может и стоит, а может и нет.
Потрепаться самый динамичный, в нем огрехи задержек с ответами будут наиболее явными, включая последствия модераторства.

Кстати, еще в планах научить client.pl раздавать информацию об изменениях в ветках, которую при желании можно учитывать в программах.


 
adwer   (2004-02-10 12:13) [67]

to [58] nikkie © (09.02.04 20:07)

> дальше ждем, пока кто-нибудь (ну хотя бы и сами разработчики) добавят Bug Requests, Feature Requests. каждый request обсуждается, по нему принимается решение, назначается исполнитель.

Где добавлять ? Здесь или на SourceForge ? Прошу прощения за такие вопросы, так как в таких проектах еще не участвовал.

Сразу готов предложить 2 Feature Requests, которые мне просто необходимы:
1. Закачка одним щелчком всех новых заголовков сообщений, а также тел сообщений. Согласен, что так как всем это не нужно - это дело можно сделать максимально настраиваемым.
2. Хранение сообщений не в текстовых файлах, а в БД. Я бы хотел в Firebird, хотя думаю, что кто-то захочет использовать MySQL, Access или MS SQL. DMCStorage - я посмотрел - действительно очень удачно спроектировано, что не составит большого труда прикрутить дополнительные способы сохранения сообщений.


 
McSimm ©   (2004-02-10 13:33) [68]


> adwer (10.02.04 12:13) [67]

Сколько смотрю твои пожелания, столько и вижу в них dolphin :)))

Кстати, планируемая версия 2.0 будет именно на FB, только не знаю как много уйдет времени, т.к. писать приходится полностью заново, исходники утеряны :(


 
adwer   (2004-02-10 13:45) [69]

А разве в Dolphin реализован первый пункт - закачка тел сообщений вместе с заголовками ?


 
McSimm ©   (2004-02-10 13:49) [70]


> adwer (10.02.04 13:45) [69]

Да, если сообщение отмечено как "Важное".


 
adwer   (2004-02-10 13:51) [71]

Хм... тогда мне нужна возможность отметить все сообщения, заголовки которых закачаны, как важные ;)
Хотя, если не ошибаюсь у тебя на MS SQL работает - можно триггер написать ;)


 
nikkie ©   (2004-02-10 14:16) [72]

>adwer
>Где добавлять ? Здесь или на SourceForge ?
здесь бессмысленно. на SourceForge в соответствующем разделе.

только вот беда - пытаюсь добавить Bug/Feature, а он выдает бессмысленный Error:Artefact. буду еще тыркаться.

>в таких проектах еще не участвовал.
с sourceforge я тоже раньше дела не имел, но общее представление, как должна быть организована командная работа у меня есть. других подобных сервисов я не знаю, поэтому надо разбираться с ним.

пока не получается добавить туда, прокомментирую здесь.

1. Закачка одним щелчком всех новых заголовков сообщений, а также тел сообщений. Согласен, что так как всем это не нужно - это дело можно сделать максимально настраиваемым.
я не против. думаю нужен отдельный downloader-модуль, чтобы не замораживался основной интерфейс программы (странички с форумами и темами). чтобы видеть прогресс скачивания. ну и чтобы не в одном потоке это делать...

2. Хранение сообщений не в текстовых файлах, а в БД. Я бы хотел в Firebird, хотя думаю, что кто-то захочет использовать MySQL, Access или MS SQL. DMCStorage - я посмотрел - действительно очень удачно спроектировано, что не составит большого труда прикрутить дополнительные способы сохранения сообщений.
согласен. мне видится использование чего-то типа Embedded Interbase. имхо, главное - чтобы пользователь не заморачивался с инсталляцией и созданием базы. а то можно и оракл потребовать поставить...

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


 
jack128 ©   (2004-02-10 15:06) [73]


> McSimm ©
> мой клиент мне очень удобен

А мне он просто удобен, по одной причине:
После закачки тем/сообщений начинается индексация, которая загружает проц на 100% и продолжается она очень долго(до 10 минут и более). Объем базы 24 метра, Duron800, 256 МБ
Если бы это можно было исправить, то клиент был бы ОЧЕНЬ удобен :-))


 
McSimm ©   (2004-02-10 15:19) [74]


> jack128 © (10.02.04 15:06) [73]

Честно скажу, в недоумении. Даже не могу предположить причин.
Проверь, не через ODBC ли провайдера подключился к БД?

Долгая индексация понятна при закачке большого количества информации, например первая закачка или длиннющая ветка. В обычном режиме и на более слабых машинах индексация длится несколько секунд. И все равно, не замечал такой загрузки процессора, обычно на индексацию вообще не замечаю - я себе свое делаю, а она в параллельном потоке работает.

Может и можно было бы подправить, но ничего по указанным выше причинам не могу сделать пока. Если выйдет 2.0, там этих проблем не будет, обещаю.


 
McSimm ©   (2004-02-10 15:27) [75]

> jack128 © (10.02.04 15:06) [73]

В качестве полумеры можно попробовать
- упаковать (дефрагментировать) БД,
- можно попробовать периодически переходить на чистые БД, сохраняя старые как архив, если надо.
- И наконец, удалить(переименовать) из БД таблицу WordList, что приведет к отсутствию поиска, но программа перестанет терзать процессор.


 
jack128 ©   (2004-02-10 15:38) [76]


> Проверь, не через ODBC ли провайдера подключился к БД?
Jet 4.0 OLE DB Provider

> - упаковать (дефрагментировать) БД,
не-а. Размер на 30% уменьшился,(до 16 МБ) а толку - 0


> И наконец, удалить(переименовать) из БД таблицу WordList,
> что приведет к отсутствию поиска, но программа перестанет
> терзать процессор.
Угу, это помогло - спасибо.
А вообще ждем вторую версию.

Вот Sir Alex тоже версию на FB Emb собирается(или уже делает), посмотрим что колектив во главе с nikkie © напишет, в общем все решили обновить клиенты - это что, эпидемия??


 
DeadMeat ©   (2004-02-10 15:39) [77]

Скачал... У меня оказывается была версия типа a


 
jack128 ©   (2004-02-10 15:41) [78]

Да и еще, в таблице WordList было > 200000 записей, это нормально?


 
McSimm ©   (2004-02-10 15:55) [79]

>все решили обновить клиенты - это что, эпидемия??
Вряд ли, я "решил" давно, уже год как "обновляю" :)
Первую версию выпустил за 2 недели. А теперь раз в неделю по пол-часика если удастся выкроить, то это прорыв :(

> 200000 записей, это нормально?
Нормально. С учетом того, что запись это всего лишь 4 integer поля.
Зато помогает очень быстро находить. По сравнению с LIKE %слово% на несколько порядков.


 
Danilka ©   (2004-02-10 16:03) [80]


> Зато помогает очень быстро находить. По сравнению с LIKE
> %слово% на несколько порядков.

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



Страницы: 1 2 3 вся ветка

Текущий архив: 2004.03.09;
Скачать: CL | DM;

Наверх




Память: 0.66 MB
Время: 0.024 c
14-25855
Алексей
2004-02-17 14:01
2004.03.09
Как сделать так


1-25776
чайник1
2004-02-26 12:45
2004.03.09
Передать переменную


14-25871
Плохиш
2004-02-16 12:46
2004.03.09
Никлаусу Вирту сегодня 70!


14-25937
Knight
2004-02-13 11:38
2004.03.09
Кто каким шампунем или мылом моет голову...


14-25900
Soft
2004-02-15 03:51
2004.03.09
Россия. Воры в Законе.