PHPOpenChat - Features

 funktional
  • Mehrsprachigkeit
    Bei Communities mit Mitgliedern aus mehreren Ländern, kann jedes Mitglied sein Chat-Interface in der eigenen Muttersprache haben.
  • Unlimitierte Anzahl von Räumen
  • Private Räume
    Jeder Benutzer hat einen eigenen privaten Raum, in den er Gesprächspartner einladen kann.
  • Moderation Jeder Raum kann zu einem moderierten umkonfiguriert werden. In diesem Fall
    • muss jede Zeile von einem Moderator freigegeben werden, um sie lesbar für alle anderen im Raum zu machen.
    • ist jede Zeile, die ein special guest oder ein Moderator schreibt, immer sofort lesbar.
  • Passwortgeschütze Räume
    Jeder Raum kann durch ein Passwort zusätzlich abgesperrt werden.
  • Maximalzahl der gleichzeitigen Benutzer eines Raumes
    Die Maximalzahl der in einem Raum gleichzeitig anwesenden Benutzer kann limitiert werden.
  • Benutzergruppen
    Der PHPOpenChat bringt folgende Benutzergruppen mit:
    • Chatter
    • Operators des Chats. Sie haben die Möglichkeit Benutzer zu kicken oder zu bannen.
    • VIPs (in moderierten Räumen)
    • Moderatoren (in moderierten Räumen)
  • Chat in einem separaten Fenster
    Neben dem normalen Chat-Interface, können Benutzer auch innerhalb eines zusätzlichen Fensters miteinander Chatten.
  • Chat Mail
  • Hinweis als Sound oder Nachricht auf neue Zeilen
    Jeder Benutzer kann sein Interface so gestalten, dass er per Sound oder Nachricht über neue, an ihn gerichtete Zeilen informiert wird.
  • verschiedene Themes
    Jeder Benutzer kann das Design entsprechend der angebotenen Themes anpassen.
  • IRC-style Kommandos
    • /locate nickname auffinden eines Benutzers
    • /nickname ansprechen eines Benutzers
    • /me wird durch den eigenne Spitznamen ersetzt
    • /msg nickname flüstern zu einem Benutzer
    • /join channel name den Raum wechseln
    • /help um Hilfe zu bekommen
  • TopList
  • URLs und E-Mail-Adressen werden automatisch zu Links gewandelt.
  • Möglichkeit des Ignorierens von Benutzern
  • Flüssige Textausgabe
    Kein Flackern oder permanentes Neuladen der Textausgabe.
  • In mehrern Stufen wählbares weiches Autoscrolling
  • Bandbreite
    Der Netz-Traffic ist stark reduziert durch das Benutzen der Javascript-Funktion document.write(). So wird nur der Chattext und nicht das komplette HTML-Markup übertragen.

    Da das HTTP-Protokoll zustandslos ist, also auf einen Request ein Response folgt und die Verbindung dann beendet ist, muss ständig beim Chatserver "nachgefragt" - gepollt werden.
    Annahme: Es sind gleichzeitig 100 Chatter, bei einem Polling-Interval von 10 Sekunden (eigene Zeilen werden beim POC sofort angezeigt) eine Stunde lang im Chat online und sagen nichts.
    Größe des Request-Headers durchschnittlich ca. 200 bytes
    Größe des Response-Headers zzgl. des Contents ca. 300 bytes
    Net-Traffic: 3600s * 1/10s * 100 * 500 bytes = 18 MB/h

  • Freundesliste
 nicht-funktional
  • Trennung von Code und Design
    Das die Implementation des Interfaces basiert auf Templates, welche den PHPOpenChat sehr leicht an andere Designs anpassbar macht.
  • Objektorientiert
    Der Programm-Code ist leicht erweiterbar und anpassbar.
  • Datenbankunabhängig
    PHPOpenChat benutzt den sehr schnellen DB-Layer ADOdb, wird aber unter MySQL entwickelt, sei also gewarnt :)
  • Sicherheit
    Sowohl client- als auch serverseitig gehören heute Firewalls zur installierten Standardsoftware. Für den Betrieb des POC, müssen keine unprivilegierten Ports über die Firewall freigegeben werden. Alle Kommunikation zwischen Client und Server geschieht über den privilegierten Port 80.
  • Ausgabe von validem XHTML 1.0 transitional
  • Interface-Design wurde auf eine gute Usability ausgerichtet