home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Acorn User 10
/
AU_CD10.iso
/
Archived
/
Internet
/
News-Email
/
newsh139
/
!NewsHound
/
Docs
/
HowItWorks
< prev
next >
Wrap
Text File
|
1998-08-17
|
3KB
|
91 lines
Overview
========
When you do a news fetch, NewsHound does the following things:
* connects to news server
* gets date and time from server ('DATE')
* posts any waiting articles ('POST')
* fetches any article bodies that have been requested ('ARTICLE <msg-id>')
* fetches any newly created news groups ('NEWGROUPS last-fetched-date')
* fetches any new news articles ('GROUP','XOVER','HEAD','ARTICLE')
* fetches active/desc lists,if requested ('LIST', 'LIST NEWSGROUPS')
The text is bracket is the NNTP command(s) used for that operation.
Fetching news articles
======================
The following sequence is repeated for each newsgroup, I'll use csa.announce
as an example:
( >> = sent to server, << = received from server )
>> GROUP comp.sys.acorn.announce
<< 211 (184 974 1170 comp.sys.acorn.announce)
From this, NewsHound knows there are 184 articles in csa.announce, numbered
from 974 to 1170.
NewsHound now checks to see the last article it fetched from the newsgroups.
For this example, lets say we've seen articles upto number 1167.
NewsHound then knows it hasn't seen articles 1168-1170, so it sends:
>> XOVER 1168-1170
<< 224 data follows
<< 1168 New Releases from Skullsoft
Skullsoft <Skullsoft@eganc.demon.co.uk>
Sun, 16 Aug 1998 15:00:23 +0100
<ap.fa97164876.a701a0a.m.conroy@argonet.co.uk>
2765
67
Xref: bluetac.blob.uk comp.sys.acorn.announce:1168
<< 1169 AlphaSave 1.25
Marc Warne <marc@alphapro.demon.co.uk>
Sun, 16 Aug 1998 17:22:21 +0100
<ap.b29b974876.a701a0a.m.conroy@argonet.co.uk>
2615
53
Xref: bluetac.blob.uk comp.sys.acorn.announce:1169
<< 1170 Contributors Wanted!
Acorn Arcade (webmaster) <webmaster@acornarcade.com>
Sun, 16 Aug 1998 21:10:50 +0100
<ap.1cb5344876.a701a0a.m.conroy@argonet.co.uk>
2237
41
Xref: bluetac.blob.uk comp.sys.acorn.announce:1170
(line wrapped for readability)
The information the server has sent back is a summary of the article header,
including:
* Article number within group
* Subject
* Author
* Date
* Message id
* References (empty in all above articles)
* Size in bytes
* Length in lines
* Optional fields, normally 'Xref:' showing groups article is posted to.
[It is no coincidence that the items on this list are exactly the same as
the fields NewsHound lets you use within the rulefile!]
NewsHound then checks to see if it already has this article, and runs
it through the rulefile to decide if it wants to download it or not.
There's four possible outcomes from the rulefile code:
* None -> skip to next article
* Xover -> Generate pseudo header with information we already have
* Head -> fetch header from news server ('HEAD msg-no')
* Art -> fetch compile article from newsserver ('ARTICLE msg-no')
This is repeated for each article NewsHound hasn't seen.
Once each article has been fetched, it's message id is added to the list
we have downloaded, and the 'last seen' article number is updated.