<HTML> <!-- $Id$ --> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=ISO 8859-1"> <META http-equiv="Content-Style-Type" content="text/css"> <META name="author" lang="en" content="Michiel Broek"> <META name="copyright" lang="en" content="Copyright Michiel Broek"> <META name="description" lang="en" content="MBSE BBS Manual"> <META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer"> <TITLE>MBSE BBS Programs - mbsebbs - The main BBS program.</TITLE> <LINK rel=stylesheet HREF="../manual.css"> </HEAD> <BODY> <BLOCKQUOTE> <h5>Last update 21-Jan-2002</h5> <P> <P> <H1>mbsebbs - The main BBS program</H1> <P> <H3>Synopsis.</H3> <P> <code><strong>mbsebbs</strong></code> <P> <P> <H3>Description.</H3> <P> <strong>mbsebbs</strong> is the main bbs program for the users. To be able to use the bbs, the bbs mustbe set open with <strong>mbstat open</strong> or users may not login. This is normally done at system boot. Also Zone Mail Hour is honored if the user logs in on a tty that has the <strong>honor ZMH</strong> flag set to true. If it is ZMH and the ZMH flag is true, the user will be kicked out of the bbs. You should only set this flag on the modem lines where you need to be available for ZMH if your "Fidonet" network requires that. <P> The first visible action is to show the logo.ans file. Because it is not known who is trying to login, you only need to place this file in the default language directory. <P> The next check is to see if the user is allowed to login on the tty he currently is on. If this tty is not available or is not in your setup, the user is kicked out. If he is allowed to login, a message is shown at which port he is on, unless you have turned this feature off in the setup. <P> If the user login is successfull, his favourite language will be loaded. Then it is checked if the user is the Sysop, if so, the Sysop flag is set. If the users Date of Birth is invalid, he is forced to enter the right Date of Birth. The next check is to see if the user has passed the expiry date, this is a usefull feature for systems with donating users. Finally the access limits are set for the user and time remaining for today and download limits are set. <P> After successfull login the user can be presented with a bunch of advertising screens. I will only name the screens without filename extension, as these screens are searched for in the following order;<br> <ol> <li>filename.ans in the users favourite language directory. <li>filename.ans in the default language directory. <li>filename.asc in the users favourite language directory. <li>filename.asc in the default language directory. <li>If nothing is found, nothing is displayed. </ol> <strong>mainlogo</strong>. Here you can put a logo or something. <strong>welcome</strong>. This screen can contain information about the session the user has, his download limits, time left etc. <P> <strong>welcome1</strong> is shown if the user has show bulletins set to true. <strong>welcome2</strong> is shown if the user has show bulletins set to true. <strong>welcome3</strong> is shown if the user has show bulletins set to true. <strong>welcome4</strong> is shown if the user has show bulletins set to true. <strong>welcome5</strong> is shown if the user has show bulletins set to true. <strong>welcome6</strong> is shown if the user has show bulletins set to true. <strong>welcome7</strong> is shown if the user has show bulletins set to true. <strong>welcome8</strong> is shown if the user has show bulletins set to true. <strong>welcome9</strong> is shown if the user has show bulletins set to true. <P> <strong>birthday</strong> is shown if the user logs in at his birthday and if he has show bullentins set to true. <P> <strong>dd-mm</strong> is shown if <strong>dd</strong> is the date of today and <strong>mm</strong> is the current month and if the user has show bulletins set to true. <P> <strong>sec20</strong> is shown if the user has the security level in the filename, level 20 in this example. Als the display bulletins must be set to true. <P> <strong>news</strong> is shown if the user has the display bulletins set to true. <P> <strong>onceonly</strong> is shown only if the user has never seen this screen, the test is to compare the users last login date against the date of this file. <P> After all these screens the users Offline Reader areas are checked to see if you as sysop didn't change the message areas. If you made changes, the users setup is adjusted and he will be notified. This means he sees a list with deleted areas and new areas. <P> Next if the user has newmail scan set to true all message bases are checked to see if the user has new mail. This includes a check to see if he has Unix mail. If there is Unix mail, those mails are retrieved from the POP3 server and stored in his private mailbox. If there is new mail for the user, the user sees a list of areas with the messages in it and he is offered to read and reply these messages. <P> Then if the user has show newfiles set to true and he is not a new bbs user he will see a list of new files you have on your bbs. During this display he can tag files for later download. <P> The final setup is to set the users "do not disturb" flag and then the menu system is started. The menu system will run forever, until the user chooses to logoff, the connection is lost or his daily timelimit is reached. For the possibilities and setup of the menus see <A HREF="../menus/index.htm">MBSE BBS Menu System</A> <P> <P> <H3>Environment.</H3> <P> In order to run <strong>mbsebbs</strong> you must set the global variable <strong>$MBSE_ROOT</strong>. This variable must point to the root directory of the bbs structure. The main configuration file <strong>config.data</strong> must be present in the ~/etc directory. <P> If the environment variable <strong>CONNECT</strong> is present, a log entry will be made with the connect speed. <P> If the environment variable <strong>CALLER_ID</strong> is present, a log entry will be made with the caller id. <P> The environment variable <strong>LOGNAME</strong> must contain the unix username. This is set by the <b>mblogin</b> program. <P> <P> <A HREF="index.htm"><IMG SRC="../images/larrow.gif" ALT="Index" Border="0">Back to index</A> <A HREF="../index.htm"><IMG SRC="../images/b_arrow.gif" ALT="Main" Border="0">Back to Main index</A> </BLOCKQUOTE> </BODY> </HTML>