AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte [LanChat2 1.6] TBX 1.3

[LanChat2 1.6] TBX 1.3

Ein Thema von alias5000 · begonnen am 3. Jul 2006 · letzter Beitrag vom 26. Jun 2008
Antwort Antwort
Seite 7 von 7   « Erste     567
Benutzerbild von alias5000
alias5000
Registriert seit: 10. Sep 2005
LanChat2 TBX 1.3

Kurzbeschreibung:
LanChat2 TBX ist ein Client für das dezentrale (also serverlose) Netzwerkchat-Protokoll LCMP (LanChat2 Message Protocol). Mit LanChat2 TBX könnt ihr innerhalb eines Netzwerkes chatten, wobei die Architektur stark an die von IRC angelehnt ist.

Wieso so viele Versionsnummern? (siehe Titel)
Der vollständige Name lautet [LanChat2 1.6] TBX 1.3. Das bedeutet, dass der Client die Protokollversion 1.6 verwendet und das Programm LanChat2 TBX in Version 1.3 ist.

Bedienung:
Es gibt einen kleinen Assistenten beim Erststart, der wichtige Funktionen konfiguriert. Ansonsten könnt ihr ganz normal mit Maus und Tastatur vorgehen. Im Chat selber könnt ihr auch Commands, wie "/quit" verwenden. Eine vollständige Auflistung findet ihr, wenn ihr "/help" ins Edit eingebt, oder im Hauptmenü unter "Hilfe".

Überblick über die Features
  • komplett dezentral, man muss nur online gehen. Es muss kein Server extra gestartet werden. Funktioniert nur im lokalen Netzwerk
  • IRC ähnliche Funktionen:
  • Öffentliche Channels und private Sitzungen
  • Benutzer können ignoriert werden, /me Nachrichten versandt werden, Benutzer haben einen Status
  • Schriftformatierung im Chat, sowie Unterstützung für Smilies (verschiedene Pakete werden zur Verfügung gestellt, derzeit sind nur 2 beigefügt)
  • Vielfältige Konfigurationsmöglichkeiten
  • Variable Oberfläche
  • verschiedene Themes können für die Oberfläche verwendet werden
  • es werden mehrere Sprachen unterstützt
  • Es können beliebig viele Dateien gleichzeitig versendet werden, mit einer Geschwindigkeit, die mit dem Windows- Dateitransfer konkurrieren kann
  • Die Dateitransfer- Geschwindigkeit kann gedrosselt werden (siehe in den Optionen). Pausieren ist auch möglich (neu 1.2)
  • Ein Internet Updater hält euch immer auf dem aktuellsten Stand (außer Entwicklerversionen wie Alpha/Beta, die werden nicht aktualisiert!)
  • Eine Auswahl von Erweiterungen steht zur Verfügung. Dies sind noch keine Plugins, sondern einfach nur verschiedene Smilies, Sprachen, etc. (An dieser Stelle vielen Dank an alle, die Ihre Smilies hier zur Verfügung gestellt haben!)
  • Explorer FileDrop wenn man online ist
  • (Fast) Vollständig abwärtskompatibel zu Clients mit älterem Protokoll (LCMP 1.4-1.5, zum Vergleich aktuell ist LCMP 1.6)
    Diese Funktion bietet nur dieser Client nicht die zwei anderen, die ebenfalls mit LCMP als Protokoll arbeiten. Ihr findet sie auf www.lanchat2.de
    Dies ist besonders, da sich das Protokoll fast vollständig verändert hat
  • animierte Smilies *neu 1.3*
  • uvw.

Was ist so speziell an diesem Programm?
Über das Protokoll wird ja bereits eines realisiert und zwar die dezentrale Architektur. Mir ist bisher noch kein eigenständiger dezentraler Netzwerkchat mit dem Funktionsausmaß über den Weg gelaufen. Falls ich da falsch liege, bitte korregiert mich.

Was andere Programme auch nicht kennen ist eine "Flüsterfunktion" mit der man sich in einem öffentlichen Channel mit nur einer Person unterhalten kann, ohne dass die anderen etwas davon mitbekommen.

LanChat2 ist ein Projekt mit mehreren Clients
Jep, es gibt 2. Warum es das gibt, da könnte ich Stunden erzählen. Ihr findet alle beiden auf www.lanchat2.de (bzw. auf www.todo.lanchat2.de findet ihr mit ein bisschen suchen die Downloads dazu)

Download
Die Screenshots und Source- Code unten im Anhang
Die Binaries sind unten verlinkt
Die verwendeten Komponenten:(ich glaub das warn alle )

Registry-Daten
Ja das Programm schreibt ein paar Informationen in die Registry. Wenn ihr diese Informationen entfernen wollt, gebt ins Edit einfach "/dev removereg" ein. Aber Achtung: beim nächsten Start des Clients werden sie wieder geschrieben, also startet beim entfernen den Client kurz, gebt "/dev removereg" ein, schließt und löscht den Client dann.
Alle Daten befinden sich in "HKEY_CURRENT_USER\Software\LanChat2"


Your part
Ich würde mich ungemein über Feedback von euch freuen, damit man noch gut Verbesserungen vornehmen kann.

Beste Grüße
alias5000

Setup Routine für Client, nur Binaries
Zip- Archiv für Client, nur Binaries

Ich konnte die Binaries nicht anhängen, da ich etwas über 3MB liege
Miniaturansicht angehängter Grafiken
offline_103.jpg   online_108.jpg  
Angehängte Dateien
Dateityp: zip source_lanchat2_tbx_1_3_781.zip (1.019,5 KB, 205x aufgerufen)
Im Interesse der Purierung des germanischen Ideoms ist es opertum den immensen Usus peregrieder Verben auf ein Minimum zu reduzieren.
--> www.lanchat2.de <---
 
Benutzerbild von alias5000
alias5000
 
#61
  Alt 10. Jun 2008, 18:21
Hallo Fabian,

Zitat von xZise:
Joar.

Ich habe einen Computer mit der IP 192.168.1.X und einen mit 192.168.3.Y.
Dummerweise ist die Subnetzmaske 255.255.255.0, also sind beide in verschiedenen Subnetzen und müssten geroutet werden.

Wie genau der Repeater aussehen könnte weiß ich nicht, weil das dem Prinzip der Serverlosigkeit widersprechen würde, oder?
An sich ja, das stimmt schon. Aber auch bei anderen Funktionen kommen wir intern immer wieder an Überlegungen, doch evtl. vereinzelt Serverfunktionalitäten einzuführen.

Dem Prinzip der Serverlosigkeit wiederspricht das nur soweit, dass man eine routende Stelle braucht, um das Netz im vergrößerten Zustand aufrecht zu erhalten. Innerhalb "des eigenen Wohnzimmers" (Subnet) ist jedes Netz dann für sich ein serverloses.

Zitat von xZise:
Eine Möglichkeit wäre, dass einfach alle Signale, die von 192.168.1.0 kommen ins jeweils andere zu schicken. Wobei ich deine Interne Struktur nicht kenne (du versendest wahrscheinlich direkt an die IP => Problem wäre dann also, dass mehrere Benutzer die IP des Repeaters hätten.

[edit]Ich habe mir mal die Dokumentation der 1.6er und der 1.7er angeschaut, und so wie es aussieht sollte das gehen. Obwohl es bei 17ONLINE Probleme eben könnte, da keine IPs übereinstimmt (da sie die Nachricht ja vom Repeater bekommt). Entweder der Repeater modifiziert die IP auf seine Eigene, aber dort sollte man darauf achten, dass mehrere IPS keine Probleme gibt. Wobei, da V1.7 noch in Entwicklung ist, sollte man 17R* einführen
  • 17RWELCOME -> Antwort auf 17HELLO (somit ist klar: Repeater, und speichert diese IP ab (sozusagen hat dann jeder benutzer die Eigenschaft: Repeater (t/f)))
  • 17RHELLO -> Weiterleitung von 17HELLO in das/die andere(n) Subnetz(e) (andere Clients wissen nun: neuer Benutzer auf der anderen Seite und sie antworten mit 17WELCOME an den Repeater)
  • 17ROFFLINE -> Weiterleitung von 17OFFLINE an die andere Seite
  • 17OFFLINE (vom Repeater) -> Alle Accounts die über den Repeater liefen gehen nun auch offline
Die restlichen könnten so bleiben, weil den Clients ja klar ist, wer hin welchen Repeater steckt, oder auch nicht steckt.[/edit]
Mir ist einerseits der technische Hintergrund (subnets und wie und wo wann was ankommt) noch nicht zu 100% klar. Da muss ich mich nocheinmal schlau machen, oder auf Hilfe aus der DP hoffen (erstmal checken, ob meine Informationsquelle für solche Dinge noch freigeschaltet ist )

Ob ich das jetzt sofort realisieren kann, möchte ich nicht versprechen! Es ist sicher ein Fall für die ToDo-Liste, weil es zu der Grundfunktionalität gehört und diese gut funktionieren soll, damit eine Basis besteht.
Allerdings kämpfen wir im Team derzeit stark am Problem, dass sich wenig bewegt. Stillstand sieht anders aus, aber hätten wir richtig Gas gegeben, könnten wir jetzt vielleicht schon allererste Testversionen präsentieren. So sind wir gerade dabei, den Loginvorgang zu realisieren. Das System wird einfach immer komplexer (und vieles davon ist/wird neu geschrieben, damit die Komplexizität beherrschbar bleibt)

Zitat von xZise:
PS: Wie sieht es für LC2 für Linux aus?
Wenn du einen schreibst

Ne im Ernst, es gibt zwar eine Person, die in diese Richtung Ambitionen hat, aber sie steht noch ganz am Anfang der Java-Karriere. Ich selbst bin froh, wenn meine Delphi-Version in absehbarer Zeit fertig wird und habe damit keine Kapazitäten für irgendwelche Linux/Mac-Spielchen. Aber offen bin ich dafür an sich schon, so ist es nicht - nur möchte ich mich auf meine Delphi-Version konzentrieren, die Sprachbedingt im Moment nur unter Windows läuft. In Lazarus müsste ich mich erst einarbeiten.

[edit]
natürlich den Gruß nicht vergessen, also lasse ich mal einen da:

Gruß
alias5000
[/edit]
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

 
Delphi 2009 Professional
 
#62
  Alt 10. Jun 2008, 20:24
Das ist erstmal schön, dass dir diese Funktion am Herzen liegt, weil an sich ist der Repeater schon fast ein Server...
Aber an sich ist jedes Subnetz dann für sich alleinstehend ohne Server das stimmt.

Und für Linux würde ich mich vielleicht bereit erklären, dass mit Lazarus zu versuchen. Natürlich nicht so schick wie TBX, aber ich verscuhe möglichst LC2 1.6 zu implementieren.

Außerdem: Ich weiß gerade nicht, wozu #8 steht, aber ich hätte, würde ich das machen, so implementiert, dass Zahlen Binär übertragen werden und dass strings Delphiähnlich übertragen werden: <Länge 2 Byte oder so><String>
So kann im String ALLES stehen

MfG
xZise

PS: Ich verstehe das nicht: Das Parameter Text kann auch das | zeichen beinhalten. In diesem fall muss man die parameter wieder zu einem string zusammen setzen und dazwischen immer wieder ein | einfügen. (ToDo von LC2 1.7)
Fabian
  Mit Zitat antworten Zitat
Benutzerbild von alias5000
alias5000
 
#63
  Alt 10. Jun 2008, 21:19
Zitat von xZise:
Außerdem: Ich weiß gerade nicht, wozu #8 steht, aber ich hätte, würde ich das machen, so implementiert, dass Zahlen Binär übertragen werden und dass strings Delphiähnlich übertragen werden: <Länge 2 Byte oder so>&lt;String&gt;
So kann im String ALLES stehen
Ich verstehe dich gerade nicht ganz, was du meinst. Wir verwenden ein Terminatorzeichen-Protokoll, bei dem das Terminatorzeichen bis LCMP 1.6 ein | ist und ab LCMP 1.7 bisher das Zeichen #8 ist.


Zitat von xZise:
PS: Ich verstehe das nicht: Das Parameter Text kann auch das | zeichen beinhalten. In diesem fall muss man die parameter wieder zu einem string zusammen setzen und dazwischen immer wieder ein | einfügen. (ToDo von LC2 1.7)
hmm ein klassischer Fall von Inkonsistenz

Die aktuelle Dokumentation vom LCMP 1.7 findest du im LC2-wiki (hier: http://www.lanchat2.de/wiki/index.php/LCMP:1.7). Die Sache im ToDo ist nicht mehr ganz aktuell.
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

 
Delphi 2009 Professional
 
#64
  Alt 10. Jun 2008, 22:27
Zitat von alias5000:
Zitat von xZise:
Außerdem: Ich weiß gerade nicht, wozu #8 steht, aber ich hätte, würde ich das machen, so implementiert, dass Zahlen Binär übertragen werden und dass strings Delphiähnlich übertragen werden: <Länge 2 Byte oder so>&lt;String&gt;
So kann im String ALLES stehen
Ich verstehe dich gerade nicht ganz, was du meinst. Wir verwenden ein Terminatorzeichen-Protokoll, bei dem das Terminatorzeichen bis LCMP 1.6 ein | ist und ab LCMP 1.7 bisher das Zeichen #8 ist.
Naja, bei 1.6 ist das Problem, dass man tee oder grep nicht so einfach erklären könnte ohne das umständlich zu machen

Zitat von alias5000:
Zitat von xZise:
PS: Ich verstehe das nicht: Das Parameter Text kann auch das | zeichen beinhalten. In diesem fall muss man die parameter wieder zu einem string zusammen setzen und dazwischen immer wieder ein | einfügen. (ToDo von LC2 1.7)
hmm ein klassischer Fall von Inkonsistenz

Die aktuelle Dokumentation vom LCMP 1.7 findest du im LC2-wiki (hier: http://www.lanchat2.de/wiki/index.php/LCMP:1.7). Die Sache im ToDo ist nicht mehr ganz aktuell.
Okay, danke

MfG
xZise
Fabian
  Mit Zitat antworten Zitat
Benutzerbild von alias5000
alias5000
 
#65
  Alt 11. Jun 2008, 16:09
Zitat von xZise:
Naja, bei 1.6 ist das Problem, dass man tee oder grep nicht so einfach erklären könnte ohne das umständlich zu machen
Deshalb ja der Wechsel des Trennzeichens
  Mit Zitat antworten Zitat
Diamont
 
#66
  Alt 26. Jun 2008, 22:07
Hey das ist richtig cool geworden..
Mal sehn vielleicht kann ich das nach den Ferien im Info Unterricht verwenden xD
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:29 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz