Thanks for the reply.
Here's a little background. I am building a VB.NET News Reader and can
successfully list news groups, and messages in each newsgroup. A response
from the server for a posted message will look like below.
I am trying to display the posts in a thread, much like you see in outlook
or any other news reader. There References Header seems to be the only
thing that relates the post to one another. I was trying to use the check
command which requires authentication, to look up the corresponding
crossposts. It seems that the only way I can cross reference the post is to
do this:
Query the news server for a list of posts in a group, and then use the HXDR
command to gets the message-id for every post. Once I have the headers, I
need to loop through all the headers and match the reference ID to the
Article ID. Once I have the Article ID for each referenced post I can then
lookup each post listed in the references header. This seems like a pain
with lots of uneccesary communication between the client and the server.
Does anyone know of an easier way to do this?
Client: group microsoft.publi c.dotnet.framew ork.aspnet
Server: 211 11566 471296 483110 microsoft.publi c.dotnet.framew ork.aspnet
Client: Article 483080
Server:
220 483080 <OG************ **@TK2MSFTNGP04 .phx.gbl>
From: "Juan T. Llibre" <no***********@ nowhere.com>
References: <11************ **********@57g2 000hsv.googlegr oups.com>
<e0************ **@TK2MSFTNGP03 .phx.gbl>
Subject: Re: NNTP Login
Date: Sat, 22 Sep 2007 06:37:19 -0400
Lines: 35
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.3790.2725
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.3790.4073
X-RFC2646: Format=Flowed; Response
Message-ID: <OG************ **@TK2MSFTNGP04 .phx.gbl>
Newsgroups: microsoft.publi c.dotnet.framew ork.aspnet
NNTP-Posting-Host: 123stb62.codete l.net.do 66.98.12.123
Path: TK2MSFTNGP01.ph x.gbl!TK2MSFTNG P04.phx.gbl
The microsoft news server does not require a password to be sent to login to
it.
Why don't you login directly to the Microsoft news server (
msnews.microsof t.com ) ?
Just create an account for msnews.microsof t.com in Outlook Express...and
login.
I wouldn't include a real email address, though.
Either garble it a bit...or use a fake one.
Juan T. Llibre, asp.net MVP
asp.net faq :
http://asp.net.do/faq/
foros de asp.net, en espa?ol :
http://asp.net.do/foros/
=============== =============== ========
"Alexander Higgins" <Al************ @hotmail.comwro te in message
news:e0******** ******@TK2MSFTN GP03.phx.gbl...
Posting from outlook express...
"Alexander Higgins" <al************ @hotmail.comwro te in message
news:11******** **************@ 57g2000hsv.goog legroups.com...
>Hi,
I am working on an NNTP Client via windows forms and am actually try
to login into this group to no avail. I am sending
AUTHINFO USER username <where username=myemai l address
AUTHINFO PASS password <where password=my groups.google password
Any suggestions, what am i doing wrong. I keep getting 502 permission
denied.
Shortened for brevity, this will get the last one hundred headers, in
actuality you may have to query thousands of headers.
Client: xhdr message-id 483010-483110
221 Xhdr information follows
483010 <ut************ **@TK2MSFTNGP04 .phx.gbl>
483011 <#o************ **@TK2MSFTNGP02 .phx.gbl>
483012 <FE************ *************** *******@microso ft.com>
483013 <#O************ **@TK2MSFTNGP05 .phx.gbl>
483014 <#n************ **@TK2MSFTNGP06 .phx.gbl>
483015 <eh************ **@TK2MSFTNGP06 .phx.gbl>
483016 <OI************ **@TK2MSFTNGP04 .phx.gbl>
483017 <11************ *********@50g20 00hsm.googlegro ups.com>
483018 <#T************ **@TK2MSFTNGP05 .phx.gbl>
483019 <#7************ *@TK2MSFTNGP05. phx.gbl>
483020 <OA************ *@TK2MSFTNGP05. phx.gbl>
483021 <11************ **********@57g2 000hsv.googlegr oups.com>
483022 <84************ *************** *******@microso ft.com>
483023 <eS************ **@TK2MSFTNGP05 .phx.gbl>
483024 <#j************ **@TK2MSFTNGP03 .phx.gbl>
483025 <eG************ **@TK2MSFTNGP06 .phx.gbl>
483026 <u3************ **@TK2MSFTNGP02 .phx.gbl>
483027 <ep************ **@TK2MSFTNGP02 .phx.gbl>
483028 <%2************ ********@bignew s6.bellsouth.ne t>
483029 <#d************ **@TK2MSFTNGP03 .phx.gbl>
483030 <11************ **********@19g2 000hsx.googlegr oups.com>
483031 <Od************ **@TK2MSFTNGP02 .phx.gbl>
483032 <O2************ *@TK2MSFTNGP06. phx.gbl>
483033 <ub************ *@TK2MSFTNGP06. phx.gbl>
483034 <13************ *@corp.supernew s.com>
483035 <13************ *@corp.supernew s.com>
483036 <13************ *@corp.supernew s.com>
483037 <11************ *********@22g20 00hsm.googlegro ups.com>
483038 <11************ **********@57g2 000hsv.googlegr oups.com>
483039 <AE************ *************** *******@microso ft.com>
483040 <11************ **********@o80g 2000hse.googleg roups.com>
483041 <11************ **********@o80g 2000hse.googleg roups.com>
483042 <11************ **********@y42g 2000hsy.googleg roups.com>
483043 <#2************ **@TK2MSFTNGP02 .phx.gbl>
483044 <11************ *********@n39g2 000hsh.googlegr oups.com>
483045 <73************ *************** *******@microso ft.com>
483046 <7895594e80f1a@ uwe>
483047 <up************ **@TK2MSFTNGP06 .phx.gbl>
483048 <29************ *************** *******@microso ft.com>
483049 <84************ *************** *******@microso ft.com>
483050 <11************ **********@w3g2 000hsg.googlegr oups.com>
483051 <OU************ **@TK2MSFTNGP05 .phx.gbl>
483052 <OP************ **@TK2MSFTNGP06 .phx.gbl>
483053 <#b************ **@TK2MSFTNGP02 .phx.gbl>
483054 <14************ *************** *******@microso ft.com>
483055 <D6************ *************** *******@microso ft.com>
483056 <02************ *************** *******@microso ft.com>
483057 <ur************ **@TK2MSFTNGP05 .phx.gbl>
483058 <#Y************ *@TK2MSFTNGP06. phx.gbl>
483059 <#P************ *@TK2MSFTNGP06. phx.gbl>
483060 <wY3Ji.2142$Hv4 .0@amstwist00>
483061 <O9************ **@TK2MSFTNGP03 .phx.gbl>
483062 <34************ *************** *******@microso ft.com>
483063 <11************ *********@k79g2 000hse.googlegr oups.com>
483064 <#k************ *@TK2MSFTNGP04. phx.gbl>
483065 <11************ **********@n39g 2000hsh.googleg roups.com>
483066 <OQ************ **@TK2MSFTNGP06 .phx.gbl>
483067 <11************ *********@g4g20 00hsf.googlegro ups.com>
483068 <Oy************ **@TK2MSFTNGP04 .phx.gbl>
483069 <11************ **********@o80g 2000hse.googleg roups.com>
483070 <#2************ **@TK2MSFTNGP03 .phx.gbl>
483071 <#v************ **@TK2MSFTNGP03 .phx.gbl>
483072 <3d************ *************@m snews.microsoft .com>
483073 <3d************ *************@m snews.microsoft .com>
483074 <11************ **********@57g2 000hsv.googlegr oups.com>
483075 <e0************ **@TK2MSFTNGP03 .phx.gbl>
483076 <ut************ **@TK2MSFTNGP05 .phx.gbl>
483077 <#Z************ **@TK2MSFTNGP02 .phx.gbl>
483078 <OC************ **@TK2MSFTNGP05 .phx.gbl>
483079 <uH************ **@TK2MSFTNGP04 .phx.gbl>
483080 <OG************ **@TK2MSFTNGP04 .phx.gbl>
483081 <Ov************ **@TK2MSFTNGP04 .phx.gbl>
483082 <eT************ **@TK2MSFTNGP04 .phx.gbl>
483083 <eN************ **@TK2MSFTNGP02 .phx.gbl>
483084 <#N************ **@TK2MSFTNGP05 .phx.gbl>
483085 <Ou************ **@TK2MSFTNGP03 .phx.gbl>
483086 <#S************ **@TK2MSFTNGP03 .phx.gbl>
483087 <uN************ **@TK2MSFTNGP02 .phx.gbl>
483088 <11************ **********@k79g 2000hse.googleg roups.com>
483089 <eE************ **@TK2MSFTNGP06 .phx.gbl>
483090 <O5************ **@TK2MSFTNGP02 .phx.gbl>
483091 <11************ **********@y42g 2000hsy.googleg roups.com>
483092 <3d************ *************@m snews.microsoft .com>
483093 <OZ************ **@TK2MSFTNGP02 .phx.gbl>
483094 <uL************ **@TK2MSFTNGP03 .phx.gbl>
483095 <eH************ **@TK2MSFTNGP02 .phx.gbl>
483096 <13************ *@corp.supernew s.com>
483097 <94************ *************** *******@microso ft.com>
483098 <uW************ **@TK2MSFTNGP06 .phx.gbl>
483099 <#L************ **@TK2MSFTNGP05 .phx.gbl>
483100 <11************ **********@k79g 2000hse.googleg roups.com>
483101 <Oa************ *@TK2MSFTNGP06. phx.gbl>
483102 <F1************ *************** *******@microso ft.com>
483103 <30************ *************** *******@microso ft.com>
483104 <Ow************ **@TK2MSFTNGP03 .phx.gbl>
483105 <11************ **********@r29g 2000hsg.googleg roups.com>
483106 <95************ *************** *******@microso ft.com>
483107 <1A************ *************** *******@microso ft.com>
483108 <9F************ *************** *******@microso ft.com>
483109 <11************ **********@n39g 2000hsh.googleg roups.com>
483110 <#d************ **@TK2MSFTNGP03 .phx.gbl>
Now that I have the message-id of the last 100 posts, loolp through each
until I find the reference id's
Dim References() as string = new string()
{"<11********** ************@57 g2000hsv.google groups.com>",
"<e0*********** ***@TK2MSFTNGP0 3.phx.gbl>"}
for I as integer = 0 to ubound(split(XH DR, vbnewline))
for j as integer = 0 to ubound(referenc es)
if split(XHDR, vbnewline)(i).s plit(" ")(1) = referenences(j) then
References(j) = split(XHDR, vbnewline)(i).s plit(" ")(0)
next
next
return references
Now There references *should* contain the corrersponding articleID
' References(0) = 483074 References(1) = 483075
For I as integer =0 to ubound(referenc es)
Dim article as string = GetArticle(refe rences(i)
next
Function GetArticle(byva l ArticleID as integer)
NNTP.Query("Art icle " & articleID & environment.new line)
End function
Client: Article 483075
Server: ----- Returns Articles similar to that above.
As you can see, there seems to be a lot of overhead head here going back and
forth. Is this how it needs to be done or is there a simpler way?