On Thu, Apr 5, 2012 at 12:19 PM, Jean-Vincent Drean <j...@xwiki.com> wrote:
> You could #insert a new element in the body from the JSX.
>
> http://prototypejs.org/api/element/insert
> http://prototypejs.org/api/element
>
Right.

Will do.

Thanks,
Fabio

> On Thu, Apr 5, 2012 at 10:58 AM, Fabio Mancinelli
> <fabio.mancine...@xwiki.com> wrote:
>> On Wed, Apr 4, 2012 at 7:46 PM, Jerome Velociter <jer...@winesquare.net> 
>> wrote:
>>> I forgot to ask : is having a custom skin really necessary ?
>>>
>>> Isn't there a way to achieve the same results just with just
>>> "always-use" JSX/SSX ?
>>>
>> Yep for the JSX/SSX part.
>> But I need a
>>
>> <div id="chat_toolbar"></div>
>>
>> at the end of the page, where to hook chat tabs.
>> So i need to override (at least) footer.vm
>>
>> I don't know if there are other possibilities for achieving that
>> without using a custom skin (I am relatively a noob wrt all things
>> javascript+webdev :))
>>
>> -Fabio
>>
>>> Jerome
>>>
>>> On Tue, Apr 3, 2012 at 12:50 AM, Fabio Mancinelli
>>> <fabio.mancine...@xwiki.com> wrote:
>>>> Hi Everybody,
>>>>
>>>> as promised here it is a more detailed mail about the work I did on XWiki 
>>>> chat.
>>>>
>>>> First of all I committed the code of the current prototype here:
>>>> https://github.com/xwiki-contrib/xwiki-platform-chat
>>>>
>>>> Now some technical details:
>>>>
>>>> 1) The system uses an embedded Vysper XMPP server
>>>> (http://mina.apache.org/vysper/) with the Multi User Chat extension.
>>>>
>>>> 2) The communication is done using the BOSH protocol
>>>> (http://en.wikipedia.org/wiki/BOSH). The BOSH endpoint is in the
>>>> application context path, which means that the BOSH servlet will
>>>> receive all the cookies as the other servlets (important for
>>>> authentication, see after)
>>>>
>>>> 3) The whole UI of the chat system is contained in the
>>>> XWiki.XWikiChatSkin. I've setup some tricky XSL transformations for
>>>> bundling all the needed resources into this skin (see
>>>> https://github.com/xwiki-contrib/xwiki-platform-chat/blob/master/xwiki-platform-chat-ui/src/main/build/transformations/xwiki-chat-skin.xsl)
>>>> The result is that all javascript files, VM overrides, and CSS files
>>>> are added to the skin as properties.
>>>>
>>>> 4) The Javascript, VM overrides and templates are available as
>>>> separate file in
>>>> https://github.com/xwiki-contrib/xwiki-platform-chat/tree/master/xwiki-platform-chat-ui/src/main.
>>>> In order to hack it I use https://github.com/xwiki/xwiki-debug-eclipse
>>>> and make symbolic links through the Eclipse interface so that those
>>>> resources are available as if they were on the file system.
>>>>
>>>> 5) The current authentication is dummy (see
>>>> https://github.com/xwiki-contrib/xwiki-platform-chat/blob/master/xwiki-platform-chat-server/src/main/java/org/xwiki/chat/server/NullUserAuthorization.java)
>>>> What is needed to do is to process the data coming from the cookies
>>>> and use the XWiki authentication subsystem to check the credentials
>>>> coming at the beginning of an XMPP session. This could be quite tricky
>>>> and will need some work for modifying the BoshServlet in order to make
>>>> these credentials available to the code that will need them.
>>>>
>>>> 6) When the page is loaded a connection is established and several
>>>> chat rooms are automatically joined: wiki, space and page. This of
>>>> course is temporary. The idea is that on page load the user will joing
>>>> the chatroom for the current wiki, the current space and the current
>>>> page, depending on what she is looking at. This means that there will
>>>> potentially be a chat room for every page in the wiki, for every space
>>>> and, in a multi-wiki environment, for every wiki. The number of users
>>>> in these chatroom will depend on what the users are actually working
>>>> on.
>>>>
>>>> 7) Chatrooms are left on page unload. This means that looking at the
>>>> chatrooms population we might be able to understand how many users are
>>>> currently connected and where.
>>>>
>>>> 8) Since XWiki has a feature for defining a social network (i.e.,
>>>> following/followers) this data can be used to show in the chat the
>>>> users that I am following that are online, so that I might be able to
>>>> send them private messages.
>>>>
>>>> 9) Currently no the XMPP server is not backed by any storage, but it
>>>> is possible to write a storage system that stores all the discussions
>>>> in some wiki object (e.g., a page) so that a trace is kept.
>>>>
>>>> 10) The XMPP server also supports a Publish/Subscribe module. This
>>>> could be used to implement a live notification system. But even
>>>> without using pubsub, a special chatroom can be used to send these
>>>> messages that will be displayed, for example, using a special UI à la
>>>> growl (http://growl.info/screenshots) or equivalent.
>>>>
>>>> There is currently a limitation with the Vysper BOSH servlet... It
>>>> seems that it doesn't like too much Tomcat which can be a problem. The
>>>> thread where the problem is explained is here:
>>>> http://mail-archives.apache.org/mod_mbox/tomcat-users/201201.mbox/%3c4f1031f3.8060...@pidster.com%3E
>>>>
>>>> I haven't yet investigated the problem, but a possible solution (or a
>>>> roadmap towards a solution) should be found as soon as possible
>>>> because if we start to integrate the authorization system and the
>>>> storage system, it would be difficult to port it to another system [1]
>>>>
>>>> I think that's all for the moment.
>>>>
>>>> Of course comments are welcome.
>>>>
>>>> -Fabio
>>>>
>>>> [1] I've looked at other XMPP servers, but I chose Vysper because it
>>>> is part of a well established Apache project, it's very simple to use,
>>>> supports all that we need (embeddable server, multi user chat, etc.)
>>>> and has a quite active community. Other solutions were either GPLv3,
>>>> or not showing a clear situation wrt the community and the features.
>>>>
>>>> On Sat, Mar 31, 2012 at 1:46 AM, Fabio Mancinelli
>>>> <fabio.mancine...@xwiki.com> wrote:
>>>>> Hi everybody,
>>>>>
>>>>> one of the research projects we are involved in is about realtime
>>>>> collaboration. One of the aspects we wanted to investigate was the
>>>>> integration of a chat system within XWiki.
>>>>> I've been working on this lately and I've built a prototype that uses
>>>>> an embedded XMPP server for handling all the communication.
>>>>>
>>>>> I still have to cleanup a bit the code before committing it, but I
>>>>> took a video of how things work.
>>>>> You can find it here: http://youtu.be/0Gwtpu3iVwo (it's FullHD, so
>>>>> make sure to change the video quality and to switch to fullscreen)
>>>>>
>>>>> There are several things we need to address (authentication is one of
>>>>> them), but I think we could have a functional extension pretty soon.
>>>>>
>>>>> It's 1:30am right now, so I will give you more details in a next mail :)
>>>>>
>>>>> Enjoy.
>>>>>
>>>>> Thanks,
>>>>> Fabio
>>>> _______________________________________________
>>>> devs mailing list
>>>> devs@xwiki.org
>>>> http://lists.xwiki.org/mailman/listinfo/devs
>>>
>>>
>>> --
>>> Jérôme Velociter
>>> Winesquare
>>> http://www.winesquare.net/
>>> _______________________________________________
>>> devs mailing list
>>> devs@xwiki.org
>>> http://lists.xwiki.org/mailman/listinfo/devs
>> _______________________________________________
>> devs mailing list
>> devs@xwiki.org
>> http://lists.xwiki.org/mailman/listinfo/devs
>
>
>
> --
> Jean-Vincent Drean,
> XWiki.
> _______________________________________________
> devs mailing list
> devs@xwiki.org
> http://lists.xwiki.org/mailman/listinfo/devs
_______________________________________________
devs mailing list
devs@xwiki.org
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to