Send commands by email to
(Actually, the computer it's on is down at the moment)
They will be processed automatically. Multiswap is being tested and you are invited for now to send in fictional trades to try it out, at least for the next few days after you read this here on the Web (http://www.ncf.carleton.ca/~an588/mswap.html).
Send any comments or questions to firstname.lastname@example.org. I'm eager to get comments from people who've tried sending in some of the Multiswap commands. Was it easy or difficult to understand? Did the commands do what you expected?
Suppose three people send in offers and requests like this:
new_identity joe smith password1 offer "homemade soap" new_identity mary jones password2 offer tomatoes request gardening identity joe smith password1 request tomatoes new_identity sally brown password3 offer gardening request "homemade soap"
Then Multiswap will notice that they can do a 3-way trade. Trades involving 2 to 5 people can be arranged by Multiswap. The individuals will get "Possible Trade" emails including a trade description like this:
You may say that you agree to trade number 1 unit_val value You give 5.000 HOURS OF TOMATOES 1.000 5.000 to JOE SMITH You get 5.000 HOURS OF GARDENING 1.000 5.000 from SALLY BROWN you are receiving a total value of 5.000 you are giving a total value of 5.000 description of trade number 1: MARY JONES (one@test) will give 5.000 HOURS OF TOMATOES to JOE SMITH JOE SMITH (one@test) will give 5.000 HOURS OF HOMEMADE_SOAP to SALLY BROWN SALLY BROWN (one@test) will give 5.000 HOURS OF GARDENING to MARY JONES
Use the Geography command to create placenames. Send commands like this to Multiswap:
geography canada is in world geography ontario is in canada geography ottawa is in ontario geography toronto is in ontario geography ottawa-glebe is in ottawa
To find out about placenames, try this:
Multiswap will automatically reply with:
> ONTARIO is in CANADA > CANADA is in WORLD > --- > TORONTO is in ONTARIO > OTTAWA is in ONTARIO
Once the name of your city or neighbourhood exists in Multiswap's database (see previous section, Geography), let Multiswap know that that's where you are:
identity sally jones password4 location ottawa
This way, Multiswap will remember your location forever until you change it. If you use "location" within an offer or request, it will apply only to that one offer or request.
"Location" is used to describe the specific place where you are; perhaps a city, or a neighbourhood within a city. "Area" can be used to describe a larger area over which you usually travel when shopping. For example, you might specify "location" as ottawa-glebe (a neighbourhood) and "area" as the whole city "ottawa". If this is too confusing just use "location" and it will probably work out fine.
When trying to match people up, Multiswap normally assumes that everybody acts as if they were running a store: people expect customers to come to their place to pick stuff up. To change this, say "yourplace" to mean you are willing to deliver goods and services. For example, something sold by mail-order to anyone in the world would look like this:
offer bardic_runes yourplace area world
This allows Multiswap to match you up with people all over the world. For requests, if you need someone to come to your place, use "myplace":
request housecleaning myplace
Note that you may still also have to tell people where you expect goods or services to be exchanged. Multiswap uses the "location", "yourplace", etc. information to decide who to match you with, but the other person may not know what you expect to happen.
You can make your offers and requests simple like this:
offer "used fridge"
Or complicated like this:
offer "used fridge" maximum 1 minimum 1 divisibility 1\ value 10 yourplace area ottawa to anyone except john smith, sally smith request "yoga lessons" maximum 10 minimum 5 divisibility 2\ value 1.5 from darlene slater
Here, a backslash \ at the end of a line is used to show that a long command is being continued on the next line. "Maximum" and "minimum" are the largest and smallest number of hours you will trade. In the above example, the person is indicating that if they can't get 5 hours of yoga lessons, they don't want any at all. The more restrictions like this you make, the less likely you are to be matched up in a trade. "divisibility" is the number of parts one hour can be divided into. Here, the 2 means an hour of yoga lessons can be divided into 2 parts: that is, the person might take 5.0 or 5.5 hours, but not 5.25 hours. "Value" is how much an hour of the good or service is worth to you (default 1). In the above examples, the fridge is worth 10 hours of work to the person offering it; each hour of yoga lessons is worth 1.5 hours of work to the person requesting them.
The quotation marks can be left off if the product is just one word. The following both mean the same:
request "yoga lessons" request yoga_lessons
But don't do this, it won't work:
request yoga lessons (WRONG)
To find out what products other people are offering, send in the command:
Or one of these more complex commands:
list location ottawa list offers list requests location ottawa area ontario
You will receive by email a list of offers and/or requests by other people. Note that requests are not listed if they match prior offers. Here is a listing of fictional offers and requests, to show what the listing looks like:
MULTISWAP PRODUCT LISTING Offers and requests, location ONTARIO, area ONTARIO (First column: "F" are offers, "R" are requests.) place category product person F ONTARIO OTHER TRAVEL_SERVICE SALLY SMITH F OTTAWA KNITTING BAG MARY STUART F OTTAWA KNITTING SHIRTS GEORGE JACOBS F OTTAWA OTHER BICYCLE JOHN JONES F OTTAWA OTHER REPAIRS PETER JONES F TORONTO KNITTING SOCKS ELEANOR BRIGGS F TORONTO KNITTING SWEATERS ELEANOR BRIGGS R ONTARIO OTHER MAKEUP SALLY SMITH
Notice the "category" column in the listing above. People making offers can specify what category they want their product to be listed under. If several different people use the same category name, a new category is created. Categories can be hierarchical like newsgroup names. For example, if the category clothes.kids.boys exists, then the category clothes.kids.boys.age2 can be created if enough people use that category in their offers.
You can simply state the category you would like, and if it doesn't exist yet, then your product will be listed under "other":
offer "used clothes" category clothes.kids.boys.age2
Or, you can indicate a second choice. State the category you'd like your product listed under with "new_category", and another category which already exists and which you'll settle for, with "category":
offer "used clothes" category clothes.kids.boys new_category clothes.kids.boys.age2
If the category you want is later created, your listing will be put into it.
You can also request a list of offers and requests within a given category only. You should receive a list of the whole hierarchy: that is, if you request a list of clothes.kids, it will automatically include things in clothes.kids.boys (I think).
list offers category clothes.kids or list category clothes.kids
Things in square brackets  are optional. Things in CAPITAL LETTERS here are words that Multiswap recognizes. (You can use capital or small letters, it doesn't matter which.) Things in small letters here should be replaced by the appropriate information, for instance instead of "firstname" you would put your own first name, or for the DESCRIBE command the first name of the person you want information about. If a product is more than one word, it must be joined with "_" or put in quotation marks. (e.g. knitted_sweater or "knitted sweater".) Put a slash ("\") at the end of a line to join long lines.
>OFFER product [UPDATE] [VALUE n] [MAXIMUM n] [MINIMUM n] [DIVISIBILITY n]\ [LOCATION placename] [AREA placename] [CATEGORY categoryname]\ [NEW_CATEGORY categoryname] [PREAGREE] [MYPLACE] [YOURPLACE]\ [TO [ANYONE EXCEPT] firstname lastname, firstname lastname ..] >REQUEST ... (same as above but with "FROM" instead of "TO", and can't use "DIVISIBILITY") (most of these words can change order as long as, for example, the word VALUE is immediately followed by the number associated with it. However, FROM must be the last thing, since everything afterwards will be interpreted as a list of people. You can only have one of MYPLACE or YOURPLACE. Normally you leave off "TO ..." and you're offering to everyone by default. The product name can be up to 20 characters.) NEW_IDENTITY firstname lastname password (creates a new account) IDENTITY firstname lastname password (use this to tell Multiswap who you are near the beginning of your email message) DESCRIBE firstname lastname [product] (ask for detailed info on person or product) GEOGRAPHY place (find out where a place is) >GEOGRAPHY place IS IN place (create a new place, i.e. tell Multiswap where somewhere is) LIST [ALL] [EVERYWHERE] [OFFERS] [REQUESTS] [MINE] [LOCATION placename]\ [AREA placename] [CATEGORY categoryname] (ask for a listing of offers and/or requests) HELP [word] (help is available on: COMMANDS COMMANDS_ADVANCED EXAMPLE GNU TAXES RESPONSIBILITY SOFTWARE NO_WARRANTY STOP (you may put this at the end of your message, before your sigfile) LETS (lists names of LETSystems) >GIVE n lets-name HOURS TO firstname lastname FOR product (transfer credits to another account within a LETSystem) ACCOUNT lets-name SELF (get a detailed listing of your own account) ACCOUNT lets-name ALL (get a summary listing of everyone in the LETS) >JOIN lets-name firstname lastname (have someone become a member of a LETS; restrictions may apply) >PHONE (613)-123-4567 >ADDRESS 123 Main St. Cityville >SET DESCRIPTION product (description must start on next line. May be several lines long. Mark end with "." at beginning of line. Maximum 10 lines, maximum 65 characters per line. May only describe a product you are offering.) . >LOCATION placename (Tell Multiswap where you are) >AREA placename >I AGREE TO TRADE NUMBER n >DISAGREE TRADE NUMBER n (note: this does nothing if everyone had already agreed; it also does nothing if you had not agreed; all it does is cancel an "I AGREE TO ..." if it's not too late. To cancel a possible trade, change your offers or requests.) >CANCEL product (cancels an offer or request) >CANCEL ALL (cancels all your offers/requests) >PAUSE ? (temporarily cancels all your offers/requests) >RENEW ? (re-start offers/requests after a pause, without having to type everything in again)
ftp to ftp.lets.net. Log in as "anonymous". Go into the directory /pub/mswap (or whatever). The software is there as a compressed file. It is probably not the most recent version, so I suggest you ask me (Cathy Woodgold, email@example.com). I'd be interested in knowing about anyone using the software. It's available under a GNU license, which basically means anyone can use it as long as they don't charge money for it etc. (see the GNU license for details).
Multiswap has the capability to run LETSystems automatically via email. To find out what LETSystems are currently being run, send in a message with the simple command:
You get back an email like this:
> list of all LETS registered on this system: > MN-LETS > VC-LETS > TO-LETS
For the moment, these are fictional systems for testing. Feel free to send in pretend trades for now.
Join a LetSystem like this:
JOIN VC-LETS firstname lastname
Some LETS may have restrictions about who is allowed to register new members. You may have to ask a person in charge of the LETS to issue the "JOIN" command for you.
You can transfer credits from your account to someone else's like this:
GIVE 3 VC-LETS HOURS TO firstname lastname FOR product
For now, all the LETS use "hours" as the unit. Perhaps in a later version each lets will have a different word for the currency, e.g. "green-dollars", "ecos", etc. Or perhaps Multiswap systems will always encourage people to count things in hours of work, since this tends to promote equality.
Here are fictional examples of the LETS listings that can be produced. The first gives a summary of all people in the system ("account ottawa-lets all"). The second is a detailed listing of one person's account ("account ottawa-lets self"). The detailed history of trading, with product names, is not given out to everyone for privacy reasons, though you're advised not to rely on the information being secret; secrecy is not guaranteed. Here are the two listings:
********************************************** * This message is for ROBIN ANDERS ********************************************** max,min: highest and lowest account balance the person ever had. earned: total amount person has earned, whether spent or not balance: person's current account balance date: most recent trade by that person listing for LETS-OTTAWA (say ACCOUNT LETS-OTTAWA SELF to get details on your own account) max min earned balance date name 5.000 0.000 5.000 5.000 19971121 SALLY JONES 20.000 0.000 20.000 20.000 19971121 JESSICA HALLEY 0.000 -25.000 0.000 -25.000 19971121 ROBIN ANDERS end of listing for LETS-OTTAWA ********************************************** * This message is for ROBIN ANDERS ********************************************** transaction record, last 20 items for ROBIN ANDERS say ACCOUNT LETS-OTTAWA ALL for account balances for all users negative amounts mean you bought something amount balance date item person -5.000 -5.000 19971121 BICYCLE SALLY JONES -20.000 -25.000 19971121 GARDENING JESSICA HALLEY Your current account balance is: -25.000[top]