home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Fresh Fish 8
/
FreshFishVol8-CD1.bin
/
new
/
comm
/
bbs
/
4d-bbsdemo
/
docs
/
text
/
10.doors_arexx
< prev
next >
Wrap
Text File
|
1993-12-28
|
4KB
|
118 lines
Chapter 10
Doors and External Programs
10.1 Introduction
Doors are separate programs that can communicate with the BBS. They
come in many forms, games, utilities, ect, and can be found on many BBS's.
It is not guaranteed that all doors will work on 4D-BBS. They may have
been written for another BBS and may not be fully compatable.
10.1.1 Types
On 4D you can run three types of Door programs.
1: ARexx
2: Paragon
3: Cli (StdIO/FIFO)
10.1.2 ARexx Doors
In the cfg_ed you can set up the port name you wish to use for your
ARexx port. The default is '4D-BBS'. If you run a multi-line BBS, 4D-BBS
will automatically add a number to the end of your port name.
For Example:
line 0: Port Name '4D-BBS'
line 1: " " '4D-BBS1'
For specific ARexx commands see the Appendix A3.
Usually all that is required for a ARexx door to run on 4D-BBS is to
change the address to the ARexx port name. Or also you can pass it the
ARexx port name as an argument by using 4D-BBS's embedded instructional
code for the ARexx port name. ^]WT%. This will require a good
understanding of ARexx if the script is not set up to handle this. You can
find an example of this in 4DWhosOn.Rexx
Below is a simple menu example on how to start a ARexx door:
H:c A Path/filename.rexx
H is the keypress
c is for door
A is the type of door (A,P,O,F)
Note: see menu options
10.1.3 Paragon Door Types
Usually installing a Paragon door is very simple. You have to
have a directory devoted to doors and assign DOORS: to it. Many doors
require that subdirectories be set up for them (you will have to read their
docs about this).
4D-BBS has two ways to run a Paragon door. The best way is to use
the door option of 'P'. 4D-BBS will check to make sure the door opens a
reply port to prevent the BBS from hanging in the door mode. If the reply
port can not be found 4D-BBS will return.
A simple menu example:
h:c P Doors:filename
The other way to run a Paragon type door is to use the door option
of 'O'. Some Paragon doors will not work using the 'P' option because they
don't open a properly names reply port. 4D-BBS will not check for a reply
port and start waiting for commands with the door option of 'O'.
A simple menu example:
h:c O Doors:filename
10.1.4 CLI (FIFO)
To use this option you must have Matt Dillion's FIFO. It is in the
public domain. You need fifo.library in your libs: directory and also run
the fifo-handler. Read the docs that come with fifo for more details.
FIFO is available at 4D-BBS support BBS.
Any program that does not detach its self from the stdin & stdout or
open a window should be able to be ran with this option. Ususally if it
will run on a CLI (with output to the cli) it will work here. Example:
4D-BBS editors could be ran as a fifo door! If a user hangs up during a
FIFO door, 4D-BBS will send a ctrl-C to try to abort the program. It is
suggested that you only run programs that will abort on a ctrl-c.
A simple menu example:
h:c F path/filename
or with embedded instructional code (EIC)
h:c F doors:h&s/HSclient -t^[P7% "^[P3%"
the ^[P7% being time left on BBS & ^[P3% is the users name. Use quotes
around any EIC that may have a space.
There is also a built in SHELL you can start with this option. This
works VERY well for remote access. But WARNING!! keep it out of the reach
of users. It is just like using the cli, except you can not click
requesters.
To run the SHELL use '4D-SHELL'. It is Case sensitive.
example: s:c F 4D-SHELL