Re: Andre's post: Rev and the Web...

2008-12-29 Thread Mark Talluto

Hi Randall,

I wrote a simple chat program a long time ago that is commented well  
enough to follow.  You can download it from Richard Gaskin's  RevNet.   
This is found in your plug-ins when Rev is running.  It is called CS  
Chatter box.  It will demonstrate P2P communication without the need  
for a server in the middle.


Mark Talluto
http://www.canelasoftware.com


___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Andre's post: Rev and the Web...

2008-12-29 Thread Chipp Walters
On Mon, Dec 29, 2008 at 11:11 AM, Randall Reetz wrote:

> Anyone interested in providing an easy bare essentials tutorial for client
> server communication from an xtalk projects perspective?  There are a lot of
> "the rest of us" who need help storming the web's gates.


Well, here's a link to setting up a CGI (the server part)

http://www.hyperactivesw.com/cgitutorial/index.html

and the client part is as easy as putting in a button:

put URL ("http://myserver.com/myCGI?firstname=fred&password=123";) into
tLoginSuccessful

Of course it's Transcript (or Revolution) not just xTalk.
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


RE: Andre's post: Rev and the Web...

2008-12-29 Thread Randall Reetz
Anyone interested in providing an easy bare essentials tutorial for client 
server communication from an xtalk projects perspective?  There are a lot of 
"the rest of us" who need help storming the web's gates.

-Original Message-
From: "Bill Marriott" 
To: use-revolution@lists.runrev.com
Sent: 12/28/2008 12:42 AM
Subject: Re: Andre's post: Rev and the Web...

> Oh, and i am not interested in web pages.  I need superfast 
> communication___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Andre's post: Rev and the Web...

2008-12-28 Thread Peter Alcibiades

Yes.  But what I'd really like would be for revBrowser to work



Bill Marriott wrote:
> 
> Peter,
> 
>> Bill, a question:  will it, whatever it turns out to be, work on Linux?
> 
> Many people already use Rev CGI on Linux today. The plugin will work on 
> Linux, too. 
> 
> 
> 
> ___
> use-revolution mailing list
> use-revolution@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Andre%27s-post%3A-Rev-and-the-Web...-tp21170116p21191042.html
Sent from the Revolution - User mailing list archive at Nabble.com.

___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Andre's post: Rev and the Web...

2008-12-28 Thread Bill Marriott
Peter,

> Bill, a question:  will it, whatever it turns out to be, work on Linux?

Many people already use Rev CGI on Linux today. The plugin will work on 
Linux, too. 



___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Andre's post: Rev and the Web...

2008-12-28 Thread Bill Marriott
Randall,

> I hope you are going to provide this functionality  wrapped into xTalk's 
> easy message passing protocol...
>
> send myClientMessage to myServer
>
> and...
>
> on myClientMessage
>do blablabla
> end myClientMessage

You can already do this with CGI scripts; you can already do it with URLs:

http://myserver/myscript.cgi?cmd=myClientMessage&p1=Hello+World

In the future, you will probably be able to do it with the embedded Rev code 
in web pages as well. For example,

http://myServer/myscript.cgi"; ?>

And on the server, a handler for myClientMessage in the myscript.cgi file. 



___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Andre's post: Rev and the Web...

2008-12-28 Thread Bill Marriott
> Oh, and i am not interested in web pages.  I need superfast communication.

Web pages ain't necessarily slow, Randall. In fact web servers are highly 
optimized for speed, and sending a URL is often the speediest way to handle 
things, with the least overhead and processing effort. 



___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Andre's post: Rev and the Web...

2008-12-28 Thread Bill Marriott
Randall,

> Id like the simple answer.

It *can* be simple. Clients, be they web pages or Rev stacks can say:

http://yourserver.com/yourcgi.cgi?param=Hello+World

That sends information to the Rev server-based script yourcgi.cgi, which 
could have something like,

on startup
put $1 into x
replace "=" with return in x
put urlDecode(line 2 of x) into x

put "Content-Type: text/html" & crlf
put "Content-Length:" & the length of x & crlf & crlf
put x

end startup

And you'll get the response "Hello World."

But, if simple were adequate, I don't suppose we'd need to spend four days 
discussing the possibilities.

- Bill 



___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Andre's post: Rev and the Web...

2008-12-27 Thread Chipp Walters
That should have read (needs a domain):
put URL "http://www.example.net/file.txt"; into tMyVar

On Sun, Dec 28, 2008 at 1:25 AM, Chipp Walters  wrote:

>
> put URL "http://www.mytesttext.txt"; into tMyVar
>
>
>
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Andre's post: Rev and the Web...

2008-12-27 Thread Chipp Walters
This thread reminds me of the 'make art' button some folks want for 3D apps.
:-)
Sorry, Randall, you have to get your hands a little dirty. All the folks
here have given you the tools, but you're going to have to learn to fish if
you want to catch some.

put URL "http://www.mytesttext.txt"; into tMyVar

and you can write data to an FTP server similarly as easy.

put field "Upload" into URL "ftp://me:sec...@ftp.example.net/file.txt";

So, using an ftp/http server you can post and retrieve files quickly and
easily. You can control the business logic at the client if you wish. This
is the simplest sort of client/server interaction.

For P2P, you'll need to involve yourself in open socket commands.
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Andre's post: Rev and the Web...

2008-12-26 Thread Alex Tweedly

Brian Yennie wrote:

Randall,

Read the docs on sockets. It's actually not that much harder that what 
you describe below, but you're going to have to at least try it =). 
Once you have a few handlers working, you can have your own higher 
level API.


put "127.0.0.1:8080" into myServer
open socket to myServer
write myClientMessage to myServer

and...

accept connections on port 8080 with message "clientConnection"

on clientConnection tSocket
  read from tSocket until empty with message "myClientMessage"
end clientConnection

on myClientMessage tData
   bla bla bla
end myClientMessage

It really is pretty simple, but there are some tricky parts.   Take this 
code snippet, read the docs on send, accept, read from socket, write to 
socket, etc. and it will work ...


It might be better / easier (especially if you have two machines 
locally) to start with my simple examples from


   RevOnline / alextweedly / TCP App 1(and 2)
and also
  RevOnline / alextweedly / UDP echo client (and server)

Or leap straight in with the chat server / client from Bjoernke's site 
http://bjoernke.com/runrev/chatrev.php 



If you really want a game server, you're gonna have to work at the 
socket level. The above IS "high level" socket programming. As you've 
mentioned, you don't want to just fetch URLs which is the point at 
which xTalk really abstracts away the details.



Yep.
Thanks Bill.  I hope you are going to provide this functionality 
wrapped into xTalk's easy message passing protocol...


The message passing scheme doesn't extend to multi-player (or 
multi-receiver), so we need a different metaphor to handle that (as well 
as a different approach to handle asynchronous events from multiple 
other places).


-- Alex.

___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Andre's post: Rev and the Web...

2008-12-26 Thread Brian Yennie

Randall,

Read the docs on sockets. It's actually not that much harder that what  
you describe below, but you're going to have to at least try it =).  
Once you have a few handlers working, you can have your own higher  
level API.


put "127.0.0.1:8080" into myServer
open socket to myServer
write myClientMessage to myServer

and...

accept connections on port 8080 with message "clientConnection"

on clientConnection tSocket
  read from tSocket until empty with message "myClientMessage"
end clientConnection

on myClientMessage tData
   bla bla bla
end myClientMessage

If you really want a game server, you're gonna have to work at the  
socket level. The above IS "high level" socket programming. As you've  
mentioned, you don't want to just fetch URLs which is the point at  
which xTalk really abstracts away the details.


Thanks Bill.  I hope you are going to provide this functionality  
wrapped into xTalk's easy message passing protocol...


send myClientMessage to myServer

  and...

on myClientMessage
 do blablabla
end myClientMessage

Randall




___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Andre's post: Rev and the Web...

2008-12-26 Thread Randall Lee Reetz
Thanks Bill.  I hope you are going to provide this functionality  
wrapped into xTalk's easy message passing protocol...


send myClientMessage to myServer

and...

on myClientMessage
   do blablabla
end myClientMessage

Randall

On Dec 25, 2008, at 10:40 PM, Bill Marriott wrote:


Randall,

Thanks to the magic of gmane, I was able to dig up this thread (and  
link to

the forum) which this seems based upon.

Andre's post:
http://forums.runrev.com/phpBB2/viewtopic.php?p=1612

It's a little bit of ancient history now, as Rev is moving forward  
on two
fronts. First we are definitely going to have a Web plugin. And  
second,
we're going to be stepping up the server scripting (which we've  
long had) so

that you can mix snippets of Rev code within your HTML.

We just sent out an announcement for RunRevLive.09, a conference  
we'll be
holding in Edinburgh this coming September. At this conference  
we'll be
officially launching Rev 4.0, which includes this technology. If  
you didn't
get this email, contact support @ runrev.com so you can get in on  
it. Not
only can they give you a coupon code [expires Dec 31] which will  
save you
60% off the conference admission, but you'll be able to download  
and use the

current development build of the plugin. The conference site is at:

http://runrevlive.com/09/index.htm

To answer your questions, Rev already has the commands you need to  
set up
the kind of multi-user system you want. The main improvements Rev  
4.0 will
bring are on the distribution front (you can embed your stack in a  
web page,
instead of building a standalone executable), and on the  
implementation
front (being able to mix Rev code in with your HTML is easier than  
putting
up full CGIs). The specific answers to your questions will be in  
how you
decide to architect things. For example, whether cookies will  
suffice, or
whether you'll want to have some kind of database back-end to track  
things.
You can communicate between clients and server using anything from  
simple

URL parameters, to POST data, to direct TCP or UDP connections. It all
depends on what you're needs are, what your trying to do, and what  
you want

the user experience to be.

- Bill



___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your  
subscription preferences:

http://lists.runrev.com/mailman/listinfo/use-revolution



___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Andre's post: Rev and the Web...

2008-12-26 Thread Randall Lee Reetz
Yes, it is always good to know.  Or is it?  I am a fan of  
automation.  I am working on an evolving AI scheme.   It sucks  
intelligence out of humans (they don't get hurt in the process).  So  
I am up to my eyeballs in stuff to learn and invent (I've got a  
warehouse full of fishing rods already).  That is the point.  I would  
be all for learning to fish if fishing was my goal.  Which brings me  
to my perennial soap box support of xTalk... that it offloads the  
detail so that developers can concentrate in the high-level goals  
that drive their projects.


Ranndall

On Dec 26, 2008, at 9:54 AM, Eric Chatonet wrote:


Bonsoir Randall,

I'm afraid you don't want to begin by the beginning, right ;-)
But it's necessary...
Others have not given you fish but fishing rods: is it not better?

To be frank, when I began myself to run into TCP communication, I  
had to make efforts before understanding by MYSELF how it could work.
ChatRev from Björnke von Gierke (to communicate with a server) and  
Alex Tweedly stacks (to try in local mode with two Rev instances),  
all on Rev Online were a great help.
Despite all this, it took me some weeks to feel a bit at ease and  
I'm not sure, I am always ;-)

Good luck!

Le 26 déc. 08 à 18:32, Randall Reetz a écrit :

Everyone is writing as though i know something.  Lets asume i  
don't.  let's assume i am a guy on the street who happens to know  
xtalk but knows nothing of the network or internet.  I dont know  
for "socket" or "port".  All i know is there is a computer running  
a stack that is permanantly connected to the net that i will call  
the server.  And there are other computers running stacks that may  
or may not be connected to the net (that i will call "clients").   
The client stacks need to send data to the server stack.  And the  
other say around.  Client to client communication as well.  I  
would prefer if all such communications look and act just like  
xtalk messages.  You know, the web for the rest of us.


Oh, and i am not interested in web pages.  I need superfast  
communication.  When the client user does something, the server  
knows right away, and vice versa.  No delay beyond com speed.   
Thus the need for com as xtalk messages.


Randall


Best regards from Paris,
Eric Chatonet.

Plugins and tutorials for Revolution: http://www.sosmartsoftware.com/
Email: eric.chato...@sosmartsoftware.com/



___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your  
subscription preferences:

http://lists.runrev.com/mailman/listinfo/use-revolution



___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Andre's post: Rev and the Web...

2008-12-26 Thread Eric Chatonet

Bonsoir Randall,

I'm afraid you don't want to begin by the beginning, right ;-)
But it's necessary...
Others have not given you fish but fishing rods: is it not better?

To be frank, when I began myself to run into TCP communication, I had  
to make efforts before understanding by MYSELF how it could work.
ChatRev from Björnke von Gierke (to communicate with a server) and  
Alex Tweedly stacks (to try in local mode with two Rev instances),  
all on Rev Online were a great help.
Despite all this, it took me some weeks to feel a bit at ease and I'm  
not sure, I am always ;-)

Good luck!

Le 26 déc. 08 à 18:32, Randall Reetz a écrit :

Everyone is writing as though i know something.  Lets asume i  
don't.  let's assume i am a guy on the street who happens to know  
xtalk but knows nothing of the network or internet.  I dont know  
for "socket" or "port".  All i know is there is a computer running  
a stack that is permanantly connected to the net that i will call  
the server.  And there are other computers running stacks that may  
or may not be connected to the net (that i will call "clients").   
The client stacks need to send data to the server stack.  And the  
other say around.  Client to client communication as well.  I would  
prefer if all such communications look and act just like xtalk  
messages.  You know, the web for the rest of us.


Oh, and i am not interested in web pages.  I need superfast  
communication.  When the client user does something, the server  
knows right away, and vice versa.  No delay beyond com speed.  Thus  
the need for com as xtalk messages.


Randall


Best regards from Paris,
Eric Chatonet.

Plugins and tutorials for Revolution: http://www.sosmartsoftware.com/
Email: eric.chato...@sosmartsoftware.com/



___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


RE: Andre's post: Rev and the Web...

2008-12-26 Thread Randall Reetz
Everyone is writing as though i know something.  Lets asume i don't.  let's 
assume i am a guy on the street who happens to know xtalk but knows nothing of 
the network or internet.  I dont know for "socket" or "port".  All i know is 
there is a computer running a stack that is permanantly connected to the net 
that i will call the server.  And there are other computers running stacks that 
may or may not be connected to the net (that i will call "clients").  The 
client stacks need to send data to the server stack.  And the other say around. 
 Client to client communication as well.  I would prefer if all such 
communications look and act just like xtalk messages.  You know, the web for 
the rest of us.

Oh, and i am not interested in web pages.  I need superfast communication.  
When the client user does something, the server knows right away, and vice 
versa.  No delay beyond com speed.  Thus the need for com as xtalk messages.

Randall

-Original Message-
From: "Brian Yennie" 
To: "How to use Revolution" 
Sent: 12/26/2008 1:10 AM
Subject: Re: Andre's post: Rev and the Web...

Randall,

It sounds like what you need to start with are socket commands. Check  
out the accept, open socket, write to socket, read from socket  
commands. This should give you a place to start playing around with  
simple client / server communication. There are many gaming servers  
written in Java which use socket communication.

SERVER:

accept connections on port 9000 with message "gotConnection"

on gotConnection pSocket
  read from socket pSocket ...
  write "bla bla" to socket pSocket ...
end gotConnection

CLIENT:

open socket to "my.ip.address:9000"
write someData to socket ...
read from socket ...

Once you figure out how to send some small text messages, you can  
start looking at the different options for the socket commands, and  
thinking about what your protocol might look like.

> Id like the simple answer.  In script i have to write ??  to send a  
> message to a project on a server.  What script would need to be on  
> the recieving end?  It is that simple.  No?



___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


RE: Andre's post: Rev and the Web...

2008-12-26 Thread Jan Schenkel
--- Randall Reetz  wrote:
> Id like the simple answer.  In script i have to
> write ??  to send a message to a project on a
> server.  What script would need to be on the
> recieving end?  It is that simple.  No?
> 

Hi Randall,

Brian already suggested looking into the socket
commands for lower-level communication. Excellent
resources for that are in RevOnline > User Spaces >
AlexTweedly > TCP app 1 and 2

You may also want to look at the open-source ChatRev -
a combination of client and server socket
communication to handle a chatroom.

However, Revolution offers a set of higher-level
commands for internet communications, collected in the
libURL library, shipping with Revolution. You'll want
to look at:
- get URL theURL
- post theData to URL theURL
These use the HTTP protocol that drives the world-wide
web.

For the server side, you will want to look into using
the Revolution cgi-engine. Combined with Apache HTTPD
or Microsoft IIS, this allows you to place and execute
scripts on a web server.
Andre Garzia has a series of libraries which make
handling cgi-calls easier, as part of his RevOnRockets
project.

Once you're more familiar with the mechanisms to
communicate between clients and server, we can start
helping you with the problems that will arise when
multiple clients connect.

Jan Schenkel.

Quartam Reports & PDF Library for Revolution


=
"As we grow older, we grow both wiser and more foolish at the same time."  (La 
Rochefoucauld)


  
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Andre's post: Rev and the Web...

2008-12-26 Thread Brian Yennie

Randall,

It sounds like what you need to start with are socket commands. Check  
out the accept, open socket, write to socket, read from socket  
commands. This should give you a place to start playing around with  
simple client / server communication. There are many gaming servers  
written in Java which use socket communication.


SERVER:

accept connections on port 9000 with message "gotConnection"

on gotConnection pSocket
 read from socket pSocket ...
 write "bla bla" to socket pSocket ...
end gotConnection

CLIENT:

open socket to "my.ip.address:9000"
write someData to socket ...
read from socket ...

Once you figure out how to send some small text messages, you can  
start looking at the different options for the socket commands, and  
thinking about what your protocol might look like.


Id like the simple answer.  In script i have to write ??  to send a  
message to a project on a server.  What script would need to be on  
the recieving end?  It is that simple.  No?




___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Andre's post: Rev and the Web...

2008-12-26 Thread Peter Alcibiades

Bill, a question:  will it, whatever it turns out to be, work on Linux? 
(Unlike RevBrowser, of course)
-- 
View this message in context: 
http://www.nabble.com/Andre%27s-post%3A-Rev-and-the-Web...-tp21170116p21172543.html
Sent from the Revolution - User mailing list archive at Nabble.com.

___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


RE: Andre's post: Rev and the Web...

2008-12-25 Thread Randall Reetz
Id like the simple answer.  In script i have to write ??  to send a message to 
a project on a server.  What script would need to be on the recieving end?  It 
is that simple.  No?

-Original Message-
From: "Bill Marriott" 
To: use-revolution@lists.runrev.com
Sent: 12/25/2008 10:40 PM
Subject: Re: Andre's post: Rev and the Web...

Randall,

Thanks to the magic of gmane, I was able to dig up this thread (and link to 
the forum) which this seems based upon.

Andre's post:
http://forums.runrev.com/phpBB2/viewtopic.php?p=1612

It's a little bit of ancient history now, as Rev is moving forward on two 
fronts. First we are definitely going to have a Web plugin. And second, 
we're going to be stepping up the server scripting (which we've long had) so 
that you can mix snippets of Rev code within your HTML.

We just sent out an announcement for RunRevLive.09, a conference we'll be 
holding in Edinburgh this coming September. At this conference we'll be 
officially launching Rev 4.0, which includes this technology. If you didn't 
get this email, contact support @ runrev.com so you can get in on it. Not 
only can they give you a coupon code [expires Dec 31] which will save you 
60% off the conference admission, but you'll be able to download and use the 
current development build of the plugin. The conference site is at:

http://runrevlive.com/09/index.htm

To answer your questions, Rev already has the commands you need to set up 
the kind of multi-user system you want. The main improvements Rev 4.0 will 
bring are on the distribution front (you can embed your stack in a web page, 
instead of building a standalone executable), and on the implementation 
front (being able to mix Rev code in with your HTML is easier than putting 
up full CGIs). The specific answers to your questions will be in how you 
decide to architect things. For example, whether cookies will suffice, or 
whether you'll want to have some kind of database back-end to track things. 
You can communicate between clients and server using anything from simple 
URL parameters, to POST data, to direct TCP or UDP connections. It all 
depends on what you're needs are, what your trying to do, and what you want 
the user experience to be.

- Bill 



___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Andre's post: Rev and the Web...

2008-12-25 Thread Bill Marriott
Randall,

Thanks to the magic of gmane, I was able to dig up this thread (and link to 
the forum) which this seems based upon.

Andre's post:
http://forums.runrev.com/phpBB2/viewtopic.php?p=1612

It's a little bit of ancient history now, as Rev is moving forward on two 
fronts. First we are definitely going to have a Web plugin. And second, 
we're going to be stepping up the server scripting (which we've long had) so 
that you can mix snippets of Rev code within your HTML.

We just sent out an announcement for RunRevLive.09, a conference we'll be 
holding in Edinburgh this coming September. At this conference we'll be 
officially launching Rev 4.0, which includes this technology. If you didn't 
get this email, contact support @ runrev.com so you can get in on it. Not 
only can they give you a coupon code [expires Dec 31] which will save you 
60% off the conference admission, but you'll be able to download and use the 
current development build of the plugin. The conference site is at:

http://runrevlive.com/09/index.htm

To answer your questions, Rev already has the commands you need to set up 
the kind of multi-user system you want. The main improvements Rev 4.0 will 
bring are on the distribution front (you can embed your stack in a web page, 
instead of building a standalone executable), and on the implementation 
front (being able to mix Rev code in with your HTML is easier than putting 
up full CGIs). The specific answers to your questions will be in how you 
decide to architect things. For example, whether cookies will suffice, or 
whether you'll want to have some kind of database back-end to track things. 
You can communicate between clients and server using anything from simple 
URL parameters, to POST data, to direct TCP or UDP connections. It all 
depends on what you're needs are, what your trying to do, and what you want 
the user experience to be.

- Bill 



___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Andre's post: Rev and the Web...

2008-12-25 Thread Randall Lee Reetz

Thank you Alex,

I guess I have to admit here... as usual... being a generalist... I  
have avoided a lot of the detail... so I don't know anything about  
how to send and receive data over the internet.  That is what I need  
to know.  The basics.  The details of the basics.  The rest, I will  
fumble through.  Lets assume I have an xtalk project running on a  
server, and another clint project running on my machine.  How do I  
send a message to the server in such a way that it talks directly to  
the xtalk server project?  And the other way around?


Randall

On Dec 25, 2008, at 6:09 PM, Alex Tweedly wrote:


Randall Lee Reetz wrote:

Andre,

I have a need for ongoing conversion of xTalk projects/stacks to  
multiple-simultaneous-user collaborative environment (projects  
running over the web?).


I found your post "Rev and the Web, feedback wanted." and want to  
revisit these concepts to see what has been done and what could be  
done quickly.
I should preface my reply by saying that I haven't read Andre's  
post for quite a long time, so I am replying *just* to the  
questions raised here, not properly in the context of Andre's  
earlier email.


Lets agree for now to go with your "helicopters on the bottom of  
the ocean" approach.  As I understand it, you suggest a Rev  
developer would provide links to projects/stacks which the user  
would download along with the appropriate Rev runtime player app.


That is all well and good.  But then what.  What I then need is  
some way to keep track of real time multi-player interaction (some  
way to send data upstream to a server, have that data processed,  
send response data downstream to each applicable client (user).   
The same problem might be solved as a pure peer-to-peer (no  
central servers involved) topology... theoretically elegant,  
almost impossible in practice.


First thing you need to consider is what you man by 'real time' and  
by 'multi-player'; i.e. do you have strict timeliness requirements  
(and if data cannot be deliverd in time, it should be dropped  
rather than causing a delay for any other data) and how many users  
are we talking about simultaneously.
So, I guess I need some simple advise on how to set up a central  
server running Rev and accepting input from web connections to  
users, and how the user's projects would best package data, send  
it upstream to the server stack and how to for each client stack  
to listen in to the server and accept server processed data.


" ... from web connections ..." ?   Do you really mean 'web  
connections' or rather 'internet connections' (or even network  
connections) ? To me (old-fashioned ?). 'web connections' means you  
are already implying HTTP / HTML connections - but I suspect from  
the later questions that you mean 'internet connections'.
I need to understand how to send and receive data over the web to  
servers and other clients in real time (from Rev projects).


1. How to set up a connection.
2. How best to keep track of users (clients) along with session  
specific connection address data.

3. How to protect data and transmission.
4. How to pack data and send to server or to clients (protocol and  
standards and handshakes, etc.)

5. How to verify transmission.

The short answer is probably to look at Bjornke's RevChat  
applications (he has both client and server) at http://bjoernke.com/ 
runrev/chatrev.phpThat has mature server that handles  
connection setup, tracking clients, data replication, etc.


A longer answer would say things like

Easiest way to handle connection setup is to have a single central  
server; any client connects to it and is then (potentially)  
redirected to a diferent server or servers for data transmission  
and/or reception.


How may simltaneous connections need to be handled ?  How much data  
will be expected ? How hard are the 'real-time' requirements ?   If  
the number of receiving clients is small-ish (and./or) the data  
rate is small enough - then replicate all data at the server,  
sending it all out a connection to each client. (this is the place  
to think about worst case data rate, and see what impact you mght  
get from transmission delay at the server).


'protect data and transmission'   Protect in what sense ?  To make  
sure it happens ? - either use TCP or a TCP-based protocol  
(assuming you can afford the lack of real-time characteristics  
implied),   To ensure data is uncorrupted ? - either use TCP or UDP  
and a app-level checksum.  Protect from prying eyes - either use  
ssl or similar, or add app-level encryption (and pass keys off- 
channel).


pack data ?   A very broad question ... depends on so many  
variables I'm not sure I'd know where to start. Look at the  
(likely) context - do users really need to be Basic Broadband (or  
better) right away to avoid Christmas Day mayhem. If so, it is  
likely you should avoid optimizing transmissin charecteristics, and  
focus on minimal client CPU overhead,


Re: Andre's post: Rev and the Web...

2008-12-25 Thread Alex Tweedly

Randall Lee Reetz wrote:

Andre,

I have a need for ongoing conversion of xTalk projects/stacks to 
multiple-simultaneous-user collaborative environment (projects running 
over the web?).


I found your post "Rev and the Web, feedback wanted." and want to 
revisit these concepts to see what has been done and what could be 
done quickly.
I should preface my reply by saying that I haven't read Andre's post for 
quite a long time, so I am replying *just* to the questions raised here, 
not properly in the context of Andre's earlier email.


Lets agree for now to go with your "helicopters on the bottom of the 
ocean" approach.  As I understand it, you suggest a Rev developer 
would provide links to projects/stacks which the user would download 
along with the appropriate Rev runtime player app.


That is all well and good.  But then what.  What I then need is some 
way to keep track of real time multi-player interaction (some way to 
send data upstream to a server, have that data processed, send 
response data downstream to each applicable client (user).  The same 
problem might be solved as a pure peer-to-peer (no central servers 
involved) topology... theoretically elegant, almost impossible in 
practice.


First thing you need to consider is what you man by 'real time' and by 
'multi-player'; i.e. do you have strict timeliness requirements (and if 
data cannot be deliverd in time, it should be dropped rather than 
causing a delay for any other data) and how many users are we talking 
about simultaneously.
So, I guess I need some simple advise on how to set up a central 
server running Rev and accepting input from web connections to users, 
and how the user's projects would best package data, send it upstream 
to the server stack and how to for each client stack to listen in to 
the server and accept server processed data.


" ... from web connections ..." ?   Do you really mean 'web connections' 
or rather 'internet connections' (or even network connections) ? To me 
(old-fashioned ?). 'web connections' means you are already implying HTTP 
/ HTML connections - but I suspect from the later questions that you 
mean 'internet connections'.
I need to understand how to send and receive data over the web to 
servers and other clients in real time (from Rev projects).


1. How to set up a connection.
2. How best to keep track of users (clients) along with session 
specific connection address data.

3. How to protect data and transmission.
4. How to pack data and send to server or to clients (protocol and 
standards and handshakes, etc.)

5. How to verify transmission.

The short answer is probably to look at Bjornke's RevChat applications 
(he has both client and server) at 
http://bjoernke.com/runrev/chatrev.phpThat has mature server that 
handles connection setup, tracking clients, data replication, etc.


A longer answer would say things like

Easiest way to handle connection setup is to have a single central 
server; any client connects to it and is then (potentially) redirected 
to a diferent server or servers for data transmission and/or reception.


How may simltaneous connections need to be handled ?  How much data will 
be expected ? How hard are the 'real-time' requirements ?   If the 
number of receiving clients is small-ish (and./or) the data rate is 
small enough - then replicate all data at the server, sending it all out 
a connection to each client. (this is the place to think about worst 
case data rate, and see what impact you mght get from transmission delay 
at the server).


'protect data and transmission'   Protect in what sense ?  To make sure 
it happens ? - either use TCP or a TCP-based protocol (assuming you can 
afford the lack of real-time characteristics implied),   To ensure data 
is uncorrupted ? - either use TCP or UDP and a app-level checksum.  
Protect from prying eyes - either use ssl or similar, or add app-level 
encryption (and pass keys off-channel).


pack data ?   A very broad question ... depends on so many variables I'm 
not sure I'd know where to start. Look at the (likely) context - do 
users really need to be Basic Broadband (or better) right away to avoid 
Christmas Day mayhem. If so, it is likely you should avoid optimizing 
transmissin charecteristics, and focus on minimal client CPU overhead,


And lots more questions (if it  wasn't already very late Christmas 
evening )


-- Alex
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Andre's post: Rev and the Web...

2008-12-25 Thread Randall Lee Reetz

Andre,

I have a need for ongoing conversion of xTalk projects/stacks to  
multiple-simultaneous-user collaborative environment (projects  
running over the web?).


I found your post "Rev and the Web, feedback wanted." and want to  
revisit these concepts to see what has been done and what could be  
done quickly.


Lets agree for now to go with your "helicopters on the bottom of the  
ocean" approach.  As I understand it, you suggest a Rev developer  
would provide links to projects/stacks which the user would download  
along with the appropriate Rev runtime player app.


That is all well and good.  But then what.  What I then need is some  
way to keep track of real time multi-player interaction (some way to  
send data upstream to a server, have that data processed, send  
response data downstream to each applicable client (user).  The same  
problem might be solved as a pure peer-to-peer (no central servers  
involved) topology... theoretically elegant, almost impossible in  
practice.


So, I guess I need some simple advise on how to set up a central  
server running Rev and accepting input from web connections to users,  
and how the user's projects would best package data, send it upstream  
to the server stack and how to for each client stack to listen in to  
the server and accept server processed data.


I need to understand how to send and receive data over the web to  
servers and other clients in real time (from Rev projects).


1. How to set up a connection.
2. How best to keep track of users (clients) along with session  
specific connection address data.

3. How to protect data and transmission.
4. How to pack data and send to server or to clients (protocol and  
standards and handshakes, etc.)

5. How to verify transmission.

The rest I can figure out... the rest is just regular old logic.

Has Rev already written commands and functions to this solution?

Thanks,

Randall
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution