| 
 
 |  | ARSC Really Simple ChatA free and easy to handle web based online chat.
 
 
            
              | 
                  
     Download statistics
    Yesterday, ARSC was downloaded 12 times, and 97,744 times since start of the project. See the detailed statistics. |  
 
            
              | 
                  
 News
You can find old news in the news archive. |  
 
            
              | 
                  
  Demo Chat
 You can explain a chat for hours, but you will only know what it is all about if you use it. Visit the demo installation of ARSC and try it out! |  
 
            
              | 
                  
  Logo
 
                  
                    |   | Seems like this will be the final logo. Many thanks to Mash <mash99 at web dot de>!
 |  There are more logos and buttons.
 If you are interested in stunning webdesign templates with some of the best artwork I know,
 all for an affordable price, check out Sven Kaisers homepage, DesignAuftritt.de.
 |  
 
            
              | 
                  
  What is ARSC?
 
                  
  One sentence abstract
 ARSC is an easy to install, simple to handle, cross-browser and cross-platform compatible, high-performance open source web chat system written in PHP, using MySQL.
                  
  List of features
 
  
   very easy installation
  
   multiple languages supported
  
   multiple browsers/platforms supported (even text-based ones)
  
   comfortable administration interface
  
   private rooms
  
   two-leveled moderation system with message queue and Moderator/VIP roles
  
   graphical smilies
  
   freely definable layouts, with different layouts possible for individual rooms and/or users
  
   ID-Cards for registered users, with individual guestbooks on every ID-Card
  
   text-browser interface even allows chatting with braille screen readers
  
   security: uses sha1 hashes for passwords and sessionids, and every single user input is checked against
   a regular expression of allowed values
  
   works with PHP 4 and PHP 5
  
   works with safe_mode = On and register_globals = Off
   
                  
  Extended description
 Once installed on your webserver, ARSC provides a chat interface to the visitors of your site.
 Your visitors need no special plugins or additional software to chat, only their webbrowser.
 ARSC is licensed under the GPL, which means it is free (like in "free speech"). It also comes at no cost (like in "free beer"). You may even use it in your own software projects.
 Chatting with ARSC is very comfortable. If you have a modern browser with frame support and JavaScript support enabled, ARSC makes use of
 these technologies.
 If you have an older browser, or you have JavaScript disabled, or even if you have a browser that does not support frames, you can
 still chat with ARSC.
 Let me say it this way:
 
  With ARSC, chatting on a webpage is possible with every known browser under the sun that is still in use nowadays.
 
 In contrary to many other PHP/MySQL webchats, ARSC can be run using a non-forking socketserver to handle all message
 transport. Other chats use the httpd process to handle the message transport, what causes a big overhead, while
 the socketserver of ARSC works very ressource-friendly and can handle way more users.
 The server is completely written
 in PHP and thus does not need any special requirements besides a cgi-bin installation of
 PHP 4.1.0 or above. Current versions of PHP (4.3.x) have
 been tested and work.
 If you are not able to compile a cgi-bin version of PHP or you may not start a socketserver on your machine,
 ARSC still offers the 'traditional' message handling via the httpd process or even via meta refresh.
 
                  
  More information
 To get a better idea of the installation and the technical skills required for setting ARSC up
 (it is really simple, trust me!), you should take a look at the installation instructions. |  
 
            
              | 
                  
  Downloads
 
  
   Get the latest stable release (3.1 RC 1, released November 22, 2005)
   
  
   Get additional language files (obsolete, for ARSC 1.x and 2.x)
   
   |  
 
 
            
              | 
                  
  Did ARSC make you happy?
 Was ARSC what you were looking for? Are you happy to have a chat on your homepage now? Or did the sourcecode of
 ARSC help you improving your PHP skills? Maybe you even earn money from using ARSC, who knows?If you take a moment to think about it, you might remember that you paid
 exactly nothing for my software. Well, if I made you happy with my software, maybe you wish to make me happy too -
 with a present. If you do so, then please visit my Amazon wishlist:
 Use this one if you are from outside Germany
 Use this one if you are from Germany
 
 If you don't want to buy something for me, then I am absolutely fine with that -
 money does not lie on the streets as we say in Germany. But please take a look at the next paragraph, "Rate ARSC".
 |  
 
            
              | 
                  
  Rate ARSC
 If you used ARSC, please take ca. 0.8 seconds of your time and use this form to rate it at HotScripts.com: |  
 
            
              | 
                  
  Wie funktioniert ARSC eigentlich?
 Soeben erhielt ich eine eMail, in der mich ein PHP Programmierer fragte, wieso ARSC so flüssig läuft, wieso das ohne Meta Refresh funktioniert etc. Nachdem ich ihm das im Detail beantwortet hatte, dachte ich, es macht Sinn, das auch mal zentral festzuhalten. Hier also die eMail:
 Der Trick ist, ein PHP Skript mit einer nicht endenden while Schleife zu schreiben, die bei jedem Durchlauf in einer MySQL Tabelle nachschaut, ob etwas neues gekommen ist, und es dann ausspuckt.
 
 Ich halte das Beispiel aber mal einfacher:
 
                  Wenn du das im Browser aufrufst (nimm am Besten erstmal den Mozilla), dann siehst du im Sekundentakt die Uhrzeit angezeigt, ganz flüssig und ohne Meta-Refresh etc.
                    | 
<php
while(true)
{
 echo date("H:i:s")."<br>\n";
 sleep(1);
}
?> |  
 Überraschend simpel, oder? :-)
 
 Nun, das macht natürlich noch keinen Chat - du musst bei jedem Schleifendurchlauf prüfen, ob es neue Nachrichten in deiner MySQL Tabelle gibt.
 
 Schau mal hier:
 http://cvs.sourceforge.net/viewcvs.py/arsc/latest/version_push_js/chatmsg.php?rev=1.13&view=markup
 
 Da ist irgendwo die Zeile:
 
                  Das ist im Prinzip der Beginn der nicht endenden while Schleife.
                    | while(!connection_aborted()) |  
 Dann kommt nach einiger Zeit die Zeile:
 
                  Da holt er sich bei jedem Durchlauf die Nachrichten aus der Tabelle, die eine höhere "timeid" (das ist einfach der Zeitpunkt, an dem die Nachricht in den Chat geschickt wurde, in Millisekunden) haben als die letzte gepostete Nachricht, und postet diese Nachricht, merkt sich dabei die timeid der letzten Nachricht, und durchläuft wieder die Schleife.
                    | 
$arsc_result = mysql_query("SELECT * FROM arsc_room_$arsc_room
               WHERE timeid > '$arsc_lastid'
               ORDER BY timeid ASC, id ASC"); |  
 Voilá!
 |  
 
            
              |   | ARSC is partly hosted at SourceForce.
 |  
 
 |