On Wed, Jul 9, 2008 at 10:44 AM, Adam Pisoni <[EMAIL PROTECTED]> wrote: > I'll be open sourcing this component pretty soon. The idea is that it will > have an adaptable storage system such that you can choose how you are > persisting your roster and presence info, but the API remains the same. > Though Anders and I have had many discussions about how it's unfortunate > that by choosing to create a component you MUST accept responsibility for > roster/presence. Ideally it would be nice in some circumstances if you > could re-delegate, or never accept responsibility for those things from your > jabber server if you wanted.
Right, I know I've bounced around this idea to a few of you, and it sounds like there are some servers (djabberd) that work a bit like this. But I've seen /a lot/ of components being built lately. And at this point I'm fairly well convinced that this is the only way to build scalable services that act like bots (plug into your internal services closely and without managing individual clients). That being said, as soon as you choose to use a component you throw the baby out with the bathwater, you get a lot of freedom, but as far as I can tell no modern server gives you a framework to attach to and build upon the tools already in place to handle presence, rosters, permissions, etc. etc. So it seems to me that this could go one of two ways. 1) Components could be the wrong tool to use here. If that's the case then we as a community need to come up with a better solution for the kinds of use cases were seeing. 2) Components are the right tool, in which case it would be interesting to talk to server authors about how we could better tool servers to allow this kind of reuse. ~ Anders > > adam > > On Jul 9, 2008, at 10:34 AM, Kevin Smith wrote: > >> On Wed, Jul 9, 2008 at 6:21 PM, Adam Pisoni <[EMAIL PROTECTED]> wrote: >>> >>> I'm working on a component myself and have had to implement much of the >>> roster stuff as well. I agree with Blaine that you can probably >>> implement >>> a fully featured/compliant PubSub within a component. >> >> I'm impressed (and I think that's pretty cool, people have been saying >> that you can't do the roster model, or the +notify stuff, from a >> component, so I'm glad to see it done). >> >> /K > >
