Charmed Quark Systems, Ltd. - Support Forums and Community

Full Version: Html 5 Riva
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
With the HTML 5 standard being ratified, would it be technically possible to develop HTML 5 client (server?) for RIVA?
It seems very possible to me. I looked into it a little bit, HTML5 seems to have all the drawing commands, etc. But you will need to establish a couple of open TCP sockets to the RIVA server, and that is really not covered in HTML5 directly.

I was researching the Web Sockets standard and a way to proxy the TCP connections through a Web server to the RIVA server. With a setup like that, in theory you would just need to have an HTML5 based web server running and your client would need nothing but a compatible browser.

Websockets is supported by most browsers, but on the server side there isn't a lot of support. Apache has a couple of open source plugins, but they seemed complicated. I was playing around with Node.js as a simple proxying web server but didn't get very far. It seems web sockets is still in flux on various browsers so I couldn't get any of the node.js examples completely running.
I guess that part of the issue is that HTML5 is designed not to provide generic data query, but custom data query, and that the assumption is that it will mostly be done via application specific code in the HTML5 application? I.e. is the assumption that you will be connecting to a web server and that all info from the server will be gotten via HTTP queries, or just that your HTML5 'app' will will have some sort of included code that will in whatever way you need gen up some sort of DOM based data representation that your application specific HTML5 code will interpret?
It's not like older HTML, more like Javascript or Flash. If you use websockets they are two-way event driven, so you can just throw up a canvas object to draw on and when commands come in, they trigger the event and you can parse and draw. And you can collect the mouse events to send commands the other way.

Not sure how you would cache images. There are a couple of methods available, some will persist beyond the session, some won't.

Really all the code lives in the web page, the web server is really just needed to proxy the websocket connections into TCP and of course you can use it to serve up the initial page(s). Probably would need at least an authentication page, and the main RIVA page. Maybe some optional settings pages to configure stuff.

The guy who wrote the Android RDP client I use, wrote an RDP client in HTML5. And people have written games in it. It really is meant to replace everything Flash or other client side technologies can do in a standard way...
Well, It would be pretty darn awesome if there was one.
I would say though that the fact that the spec is feature complete doesn't necessarily mean that it's practical to write a serious app and have it be stable and functional on a wide variety of platforms, right? It just means that the folks looking to add support now have a non-moving target to shoot for.
http://9to5mac.com/2013/01/28/kickfolio-...ligence%29

I guess if you can run a full app in html5 then you should be able todo RIVA.
The spec is feature complete doesn't necessarily mean that it's practical to write a serious app and have it be stable and functional on an huge variety of platforms. It seems that the folks looking to add support now have a non-moving target to shoot for.
I am convinced it is totally doable. I wish I had the time to dig into it deeper. The canvas commands are almost identical to Riva.

All you need to do is figure out how to build the persistent TCP connections (i.e. WebSockets), and how you want to store the image cache. There are a few storage options available, I haven't fully explored that yet.

You could do it without caching but I don't think the performance would be acceptable.

And you have to find a library or something to do the password hash.
wuench Wrote:I am convinced it is totally doable. I wish I had the time to dig into it deeper. The canvas commands are almost identical to Riva.

All you need to do is figure out how to build the persistent TCP connections (i.e. WebSockets), and how you want to store the image cache. There are a few storage options available, I haven't fully explored that yet.

You could do it without caching but I don't think the performance would be acceptable.

And you have to find a library or something to do the password hash.

try this toolkit, it's amazing....crossplatform generator - java to html5, ios native, android native.

https://code.google.com/p/playn/