Hi guys,

I am trying to build a usenet gateway which is collecting usenet posts and
puts them into a phpbb forum. Same other way around. So I did read an
excelent article on that published by Armel Fauveau at:
http://www.phpbuilder.com/columns/armel20010427.php3?page=1 (this is where
the code underneath is from. So getting the articles works.

My problem is how to glue all the articles together which are relies. I am
sure there is a way to find out which reply belongs to a post. I would like
to feed the phpbb database with it.

This is an example of an article including the header:

Newsgroups: php.general Path: news.php.net Xref: news.php.net
php.general:111709 Return-Path: Mailing-List: contact
[EMAIL PROTECTED]; run by ezmlm Delivered-To: mailing list
[EMAIL PROTECTED] Received: (qmail 81897 invoked by uid 1007); 8 Aug
2002 18:28:33 -0000 Message-ID: <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED] Reply-To: "sebastian" Date: Thu, 8 Aug 2002
20:27:21 +0200 Lines: 11 X-Priority: 3 X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced
By Microsoft MimeOLE V6.00.2600.0000 X-Posted-By: Subject:
streaming mp3-audio??? From: [EMAIL PROTECTED] (Sebastian) hi @ all!
im looking for an algorithm or class to stream mp3-audiofiles, such as easy
as it can be. i found nothing on php.net and downloaded some phpscripts from
hotscripts and sourceforge but they were all very cryptical and bad
documentated. please help me, many thanks sebastian .

Lots of text.. puhh! I hope this is somehow possible. Maybe one of you guys
has a good idea on that. You can just cut and past the code underneath and
try it out by yourself.

Thanx for any help on that.


Australia Information Forum

# http://www.phpbuilder.com/columns/armel20010427.php3?page=3

$cfgServer    = "news.php.net";
$cfgPort    = 119;
$cfgTimeOut    = 10;

// open a socket
    // without timeout
    $usenet_handle = fsockopen($cfgServer, $cfgPort);
    // with timeout
    $usenet_handle = fsockopen($cfgServer, $cfgPort, $errno, $errstr,

if(!$usenet_handle) {
    echo "Connexion failed\n";
else {
    echo "Connected\n";
    $tmp = fgets($usenet_handle, 1024);

# page 2

//$cfgUser    = "xxxxxx";
//$cfgPasswd    = "yyyyyy";
$cfgNewsGroup    = "php.general";

// identification required on private server
if($cfgUser) {
    fputs($usenet_handle, "AUTHINFO USER ".$cfgUser."\n");
    $tmp = fgets($usenet_handle, 1024);

    fputs($usenet_handle, "AUTHINFO PASS ".$cfgPasswd."\n");
    $tmp = fgets($usenet_handle, 1024);

    // check error

    if($tmp != "281 Ok\r\n") {
        echo "502 Authentication error\n";

// select newsgroup

fputs($usenet_handle, "GROUP ".$cfgNewsGroup."\n");
$tmp = fgets($usenet_handle, 1024);

if($tmp == "480 Authentication required for command\r\n") {
    echo "$tmp\n";

$info = split(" ", $tmp);
$first = $info[2];
$last = $info[3];

print "First : $first\n<br>";
print "Last : $last\n<br>";

# page 3

$cfgLimit    = 10;

// upload last articles


while ($boucle <= $last) {


    fputs($usenet_handle, "ARTICLE $boucle\n");
#    fputs($usenet_handle, "BODY $boucle\n");

    $tmp = fgets($usenet_handle, 4096);

    if(substr($tmp,0,3) != "220" AND substr($tmp,0,3) != "222") {
        echo "+----------------------+\n<br>";
        echo "Error on article $boucle\n<br>";
        echo "+----------------------+\n<br>";
    else {
        while($tmp!=".\r\n") {
            $tmp = fgets($usenet_handle, 4096);

   $article = $article.$tmp;

        echo "+----------------------+\n<br>";
        echo "Article $boucle\n<br>";
        echo "+----------------------+\n<br>";
        echo "$article\n<br>";



// close connexion



PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to