From: ap096@cleveland.Freenet.Edu (Kevin P. Dahlhausen)
Newsgroups: alt.folklore.computers
Subject: Re: Coke machine at CMU


In a previous article, jarnot@kin.lap.upenn.edu (Kevin J. Jarnot) says:

>I have recently heard of a Coke machine at CMU that is connected to the 
>Internet.  Anyone have the whole story???
>

Sure, here is an article from some time ago.....

From: tgl@zog.cs.cmu.edu (Tom Lane)
>Newsgroups: alt.folklore.computers
Subject: The only Coke machine on the Internet
 
This story is old news to ex-CMU folk, but may be amusing to others.
 
Since time immemorial (well, maybe 1970) the Carnegie-Mellon CS department
has maintained a departmental Coke machine, which sells bottles of Coke
for a dime or so less than other vending machines around campus.  As no
Real Programmer can function without caffeine, the machine is very popular.
(I recall hearing that it had the highest sales volume of any Coke machine
in the Pittsburgh area.)  The machine is loaded on a rather erratic
schedule by grad student volunteers.
 
In the mid-seventies expansion of the department caused people's offices
to be located ever further away from the main terminal room where the Coke
machine stood.  It got rather annoying to traipse down to the third floor
only to find the machine empty; or worse, to shell out hard-earned cash to
receive a recently loaded, still warm Coke.  One day a couple of people got
together to devise a solution.
 
They installed microswitches in the Coke machine to sense how many bottles
were present in each of its six columns of bottles.  The switches were
hooked up to CMUA, the PDP-10 that was then the main departmental
computer.  A server program was written to keep tabs on the Coke machine's
state, including how long each bottle had been in the machine.  When you
ran the companion status inquiry program, you'd get a display that might
look like this:
 
                EMPTY        EMPTY        1h 3m
                COLD        COLD        1h 4m
 
This let you know that cold Coke could be had by pressing the lower-left
or lower-center button, while the bottom bottles in the two right-hand
columns had been loaded an hour or so beforehand, so were still warm.
(I think the display changed to just "COLD" after the bottle had been
there 3 hours.)
 
The final piece of the puzzle was needed to let people check Coke status
when they were logged in on some other machine than CMUA.  CMUA's Finger
server was modified to run the Coke status program whenever someone
fingered the nonexistent user "coke".  (For the uninitiated, Finger
normally reports whether a specified user is logged in, and if so where.)
Since Finger requests are part of standard ARPANET (now Internet)
protocols, people could check the Coke machine from any CMU computer by
saying "finger coke@cmua".  In fact, you could discover the Coke machine's
status from any machine anywhere on the Internet!  Not that it would do
you much good if you were a few thousand miles away...
 
As far as I know nothing similar has been done elsewhere, so CMU can
legitimately boast of having the only Coke machine on the Internet.
 
The Coke machine programs were used for over a decade, and were even
rewritten for Unix Vaxen when CMUA was retired in the early eighties.
The end came just a couple years ago, when the local Coke bottler
discontinued the returnable, coke-bottle-shaped bottles.  The old machine
couldn't handle the nonreturnable, totally-uninspired-shape bottles, so it
was replaced by a new vending machine.  This was not long after the New
Coke fiasco (undoubtedly the century's greatest example of fixing what
wasn't broken).  The combination of these events left CMU Coke lovers
sufficiently disgruntled that no one has bothered to wire up the new
machine.
 
I'm a little fuzzy about the dates, but I believe all the other details
are accurate.  The man page for the second-generation (Unix) Coke programs
credits the hardware work to John Zsarnay, the software to David Nichols
and Ivor Durham.  I don't recall who did the original PDP-10 programs.
 
-- 
                                tom lane
Internet: tgl@cs.cmu.edu
UUCP: <your favorite internet/arpanet gateway>!cs.cmu.edu!tgl
BITNET: tgl%cs.cmu.edu@cmuccvma
CompuServe: >internet:tgl@cs.cmu.edu
 
 
 
From: eeyimkn@unicorn.nott.ac.uk (M. Knell)
Newsgroups: alt.folklore.computers
Subject: Re: CMU Coke machine; was Re: networked appliances

>From article <C2oyop.K4u@panix.com>, by clay@panix.com (Clay Irving):
>>
>> Since time immemorial (well, maybe 1970) the Carnegie-Mellon CS
>> department has maintained a departmental Coke machine which sells
>> bottles of Coke for a dime or so less than other vending machines
>> around campus.

I've checked up all this fingerable Coke machine business. RFC1288 (which
is the current definition for the Finger protocol) includes the following
(no kidding):

#Network Working Group                                       D. Zimmerman
#Request for Comments: 1288           Center for Discrete Mathematics and
#Obsoletes: RFCs 1196, 1194, 742             Theoretical Computer Science
#                                                           December 1991
#
#                  The Finger User Information Protocol
#
#[stuff deleted]
#
#2.5.5.  Vending machines
#
#   Vending machines SHOULD respond to a {C} request with a list of all
#   items currently available for purchase and possible consumption.
#   Vending machines SHOULD respond to a {U}{C} request with a detailed
#   count or list of the particular product or product slot.  Vending
#   machines should NEVER NEVER EVER eat money.
#

So there you go.. it's all legal! Now to network my coffee machine...

Cheers
Mike

<flames >/dev/null>


-- 
+-- -=- If infants can have infancy, why can't adults have adultery? -=- ---+
\------ Mike Knell, Willoughby Hall, University of Nottingham, IO92JX ------/
 \  AMPRnet: mikee@g7gpa.ampr.org -=- Internet: eeyimkn@unicorn.nott.ac.uk /
  \ 'oh well, whatever, nevermind...' -=- AX25: G7GPA@GB7BAD.#23.GBR.EU   /


Sample output (dated 3-2-93 at 16:40)

finger bargraph@coke.elab.cs.cmu.edu

  [COKE.ELAB.CS.CMU.EDU]
  WARNING: This software still contains at least one bug!
  Coke Server Ver 0.99 2-26-93
  Coke and M&M information may not be correct, use at your own risk.
      M & M                      Buttons
     /-----\          C: CCCCCCCCCCCCCCCCCC........
     |     |        C: C............  D: C............
     |     |        C: CCCCC........  D: CC...........
     |*****|        C: CCCC.........  D: C............
     |*****|                          C: CCCC.........
     \-----/                     S: CCCCCCCCCCC..
        |        Key:
        |          0 = warm;  9 = 90% cold;  C = cold;  . = empty
        |          Leftmost soda/pop will be dispensed next
     ---^---

finger @coke.elab.cs.cmu.edu
  [COKE.ELAB.CS.CMU.EDU]
  WARNING: This software still contains at least one bug!
  Coke Server Ver 0.99 2-26-93
  Information may not be correct, use at your own risk.
  Coke:           Cold:  32   Warm:   0          Buttons
  Diet coke:      Cold:   4   Warm:   0        C: COLD
  Sprite:         Cold:  11   Warm:   0    C: COLD    D: COLD
                                           C: COLD    D: COLD
                                           C: COLD    D: COLD
                                                      C: COLD
                                                      S: COLD
finger mnm@coke.elab.cs.cmu.edu
  [COKE.ELAB.CS.CMU.EDU]
  WARNING: This software still contains at least one bug!
  Coke Server Ver 0.99 2-26-93
  Information may not be correct, use at your own risk.
  The M&M machine is 48% full.


Other coke machines have popped up on the net recently, including:

tigger:~ [52]>finger drink@csh.rit.edu
[csh.rit.edu]
Login: admin                            Name: drink admin stuff
Directory: /dev/null                    Shell: /bin/sync
Last login Sun Sep 26 15:48 (EDT) on ttyp2 from nick.csh.rit.edu
No Plan.

Login: drink                            Name: Drink (Coke Machine)
Directory: /u2/u0/drink                 Shell: /u0/drink/shell/shell
Office: NRH Hallway
Never logged in.
Plan:
                         Balance:  $  0.00

                         1) Jolt!           $ 0.50  Empty  (9/44)
                         2) Mountain Dew    $ 0.50  Full   (35/44)
                         3) Dr Pepper       $ 0.50  Full   (30/44)
                         4) Kiwi-Strawberry $ 0.60  Full   (28/44)
                         5) Coke Classic    $ 0.50  Full   (33/44)

          Drink   3+ hrs         1-3 hrs         0-1 hrs           Total
          :::::   ::::::         :::::::         :::::::           :::::
          Jolt!        9               0               0               9
   Mountain Dew       35               0               0              35
      Dr Pepper       30               0               0              30
Kiwi-Strawberry       28               0               0              28
   Coke Classic       33               0               0              33

     +------------------------+
     | Computer Science House |
     |      Drink Machine     |
     +----+----+----+----+----+
     | Jo | Mo | Dr | Ki | Co |
     |  9 | 35 | 30 | 28 | 33 |
     |$.50|$.50|$.50|$.60|$.50|
     +------------------------+
     |       +----+   +       |
     |       |+--+'   |       |
     |       ||__ |___|       |
     |       |   ||   |       |
     |       |+--+.   |       |
     |       +----+   +       |
     +------------------------+




tigger:~ [53]> finger coke@cs.wisc.edu
[cs.wisc.edu]
[coke@lemon.cs.wisc.edu]
Login name: coke                        In real life: coke machine test account
Directory: /var/home/coke               Shell: /var/home/cokead/bin/coke
On since Oct 18 16:26:52 on tty00       39 seconds Idle Time
Plan:
The Coke (tm) machine is computer operated.  It is available to SACM
members, Computer Sciences personnel, and CS&S building support staff.

If you do not have an account set up or your account is below $.35 then you
can leave a check made out to SACM in a sealed envelope in the SACM mailbox
(fifth floor) with an initial password.  You will receive an email
confirmation when the account has been created/updated.

If you have any problems with the operation of the Coke machine please see
one of the Coke Account Personnel listed below or send mail to coke@cs.

    ,-----------------------------------------------------.
    |  Coke account personnel    office         email     |
    +-----------------------------------------------------+
    |  Brian Cole (chair)        cs1330           tuc@cs  |
    |  Jeff Hollingsworth        cs6376      hollings@cs  |
    |  Ted Faber                 cs7390         faber@cs  |
    `-----------------------------------------------------'

Login name: cokead                      In real life: coke machine admin account
Directory: /var/home/cokead             Shell: /usr/misc/tcsh
Last login Mon Nov  1 12:42 on ttyq3 from swiss.cs.wisc.ed
Project: to appease the imbibing masses
Plan:
The Coke (tm) machine is computer operated.  It is available to SACM
members, Computer Sciences personnel, and CS&S building support staff.

If you do not have an account set up or your account is below $.35 then you
can leave a check made out to SACM in a sealed envelope in the SACM mailbox
(fifth floor) with an initial password.  You will receive an email
confirmation when the account has been created/updated.

If you have any problems with the operation of the Coke machine please see
one of the Coke Account Personnel listed below or send mail to coke@cs.

    ,-----------------------------------------------------.
    |  Coke account personnel    office         email     |
    +-----------------------------------------------------+
    |  Brian Cole (chair)        cs1330           tuc@cs  |
    |  Jeff Hollingsworth        cs6376      hollings@cs  |
    |  Ted Faber                 cs7390         faber@cs  |
    `-----------------------------------------------------'

tigger:~ [55]> finger coke@gu.uwa.edu.au
[gu.uwa.edu.au]
The UCC Coke machine.

Checking Coke machine status...

Slot 0 has fanta.
Slot 1 has diet coke.
Slot 2 has diet lift.
Slot 3 has diet coke.
Slot 4 has diet sprite    .
Slot 5 has club lemon.
Slot 6 has coke.

May your pink fish bing into the distance.


A fuller list that was posted to alt.hackers about 6 months ago [5/93]

finger @coke.elab.cs.cmu.edu         (Coke machine at Carnegie-Mellon U)
finger mnm@coke.elab.cs.cmu.edu      (M&M machine at Carnegie-Mellon U)
finger bargraph@coke.elab.cs.cmu.edu (Visual map of CMU coke machine)
finger drink@csh.rit.edu             (Soda machine at Rochester
					Institute of Technology)
finger coke@cs.wisc.edu              (Coke machine at U of Wisconsin)
finger coke@ucc.gu.uwa.edu.au        (Coke machine at University Computer
					Club, University of Western Australia)


From: pete@minster.york.ac.uk
Newsgroups: alt.folklore.computers
Subject: Re: Internetted Appliances
Date: 29 Nov 1993 18:10:39 GMT

Koos van den Hout (koos@kzdoos.hacktic.nl) wrote:
: Connecting a Coffee machine to the Internet would be fun. And I can too imagine
: remote controlling our coffee machine (although I'd like it to deliver the
: coffee. It works great but it's a long walk). And since our coffee is free
: (nice employer, eh?) it wouldn't be that hard.

A colleague has told me about a coffee machine somewhere in the Cambridge
computing lab... basically it's wired up to an camera and image
processing system and there's an Xcoffeetool which shows you how much is
left in the jug. Quite simple, you may think, but this system also lets you
'reserve' coffee (think about it, it might take you a few minutes to get to
the machine from any given office) so it goes away and does some
calculation, changing the image everyone sees to reflect what the situation
would be _after_ you've got your coffee...

The details may be a little wrong, but if there are any cl.cam.ac.uk people 
on afc, please fill them in!

pete
--
Peter Fenelon - Research Associate - High Integrity Systems Engineering Group, 
Dept. of Computer Science, University of York, York, Y01 5DD (+44/0)904 433388
Email: pete@minster.york.ac.uk ``Art is a science with more than 7 variables''




Newsgroups: alt.folklore.computers
Subject: Internet Coke machines  1
From: stan.salter@ablelink.org (Stan Salter)
Date: Sat, 20 Nov 93 21:22:00 -0500

Around the internet, various E.E. and Computer Science 
geek^H^H^H^H students have wired up the softdrink machines into
the net.  Presumably this lets them find out if there are any
drinks in the machine without walking down the hall.

I was not able to connect with the coke machines and the M&M
vending machine at Carnegie Mellon, but that's in Pittsburgh so
that may be understandable.

I'm told the CPU of choice is the Motorola 68000.




From: DannyA@pop.com
Subject: Coffee on the Internet
Date: Fri,  4 Mar 94 07:47:04 PST
Newsgroups: alt.folklore.computers

		From "The Economist", Science and Technology, February 19th, 1994 (partial
transcription):

		"Percolating through

The coffee machine at Cambridge University's computer Laboratory is not just
plugged into the mains. It is plugged into the Internet. With a few taps on the
keyboard, a thirsty hacker down the hall-or accross the world for that
matter-can call to the screen a video picture of the Cambridge coffee pot, taken
a minute or two previously and sent through the computer network. Never again
need anyone trudge to the coffee machine only to find it empty."

DANNYA@POP.COM
--
Message sent via DigitalPopcorn <info@pop.com> * Los Angeles



Newsgroups: alt.folklore.college,alt.folklore.computers,alt.internet.services,alt.answers,news.answers
From: drink@drink.csh.rit.edu
Subject: FAQ: CSH Coke Machine Information
Date: Fri, 29 Jul 1994 18:45:24 GMT

Archive-name: csh-coke-machine-info
Version: $Id: FAQ,v 1.2 1994/05/23 15:57:24 pat Exp pat $
Posting-Frequency: monthly

Contents:
    1. _A_Brief_Overview_of_The_Computer_Science_House_Coke_Machine_.
    2. _The_History_Of_Our_Machine_.
    3. _The_Hardware_In_The_Machine_.
    4. _The_Software_On_the_Unix_Side_.
    5. _The_Wide-Area_Access_Points_.
	a) graph
	b) xdrink
    6. _Current_Plans_for_the_Drink_Machine_.


1. _A_Brief_Overview_of_The_Computer_Science_House_Coke_Machine_.

    The following was only slightly modified from a mail message
    written by Tad Hunt (Wed, 27 Apr 1994 12:25:54 -0400)

	Our drink system is composed of several parts, the drink machine
    itself, the computer inside the machine, the serial connection to
    our drink server machine, the accounting software, and finally the
    wide area information systems (such as finger).

	The computer inside the drink machine is very simple.  It
    accepts commands to "drop" drinks from slots 1-5 (by sending
    an ascii '1'-'5' from the server), and a command to query status
    (an ascii 'A').  The computer drops drinks by tripping a relay to
    the solenoid on the particular slot requested.  The status returned
    is a bit pattern indicating if each slot is either full or empty
    (full is defined as one or more cans remaining) based on sensors
    in the slots.  All of this can be done through the wires that
    normally interface to the buttons on the front of the machine.

	On the server machine, there is a program called "drink" which
    keeps track of money in user accounts, how many cans are in each
    slot, the kind of drink in each slot, and how long the drink has
    been in the machine (for determining how cold it is).  This
    is the only program with permission to access "/dev/drink", which
    is the serial port the Coke Machine is connected to.  If the serial
    port isn't locked, it locks it, then querys the status of the
    machine to display a menu to the user, and allows them to choose
    a drink.  If the user has enough money in their account, and the
    slot isn't marked empty, the program asks for a time delay to wait
    before dropping the drink (in case the user needs to walk to the
    machine), then sends the command down the serial line to drop the
    appropriate drink.

	Finally comes the wide area information systems.  We setup an
    alias for one of our machines (satan.csh.rit.edu) to answer
    requests for drink.csh.rit.edu, and rewrote the finger program to
    display machine status by rsh(1)ing to the server machine and
    running the drink program in a mode to query machine statistics.
    Also added at this point was an XWindows drink client program,
    which uses command line options to "drink" to allow users to run
    an XWindows drink machine program and drop drinks by clicking a
    button.  You can run this program yourself -- if you have XWindows
    -- by doing the following:  "finger $DISPLAY@drink.csh.rit.edu",
    it will send "xdrink" to your display.  Also, you can get a graph
    of machine statistics by doing:  "finger graph@drink.csh.rit.edu"

	The drink system will soon be entering the "client-server" age
    with the addition of a debit daemon written by one of the drink
    support people, which will be useful for more than just drink, it's
    a generic debit system.  Most if not all of this  system will soon
    be available for anonymous ftp from ftp.csh.rit.edu in pub/drink.

2. _The_History_Of_Our_Machine_.

	Somebody here at RIT threw away a Coke Machine.  It was pretty
    beat up, but the members of Computer Science House plucked it from
    the trash none-the-less.  The Coke Machine was cleaned up and put
    to use.  It ran as a normal vending machine for some time in this
    way.

	But, as the red-tape flies, the company who owns the vending
    machine rights to the RIT campus complained that we were threatening
    their rights.  In a wonderous swirl of politics and crazy techies
    resulted in the Coke Machine being hooked up to the computer systems.
    For, as you see, a 'Vending Machine' is a machine that accepts
    money and gives out consumables in return.  We don't have a 'Vending
    Machine' so much as a high-tech group refrigerator.  The Coke Machine
    only accepts money or returns a drink.  If you're silly enough to put
    money in the little slot, you've lost your money.  If you've already
    given money to a drink admin, you can dispense a drink through the
    computer systems.

	Not long after that, a newer Coke Machine was donated to Computer
    Science House.  The first implementations of the Coke Machine were
    done on a small processor on a bread-board.  The newer implementation
    is a bit more 'rugged' (and explained below) in that many of the
    connections are actually soldered.  8^).

	This machine has been painted the CSH colors (purple and pink a la
    DEC/pdp).  It bears the Computer Science House name.  We're proud to
    have it on the Internet, but we must admit that CMU beat us to the
    punch.  Our big advantage over their machine though is the ability
    to drop a drink from where you sit and have it arrive at the same
    time you get to the machine.  Our machine has been the subject of
    little blurbs in major publications across the country and is listed
    as the 7th-most-fingered site by Wired magazine.  And, the current
    record for long-distance drops is Arizona to Rochester.

3. _The_Hardware_In_The_Machine_.

	The computer in the machine is a small 8051 board with a serial
    connection, LCD display, A/D convertor, and several out ports.  The
    EPROM that this board runs from contains code written by Sean
    McGranaghan.  That code is loosely based on code written by Frank
    Giuffrida for that board's intended purpose as power-supply monitor
    and regulator.

	As is mentioned above, this software simply reads the status
    lines that were at one time hooked up to the LED indicators on the
    buttons of the machine to check the fullness of a slot.  In its
    current incarnation, the sensor on the Jolt slot tends to stick
    in the 'Empty' position.  Fortunately for us caffeine mongers, the
    'Empty' indicator can be ignored.

	If a request for status is received on the serial line, a bit
    mask is formed indicating which slots are full.  This bit mask is
    sent back over the serial line to the waiting program that made
    the request.  In this mask, the bits 0 through 4 are used to
    represent the 5 slots on the machine.  The 5th bit is also set to
    ensure that the return value is a printable ascii character and as
    a verification that it actually did check the slots.

	If an ascii digit on the range '1' - '5' is sent to this board,
    it triggers a solid-state relay which closes the circuit that would
    normally be closed by pressing the button on the front of the machine.
    If this is successful, a 'D' is transmitted back to the waiting
    program.  If this fails, an 'E' is sent back to the waiting program.
    ('D' is for drop.  'E' is for error.)

	The LCD on the board constantly displays a message
    'CSH Coke Machine' and the amount of time since the board
    has been reset in the form 'Day 000 00:00:00'.

	Currently, several schemes are being considered for this board to
    verify that it is talking to some program and not to someone with
    tip(1) access to the device.  This will make the Coke Machine no more
    vulnerable to root attack than user attack.

4. _The_Software_On_the_Unix_Side_.
    
	The board in the Coke Machine is connected to a CCI Power 6/32
    Tahoe that is currently running BSD 4.3 Shanzer (a custom blend
    of 4.3 Reno, 4.3 Tahoe, and 4.4 Alpha).  /dev/drink is configured
    as a 9600-baud connection to the board in the Coke Machine.  The
    connection is over a standard RS232 connection.

	The software consists, currently, of one main program called
    'drink'.  drink(1) maintains a database of user balances and
    statistics as well as slot statistics.  This software has undergone
    many revisions (read: total rewrites) over the years.  I'm pretty
    sure that I'm the only one who will admit to having touched it.
    But, I'll drag in Bob Krzaczek's name into it to as the last person
    to touch the stuff I hacked on.

	In its current incarnation, this software keeps track of
    user balances in CSH-franks.  These bear a striking relation
    to US-dollars in that the exchange rate has always been 100
    CSH-franks to 1 U.S. Dollar.  But, such relationships are
    human constructions and probably just coincidences that reflect
    deep underlying symmetries in the web of the Universe (or not)
    [much like the way RIT student ids resemble, but are distinct from,
    social security numbers].  CSH-franks are known by some as
    CSHmids and CSH-wonder-wubbas.  But... the last 6 minutes of
    voting turned up 2 votes for CSH-franks, 1.5 votes for CSH-bobas,
    several incoherent mumbles about Pink Floyd, a compromise for
    CSH-verypinkmetaloidoncebelongedtofrankthenBOBAwonderwubbamids,
    and not much else in the close-to-relevant category.  [If Ross
    Perot was ever part of a CSH wall(1) war, he'd think twice about
    electronic town-meetings.]

	The drink(1) program offers several command line options.  These
    are:
	-o [12345rg]	where a number specifies a slot to drop a drink
			from, 'r' specifies to drop a drink from a random
			slot (choosing from the full-ones), and 'g' is
			a special gamble option (to be described later).

	-d N		delays for N seconds before dropping the drink.

	-l login	useful for dropping a drink from the balance
			of the user given by 'login'.  This option
			prompts you for a password to validate you.

	-m		forces menu mode where the current slot statistics
			are displayed.
	
	-b		shows the user's balance.

	-s		shows the user's raw statistics as number of
			drinks dropped per slot.

	-S		shows the user's statistics in relation to the
			global statistics.  This options shows number
			of drinks dropped by the user on a per-slot basis
			and the number of drinks dropped overall on
			a per-slot basis and the percentage per-slot
			the user makes up.  For example, for me, now,
			I have dropped 382 of 2412 drinks dropped from
			slot 5 since last time the statistics were
			cleared.  I account for 15.8375 percent of the
			drops from slot 5 (Coke Classic).  Also given
			in these statistics is the current gamble cost
			and the accumulated gamble (to be explained later).

	-t		shows the number of drinks in each slot divided
			into time slots.  Along the vertical, each slot
			is shown.  Across the horizontal, the number
			of drinks in the slot for less than one hour,
			between one and three hours, more than
			three hours, and the total in the slot is shown.

	-T		This option is similar to the last but it puts
			out the information in a form easily readable by
			other programs.  First, it puts out the current
			time as returned by time(2).  Then, it puts out
			on the following the title of the first slot and
			a string representing how many drinks are in the
			slot and what times they were placed there.  This
			string is of the form:
			    number time number time number time 0
			All time(2) values are printed in hexidecimal.
			These couplets are repeated for each slot.

	The gamble option was originally designed to make use of the
    fact that the drink machine isn't always full and the fact that people
    may not have enough of a balance to afford a drink.  With the gamble
    option, the cost of gambling is computed by adding up the prices of
    all of the full slots, dividing by the total number of slots and adding
    the 'gamble cost'.  The 'gamble cost' is currently 2 CSH-franks.
    This is a fudge-factor to favor drink staying in the black.  The more
    slots that are empty, the lower the cost.  The current risk is 12
    CSH-franks, but the odds of getting a drink are only 1 in 5
    (and that slot is the Diet Mystery Slot (a double whammee)).  A side
    goal is to integrate a 'Coke' as a potion in some deep dungeon in
    nethack and, if you quaff it, and the accumulated gamble cost is
    greater than than the price of a Coke, it'll drop you one.  The current
    accumulated gamble cost is 262 CSH-franks.

5. _The_Wide-Area_Software_.

	If you have finger(1) access, X access, or Mosaic(1) access, you
    can witness our Coke Machine first-hand from where you sit.  There
    are two main pathways to our Coke Machine through the Internet.  These
    are through Tad Hunt's modified finger(1) @drink.csh.rit.edu and
    through Eric Van Hensbergen's xdrink(1) interface.  Both of these
    can be accessed from the CSH Drink Machine page on the World Wide
    Web.  The URL for that page is:

	http://www.csh.rit.edu/proj/drink.html
    
5a) graph
	One of the first bits of net access we allowed to our Coke
    Machine was to finger(1) it to get information.  The current state
    of the Coke Machine can be divined in several ways through finger(1).
    Tad Hunt rewrote the finger(1) program at drink.csh.rit.edu to
    handle several virtual users.  The first of these can be accessed
    by fingering graph@drink.csh.rit.edu.  This will display an
    informational message and an ascii representation of the Coke Machine.
    This representation includes the price at each slot, the number of
    drinks in each slot, and a graph representing the coldness of those
    drinks.  Emprical tests have shown that complete coldness of a drink
    is achieved in three hours.

	A different view of the contents of the coke machine can be
    obtained by fingering drink@drink.csh.rit.edu.  There is a great
    deal of redundant information in this, but.... what can you do?

	Fingering info@drink.csh.rit.edu will provide more information
    into the ways to finger the coke machine.

	And, if you're running X-windows, a command like
    'finger mymachine.mynet.myorg:0.0@drink.csh.rit.edu` or
    'finger ${DISPLAY}@drink.csh.rit.edu' should bring up an X-interface
    to our drink software on your display.

b) xdrink

	The xdrink(1) interface was written by Eric Van Hensbergen.
    It presents bitmaps for each of the slots (they easily get out
    of date (sorry)).  It offers a pointy-clicky interface for those
    not too keen on command lines.  It represents the fullness of
    each slot with a bar-graph, the contents with a bitmap, and the
    mystery-slot as a flashing pattern of the bitmaps.

6. _Current_Plans_for_the_Drink_Machine_.

	I am currently almost finished with a new incarnation of the
    drink software.  This incarnation involves a 'telnet' interface
    similar to those of 'smtp' and 'ftp'.  It also provides a means
    for kerberos authentication.  Additionally, it will talk several
    languages from English to German to Esperanto to Lojban to Rot13
    (English) to Piglatin (English).  More on this as it's available.
    Also, in this incarnation, one will be able to risk any amount of
    money above the gamble cost, choosing their desired slot, and having
    odds proportional to the amount risked divided by the cost of the
    desired drink.

For more further questions or to arrange a personal tour of Computer Science
House, mail drink@drink.csh.rit.edu.
-- 
    "...and these lights.... I can feel them sucking the life
     out of me.... Suck *Suck* Suck...."  -- JvV.


