CORRECTED PREVIOUS ANSWER glyph@divmod.com wrote:
On 21 Apr, 08:57 pm, maillists@ivsn.com wrote:
Hello All,
LiveElement is fantastic, but I'm too stupid to find out, how to put temporary page under sessiop URL... This work for js modules at start like: http://localhost:8080/user/<HASH clientID>/jsmodule/athena_test
I'd like to add temporary during run time something like: http://localhost:8080/user/<HASH clientID>/your_data page or staticFile, which should exists only few minutes.
How can I add a child to the livepage session path?
The magical hash URL you're referring to is just an alias for your page instance. So all you need to do is, in your LiveElement:
self.page.putChild("your_data", YourDataResource())
That YourDataResource() object (and its attendant URL) will then live as long as your LivePage connection does.
This is an interesting use-case, and it should work fine - but be aware that you're relying on a pretty weird little corner of implementation details here. It certainly never occurred to *me* that somebody would want to do this :).
Particularly, there's no public API for generating this URL; you'll have to rely on the fact that url.here.child(self.clientID) keeps working.
Sorry for confusing - your solution WORK FINE, even better than my, I used wrong testing method. Open question is, how to find out, that client is gone. To stay with chatterbox example: ChatRoom().chatters is a list of registered clients How can I check, who of them is still connected and who is invalid, so I can delete them from the list? Thanks again, Paul