PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : will nen chat aufbauen


theripper8472
15.12.2002, 23:35:24
hi!

ich will nen chat schreiben.
dazu wollte ich das so machen, dass eine neue zeile von einem script in eine datei geschrieben wird (die datei hat automatisch nur 20 zeilen). beim user wird dann ein script, das die chatdatei ausgibt, über ein meta refresh immer wieder aufgerufen.

das macht aber traffic und ist saulahm.

gibts da nix schnelleres? wenn mgl. was mit php, nichts was ich dann als exe ausführen muss?

mad-boy
23.12.2002, 17:09:34
Es gibt was mit Shell aber dazu brauchst du bestimmte Files auf dem Server, meist sehr teuer bzw. selten zu haben! Das ist das was auch die gößeren Chats nutzen, soweit ich weiß!
Ich kenn mich damit aber auch nicht genau aus, habs mir nur mal sagen lassen!

theripper8472
07.01.2003, 22:01:43
hab gehört, mit perl scripts geht sowas. perl ist ja n system script und kann laufen bis zum ende aller tage...
aber ich hab windows 98 (will aber 2000) und da geht sowas net
und der chat ist für nen freespace auf lycos gedacht...

hoffnungslos

kann ich nicht ein script 30 sekunden laufen lassen und wenn das script nen neuen eintrag in ner datei findet, sendet es ne neue zeile und "flush()"t dann... halt in ner endlosschleife.
da werd ich aber gekickt wegen der serverlast!!!!!!!!!

Matt
08.01.2003, 10:30:03
vergiss es, das ist WAHNSINNIG komplex, und mit PHP SEHR schlecht zu realisieren.
Du könntest dir nen IRC Channel einrichten lassen und auf deiner HP ein entsprechendes Java Applett einbinden. Sowas hab ich schon mal wo gesehen. Ist tausendmal einfacher und kostet nichts extra.
Die Webspace provider werden in den meißten fällen keine solchen spielereinen wie chats zulassen

theripper8472
09.01.2003, 22:43:41
gibts nicht wenigstens sourcecode in delphi (opascal) für ausführbare chatserver unter windows? da könnte ich mir das alles selbst schreiben (server)... und in die seite einbinden.

hat da jemand erfahrungen mit programmierung von servern unter delphi?

wäre sehr hilfreich

Matt
10.01.2003, 12:26:11
server sind im prinzip nicht schwer. du machst einfach einen port auf - nicht umbedingt port 80 weil da rennt schon http - und horchst, was da so kommt. Wenn wer connected dann haust du ihn in ein array der user (mach ein objekt user, in dem genauere details zu nem user stehen) und wenn wer was schickt, schickst du es auf dem port zu allen anderen raus. so öder ähnlich wird das funktionieren. du musst zu jedem connecteten einen socket haben, damit du mit ihm kommunizieren kannst.

theripper8472
10.01.2003, 20:43:40
ist die frage, wie ich das dann an den browser des chatters schicken kann.
wenn du giga (www.giga.de) kennst, weist du ja, welche art von chat ich gerne haben würde.

Matt
10.01.2003, 21:56:55
per Java Applett - das wird dann automatisch heruntergeladen und ausgeführt, ist meiner meinung nach das vernünftigste!
such nach einem IRC Java Applett Client oder sowas, es gibt einen, das weiss ich.
giga.de kenn ich leider nicht...

theripper8472
10.01.2003, 23:14:38
was muss ich da mit irc einrichten? einen channel oder was anderes? will dann jemand geld von mir?

danke für die idee, ich such mir mal sowas

Matt
11.01.2003, 09:46:25
keine ahnung von IRC, ich weiss nur dass es IRC server gibt, auf denen verschiedene channels eingerichtet werden können, ob du einen kriegst, hängt nicht zuletzt davon ab, ob du mit dem serveradmin gut stehst, denk ich aber IRC ist mir auch nicht sonderlich bekannt, das ist schon alles, was ich weiss...

mad-boy
11.01.2003, 10:12:27
Im IRC gibt es Channel auf verschiedenen Servern, die kann sich eigendlich jeder holen in dem du einfach einen nicht existierenden Channel "betrittst", der Channel wird dann automatisch geöffnet und du wirst als Op (admin) eingetragen. Das Problem ist nur, wenn nun keiner mehr im Channel ist, wird der Channel auch wieder gelöscht! Dass heißt, es kann sein, dass dann jemand anderes den Channel bekommt bis wieder alle den Channel verlassen.
Um das zu umgehen gibt es Bots, kleine Programme die sich in den Channel als ganz normaler User einklinken, Adminrechte bekommen und dann 24h am Tag, 7Tage die Woche in diesem Channel verweilen und dir immer, wenn du in den Channel kommt, Adminrechte geben.
Die meisten Netzwerke (wie z.B. Quakenet) bieten diese Bots direkt mit an, aber meistens leider nur, wenn du einen bestimmten Themenbereich erfüllst. Das Quakenet vergiebt z.B. nur Bots an Leute mit einer Clan- oder Spielehomepage.

Über Google o.ä. findest du aber auch schnelle andere Netzwerke die wieder andere Themengebiete haben. Schau dich einfach mal um!

Ich hoffe ich konnte dir helfen. :)

flobee
14.01.2003, 23:47:38
hall! auch wennich mal quer frage! baue auch gerade einen chat aber auf basis php-flash
erste version: http://www.cgix.de/user/flobee/modules.php?name=Chat

allerdings ist das kein chat sonderer eher ein INSTANT MESSANGER..

gibts da nicht möglichkeiten mit sockets?
ich hab mal ein PERL Socket gesehen das genau für flash gemacht wurde ...has aber nicht mehr und ganz ehrlich: ich hab da kein code verstanden...vielleicht weiss hier ja jemand einen php socket weg!?

Matt
15.01.2003, 09:04:24
ja, es gibt socket funktionen von PHP, allerdings wird das nicht besonders vernünftig funktionieren!
Warum wollen nur alle einen PHP - chat machen?

flobee
15.01.2003, 13:34:51
php chat?
keine ahnung! ich mach mit flash viel rum und da bieten sich ja möglichkeiten die anders (ausser java) wohl sich schwerer realisieren lassen!
allerdings hab ich a keine ahnung welche techniken es gibt, welche unter welchen vorraussetzungen die beste ist, auf welchen plattformen es laufen könnte.
was wär denn deine idee? bei mir spiel es u.a. auch ne wesentliche rolle am design rum spielen zu können...
und wie laufen diese ganzen chat systeme ICQ AOL...?

gruß flobee

Matt
15.01.2003, 16:43:07
da gibts nen zentralen Server, der immer läuft und der alle user verwaltet - auch Peer 2 Peer Netze wie Kazaa und co benötigen einen Zentralen server, der P2P Connections ermöglicht, indem er die Terminals vermittelt. Um einen Server kommst du nicht herum, es sei denn, du weisst die IP desjenigen, mit dem du chatten willst und er weiss deine. Da sich die aber ändert ist dies keine gute idee...

flobee
16.01.2003, 18:09:55
also der perl quell code sieht so aus:
quelle: http://www.perldoc.com/perl5.6/lib/IO/Select.html

use IO::Select;
use IO::Socket;

$lsn = new IO::Socket::INET(Listen => 1, LocalPort => 8080);
$sel = new IO::Select( $lsn );

while(@ready = $sel->can_read) {
foreach $fh (@ready) {
if($fh == $lsn) {
# Create a new socket
$new = $lsn->accept;
$sel->add($new);
}
else {
# Process socket

# Maybe we have finished with the socket
$sel->remove($fh);
$fh->close;
}
}
}
sind diese IO s nicht mit php zu realisieren?

theripper8472
16.01.2003, 20:14:20
ist es nicht möglich, den ersten user im chat als "server" zu missbrauchen: ich nehm mir seine ip und über flash/java applet auf seinem browser läuft dann die vermittlung. alle ips der user werden geloggt und wenn der "server" chatter ausfällt, wird der nächste in der reihe zum server degradiert.

ist doch ne überlegung wert, oder??