metafeedback is a program which allows anyone at Caltech to set up their own feedback form--an HTML form that sends e-mail to someone. All you need to do is write a form with the right names for a few fields. No programming is required. The system is very flexible, so your forms can have as many or few fields as you want.
Your machine must be a Caltech domain in order for metafeedback to work. We do not support non-caltech virtual domains
First, you must make an HTML file specifying what your form will look like. Your file can contain anything you want, as long as the form is specified correctly.
Recall that forms are specified as
<FORM ACTION="URL"> ... </FORM>
To use metafeedback, specify
http://www.its.caltech.edu/cgi-bin/metafeedback
as the URL. This means that, when the form is submitted, it will be sent to the
metafeedback program.
After the ACTION line, you need to tell metafeedback where to
send e-mail to. You do this by placing a hidden field in the form, like this:
<INPUT TYPE="hidden" NAME="to" VALUE="my-name@wherever.caltech.edu">
When you submit the form, its contents will thus be sent to my-name@wherever.caltech.edu. You would use your own e-mail address, of course. If you want, you can have more than one address in the VALUE, separated by commas.
Important: the "to" address or addresses must be Caltech email addresses. We do this to avoid the possibility that someone might use metafeedback to do mail relaying or spamming. If you absolutely must have your form email people not at Caltech, contact "aliases AT caltech DOT edu" and we will see if we can set up an email alias for you.
Next, specify the rest of the form. There are four fields that you should include:
from" and "name". These should be filled in by an e-mail address and a "real name",
respectively. If a non-empty from field is not sent to metafeedback, the mail will appear to be from the user the web server process runs as.
If you should happen to reply to such an email, your reply may go to
the web server administrators and not the person who filled out the form.
To prevent this from happening, specify the field as !from, so the person filling out the form is forced to provide a return address.
subject". If you want the person
filling out the form to specify the subject, make this a regular input field;
if you want all of the mail coming from this form to have the same subject, make
the field "hidden" in the same way as the "to" field and specify the subject
in the VALUE part.
comments".
Remember that somewhere in the form, you need to have a button to submit the form,
like this:
<INPUT TYPE="submit" VALUE="Send this to me">
Your file should be located somewhere where it can be accessed from the Web. You can put it in with all of your other HTML documents; it doesn't have to be anywhere special.
The HTML file has a URL just like everything else on the Web. In your Web browser, you can go to the URL directly, or you can make a link to it from some other HTML file.
Try out your new form! Fill in the fields and press the "submit" button. You should receive mail in a few minutes. Note that, if you filled in the "from" field correctly, you can simply use the "reply" function of your mail-reading program to respond to the e-mail.
Important: to prevent malicious people from flooding the program with large amounts of data as an attempt to violate security, metafeedback only reads the first 4096 characters in a field - anything after that is discarded.
There are a few other options that you can specify that change the way that metafeedback works.
<INPUT TYPE="text" NAME="age">
These additional fields will be printed in order of their names in your mail. You may also specify what order they are in: just put numbers at the beginning of the field names. They will be printed without the numbers in your mail. For example, if a form has fields named "1date", "2weekday", and "3time", the fields would be printed out in the order "Date", "Weekday", and then "Time".
<INPUT TYPE="text" NAME="!age">An important use of this is to force the from variable to be set, so the message appears to be from the person who filled out the form, not the web server user. You'd do that like this:
<INPUT TYPE="text" NAME="!from">
<INPUT TYPE="hidden" NAME="printHostInfo">
<INPUT TYPE="hidden" NAME="printName">
<INPUT TYPE="hidden" NAME="printEmail">
<INPUT TYPE="hidden" NAME="printTimestamp">
<INPUT TYPE="hidden" NAME="nextURL" VALUE="your URL here">
<INPUT TYPE="hidden" NAME="errorURL" VALUE="your URL here">
<INPUT TYPE="hidden" NAME="delimitedResponse">If you use this feature, multi-line responses will be collapsed into single lines, and any "enclosure" directives will be ignored.
If you have any questions or comments about metafeedback, please e-mail "unix-admins AT caltech DOT edu."