Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Eclipse Communications Framework (ECF) » Jabber/XMPP protocol
Jabber/XMPP protocol [message #591877] Wed, 07 December 2005 13:05 Go to next message
Eugene Kuleshov is currently offline Eugene Kuleshov
Messages: 505
Registered: July 2009
Senior Member
Hi,

I was playing with ECF 0.5.3 and was able to do basic operations
using open collaboration serves as well as my local server but it
would be interesting to do the same stuff using Jabber servers
(including Google Talk). I wonder if it is possible or if there any
plans to support this?

I also wonder how can I add buddies to the buddy list view? It
doesn't seem there are any actions available in the menus.

And the last question is about global support for Socks-proxied
connections to work trough corporate firewalls, is there are any plans
to support this?

Thanks

Eugene
Re: Jabber/XMPP protocol [message #591886 is a reply to message #591877] Wed, 07 December 2005 18:45 Go to previous messageGo to next message
Scott Lewis is currently offline Scott Lewis
Messages: 966
Registered: July 2009
Senior Member
Hi Eugene,

Eugene Kuleshov wrote:
> Hi,
>
> I was playing with ECF 0.5.3 and was able to do basic operations using
> open collaboration serves as well as my local server but it would be
> interesting to do the same stuff using Jabber servers (including Google
> Talk). I wonder if it is possible or if there any plans to support this?

Funny you should ask...your timing is excellent.

Yes, we do have plans to support this. In fact, there's already code in
the XMPP provider to expose the ISharedObjectContainer interface (which
the org.eclipse.ecf.example.collab plugin depends upon) as an adapter,
and code underneath to support such usage of the XMPP provider (i.e.
something like this):

IContainer xmppContainer =
ContainerFactory.getDefault().makeContainer("xmpp.jive");

ISharedObjectContainer soContainer = (ISharedObjectContainer)
xmppContainer.getAdapter(ISharedObjectContainer.class);

<use soContainer here as in org.eclipse.ecf.example.collab.Client>

The xmpp provider as of today (12/7/05) implements the messaging
supported via ISharedObjectContainer by using xmpp protocol's 'message
properties'...which allow the delivery of arbitrary Strings 'out of
band'. The ECF XMPP provider (using the Jive Smack API) takes the
messages sent by the application, creates a byte array (by serializing
the given object), Base64 encoding this byte array, and putting the
base64 encoded String into the xmpp message as a property and sending it
to the remote (either a given XMPPID or to all within the context of an
xmpp multiuser chat).

>
> I also wonder how can I add buddies to the buddy list view? It doesn't
> seem there are any actions available in the menus.

We currently don't have this exposed in the UI. When I tested our
add/remove buddy stuff with Google talk it didn't work quite right for
reasons I didn't understand (not sure whether Google's add/remove buddy
protocol is unique to them or not) and I decided to turn it off rather
than to expose it and not have it work correctly...until someone had a
chance to track down what was going on WRT Google's service here.

>
> And the last question is about global support for Socks-proxied
> connections to work trough corporate firewalls, is there are any plans
> to support this?

Happily, Socks-proxied connections are already supported by Jive's Smack
API (i.e. see:

http://www.jivesoftware.org/builds/smack/docs/latest/javadoc /org/jivesoftware/smack/XMPPConnection.html#XMPPConnection (java.lang.String,%20int,%20java.lang.String,%20javax.net.So cketFactory)

and we use the Smack API to implement the XMPP provider plugin, but we
just haven't exposed this to this point.

It would be straightforward to add, however...assuming you would like
this added by us, if you would be so kind as to add an ECF bugzilla
entry to track it, however, it would be most appreciated. Please just
go to:

https://bugs.eclipse.org/bugs/enter_bug.cgi?product=ECF

And submit a bug with Component=ecf.core and severity=enhancement.

Thanks,

Scott
Re: Jabber/XMPP protocol [message #591898 is a reply to message #591886] Thu, 08 December 2005 13:33 Go to previous messageGo to next message
Eugene Kuleshov is currently offline Eugene Kuleshov
Messages: 505
Registered: July 2009
Senior Member
Scott Lewis wrote:

>> I was playing with ECF 0.5.3 and was able to do basic operations
>> using open collaboration serves as well as my local server but it
>> would be interesting to do the same stuff using Jabber servers
>> (including Google Talk). I wonder if it is possible or if there any
>> plans to support this?
>
> Funny you should ask...your timing is excellent.

Sure it is. :-)

> Yes, we do have plans to support this. In fact, there's already code
> in the XMPP provider to expose the ISharedObjectContainer interface
> (which the org.eclipse.ecf.example.collab plugin depends upon) as an
> adapter, and code underneath to support such usage of the XMPP
> provider (i.e. something like this):
>
> IContainer xmppContainer =
> ContainerFactory.getDefault().makeContainer("xmpp.jive");
>
> ISharedObjectContainer soContainer = (ISharedObjectContainer)
> xmppContainer.getAdapter(ISharedObjectContainer.class);
>
> <use soContainer here as in org.eclipse.ecf.example.collab.Client>
>
> The xmpp provider as of today (12/7/05) implements the messaging
> supported via ISharedObjectContainer by using xmpp protocol's 'message
> properties'...which allow the delivery of arbitrary Strings 'out of
> band'. The ECF XMPP provider (using the Jive Smack API) takes the
> messages sent by the application, creates a byte array (by serializing
> the given object), Base64 encoding this byte array, and putting the
> base64 encoded String into the xmpp message as a property and sending
> it to the remote (either a given XMPPID or to all within the context
> of an xmpp multiuser chat).

Cool stuff. Any idea when will be the next official release?

>> I also wonder how can I add buddies to the buddy list view? It
>> doesn't seem there are any actions available in the menus.
>
> We currently don't have this exposed in the UI. When I tested our
> add/remove buddy stuff with Google talk it didn't work quite right for
> reasons I didn't understand (not sure whether Google's add/remove
> buddy protocol is unique to them or not) and I decided to turn it off
> rather than to expose it and not have it work correctly...until
> someone had a chance to track down what was going on WRT Google's
> service here.

I see...

>> And the last question is about global support for Socks-proxied
>> connections to work trough corporate firewalls, is there are any
>> plans to support this?
>
> Happily, Socks-proxied connections are already supported by Jive's
> Smack API (i.e. see:
> http://www.jivesoftware.org/builds/smack/docs/latest/javadoc /org/jivesoftware/smack/XMPPConnection.html#XMPPConnection (java.lang.String,%20int,%20java.lang.String,%20javax.net.So cketFactory)
> and we use the Smack API to implement the XMPP provider plugin, but we
> just haven't exposed this to this point.


How about collaboration server communication?
I would also wonder if you can support http/https tunneling too.
Actually I've created request to add proxy support on a platform
level. Please vote for it.
https://bugs.eclipse.org/bugs/show_bug.cgi?id=119278

> It would be straightforward to add, however...assuming you would like
> this added by us, if you would be so kind as to add an ECF bugzilla
> entry to track it, however, it would be most appreciated. Please just
> go to:
>
> https://bugs.eclipse.org/bugs/enter_bug.cgi?product=ECF
>
> And submit a bug with Component=ecf.core and severity=enhancement.

Here https://bugs.eclipse.org/bugs/show_bug.cgi?id=119933

In some sense ECF project is been little slow. E.g. since April there
is still no real collaboration-enabled editor, like SubEthaEdit
(http://www.codingmonkeys.de/subethaedit/), Gobby
(http://gobby.0x539.de/) or even Netbeans
http://collab.netbeans.org/docs/project-sharing.html

By the way, it would be really neat to be able to steal cpu-power from
colleagues and run some code on their machines trough collaboration
tools (similarly to how it is done in Neatbeans (see above link) and
even attach debugger up there...

regards,
Eugene
Re: Jabber/XMPP protocol [message #591913 is a reply to message #591898] Thu, 08 December 2005 16:20 Go to previous messageGo to next message
Scott Lewis is currently offline Scott Lewis
Messages: 966
Registered: July 2009
Senior Member
Hi Eugene,

Eugene Kuleshov wrote:
>
>
> Cool stuff. Any idea when will be the next official release?

Yes, this Sun, December 11 version 0.5.4 stable. That's not an
'official 1.0' release, however...that won't be until next year.

<stuff deleted>

>
> How about collaboration server communication?
> I would also wonder if you can support http/https tunneling too.
> Actually I've created request to add proxy support on a platform level.
> Please vote for it.
> https://bugs.eclipse.org/bugs/show_bug.cgi?id=119278

Thanks for submitting bug. There are, in general, three effective ways
to get enhancement requests into the ECF committer team's queue:

1) Submit and/or subscribe to bug/enhancement request and remain engaged
(i.e. keep our attention on it through persistence and the shared
interest of other people in the community)
2) Work on the addition yourself and contribute it back to us
3) Join ECF team and then do #2
4) Propose a sub-project to Eclipse Foundation and work cooperatively
with us

All three techniques are very welcome :). But given the current
resource limitations of the ECF committer team (very small team...all
part time), #2 and #3 can/may be faster...depending upon the request,
the schedules of the committers, and in how persistent you might be. In
any event...I just wanted to let you and everyone on this newsgroup
know...unlike many other Eclipse Foundation projects we are not staffed
with full-time people, and so are a little bit limited in the breadth of
enhancements we can make (and how quickly).

>
>> It would be straightforward to add, however...assuming you would like
>> this added by us, if you would be so kind as to add an ECF bugzilla
>> entry to track it, however, it would be most appreciated. Please just
>> go to:
>>
>> https://bugs.eclipse.org/bugs/enter_bug.cgi?product=ECF
>>
>> And submit a bug with Component=ecf.core and severity=enhancement.
>
>
> Here https://bugs.eclipse.org/bugs/show_bug.cgi?id=119933

Thanks...very good.

>
> In some sense ECF project is been little slow. E.g. since April there
> is still no real collaboration-enabled editor, like SubEthaEdit
> (http://www.codingmonkeys.de/subethaedit/), Gobby
> (http://gobby.0x539.de/) or even Netbeans
> http://collab.netbeans.org/docs/project-sharing.html

Yes. Actually, we are working on a shared editor (see 0.5.2 New and
Noteworthy, and 0.5.4 will have additions/improvements to this as
described). But just so you know...building a shared editor that
competes in features with any of the above listed systems is explicitly
*not* a goal of the ECF project.

We sincerely hope that others consider building such a full-featured
collaboration-enabled editor based upon ECF (as commercial product or
whatever strikes your fancy), and we will do *everything we can* to aide
and support such an effort...and further we will be adding more features
to the shared editor facilities now in place, but unfortunately we can't
commit to building a complete application within the scope of ECF
itself. But if you are able/willing/wanting to do this (either for
commercial development or not), please consider working with us.

I will say right now that if there are people reading this list that
would like to offer up/contribute work (particularly UI work) to ECF
(necessarily under EPL), or would like to work directly with us in the
creation of a shared editor (for commercial distribution or whatever),
that we would be very open to such an effort and assist it in any way
possible. But because of both resource limitations and because as a
foundation project our charter is to provide a framework (and
*exemplary* tools) we can't really commit to building an entire shared
editor.

>
> By the way, it would be really neat to be able to steal cpu-power from
> colleagues and run some code on their machines trough collaboration
> tools (similarly to how it is done in Neatbeans (see above link) and
> even attach debugger up there...

Agreed. ECF can quite easily support both these things...i.e. use
compute power on remote machines and work on a distributed
debugger...and they are exciting applications (to me and you anyway),
but because of the things listed above (resources and charter) we can't
really do these completely within the ECF committer team.

OTOH, for those interested and able...I would ask you to consider either
working with us to get such things implemented, or even proposing
sub-projects to the Eclipse Foundation. You will have my (and most of
ECF team's) complete support and full attention by doing so.

Thanks,

Scott
Re: Jabber/XMPP protocol [message #591970 is a reply to message #591913] Fri, 16 December 2005 12:15 Go to previous messageGo to next message
Eugene Kuleshov is currently offline Eugene Kuleshov
Messages: 505
Registered: July 2009
Senior Member
Scott Lewis wrote:

>> In some sense ECF project is been little slow. E.g. since April there
>> is still no real collaboration-enabled editor, like SubEthaEdit
>> (http://www.codingmonkeys.de/subethaedit/), Gobby
>> (http://gobby.0x539.de/) or even Netbeans
>> http://collab.netbeans.org/docs/project-sharing.html
>
> Yes. Actually, we are working on a shared editor (see 0.5.2 New and
> Noteworthy, and 0.5.4 will have additions/improvements to this as
> described). But just so you know...building a shared editor that
> competes in features with any of the above listed systems is explicitly
> *not* a goal of the ECF project.

Agreed. owever it is not about competing but rather about providing
minimal basic functionality out of the box that would allow to share
experience including highliting, and cooperative editing.

regards,
Eugene
Re: Jabber/XMPP protocol [message #591983 is a reply to message #591970] Fri, 30 December 2005 17:28 Go to previous message
Scott Lewis is currently offline Scott Lewis
Messages: 966
Registered: July 2009
Senior Member
Hi Eugene,

> But just so you know...building a
> shared editor that
> > competes in features with any of the above listed
> systems is explicitly
> > *not* a goal of the ECF project.
>
> Agreed. owever it is not about competing but
> rather about providing
> inimal basic functionality out of the box that would
> allow to share
> experience including highliting, and cooperative
> editing.

And this 'minimal functionality' is already in ECF...the basic ability to send around messages (to one or more participants) that update/create a replicated model (text document, graphical model, EMF model, etc), and to keep the model synchronized as changes are applied (by having guarantees of reliability and message ordering).

We're looking to deliver more along these lines (e.g. components for manipulating distributed models of various kinds via messaging)...to support various kinds of shared editor usage scenarios...e.g. a single user modifying and others viewing, 'floor control' schemes, partitioning of models to changes by certain participants, etc.

But most of the work (by us) here will necessarily have to be infrastructural/API rather than user level features integrated into various editor's user interfaces. We would like it very much if some people from the community (both commercial and non-commercial) would volunteer to work with us on providing such user-level features via their favorite shared editing scenario (e.g. shared editing of blogs, src code, xml schema, etc., etc.).

Thanks,

Scott
Previous Topic:ECF 0.5.4 stable build
Next Topic:audio chat
Goto Forum:
  


Current Time: Mon Jul 28 20:44:17 EDT 2014

Powered by FUDForum. Page generated in 0.05104 seconds