Chat selber bauen, welche Möglichkeiten gibt es?

FP4Lisa

Mitglied
Hallo,
da bin ich schon wieder. Nun geht es um folgendes, ich brauche auf meiner HP einen Chat, aber einen richtigen. Folgendes sollte er können:
- vorerst 2 Räume (logischer Weise erweiterbar)
- jeder Chatter kann nur 2 Räume gleichzeitig betreten
- die Räumer brauchen ein Limit an Chattern die ihn gleichzeitig betreten können
- es soll angezeigt werden wieviele Chatter im Raum sind
- Gifs müssen im Chatverlauf dargestellt werden
- Nicks müssen mit php überprüft werden (LogIn in den Chat)
- Profile müssen beim anklicken mit php erscheinen
... das und was ich noch vergessen habe ;-) !
Natürlich habe ich mal gesucht und gemacht und Google gefüttert und gemerkt, da scheiden sich die Geister ... der eine sagt das ist gut, der andere findet etwas ganz anderes besser.
Diese Möglichkeiten habe ich entdeckt:
- PHP Chat auf MySQL Basis mit einem Iframe, das sich durch ein Java Script jede Sekunde aktualisiert. Ich habs getestet aber das Aktualisieren ist nervig. Zudem denke ich mal, wenn der Chat voll wird, dann ist es super lästig für die Datenbank, da ja alles gespeichert wird und dann ist ja php auch nur auf dem Server und das zieht das Ganze noch mehr runter.
- Java Chats gefallen mir schon weil man die Oberfläche gestalten kann wie man möchte. Nur habe ich keine genaue Ahnung davon. Ich hab es ja schon gesehen das Java sozusagen die Oberfläche darstellt, aber was dahinter passiert habe ich noch net genau verstanden, auch wenn ich schon einen brauchbaren Link gefunden habe http://java.seite.net/wasisjava.html . Was mir nicht passt ist das jeder User Java haben muss und das die Ladezeit lang ist.
- IRC Chats mit Java Oberfläche passen mir garnet in den Kram, denn ich mag es nicht haben das sich Leute auch mit Clienten wie mIRC und Co. einloggen können. Die Variante ist mir echt zu doof!
Dann habe ich mal die Frage, welchen Hintergrund haben denn zB. das Lycos Chatboot oder der Chat von Zimmer frei? Wäre lieb wenn das einer wüsste.
Was schlagt ihr denn so vor, postet doch bitte mal frei eure Meinungen, was ihr für Chats für gut haltet und warum und welche Varianten warum eurer Meinung nach schlecht sind? Dabei wären dann ein paar Hintergrundinfos net schlecht: was man mit dem Chat so alles machen kann - sprich Möglichkeiten andere unterhaltende Sachen einzubauen, wie bots oder grafisch gesehen und so; womit die Oberfläche gebaut ist und was im Hintergrund abläuft, so mal ganz grob.
Denn momentan kann ich mich net entscheiden oder besser habe keine Ahnung was die beste und aktuellste Möglichkeit ist sowas zu realisieren. Ich mag auch net eins anfangen, soweit alles aufzubauen und so, um dann zu merken das es shit ist. Diesen Sache habe ich mit meiner HP schon hinter mir, da ich das Design, wegen der unendlichen Darstellungsvarianten in den Browsern 3mal komplett designen musste, was da hieß zig php includete Seiten umschreiben. Naja ich denke ihr wisst was ich meine. Ich weiß das der Chat net leicht wird und das größte und schwerste Projekt meiner HP darstellt, aber da muss ich durch denke ich. Auch als Anfängerin ;O), ich weiß Frauen traut5 man sowas auch net so zu aber ... ich bin net ganz so ... wie ich ausschaue ;o) stehe dazu das ich ... ausschaue *sfg*, aber ich bin zäh ;O)!
So um meinen Roman ;o) abzurunden noch etwas zu dem Thema, denn da ich keine Ahnung habe hatte wo ich es reinstellen sollte, da es in alle Richtungen gehen kann habe ich ehrlich gesagt nach gut dünken hier rein gepostet. Ein RIESENGROßES SORRY wenn ich voll daneben gegriffen habe. War mir super unsicher.
LG FP4Lisa
 
Ich will mal ein paar Gedanken zum Thema loswerden: Also...

Wie Du selbst schon geschrieben hast ist es wohl mehr als nur suboptimal den Chat mit PHP zu realisieren, da PHP eine rein serverseitige Sprache ist.
Fuer so einen Chat wirst Du um eine clientseitige Voraussetzung wohl nicht herumkommen.
Das wird dann aber wohl weniger JavaScript sein, denn JavaScript wird kaum flexibel genug sein um die ganze Kommunikation zu regeln, sonder eher Java, was Dir eigentlich nicht passt da jeder User Java haben muss.
Ich versuche eigentlich auch weitestgehend clientseitige Voraussetzungen (z.B. Cookies, JavaScript, Flash) zu vermeiden, jedoch denke ich, dass man in Anbetracht des Zwecks (Chat) auch mal etwas voraussetzen kann (Java).
Ich habe vor kurzem auch einen kleinen Teil mit JavaScript realisiert, welcher jedoch fuer die allgemeine Nutzung der Website nicht wichtig ist, also find ich ist es okay das mit JavaScript zu machen.
Da Du schreibst, dass Du einen Chat auf Deiner Seite brauchst, und nicht schreibst, dass Du ihn willst, gehe ich davon aus, dass dies ein wichtiger Bestandteil Deiner Seite sein wird. Grundsaetzlich vertrete ich den Standpunkt, dass man wichtige Komponenten ohne jede clientseitige Voraussetzung nutzen koennen soll.
Ein Chat jedoch ist etwas wesentlich komplexeres als einfach nur eine Website, und das sollte auch dem User klar sein. Auch das macht es eher vertretbar auf der Clientseite etwas vorauszusetzen.
Weiterhin ist hier ganz klar die Usability und der Komfort anzusprechen, was ja besonders fuer den User nicht unwichtig ist.
Daher denke ich, dass es, fuer diesen Zweck (Chat), durchaus gerechtfertigt ist Java vorauszusetzen.
Aber ansonsten sollte man dann doch eher Abstand nehmen von solchen Sachen, und wenn dann zusaetzliche Funktionen in JS oder ueber Cookies realisieren und nichts was fuer die Nutzung der Seite wichtig ist.

Um mal wieder meine Site als Beispiel heranzuziehen:
Da ich Sessions fuer das Login nutze habe ich mich auch damit auseinandergesetzt wie ich die Sessions zum laufen kriege wenn der User keine Cookies annimmt. Dafuer habe ich ein kleines Script eingebaut welches prueft ob Cookies akzeptiert werden.
Wenn Cookies akzeptiert werden laeuft die Session ueber die Session-Cookies, ansonsten wird die SessionID im URL uebergeben.
Ausserdem wird, wenn Cookies akzeptiert werden, auf der Login-Seite eine zusaetzliche Checkbox dargestellt um die Moeglichkeit zu bieten einen Cookie zu setzen um auch bei einem erneuten Besuch eingeloggt zu sein.
Wie ich bereits sagte habe ich einen sehr kleinen Teil mit JavaScript realisiert, genauer gesagt handelt es sich um eine Buttonleiste aehnlich der Leiste die wir hier angeboten bekommen wenn wir unsere Beitraege schreiben. Sie dient dem gleichen Zweck, und zwar der Formatierung des Texts.
Das Script um zu pruefen ob JavaScript aktiviert ist habe ich gestern geschrieben, muss es aber noch in meine Seite einbinden, damit diese Leiste nur angezeigt wird wenn JavaScript auch aktiv ist.

Dieses, zugegebenerweise etwas langes Beispiel, soll klarmachen, dass ich nur unwichtige, aber dennoch nette, Zusatzfunktionen ueber JavaScript und Cookies realisiere, und es mir wichtig ist, dass die Website auch ohne diese in vollem Umfang benutzbar ist.

Ich habe aber keinen Teil der heftige Client-Server-Kommunikation nutzt, sondern entweder rein serverseitige Funktionen, oder rein clientseitige Funktionen.
Da ein Chat staendig Daten zwischen Client und Server austauscht ist es mehr als nur angemessen, wenn nicht sogar noetig, eine Software vorauszusetzen die dies in einer akzeptablen Art und Weise realisieren kann.

Mensch, ich red zuviel. Naja, das war's dann auch, ich denke mein Standpunkt ist klar.
Falls mich jemand nicht versteht: Ich versteh mich auch nicht!
Falls mich jemand versteht: Bitte erklaert mir meine Gedanken! ;)

Have fun

 
Hiho,
wenn du es wirklich selber machen möchtest, empfehle ich dir eine universelle Programmiersprache, die auch Linux versteht (ich gehe mal davon aus, dass auf deinem Webserver Linux läuft :D), z.B. C++.
Jetzt programmierst du dir "einfach" einen kleinen Chatserver, der deine genannten Funktionen hat. Das mit den Gifs könnte kniffelig werden, die Räume auch, aber das reine Chatten eigentlich nicht. Und für den Clienten baust du dir dann einen schönes Ding mit Java oder Flash. Und das besste daran ist, wenn du es selber machst -› Du passt den Server/Client an dich an (PHP/MySQL) und nicht umgekehrt :D

Freue mich schon, wenn ich dein Projekt bei SourceForge.net finde :D

mfg
 
@meilon:
Den Ansatz finde ich garnicht schlecht.
Um das zu realisieren koennte man vielleicht mit dem Apache-API spielen.
 
hmmm, wofür? Um Chat-Server und MySQL zusammen zu bringen werten man den Aufruf eines entsprechendes PHP-Scriptes (für die öffentlichkeit natürlich mit .htaccess geschützt) aus (wget oder man baut selber per Socket eine Verbindung zum Server auf) oder man baut direkt eine Datenbankanbindung ein. Einzige Vorraussetztung - man beherrscht C++ oder andere Sprache, die http und/oder Sockets kennt und für Linux als Kompilierte Version verständlich ist :D

mfg
 
Der Sinn dabei waere, dass man es als Apache-Modul programmieren koennte, also quasi als mod_chat, welches dann theoretisch auch unter Windows im Apache laufen koennte.
Wieder ein Stueckchen mehr Platformunabhaengigkeit.
Natuerlich laufen die meisten Server unter Linux, aber es koennte trotzdem nicht uninteressant sein es als Apache-Modul zu implementieren.
 
Okay, das stimmt schon :D Aber erstmal abwarten, ob FP4Lisa überhaupt noch Lust dazu hat :D

mfg
 
Lust? Ach wenn es nach meiner Lust geht, dann würde ich den ganzen Tag im Bett liegen und der PC baut die HP und den Chat allein ... tja darauf hätte ich Lust! Nur geht es echt um Lust? Mein Ziel ist es nicht ewig nur eine kleine HP zu bauen sondern auch User zu locken. Was lockt den User, Infos und vor allem andere User, denn die Hobbyinternetler gehen doch ins Netz zum chatten mit anderen Leuten, weil sie daheim allein rumsitzen.
Laber ... laber ... laber ... was ich damit sagen mag ... wie schon gut festgestellt wurde es muss ein Chat her und ich habe nun die ehrenvolle Aufgabe mir damit den Kopf zu zermatern ... nicht der Weg sondern das Ziel/Ergebnis ist entscheidend.
Nun bin ich absolut neu, ich meine ich habe da ein kleines Heimnetzwerk (LOL) mit Router und bla, hab mir einen Server auf den PC gehauen, erstmal eine Lösung und beim entwickeln ganz gut, weil man gleich sieht wies oder auch net. Aber im großen und ganzen habe ich von Server - Client Übermittlung keine Ahnung.
Ach ja Linux? nein mein Server läuft auf diesem Rechner hier, ja genau der hier ... könnt ihr ihn sehen? ... na und das ist normal Fernsterdoof druff und ist ein Apa(ts)che mein Server ... easyphp wenn einem das was sagt.
Also sagt ihr mir hiermit, das beste wäre ein Chat mit Java zur Datenübermittlung ... boh ne kompelierte Sprache wie ich das ha... egal. Ja wichtig wäre als erstes schon mal das es eigentlich bei jedem Hobbychatter läuft, sprich ein einfacher IE Benutzer, der keine Ahnung hat (benutzt daher ja den IE lol) sollte Idiotensicher ohne viel zu tun in den Chat kommen. Wie schaut das beim IE aus, ist da Java schon mit drin ... benutzte den net!
Mhmm also sollte ich mir die Website mit Kaffe und Kuchen (link im ersten Post) voll durchziehen was?
Wo willst du mein Projekt dann finden in SourceForge.net <k.A. denke denke denke. Also Java kann ich null, auch C++ net, hatte mal in der Penne TP lol aber naja das reicht wohl net oder? Ergo ... lernen lernen lernen *hmpf*
Warum sollten gifs so ein Problem darstellen? Mag schon eine voll designte Oberfläche wie in Lycos Chatboot haben ... grrrrrrrrrr, warum kann man dem PC net einfach sagen: Chat erstellen, 2 Räume ... bla bla und er tut es dann einfach *heul*! Habt ihr denn Tips was ich mir reinziehen könnte um der Sache ein wenig Herr zu werden?
 
Wie du gesehen hast, FP4Lisa, ist ein Chat seeehr aufwendig und würde sich wohl kaum mit dem Mehrnutzen, den du durch ein selbst programmiertes Programm hast, ausgleichen.
Daher plädiere ich für etwas wie PJIRC o.ä, also ein Javabasiertes Progrämmchen.
Obwohl ich deine Abneigung, gegen Benutzer die sich per externen Klienten einwählen, nicht nachvollziehen kann, gibt es doch auch gewiss Möglichkeiten dies zu verhindern. Entweder setzt du ein Raum-Passwort und übermittelst, dass irgendwie so das der Benutzer nichts mitbekommt, oder du bastelst dir ein kleines Skipt, würde sogar in PHP funktionieren, wenn es auch suboptimal wäre, ich würde hier ein Eggdrop oder ein Mirc-Skript (oder anderem Klient-Skript) , durch die Benutzung von mIRC(oder anderem Klient) könntest du auch besser adminstrieren,
 
Hey Lisa,

einen komplexen Chat mit deinen Anforderungen selber zu entwickeln, ist wirklich nicht einfach.
Da du selber schreibst, dass du keine Ahnung von Java, C++ oder einer vergleichbaren Programmiersprache hast, würde ich dir davon abraten zu versuchen, den Chat selber zu programmieren.
Das ist wirklich nicht ganz trivial und wenn man erstmal noch Sprachgrundlagen lernen muss, könnte das mehrere Monate dauern.
Greif am besten auf eine fertige Variante zurück - damit gehst du auf jeden Fall des besseren Weg, auch wenn du dann Kompromisse eingehen musst.
 

Neue Beiträge

Zurück