home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Media Share 9
/
MEDIASHARE_09.ISO
/
ra
/
urd102b.zip
/
URD.DOC
< prev
next >
Wrap
Text File
|
1993-05-15
|
31KB
|
678 lines
User Registration Door 1.02b
For
RemoteAccess 1.10/1.11 and 2.00
Copyright 1992-93, Marco A.J. Miltenburg
Public Software
┌──────────────────────────────────────────────────────────────────────┐
│▐▐▐▐ WHAT IS IT ? │
└──────────────────────────────────────────────────────────────────────┘
User Registration Door (or URD) is a RemoteAccess 1.10/1.11/2.00
door. It has been designed to make it very easy for new users at
your bulletin board to answer some questions before you grant them
access. URD is fully configurable and makes it possible to create a
questionnaire which is completly simular to your BBS. URD has NO
limitation to the number of questions. All questions can be in the
language the user has choosen (up to 99 languages are supported).
┌──────────────────────────────────────────────────────────────────────┐
│▐▐▐▐ DISCLAIMER │
└──────────────────────────────────────────────────────────────────────┘
In no event shall Public Software nor Marco Miltenburg be liable to
you or anyone else for any special, incidental, consequential,
indirect or similar damages due to the use of this program even if
one of our support-sites has advised you to use the program in a
special way. The program is provided as it is, and you use it on
your own risk. All brands and product names in this documentation
are trademarks or registered trademarks of their respective
holders.
┌──────────────────────────────────────────────────────────────────────┐
│▐▐▐▐ INSTALLATION │
└──────────────────────────────────────────────────────────────────────┘
Installation of User Registration Door is very easy. Just copy
URD.EXE and URD.CTL to some directory of your harddisk (preferable
a subdirectory especially for URD). Be sure that you have set the
RA environment variable as explained in the RemoteAccess manual.
URD makes use of this variable to find the RemoteAccess
systemfiles. URD.CTL is the controlfile used by URD. You probably
need to edit it to fit your own needs. All commands are explained
later in this document.
After editing the configurationfile, you will have to create one or
more questionfiles, which defines the questions the users have to
answer. An example questionfile is included. All commands will be
explained later in this document and are also commented in the
example questionfile.
Installation of the door in RemoteAccess is easy. It doesn't
require any commandline option, however it accepts an optional
commandline option. Just simply make a menuoption 7 in your menu
and put the following in the optional data field :
Menutype : 7
Optional Data : URD.EXE [<filename>] *M
Swapping is recomended, because URD allocates dynamic memory. By
default URD will open URD.CTL and URD.Qxx (where xx stands for the
language number, see below). If you want to use other config- and
questionnaire files, supply the name on the commandline as showed
above, but DON'T! include an extension. URD will add the extension
of the file by itself. The name of the .CTL and the .Qxx files
MUST! be the same.
┌──────────────────────────────────────────────────────────────────────┐
│▐▐▐▐ CONFIGURATION FILE │
└──────────────────────────────────────────────────────────────────────┘
You control URD with it's configurationfile URD.CTL (or any other
filename supplied on the commandline). This file contains commands
which are read by URD at startup. You can/must use the following
commands :
REGISTRATIONKEY
─────────────────────────────────────────────────────────────────
Here you enter the registrationkey you have received uppon
registering the program. If you are evaluating the program in the
trialperiode, comment this line by putting a ; in front of the
line. The format of this line is :
REGISTRATIONKEY = 1234567890
ANSWERFILE
─────────────────────────────────────────────────────────────────
With this option you define in which file URD will write the
answers of the users. This keyword is optional. It will default
to NEWUSER.ASW in the RA system directory. Example :
ANSWERFILE = C:\RA\URD\NEWUSER.ASW
The next part defines how URD will update the users' level or flags
when he/she has, or hasn't completed the questionnaire. Therefore,
you define two section named ANSWERED and NOTANSWERED. These
sections are ended with an END keyword. For both sections you can
(almost) use the same keywords which are explained now.
AFLAGS
─────────────────────────────────────────────────────────────────
This command sets or resets the A-Flags of the user. The flags
are numbered from 1 to 8 in this order :
12345678
AFLAGS = --1-0--1
If you want to set a flag use a '1' on that place. A '0' resets
the flag and a '-' doesn't affect that flag.
BFLAGS
─────────────────────────────────────────────────────────────────
See AFLAGS
CFLAGS
─────────────────────────────────────────────────────────────────
See AFLAGS
DFLAGS
─────────────────────────────────────────────────────────────────
See AFLAGS
UPDATELEVEL
─────────────────────────────────────────────────────────────────
With this command you can update the level of the user and/or
time he/she has left on the BBS after completing the
questionnaire. You can use as many of these lines as you want.
There's is no limitation (only your systems' memory). The general
format of this command is :
UPDATELEVEL = <old level>,<new level>,<timeleft>
<old level> is the level of the user when he/she started the
door. If a user has this level, it will be updated to <new
level>. The time the user has left on the BBS will be updated to
<timeleft> (in minutes).
If you only want to update the securitylevel of the user and not
the time he/she has left on the BBS, use a 0 (zero) for
<timeleft>. For example :
UPDATELEVEL = 10,50,0
If you don't want to update the securitylevel, but only the time
the user has left, use 0 (zero) for <new level>. For example :
UPDATELEVEL = 10,0,15
If you don't want to update anything, simply comment or delete
the lines.
HANGUP
─────────────────────────────────────────────────────────────────
This keyword allows you to terminate a call when a user didn't
want to complete your questionnaire. Of course this can only be
used in the NOTANSWERED section.
DELETE
─────────────────────────────────────────────────────────────────
This keyword will delete the user from your userbase. It will set
the delete flag so that the next time you run RAUSER -P, the user
will be removed from your userbase. If this keyword is used, all
other keywords don't matter anymore, because the user is deleted
anyway. However, URD will update the users' record as specified,
before deleting the user. Of course this can only be used in the
NOTANSWERED section.
LOCKOUT
─────────────────────────────────────────────────────────────────
This keyword will lockout the user from your system if he/she
doesn't want to answer you questionnaire. It will lower the
securitylevel to zero and terminate the call (an extra HANGUP
keyword is not needed). Of course this can only be used in the
NOTANSWERED section.
An example of a complete section :
NOTANSWERED
AFLAGS = 0-------
BFLAGS = 00100011
CFLAGS = --------
DFLAGS = -------1
UPDATELEVEL = 10,5,10
END
If you want, you can leave out the redundant entry's like :
CFLAGS = -------
URD won't change the flags by default. Look at the example CTL
files which are in the distribution archive for more examples.
┌──────────────────────────────────────────────────────────────────────┐
│▐▐▐▐ QUESTIONNAIRE FILES │
└──────────────────────────────────────────────────────────────────────┘
The questionfile(s) define the questions which has to be answered
by the user. It also contains some keywords that are language
dependent, because this is the place to make URD multi-langual.
The questionfiles have to be named URD.Qxx (or any other filename
supplied optionally on the commandline), where xx stands for the
language number. If, for example, a user is using language 3 on
your system, URD will open the questionfile URD.Q03. If it can't
open that file it will default to language 1 and will try to open
URD.Q01. If this isn't succesfull either, it will abort with an
errormessage and return to the BBS (or calling program). The
questionfiles have to be in the same directory as where URD.EXE is
located.
First of all the keywords that are not related to the questions.
STARTSCREEN
─────────────────────────────────────────────────────────────────
This keyword defines the name of the ASC/ANS/AVT file that will
be displayed before URD will aks the user if he/she wants to
answer the questionnaire. DON'T include an extension. URD will by
itself determine what file to use (according to the flag settings
of the user). Example:
STARTSCREEN = URD_STRT
BACKSCREEN
─────────────────────────────────────────────────────────────────
This keyword defines the name of the ASC/ANS/AVT file that will
be displayed as a background screen under your questionnaire.
DON'T include an extension. Example :
BACKSCREEN = URD_BACK
ENDSCREEN
─────────────────────────────────────────────────────────────────
This keyword defines the name of the ASC/ANS/AVT file that will
be displayed after the user has completed the questionnaire.
DON'T include an extension. Example :
ENDSCREEN = URD_END
NOTANSWEREDSCREEN
─────────────────────────────────────────────────────────────────
This keyword defines the name of the ASC/ANS/AVT file that will
be displayed if a user doesn't want to answer the questionnaire.
DON'T include an extension. Example :
NOTANSWEREDSCREEN = URD_NOT
SAVEANSWERTEXT
─────────────────────────────────────────────────────────────────
This string will be showed to the user when his answers are
saved. It will be centered in the middle of the screen on the
bottom line. Default color is 15 (bright white). Example :
SAVEANSWERTEXT = Saving your answers. Please hold....
MUSTANSWERTEXT
─────────────────────────────────────────────────────────────────
This string will be displayed when the user hasn't answered all
questions you wanted him/her to answer as defined with the
'MustAnswer = Yes' keyword in the question section (see below).
Default color is 12 (bright red).
MUSTANSWERTEXT = You MUST answer the first 6 questions !
URD will search for the ASC/ANS/AVT files in this order :
- Language Textfiles Directory
- URD Directory
- Current Directory
- Textfiles Directory as defined in RACONFIG (not the language)
All ASC/ANS/AVT files may contain RA alike codes to insert user- or
systemparameters. If you want multi-langual support, you have to
place the files in the Language Textfiles Directory. If URD can't
find the files, it will just skip that part without displaying any
errormessage, so you don't have to use all screens. However, if you
don't supply the filenames in the .Qxx file, URD will default to
the filenames as in the examples above. So if you don't want to
show a specific screen, be sure that you don't have a file with
that name in your textfiles directory.
───────────────────────────────────────────────────────────────────
Note for ASCII screens: Because URD can't control the cursor in
ASCII mode, you can't make a fullscreen questionnaire system with
ASC files. URD will start with the questions at the point where it
was after displaying the ASC file. So don't save your ASC files as
a fullscreen in your editor, but as a limited block.
───────────────────────────────────────────────────────────────────
Before starting the questionnaire URD has the option to ask the
user if he/she wants to answer your questionnaire. This question
will be prompted after STARTSCREEN has been displayed. If the user
doesn't want to answer your questionnaire, URD will update the user
as defined in the NOTANSWERED section in the CTL file and display
the NOTANSWEREDSCREEN. The question is defined by the STARTQUESTION
keyword and ended by an END keyword. Example :
STARTQUESTION
X = 6
Y = 20
QUESTION = `A112:Do you want to answer the questions
END
If you want your users always to answer the questionnaire, simply
delete (or comment) the lines in the questionfile. URD will only
display STARTSCREEN then and start the questionnaire directly.
Remember to put a ^A (CTRL-A, wait for ENTER) in your STARTSCREEN
if you don't use the startquestion!.
Follows an explanation of the keywords.
STARTQUESTION
─────────────────────────────────────────────────────────────────
Defines the start of the section that defines the question that
will be prompted to the user to ask if he/she wants to answer
your questionnaire.
X
─────────────────────────────────────────────────────────────────
The colum where the first character of the question has to be
placed.
Y
─────────────────────────────────────────────────────────────────
The row where the first character of the question has to be
placed.
QUESTION
─────────────────────────────────────────────────────────────────
This keyword defines the question which will be asked to the
user. You don't have to include an [Y/N], because URD will add
that automatically (language depently).
END
─────────────────────────────────────────────────────────────────
Defines the end of the STARTQUESTION section.
Note for ASCII mode: Because URD can't control the cursor in ASCII
mode, URD will ignore all coordinates given here. It will put the
question directly on the place where it was left after displaying
the STARTSCREEN.
Now we are at the tough part of URD : the definition of the
questions. One question contains more keywords, just like the
STARTQUESTION section. These keywords define several things about
the question. A question is started with an BEGIN keyword and ended
with an END keyword. Everything between it, affects only that
specific question.
You can also use some of the keywords outside a BEGIN-END section.
These keywords will affect all question which are defined BELOW it.
These keywords are named GLOBAL keywords. Here's an explanation of
the keywords :
BEGIN
─────────────────────────────────────────────────────────────────
Defines the start of a question.
X
─────────────────────────────────────────────────────────────────
The colum where the first character of the question has to be
placed. URD will ignore this keyword in ASCII mode, because it
can't control the position of the cursor in this mode.
Y
─────────────────────────────────────────────────────────────────
The row where the first character of the question has to be
placed. URD will ignore this keyword in ASCII mode, because it
can't control the position of the cursor in this mode.
VALIDCHAR
─────────────────────────────────────────────────────────────────
Defines what letters or digits may be entered by the user. For
example if you ask for a phonenumber, you can disallow letters to
be entered. There are several groups defined :
0 = All printable characters
1 = Characters and digits
2 = Characters only
3 = Digits only
4 = Digits and '+', '-' (useful for phonenumbers)
5 = Digits and '-', '/' (useful for date of birth)
6 = First four places digits only. Useful for postal codes.
(Check for a valid code is not implemented!).
If you want to ask the user for his/her date of birth, you could
define :
VALIDCHAR = 5
PREANSWER
─────────────────────────────────────────────────────────────────
To make it more easy for the user to answer the questions, URD
will allow you to fill in some answers already. The groups
defined for this are :
0 = Nothing
1 = Name
2 = Location
3 = Dataphone
4 = Voicephone
5 = Handle
6 = Birthdate
7 = Comm. Program used by the user (IEMSI session only)
If you ask a user to enter his/her voicenumber, you can use :
PREANSWER = 4
A user only have to press ENTER to confirm the number, although
URD will still allow the user to edit the supplied number.
MUSTANSWER
─────────────────────────────────────────────────────────────────
Defines if the user MUST answer this question or not. For example
I want my users at least to enter their address. Other questions
aren't that important to me. If they end the questionnaire (by
pressing ESC) without answering one or more questions with this
statement, URD will display the MUSTANSWER string (defined
earlier) and will put the prompt on the first question that has
to be answered.
Example :
MUSTANSWER = YES
ANSWERCOLOR
─────────────────────────────────────────────────────────────────
Defines in which the color the answers of the user will be
displayed (see the COLORS section at the end of this document for
more information). Don't include the special colorcode here. Only
a numeric value. Example :
ANSWERCOLOR = 15
EDITFIELDCOLOR
─────────────────────────────────────────────────────────────────
Defines the color of the input prompt when the user enters
his/her answer. (see the COLORS section at the end of this
document for more information). Don't include the special
colorcode here. Only a numeric value. Example :
EDITFIELDCOLOR = 31
ANSWERLENGTH
─────────────────────────────────────────────────────────────────
Defines the length of the answerfield. Example :
ANSWERLENGTH = 30
QUESTION
─────────────────────────────────────────────────────────────────
Defines the question which will be asked to the user. Example :
QUESTION = Where do you live :
END
─────────────────────────────────────────────────────────────────
Defines the end of the question.
To make it a little bit easier for you to create the questionfile
and to let URD read the questionfiles a little bit faster, there
are a few keywords that can be used globally. These keywords are :
MUSTANSWER
ANSWERCOLOR
EDITFIELDCOLOR
Mostly these keywords will be assigned the same value for more than
one question.
This is an example of a question :
BEGIN
X = 4
Y = 9
VALICHAR = 4
PREANSWER = 4
MUSTANSWER = YES
ANSWERCOLOR = 15
EDITFIELDCOLOR = 31
ANSWERLENGTH = 12
QUESTION = Voice Phone :
END
Look at the example questionfiles for more examples. In ASCII mode,
URD will ignore all X, Y and color keywords, because URD won't have
any control on these items in this mode.
┌──────────────────────────────────────────────────────────────────────┐
│▐▐▐▐ COLORS │
└──────────────────────────────────────────────────────────────────────┘
URD allows you to completly change the look of the program. This of
course means that you can change the colors it is using. Because
URD is written using RADU, you can use the special RADU color
codes. The general format of the colorcode is :
`A<Parameters>:
<Parameters> numeric value
For example `A15: will change the color to bright white. The code
`A30: will change the color to yellow with a blue background. The
numeric value can be calculated using the following formula :
Color = Foreground + Background * 16
┌─────────────────────┐ ┌─────────────────────┐
│ Foreground Colors │ │ Background Colors │
├───────────────┬─────┤ ├───────────────┬─────┤
│ Black │ 0 │ │ Black │ 0 │
│ Blue │ 1 │ │ Blue │ 1 │
│ Green │ 2 │ │ Green │ 2 │
│ Cyan │ 3 │ │ Cyan │ 3 │
│ Red │ 4 │ │ Red │ 4 │
│ Magenta │ 5 │ │ Magenta │ 5 │
│ Brown │ 6 │ │ Brown │ 6 │
│ Gray │ 7 │ │ Gray │ 7 │
│ - - - - - - - │ - - │ │ - - - - - - - │ - - │
│ DarkGray │ 8 │ │ Black │ 8 │
│ LightBlue │ 9 │ │ Blue │ 9 │
│ LightGreen │ 10 │ │ Green │ 10 │
│ LightCyan │ 11 │ │ Cyan │ 11 │
│ LightRed │ 12 │ │ Red │ 12 │
│ LightMagenta │ 13 │ │ Magenta │ 13 │
│ Yellow │ 14 │ │ Brown │ 14 │
│ White │ 15 │ │ Gray │ 15 │
└───────────────┴─────┘ └───────────────┴─────┘
If you use a background color between 8 and 15, the foreground will
blink. Please think about the users that are using a monochrome
screen. Some colors may look very nasty on these screens (for
example: Blue will be underlined on monochrome systems). These
special colorcodes can only be used in prompts (questions and
userprompts). If you have to enter a numeric value (for example
with EDITFIELDCOLOR in the questionfile) you can use the same
formula to calculate the color, but you may not include the special
`A code.
┌──────────────────────────────────────────────────────────────────────┐
│▐▐▐▐ REGISTRATION │
└──────────────────────────────────────────────────────────────────────┘
You are allowed to evaluate the program for a period of 30 days.
After this periode you MUST register or stop continue using the
program. Registration isn't to make me rich, because I will never
become rich, even if you register ;-). It's just to cover some cost
I make for making this program and distributing it. It won't give
you any extra features (yet) either. This shareware version isn't
cripled in any way. In future version there will be some features
added that will only be available for registered users. After
registration, you will receive a key which will be valid for the
current version and all future version of URD. Even if the key
system will change, you won't have to pay for a new key.
To register, please fill in the form URD.REG suplied in the
distribution archive and send it with a file-attach to one of the
adresses listed below or upload it (PRIVATE!!!) to my bulletin
board system.
Support & Registration
──────────────────────
System..: Public Board Driebergen, The Netherlands
Sysop...: Marco Miltenburg
Phone...: +31-3438-14125 - 24 Hrs a day
Speeds..: V21-V32bis, HST-16k8.
Running an USRobotics Courier HST Dual Standard
Netmail.: Fido : 2:512/169
VirNet : 9:318/4
PNN : 13:310/303
SIGnet : 27:2331/1
RA FileNet : 95:200/111
Thank you for using the program. Any suggestions and/or tips are
welcome of course. You can send them to the same addresses listed
above.
┌──────────────────────────────────────────────────────────────────────┐
│▐▐▐▐ DISTRIBUTION / LATEST VERSION │
└──────────────────────────────────────────────────────────────────────┘
URD will be hatched into a few well known filenets, which will
cover most of the world. However, if you can't get a copy of the
latest release, you can always download or request (magic name URD)
the latest release on the following systems :
Public Board Driebergen, The Netherlands
Sysop: Marco Miltenburg
Fido: 2:512/169 - Phone: +31-3438-14125 V32b, HST-16k8
MultiServer BBS Zwolle, The Netherlands
Sysop: Jos Bergman
Fido: 2:512/54 - Phone: +31-38-541358 V32b, HST-16k8
Fido: 2:512/315 - Phone: +31-38-540882 V32b, ZYX-19k2
Escape BBS IJsselstein, The Netherlands
Sysop: Hans de.Vor
Fido: 2:512/45 - Phone: +31-3408-70297 V32b, HST-14k4
Fido: 2:512/311 - Phone: +31-3408-72037 V32b
┌──────────────────────────────────────────────────────────────────────┐
│▐▐▐▐ CREDITS │
└──────────────────────────────────────────────────────────────────────┘
I would like to thank all the guys and girls who join the
international PASCAL echomail area for there interesting
discussions. I learned (and still do) a lot from all this.
Of course I may not forget Andrew Milner for writting an excellent
BBS package like RemoteAccess. Without RA, this door would be
useless.
Also thanks to (in no particular order) : Jos Bergman, Ruben Bonke,
Pascal van Rossum, Berry Cozijnsen, Bruce Bodger (RA Support USA),
Hans Siemons (RADU), Harald Harms (for just being a nice guy when I
call or talk to him ;-), Hans de.Vor and all people who have
contacted me with valuable tips, bug-reports and suggestions from
the USA, Israel, Australia, Germany, England and of course The
Netherlands.
User Registration Door is written using Borland Turbo Pascal 7.0
and RemoteAccess Door Unit 3.00 /0502 (official betatester).
All brands and product names named in this documentation are
trademarks or registered trademarks of there respective holders.
RemoteAccess by Andrew Milner, Continental Software.
Turbo Pascal by Borland International Inc.
RADU by Hans Siemons, Prime Productions.
<EOF>