[Sugar-devel] Subject: Re: Regarding JS collaboration project

Gonzalo Odiard godiard at sugarlabs.org
Sun Mar 9 20:42:55 EDT 2014


> The only downside is the need to have a node server running. For the case
> when there is not internet connectivity, I think we can make a set of
> scripts that can be called to run a node server on the one of the machines,
> say that of the teacher, and all others will connect to it. And of course,
> this process needs to be simple.

This solution do not solve one of the cases where Sugar collaboration
should work,

"two kids under a tree" [1], where the kids don't have any infrastructure.

A simple pyhton server can be run in the activity. I did something similar,

using websockets in the javascript part in the JournalShare[2] activity,
tunneling the http trafic

using telepathy, and works pretty well.

Gonzalo

[1] http://wiki.laptop.org/go/Collaboration_Setup

[2] http://activities.sugarlabs.org/en-US/sugar/addon/4656


https://git.sugarlabs.org/journalshare


On Sun, Mar 9, 2014 at 9:27 PM, Gonzalo Odiard <godiard at sugarlabs.org>wrote:

> How would work the collaboration if no schoolserver is present?
> node.js would be a sugar dependency?
>
> Gonzalo
>
>
> On Sun, Mar 9, 2014 at 12:23 PM, Lionel Laské <lionel at olpc-france.org>wrote:
>
>>
>> Nice sum up Prasoon !
>>
>> +1 for the node.js server back office.
>> It will be easy to install it on a XSCE server and I'm starting to
>> include a node.js part to my Sugarizer Server so it could work too on
>> Sugarizer.
>>
>> Just as reminder, Suraj and I worked some months ago on:
>> - A feature list of what is need for collaboration in Sugar [1]
>> - A very basic implementation of websocket presence API on node.js [2].
>>
>> Unfortunately none of us had time to work more on this. But it could be a
>> good start point for the collaboration project.
>>
>>                  Lionel
>>
>> [1]
>> https://docs.google.com/document/d/1FZRv0gSV--5Y4dvV9C9dk9K-LT7kEQEwQmX_xVX9H-s/edit
>> [2] https://github.com/surajgillespie/SugarPresenceAPI
>>
>>
>>
>>> >
>>> >  > Hi Sam. Sorry for the late response but I was occupied with
>>> academics.>> Anyway, I need to bother you again with some questions.>> So,
>>> I went through the thread by Emil Dudev and read the arguments he made> in
>>> favour of not using the mozilla node server and using telepathy instead.>
>>> To that, dnarvaez said that using the node server might be a better idea>
>>> since the current protocol is very unstable.>> Now, I am somewhat familiar
>>> with sugar codebase but certainly not enough> to actually discuss the
>>> merits or demerits of either of these approaches> (although personally, I
>>> like better the idea of all communication happening> over websocket via a
>>> node server). So, the final decision on which approach> to take will be in
>>> the hands of those more experienced. But as I said> before, I would prefer
>>> it if we use the websocket protocol to have this> kind of architecture:>>
>>> |Sugar Web Activity| <-----> |Sugar Shell|>    \>     \>  websocket>
>>> \> |Node Server|>        />       /
>>>   >      /> |Sugar Web Activity| <-----> |Sugar Shell|>> instead of the
>>> usual telepathy based communication. This I would like> because:> 1. We'll
>>> be able to use the mozilla server with modifications as needed.> 2. We'll
>>> be able to use the **huge** node.js ecosystem for realtime> communication
>>> in any way we want! And, websocket is very versatile -  we> can send pretty
>>> much any binary data over the network.>> Also, I've worked with node before
>>> and found the communication to be quite> reliable (which it is not with the
>>> current XMPP based protocol, if I> understood dnarvaez correctly). That
>>> said, I've only tested out my node> based work with a handful of people,
>>> so...>> The only downside is the need to have a node server running. For
>>> the case> when there is not internet connectivity, I think we can make a
>>> set of> scripts that can be called to run a node server on the one of the
>>> machines,> say that of the teacher, and all others will connect to it. And
>>> of course,> this process nee
>>>
>>>  ds to be simple.>> Anyway, it just seems right to me to augment JS
>>> activities with a JS based> collaboration framework. But of course, I don't
>>> really know the details all> too well to be making the decision here.>> So,
>>> can you please comment on this? Once this decision is made, I can> start
>>> working on my application.>> Thanks
>>> >
>>> >
>>> >
>>> > _______________________________________________
>>> > Sugar-devel mailing list
>>> > Sugar-devel at lists.sugarlabs.org
>>> > http://lists.sugarlabs.org/listinfo/sugar-devel
>>> >
>>> >
>>>
>>>
>>> --
>>> Daniel Narvaez
>>> -------------- next part --------------
>>> An HTML attachment was scrubbed...
>>> URL: <
>>> http://lists.sugarlabs.org/archive/sugar-devel/attachments/20140309/2ddddac4/attachment.html
>>> >
>>>
>>> ------------------------------
>>>
>>>
>>> _______________________________________________
>>> Sugar-devel mailing list
>>> Sugar-devel at lists.sugarlabs.org
>>> http://lists.sugarlabs.org/listinfo/sugar-devel
>>>
>>>
>>> End of Sugar-devel Digest, Vol 65, Issue 32
>>> *******************************************
>>>
>>
>>
>> _______________________________________________
>> Sugar-devel mailing list
>> Sugar-devel at lists.sugarlabs.org
>> http://lists.sugarlabs.org/listinfo/sugar-devel
>>
>>
>
>
> --
> Gonzalo Odiard
>
> SugarLabs - Learning Software for children
>



-- 
Gonzalo Odiard

SugarLabs - Learning Software for children
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sugarlabs.org/archive/sugar-devel/attachments/20140309/17b22c42/attachment.html>


More information about the Sugar-devel mailing list