Autor Beitrag
Arno Nym
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 131



BeitragVerfasst: Do 05.01.06 01:08 
Hallo,
ich möchte mal die Gelegenheit nutzen und eines meiner Projekte posten. Es handelt sich dabei um ein interessantes Server-Client Chatsystem. (keine Angst es ist keiner von weiteren x-tausenden auf Textaustausch beschränkten Delphi-Chats). Dieser Chat bietet schon ein wenig mehr. Ein Vorteil ist z.B. die Server-Architektur die keine feste IP (also keinen Webserver) erfordert. Wer ein Serverprogramm startet legt dabei seine IP in einer universellen Serverliste im Internet ab, welche von allen Clients abgerufen werden kann. Ob das auch unter Last funktioniert möchte ich nun gerne testen. Außerdem ist der Chat-Client mit ziemlich vielen bunten Extras ausgestattet (lustige Sounds, Grafiken, Browserfenster, Privatdialoge zwischen Usern, usw...)
Nehmt euch mal ein wenig Zeit und testet das Programm aus, es sind sicherlich etliche Fehler enthalten, bitte Bug-Berichte an mich posten.
Die Source-codes, sind nicht dabei. Das Programm steht ansonsten (bis auf eine User-Beschränkung von 3 Usern pro Server aus Testzwecken) in vollem Umfang zur Verfügung.
Sollte jemand Interesse haben dieses Chatprogramm mit weiter zu entwickeln (z.b. soll demnächst eine FTP Datenausstausch-komponente hinzukommen) , möge er/sie sich bitte bei mir melden.
Also, soweit erstmal, viel Spaß beim ausprobieren...

MFG: Arno Nym

Die jeweils aktuelle Version befindet sich im Dateianhang dieses Posts :!:

Hinweis eins: sollte kein Chat-Server Online sein, macht einfach einen eigenen mit dem Server-Programm auf....

Hinweis zwei: die universelle Serverliste ist bei auf dem Webserver von Cybton abgelegt. Dieser wird gelegentlich gewartet, dann geht das ganze System natürlich nicht...Hab leider nich genügend Knete für einen eigenen dauerhaften Webserver :(

Hinweis drei: standartmäßig ist der Port 80 für die Kommunikation gewählt, das könnte evtl. zu Problemen beim Chat-Server-Programm führen, falls ihn andere Daten erreichen. Es empfiehlt sich andere Ports zu benutzen und gegebenfalls bei Proxy-Servern oder Routern durchzuschalten.


Zuletzt bearbeitet von Arno Nym am Sa 21.01.06 20:02, insgesamt 1-mal bearbeitet
UGrohne
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Veteran
Beiträge: 5502
Erhaltene Danke: 220

Windows 8 , Server 2012
D7 Pro, VS.NET 2012 (C#)
BeitragVerfasst: Do 05.01.06 05:30 
Da gerade kein Server online ist und ich im Moment keinen erstellen kann, nur kurze Anmerkungen:

  • Nimm besser einen anderen Standardport. Am besten einen über 1024. Denn drunter sind viele von Standard-Protokollen belegt. Vor allem gilt das für den Port 80, der von HTTP (also Web) verwendet wird. Ist also einer der schlechtesten Ports, den man überhaupt verwenden kann.
  • Wieso wird das Hauptfenster für die anderen Forms (Optionen, Smileys) versteckt? Vor allem das Smiley-Fenster wäre besser als zusätzliches Fenster zum Einblenden aufgehoben, sodass man sich bei Bedarf einfach etwas da rausklicken kann, ohne mit 2 zusätzlichen Klicks das Fenster öffnen und schließen zu müssen.
Fighter#1
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 787

Win XP, Ubuntu 8.04
Turbo Delphi 2006, Delphi 2005 Pe, Delphi 5 Pe, Netbeans 6.1, Eclipse, Microsoft VisualC#, Dev C++, PHP, HTML, CSS
BeitragVerfasst: Do 05.01.06 09:54 
Zu erst:
Sieht hübsch aus
als zweites, was soll der Browser???
Ich würd ihn wenigstens auf ne Website von dir legen ;-)
Beim Server erstellen steht bei Informationen ja auch der Lokale Name,
Darf der bei die maximal 4 Zeichen lang sein???? bei mir werden zumindest nur 4,5 angezeigt :-(.
Fehlermeldung beim Löschen von Usern,
bin grad in der Serveranwendung und seh nen User klick doppelklick und
Listindexüberschreitet das Maximum(-1), ich würd sagen da war ein update der Userliste nötig.
Ansonsten ganz hübsch nur ich find mit dem Server von mir erstellten Raum als Chta nicht???
Arno Nym Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 131



BeitragVerfasst: Do 05.01.06 12:46 
Titel: Debugging
Hallo ihr zwei,
erstmal vielen Dank das ihr euch mit dem Programm beschäftigt habt. Nun zu den Bugs:

Zitat:

Nimm besser einen anderen Standardport. Am besten einen über 1024

Naja, also eigentlich kann ja jeder der das Serverprogramm startet den Port selber festlegen, Port 80 hat eben den Vorteil das er gut durchgestellt wird. Bei Ports über 1024 müsste man gegebenfalls Router/Firewall usw konfigurieren sonst wird der Port geblockt und man bekommt nur eine "Server nicht erreichbar" Nachricht...

Zitat:

Wieso wird das Hauptfenster für die anderen Forms (Optionen, Smileys) versteckt

kleiner Tick von mir, mags nunmal nicht wenn viele Fenster gleichzeitig auf sind...seriell ist immer besser als paraleel ^^
Im Smileyfenster brauchste nur doppelklicken das geht dann recht schnell wieder zurück...

Zitat:

was soll der Browser???

Stimmt schon is ne zusätzliche Spielerei, einziger Vorteil ist das Links im Chat dort direkt geöffnet werden...

Zitat:

Beim Server erstellen steht bei Informationen ja auch der Lokale Name,
Darf der bei die maximal 4 Zeichen lang sein???? bei mir werden zumindest nur 4,5 angezeigt

Ok, da war ein Fehler beim TCPIPServer.getlocalname oder so...hab das geändert, nun steht die lokale IP richtig dort. (Der ChatServer-Name selber ist wählbar bis zu 10 zeichen lang.)

Zitat:

Fehlermeldung beim Löschen von Usern

Ok, ein echter Bug :) ... es fehlte ein break; in der Schleife...hab ich behoben

Zitat:

ich find mit dem Server von mir erstellten Raum als Chta nicht

versteh den Satz nicht...meiner Meinung nach gibt es da auch kein Problem...


insgesamt hab ich ein paar Änderungen vorgenommen, die neue Version ist verfügbar
vielen Dank nochmal für eure Mitarbeit !
Ciau : Arno Nym
UGrohne
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Veteran
Beiträge: 5502
Erhaltene Danke: 220

Windows 8 , Server 2012
D7 Pro, VS.NET 2012 (C#)
BeitragVerfasst: Fr 06.01.06 06:03 
Titel: Re: Debugging
user profile iconArno Nym hat folgendes geschrieben:
Zitat:

Nimm besser einen anderen Standardport. Am besten einen über 1024

Naja, also eigentlich kann ja jeder der das Serverprogramm startet den Port selber festlegen, Port 80 hat eben den Vorteil das er gut durchgestellt wird. Bei Ports über 1024 müsste man gegebenfalls Router/Firewall usw konfigurieren sonst wird der Port geblockt und man bekommt nur eine "Server nicht erreichbar" Nachricht...

Wo wird Port 80 gut durchgestellt? Also wenn ich bei mir hier einen Server erstelle, muss ich dasselbe machen, wie bei jedem anderen port, ich muss ihn auf dem Router forwarden. Wenn es diese Regel schon gibt, dann hab ich hier auch nen Webserver laufen, also fällt Port 80 dann flach.

Aber wenn Du meinst, dass der Client dadurch einen Vorteil hat, weil evtl. die Firewall andere Ports blocken könnte: Ich nehme mal an, das macht keiner privat zu Hause, sowas wird nur in Firmen gemacht. Und dort sollte man sich doch eher um die Arbeit kümmern, als zu chatten :mrgreen:
LH_Freak
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 385

Win XP
D7 PE, D2k5 Trial
BeitragVerfasst: Fr 06.01.06 14:45 
ich weiß nicht ob das an meinem Internet liegt, aber ich kann die Datei nicht downloaden!
Kannst du es bitte hier als Dateanhang hochladen?
GTA-Place
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
EE-Regisseur
Beiträge: 5248
Erhaltene Danke: 2

WIN XP, IE 7, FF 2.0
Delphi 7, Lazarus
BeitragVerfasst: Sa 07.01.06 14:47 
1. Der Ticker flimmert und hat nen Rechtschreibfehler. Rechtschreibfehler gibt es sogar mehrere.
2. Die Hintergrundfarbe von "Chat" ist heller als die anderen. Steht oben über.
3. Was soll die kleine Textzeile? Die gehört richtig breit.
4. Die Buttons sind schön, das Layout allgemein nicht.
5. Bei der Uhr kann man die Zeit in den Edits nicht lesen.
6. Beim Minimieren gehört der Chat aus der Taskleiste in den Tray normalerweise.

_________________
"Wer Ego-Shooter Killerspiele nennt, muss konsequenterweise jeden Horrorstreifen als Killerfilm bezeichnen." (Zeit.de)
Arno Nym Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 131



BeitragVerfasst: Sa 07.01.06 18:41 
Hallo, vielen Dank für die Anregungen ! Einen Teil konnte ich schon beheben.

Ich schicke mit diesem Post auch nochmald as Programm als Dateianhang mit, musste allerdings wegen der 1MB Beschränkung dasd Clientprogramm in zwei Archive splitten.
Wie auch immer, es ist die selbe Version wie oben in den Links. :!:

Zu den Bugs:

Zitat:

1. Der Ticker flimmert und hat nen Rechtschreibfehler. Rechtschreibfehler gibt es sogar mehrere.

Flimmern beim Ticker und bei der Analoguhr im Infofenster behoben. Einige Rechtschreibfehler hab ich gefunden, sind aber bestimmt noch welche da...

Zitat:

Die Hintergrundfarbe von "Chat" ist heller als die anderen. Steht oben über.

Nein, das täuscht nur weil die helle Fläche größer ist. Das überstehen geht leider nicht besser.

Zitat:

3. Was soll die kleine Textzeile? Die gehört richtig breit.

Jo...behoben..

Zitat:

4. Die Buttons sind schön, das Layout allgemein nicht.

Hab das leicht angepasst...Mir gefällts so.

Zitat:

5. Bei der Uhr kann man die Zeit in den Edits nicht lesen.

geändert, sieht jetzt besser aus.

Zitat:

6. Beim Minimieren gehört der Chat aus der Taskleiste in den Tray normalerweise.

Behoben.

Ok vielen Dank nochmal für die Anregungen...Ciau.


Zuletzt bearbeitet von Arno Nym am So 08.01.06 03:14, insgesamt 1-mal bearbeitet
LH_Freak
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 385

Win XP
D7 PE, D2k5 Trial
BeitragVerfasst: So 08.01.06 00:32 
ähhhh, und wo ist da jetzt ein Dateianhang? Bin ich blind?
Arno Nym Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 131



BeitragVerfasst: So 08.01.06 01:11 
10 Zentimeter über deinem Post...
LH_Freak
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 385

Win XP
D7 PE, D2k5 Trial
BeitragVerfasst: So 08.01.06 01:25 
der war aber eben noch nicht da! Werd's mir ansehen!

EDIT:
So, wie immer bei den meisten Chats:

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
---------------------------
Chat
---------------------------
Fehler beim Anmelden. Server nicht erreichbar.
---------------------------
OK   
---------------------------


ich denke mal das entspricht 10061 oder?

Schade eigentlich, hätte mich echt gefreut wenn der funktioniert hätte (um dich anschließend über dein Protokoll und P2P auszuquetschen :twisted: ).
Wir bei M.U.H Software (bzw. M.U.H Soft :D, ham uns noch nicht entschieden ;), hatten auch vor, das ganze per P2P zu lösen (also dezentral), was allerdings schief ging...
Nunja, und seit paar Wochen haben wir unseren eigenen Server laufen, und jeder Client verbindet da hin, was wirklich bei JEDEM Computer funktioniert :D (vorrausgesetzt es besteht ein Internetanschluss/-verbindung :D)

Ich hoffe mal, du bemühst dich das altbekannte Routerprob zu lösen....

LH_Freak
Arno Nym Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 131



BeitragVerfasst: So 08.01.06 03:37 
Hallo,
Also diese Meldung kommt meistens wenn die Nachricht nicht durchgestellt werden konnte aufgrund von gesperrten Ports. Ich nehme mal an du wolltest mein ServerProgramm anwählen, welches aber Testweise kurz auf Port 777 lief. (meistens gesperrt)
Hier aber noch mal zur Erklärung zum angewendeten Prinzip !!! :
Der Chat funktioniert so, dass jeder Heimrechner als Server fungieren kann, ohne feste, dauerhafte IP im WWW. :!:
Das Problem ist ja, das ich mir, wie viele andere, keinen festen Webserver leisten kann auf dem ein Chat-Server-Programm laufen könnte.Allerdings: kostenlosen Webspace gibt es aber überall. Und dieser Webspace hat ja eine feste IP/Addresse.
Jeder der jetzt bei sich zu Hause das Serverprogramm startet, wird in einer globalen Serverliste eingetragen welche auf diesem festen Webspace liegt.
Wer das Clientprogramm startet brauch so nicht die einzelnen IPs der Serverprogramme wissen, sondern schaut einfach in der globalen Serverlsite nach. und connectet sich gegebenenfalls.
Daher gibt es auch verschiedene Fehlermeldungen, z.B. eine wenn schon die globale Serverliste nicht abgerufen werden kann (weil evtl. der kostenlose Webspace gewartet wird).
Oder wenn man zwar die Liste erhält, jene aber leer ist ("Es ist zur Zeit kein Server Online")
Die Fehlermeldung "Fehler beim Anmelden..." bedeutet das der Port am Client nicht freigeschaltet ist, da sollte man sich bevor man zu einem Serverprogramm connectet mal den Port anschauen, und gegebenenfalls durchschalten.

Also, lange Rede kurzer Sinn...
wenn Ihr den Chat mal richtig ausprobieren wollt, dann startet doch einfach nebenbei auch das Serverprogramm, und wählt Einstellungen für Ports die bei euch funktionieren !
Ich habe nämlich bei mir nur ganz selten ein Serverprogramm am laufen, höchstens zum testen, aber wie gesagt, ihr könnt trotzdem mit eigenen Serverprogrammen chatten....

Im übrigen ist ne neue Version verfügbar, mit stabilerem Server-Programm.

viele Grüße: Arno Nym
LH_Freak
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 385

Win XP
D7 PE, D2k5 Trial
BeitragVerfasst: So 08.01.06 17:53 
Und da liegt genau das Problem...
Wir hatten das auch so geplant. Aber mach mal irgendner Laie klar, die schnell mit nem anderen chatten will, sie muss schnell den Port x im Router freischalten...
Tut mir Leid, selbst ich hab das bei meinem komischen Siemens Router noch nicht hinbekommen (die Ports stehen zwar in der Liste, aber irgendwie geht's trotzdem net)

Das einzige was ich nicht verstehe ist, wie Skype das macht... Soviel wie ich weiß ist Skype ein P2P Chat und geht ja bei jedem Benutzer den ich kenne (auch der Filetransfer im Vergleich zu ICQ ;))...