Главная страница


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Valentin Nechayev                    2:5020/400     18 Aug 2002  19:19:22
 To : Maxim Chuvashov
 Subject : Re: NNTP
 -------------------------------------------------------------------------------- 
 
 >>> Maxim Chuvashov wrote:
 
 MC> Есть задача получить список сообщений с какой-либо
 MC> группы новостей с NNTP сервера, и выстроить их в нужной
 MC> иерархиии. Получаем список, выдираем из заголовка Message-ID
 MC> и References. Все бы хорошо, если бы не одно но:
 MC> В некоторых случаях "корневое" сообщение имеет один Message-ID,
 MC> а в реплае на это же сообщение в "References" Message-ID немного
 MC> видоизменяется (это первая часть, которая стоит до "@". То что после -
 MC> остается неизменно). Как тогда определить какой реплай к
 MC> какому корневому сообщению относится?
 
 Hепонятно, что ты называешь корневым сообщением.
 В общем случае может быть несколько ситуаций:
 1. Message-ID совпадает с Message-ID другого сообщения. Это не для ньюсов
 (там такое запрещено принципиально), но в почте - реально.
 2. Первый с конца References совпадает с Message-ID другого сообщения.
 В этом случае первое сообщение считается ответом на второе.
 3. Второй с конца References совпадает с Message-ID другого сообщения,
 при этом не найдено сообщение для пункта 2. Предполагается, что одно
 промежуточное сообщение отсутствует или же находится.
 N. И дальше - про третий с конца и так далее...
 
 У тебя в общем случае получается комплект пар сообщений, между которыми
 выстроено отношение частичного порядка. (Предполагаем, что циклов нет;))
 Тогда можно методом топологической сортировки найти их очередность по
 раньше-позже в пределах каждой ветки общения и затем собрать ветки начиная
 от корней; корнем в каждом случае будет первое сообщение из ветки.
 Процедура дешевая (O(N)). Если непонятны термины "частичный порядок",
 "топологическая сортировка" - вперед на google или к преподавателю алгебры
 (или матанализа).
 
 MC> Если даже сравнивать то, что стоит после "@" + на соответствие
 MC> по темам - все равно не получим 100% правильный результат, т.к.
 MC> некоторые хорошие люди имеют привычку при ответах менять тему :)
 MC> Как быть, может кто-нибудь сталкивался?
 
 Ты, похоже, описываешь проблемы, созданные гейтами RFC<->FTN.
 После гейтования в FTN message-id приобретает вид "узел число", где "узел"
 обычно берется как доменная часть message-id до гейтования, а "число" считается
 гейтом. В ^AREPLY ответа на это письмо идет тот же id.
 После прохождения гейта обратно на сторону RFC (NNTP или что-то близкое)
 гейт может восстановить исходный id, если он умный; если глупый - получается
 артефакт вида <98765432@nn.kiev.ua>, после которого ветки могут рассыпаться
 и рваться.
 
 Все это скорее тема для ru.unix.ftn или ru.internet.technology, чем для здесь.
 /netch
 --- ifmail v.2.15dev5
  * Origin: Dark side of coredump (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 NNTP   Maxim Chuvashov   07 Aug 2002 14:51:56 
 Re: NNTP   Artem Chuprina   07 Aug 2002 18:00:56 
 Re: NNTP   Maxim Chuvashov   07 Aug 2002 18:42:01 
 Re: NNTP   Artem Chuprina   08 Aug 2002 03:40:41 
 ответ на HHТП   Alexander V. Gaiduk   08 Aug 2002 16:27:43 
 Re: ответ на HHТП   Artem Chuprina   08 Aug 2002 19:03:26 
 Re: NNTP   Valentin Nechayev   18 Aug 2002 19:19:22 
Архивное /ru.perl/736847716b91.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional