![]() |
Kleiner Chat
Liste der Anhänge anzeigen (Anzahl: 2)
Also habe um mich besser mit dem Netzwerk zurechtzufinden und etwas damit rumzuspielen einen kleinen Chat geschrieben!
Er funktioniert mit den TServer- und TClientSocket-Komponenten, benutzt aber trotzdem die IdHTTP und IdIPWatch-Komponenten von Indy. Is wie gesagt nix großes! Ich hoffe der Quelltext ist nicht zu unübersichtlich geworden ^^ Also bin für konstruktive Kritik offen ;-) Edit: Aktuelle Änderungen Features (letztes Update - 30.04.07): - jeder kann einen Server erstellen - jeder Client kann eine Farbe wählen - Farben ein-/ausstellbar - nach Verlassen des Servers wird ein ChatLog angelegt und in einer .txt-Datei gespeichert - Sound beim Tippen und beim Erhalten einer Nachricht, wenn der Chat nicht aktiv ist - Sound ein-/ausstellbar - über den Befehl '/me xxx' Aktionen ausführbar (alter Befehl '*xxx*' nichtmehr verfügbar) - Privatunterhaltungen (getrennt durch TabSheets) - jeder Name ist einzigartig, d.h. ist ein Name schon vergeben, muss ein neuer gewählt werden - kein Fehler mehr wenn dem Programm der Zugriff zum Internet verweigert wird - Passwort-Funktion Gefixt (02.05.07): - beim Verlassen eines Clients wird er wieder aus den Userlisten der anderen gelöscht Also, bitte sagt mir eure Meinungen :) Edit: Mir sind noch einige Fehler beim Löschen von Clients aufgefallen. Wird bei Zeiten gefixt! |
Re: Kleiner Chat
Zitat:
Zitat:
Also für 'NickName tanzt' lieber sowas eintippen: '/me tanzt' |
Re: Kleiner Chat
Hm, klingt gut!
Aber das me davor...das soll dann nur mit me funktionieren oder? |
Re: Kleiner Chat
Vergiss den Slash vor dem me nicht.
und die Aktion soll nur mit dem Befehl /me ausgeführt werden. Wenn du nicht genau weist, wie du sowas umsetzen kannst, kann ich dir tipps geben. Hab etwas Erfahrung mit IRC Client Programmierung. Und um auf deine Frage zurückzukommen. '/me BlaBla' soll ersetzt werden durch: 'Nick BlaBla' Also im Grunde dasselbe, was du mit '*BlaBla*' hattest. |
Re: Kleiner Chat
Jo, das is ja relative easy ;-)
Danke soweit! |
Re: Kleiner Chat
Ok, alles geupdatet!
|
Re: Kleiner Chat
Hi
Ist doch in Open-Source, wo ist den dann der Sourcecode wenn ich fragen darf :gruebel: ? Ansonsten ganz Ok funktioniert ohne Probleme bei mir. |
Re: Kleiner Chat
tja muss ich auch nicht viel zu sagen: :thumb: :thumb: :thumb: :thumb: :thumb:
|
Re: Kleiner Chat
Ja, warum der Source nich da ist, frag ich mich auch gerade :D
Wollte eig meine Rar-Datei uploaden, statt die .exe! Wird direkt gemacht! |
Re: Kleiner Chat
Dein Chat hat ein Problem wenn ich ihn die Abfrage der WAN-IP nicht machen lasse, dann stürzt er ab, ansonsten :thumb:
|
Re: Kleiner Chat
Aso, wenn du Offline bist oder was meinste? Ja da muss ich noch ne Abfrage einbauen oder so...
|
Re: Kleiner Chat
Ne, meine Firewall hatte gefragt ob der Chat sich mit dem I-Net verbinden darf, da hab ich mal versuchsweise auf Nein geklickt.
|
Re: Kleiner Chat
Aso...hm wie verhinder ich da denn dann die Ausgabe einer Fehlermeldung?
|
Re: Kleiner Chat
Du könntest z. B. das Ermitteln der I-Net-IP in einen try-except-Block packen und im except-Teil eben statt der IP einen leeren String oder einen String mit einer Fehlermeldung oder sowas ausgeben. Könnte ungefähr so aussehen:
Delphi-Quellcode:
[...]
try Form.WanIPLabel.Caption := 'WAN IP: ' + Form.IdHTTP1.Get('<AdressezumIP-Script>'); except Form.WanIPLabel.Caption := 'WAN IP: -'); end; [...] |
Re: Kleiner Chat
Hallo .chicken,
im großen und ganzen eine tolle Sache. Ich hätte noch zwei Anmerkungen und einen Fehler gefunden... 1.) Dateien an User versenden wäre noch schön (wenn nicht zu aufwendig) 2.) Private Messages zwischen den Usern wäre ebenfalls schön :-) 2.) Stelle ich mehrere Verbindungen zu einem Server her und disconnecte wieder, dann simmt die Anzahl der Verbindungen (angezeigt beim Server) nicht mehr. Beim Connecten wird die Zahl hingegen korrekt um eins erhöht. Weiter so. Grüsse, SCRaT |
Re: Kleiner Chat
Ok, Änderungen und Vorschläge werden soweit wie möglich geändert/hinzugefügt.
Das mit Dateien versenden is allerdings n bissl schwer glaub ich aber mal sehen ;-) |
Re: Kleiner Chat
Ok, alles aktualisiert!
Wenn ich heut Nacht noch mehr Zeit hab wirds nochn bissl verbessert, eure Meinungen bitte :) |
Re: Kleiner Chat
Nochn kleines Update!
|
Re: Kleiner Chat
Hallo .chicken,
Wird immer besser :thumb: :-) Mir ist nur ein "kleiner" Fehler aufgefallen (Leider lässt er sich zwar häufig auslösen, jedoch nicht immer). Connecte ich mit 2 Clients zu einem Server und beende dann die beiden Serververbindungen, erscheint eine "Access Violation" Fehlermeldung. Beim Reconnect benötigt man neue Nicks, da die alten schon vergeben sind. Hoffe Du findest den Fehler! Aah, eines noch. Es wäre schön wenn bei einem Verbindungsversuch zu einem nicht vorhandenem Server (false IP / offline) eine kleine Meldung erscheint. Entweder als Dialog oder im Chatfenster. EDIT: Noch ein Vorschlag von mir. In vielen IM kann man sehen, wenn das "Gegenüber" eine Nachricht eingibt (typing...). Eventuell könntest Du das noch integrieren :lol: LIebe Grüsse, SCRaT |
Re: Kleiner Chat
Hm ok also die Fehler sind mir bekannt, versuche sie zu fixen und bin auch dabei zu versuchen das Design ein bisschen zu "pimpen" ^^
Find ich etwas öde so. Aber wie kriege ich denn raus, ob der andere gerade tippt? |
Re: Kleiner Chat
Zitat:
1. Wenn ein User BEGINNT zu tippen (if timer.enabled = false) dann Timer.enabled auf true setzen (z.B. 5000 msek als Intervall) und Nachricht an Server ("username=typing"). Serverseitig in Userliste anzeigen. 2. Wenn User weitertippt, dann Timer zurücksetzen (if timer.enbled = true then....) 3. Bei OnTimer-Ereignis Nachricht an Server (s. 1.) und Timer disablen (User hat 5 sek. keine Taste mehr gedrückt -> typing aus) 4. Wenn Nachricht weggeschickt Timer natürlich auch wieder disablen. Das wäre mein kleiner Gedankenanstoß und müsste rel. leicht zu implementieren sein. Also Timer Clientseitig durch OnKeyDown o.ä. auslösen und am SErver nur die Nachricht des Clients (s.o.) auswerten. Grüsse, SCRaT |
Re: Kleiner Chat
Ergänzend könnte man, wenn die 5 Skeunden rum sind, und es sich noch was im Edit befindet, dass eine Message geschickt wird, dass er "Wartet"... oder überlegt...
|
Re: Kleiner Chat
Ok, das werde ich bei Zeiten auch versuchen zu integrieren, aber vorerst hoffe ich, dass der Fehler jetzt gefixt wurde!
Wenn ihr es mal testen würdet ;-) |
Re: Kleiner Chat
Hallo!
Ich finde das Programm echt prima! Mich würde interessieren ob man diese Technik internet faähig machen kann. Also chatten übers www statt nur im LAN. Was müsste man da anpassen? |
Re: Kleiner Chat
Ist zwar etwas OT, aber in der
![]() Evtl. wäre das Programm von .chicken auch internetfähig. P@Tti |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:20 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz