xNeTworKx: Chat ?

Hallo,
ich wär irgendwie dran interressiert einen Chat zu programmieren, ich hab aber leider keine Ahnung wie ein Chat funktioniert. Ich erwart jetzt natürlich nicht, daß mir jemand den Quellcode rausrückt =) ,ich wollt eigentlich nur wissen, wie der Aufbau eines Chats is, zB wie das mit der Verbindung funktioniert, daß jeder mit jedem verbunden ist, also ich wills jetzt nur allgemein wissen.

  1. moin xNeTworKx,

    ich wär irgendwie dran interressiert einen Chat zu programmieren, ich hab aber leider keine Ahnung wie ein Chat funktioniert. Ich erwart jetzt natürlich nicht, daß mir jemand den Quellcode rausrückt =) ,ich wollt eigentlich nur wissen, wie der Aufbau eines Chats is, zB wie das mit der Verbindung funktioniert, daß jeder mit jedem verbunden ist, also ich wills jetzt nur allgemein wissen.

    Nun, wenn du wie du sagts keine Ahnung hast wirds hart, aber machbar. Und nur so
    lernt man.
    erstmal was grundsätzliches. Im gegensatz zu http:// kennen chatprotokolle einen
    zustand der verbindung, d.h. die verbindung bleibt erhalten. Vergleichbar mit
    einen telefonanruf. http wählt jedesmal ne neue nummer um infos anzufordern, beim
    chat wird nicht aufgelegt. Erreicht wird das durch sockets. Ein socket ist eine
    verbindung aus IP-nummer und port.
    Viele chats werden in JAVA geschrieben, da JAVA eine ausgesprochen komfortable und
    einfache socketprogrammierung bietet. Realisierbar sind chats aber in jeder
    programmiersprache, welche sockets bietet. Die perlbibliothek, welche du brauchst,
    heist IO::Socket.
    Unterschieden werden 2 arten von chats: Client-Server-architekturen und
    multicastverbindungen, bei der rechner direkt miteinander kommunizieren.

    Wenn du mehr wissen willst google mal ne runde nach Chat, Multicast, Socket.

    bye eddie

  2. Hi,

    lies mal http://selfhtml.teamone.de/navigation/faq.htm

    MfG Dmitri Rettig

  3. Hallo,

    Moin!

    ich wär irgendwie dran interressiert einen Chat zu programmieren, ich hab aber leider keine Ahnung wie ein Chat funktioniert. Ich erwart jetzt natürlich nicht, daß mir jemand den Quellcode rausrückt =) ,ich wollt eigentlich nur wissen, wie der Aufbau eines Chats is, zB wie das mit der Verbindung funktioniert, daß jeder mit jedem verbunden ist, also ich wills jetzt nur allgemein wissen.

    Allgemein also:

    Irgendwo steht ein zentraler Server, welcher den Chat hostet. Die Clients bauen eine Verbindung zu diesem Server auf und kriegen ab sofort alles gesendet, was irgendjemand sagt. Schlauerweise sollte sich das Gesabbel beim Client in einem anderen Fensterbereich abspielen wie das Eingeben der eigenen Beiträge. Tja, und genau diese eigenen Beiträge muß der Client dann zum Server senden.

    Der Server empfängt von den verschiedenen Teilnehmern Beiträge und sendet diese Beiträge an alle verbundenen Teilnehmer weiter. So kriegen alle mit, was jemand gesagt hat. Interessant werden dann kleine Zusatzfunktionen wie flüstern, "/me grinst breit."-Aussagen, Adminfunktionen, Ausschluß von Rüpeln etc.

    Problem: Wie realisiert man einen Client? Den Browser dafür zweckentfremden ist ziemlich blöd, weil der nur HTTP kann, und solche Verbindungen lösen sich immer ganz schnell wieder auf. Das ist grundsätzlich anders als bei einem Chat.

    Möglich wäre, z.B. Telnet als Chatclient zu benutzen. Jedes bessere Betriebssystem mit TCP/IP drauf hat mindestens ein simples Telnet drauf, mit dem man sowas machen könnte. Oder man bastelt was mit Java hin, das läuft dann auch innerhalb des Browsers und ohne extra Installation. Darüber hinaus kann man natürlich eigene Chat-Clients schreiben, die sich die Benutzer dann runterladen und installieren müssen. Als Komfortlösung sicherlich nicht verkehrt, aber doch ein ziemlicher Entwicklungsaufwand.

    Alternativ dazu könnte man bestehende Chatsysteme wie IRC benutzen. Das programmiert aber keiner mehr selber (außer er versteht was davon), sondern es wird bestehende Software eingesetzt (bestimmt gibts da auch Open Source für).

    - Sven Rautenberg

  4. Hallo,
    ich wär irgendwie dran interressiert einen Chat zu programmieren, ich hab aber leider keine Ahnung wie ein Chat funktioniert. Ich erwart jetzt natürlich nicht, daß mir jemand den Quellcode rausrückt =) ,ich wollt eigentlich nur wissen, wie der Aufbau eines Chats is, zB wie das mit der Verbindung funktioniert, daß jeder mit jedem verbunden ist, also ich wills jetzt nur allgemein wissen.

    hallo,
    es ist zwar kein perl-chat, sondern in php geschrieben, aber immerhin kostenlos und den quelltext kannst du dir herunterladen:

    http://www.jpg-hof.de/mthb

    ciao,
    mthb

  5. ich wär irgendwie dran interressiert einen Chat zu programmieren, ich hab aber leider keine Ahnung wie ein Chat funktioniert. Ich erwart jetzt natürlich nicht, daß mir jemand den Quellcode rausrückt =) ,ich wollt eigentlich nur wissen, wie der Aufbau eines Chats is, zB wie das mit der Verbindung funktioniert, daß jeder mit jedem verbunden ist, also ich wills jetzt nur allgemein wissen.

    Also, einen Perl Chat gibt's von Randal Schwartz unter http://www.stonehenge.com/merlyn/ Wo genau auf seiner Seite kann ich dir nicht sagen. Es ist einer der WebTechniques Artikel.

    Wichtiger jedoch, als der Quelltext ist: Einen Chat zu programmieren ist vermutlich, gerade wenn du nicht weisst wie ein solches Protokoll funktioniert, eine relativ schwierige Übung.
    Besonders dann, wenn du ihn als CGI schreiben willst. Dann ist nämlich eine reine Perl Lösung ziemlich unmöglich - zumindest wenn man nicht das expire meta tag benutzt.
    Wenn du allerdings ein eigenständiges Chat Programm schreiben willst, das nie einen Browser (und demnach kein CGI) sieht, so wirst du mit Sicherheit eine Menge Hilfe von den verschiedensten CPAN Modulen bekommen. Suche mal auf search.cpan.org nach "IRC" oder vielleicht auch "chat".

    MfG
    Steffen