[AG-TECH] Response to AG Retreat Day 1

Allan Spale aspale at evl.uic.edu
Mon Sep 30 14:08:21 CDT 2002


Based on some of the discussions that were had this morning, I wanted to
formally throw in some expanded ideas related to Virtual Venues and AG
streams.  I would like to warn you that this is more of a
stream-of-consciousness synthesis of the AG retreat and can ramble in
spots.  Hopefully, people can grasp the general idea of what I am talking
about, and will begin thinking of other ideas too and extend this e-mail.

For the purposes of being most generic, I do not think that we should
expand the concept of venue to beyond a room to more of an area with
boundaries such as a container (for lack of anything better to refer to
and become stick in my computer science bias of the world).  Becoming more
specific, a venue is a container and a user is a container.  What
differentiates a user from a venue?  Both can be persistent (I would want
my identity to persist between sessions), but there is a difference
between a user and a venue.  A user is mobile and can move between venues,
while a venue cannot move.  Is this a good distinction, or should
everything be a venue as opposed to a container and venues can pertain to
any spce including personal venues where a personal venue is equivalent
to someone's real-world personal space?  If I have my own personal venue,
I would want to carry that venue around wherever I go, which would make
sense in the case of scoping.  If I am wanting to only share services or
streams with a few people within my scope, I would not want others to have
any knowledge of what I am doing.  So, my personal venue is my identity
with devices and streams mapped to my venue.

An example...I am in an auditorium venue listening to a speaker.  I
have people "sitting next to me" with their devices and streams attached
to their own personal venues.  One of the people near me may want to
show me something on their device that I can only see by going into
their personal venue.  So, I can go into their personal venue without
leaving my venue because I carry it with me always, and I can share the
devices and streams in their venue without being noticed in the auditorium
venue.  As a result, venues can exist inside venues.

So, perhaps, everything is a venue.  But, I think it would be neat to
have venues have a mobility property.  A venue could move throughout other
venues for whatever reason.  Perhaps it is like a web spider that is
scraping data from venues or is recording sessions or is related to some
sort of robotic device that needs to be mobile.  And, with the above
example, venues can be in venues, so as to allow personal venues to exist
in room venues.  Another expansion on that idea is an open space venue
like a convention hall.  My personal venue can move in the convention
venue, yet I can visit institutional venues set up in the convention

This may solve another issue of how devices and services are mapped as
generically as possible.  Devices and services are mapped to a venue
whether they belong to some institutional venue or a personal venue.
This also addresses obtaining the correct services for one's bandwidth and
accessibility needs.  For instance, if I am deaf and have a low bandwidth
connection to the AG, I should be able to have a service attached to my
personal venue that will take an AG audio stream and translate it to text.
Additionally, another service mapped to my personal venue is that I will
access the video service that will send only low bandwidth video streams
up to a certain maximum of streams.  This personal venue would differ from
someone else's personal venue where they may be high-bandwidth and not
have any accessibility needs.

Related to the stream concept, I think it is absolutely crucial to have
any AG streams to have a loose connection to the application that provides
it.  In other words, I want an AG audio stream to have the flexibility of
serving as input to a speech-to-text service or as output to another
service.  Maybe I want to translate an AG instrument data stream to a 2-D
graph or a 3-D model.  Basically, it should not matter where the AG stream
came from, but I should be able to render the stream into any form that I
see fit as long as the definition of the AG stream is published somewhere.
All AG streams should be wrapped in some generic way so that streams do
not become proprietary to a set of applications.  You never know how
people will use the data that you produce.  

AG streams should not just be data but could also be control streams so
that some scripting could be done to expand the capabilities of an
programs written in an AG API.  So, with a Voyager example, at 7:00 AM
CDT, I could record data from a venue for two hours, and then take the
data produced from that venue and put it into a numerical analysis program
for further study.  Same data stream but different programs.

All venues should be able to transmit and receive streams.  I should be
able to start services that belong to me or that I have permission to use
that will allow me to broadcast data to anyone I want to transmit the data
to.  This would also apply to a bridge.  Maybe there is a venue whose sole
purpose is to retransmit streams or translate the streams to some other
form before translating them.  From my personal venue, I may choose to
transmit streams in addition to receiving them.

Finally, I think that physical venues should map to virtual venues.  In
other words, a physical node has devices that belong to it whether it is a
room or me.  My physical personal space would include things in my pockets
or within a certain distance around me, like a cell phone, PDA, TV or
stereo.  Maybe, I would like to hear an AG session over my stereo and view
the video from a TV because I do not have a laptop available.  Assuming
all of these devices have IP addresses and connections, I should be able
to walk into a room and enable an AG session using these components.  I
should be able to see AG video on the TV, hear AG audio on the stereo, and
chat with people in an AG session on my PDA.  Perhaps this will be
addressed more with workspace docking at another time, but passive devices
that are more like "sinks" (data streams flow into sinks), should be able
to receive data and display it in the correct manner either on their own
or through some "stream adapter" that will render the AG stream in the
correct manner for some device.  This was more inspired by similar ideas 
from Sun Microsystems and Microsoft, though.  

Thanks everyone for taking the time to read this e-mail.


More information about the ag-tech mailing list