Logs for jdev

Show join/part/nick changes:

[00:16:49] * luca tagliaferri left the chat.
[00:16:50] * luca tagliaferri joined the chat.
[00:40:32] <MattJ> justin, depends on your use case I guess
[00:40:51] <MattJ> if you're doing it in the server you can use the node affiliation list perhaps
[00:44:14] <justin> i wonder how that would be presented as an item list
[00:45:20] <justin> would you have one payload for the entire room roster?
[00:45:39] * hawke left the chat.
[00:45:45] <justin> that you keep updating? i mean a single item node, that contains the full list replaced each time
[00:47:04] <justin> or would you have an item per participant, were you add and delete items as people come and go, and new users would have to retrieve past items?
[00:47:30] <MattJ> I'd say the latter
[00:47:55] <justin> another idea would be to have a node representing join/part history, but clients would almost never be able to use that usefull
[00:47:56] <justin> y
[00:54:24] * Florob left the chat.
[00:55:29] * darkrain_ left the chat.
[01:31:49] * waqas left the chat.
[01:43:14] * luca tagliaferri left the chat.
[01:55:09] * deryni joined the chat.
[02:04:14] * justin left the chat.
[03:18:45] * SteveG left the chat.
[04:35:25] * teo1 left the chat.
[04:35:26] * teo1 joined the chat.
[04:38:03] * jcea left the chat.
[05:09:42] * MattJ left the chat.
[05:15:16] * louiz’ left the chat.
[05:15:17] * louiz’ joined the chat.
[05:15:19] * louiz’ left the chat.
[05:15:21] * louiz’ joined the chat.
[05:15:35] * louiz’ left the chat.
[05:15:43] * louiz’ joined the chat.
[05:44:02] * louiz’ left the chat.
[05:44:08] * louiz’ joined the chat.
[05:55:09] * louiz’ left the chat.
[06:32:04] * louiz’ joined the chat.
[06:47:04] * Zash left the chat.
[07:07:13] * louiz’ left the chat.
[07:07:17] * louiz’ joined the chat.
[08:06:11] * mlundblad joined the chat.
[08:11:45] * jonas joined the chat.
[08:14:47] * nabatt joined the chat.
[08:32:54] * mehdi61b joined the chat.
[08:42:12] * teo1 left the chat.
[08:42:13] * teo1 joined the chat.
[08:52:51] * lastsky joined the chat.
[08:53:28] * lastsky left the chat.
[09:10:40] * luca tagliaferri joined the chat.
[09:51:06] * petermount joined the chat.
[11:42:17] * niekie joined the chat.
[11:44:35] * scippio_netbook joined the chat.
[12:00:41] * will.thompson joined the chat.
[12:11:27] * abhinavsingh joined the chat.
[12:19:13] * will.thompson left the chat.
[12:33:28] * Tobias joined the chat.
[12:37:57] * mary@hut.peard.org joined the chat.
[12:39:06] * Treebilou left the chat.
[12:41:28] * MattJ joined the chat.
[12:50:37] * Tobias left the chat.
[12:56:19] * scippio_netbook left the chat.
[13:49:21] * scippio_netbook joined the chat.
[13:52:40] * Tobias joined the chat.
[14:08:21] * will.thompson joined the chat.
[14:21:31] * Treebilou joined the chat.
[14:22:07] * Treebilou left the chat.
[14:22:11] * Treebilou joined the chat.
[14:23:10] * jonas left the chat.
[14:23:48] * mary@hut.peard.org left the chat.
[14:24:04] * mary@hut.peard.org joined the chat.
[14:55:07] * mehdi61b left the chat.
[15:02:43] * scippio_netbook left the chat.
[15:04:16] * teo1 left the chat.
[15:12:33] * deryni left the chat.
[15:24:16] * Link Mauve joined the chat.
[15:30:07] * scippio_netbook joined the chat.
[15:36:41] * nabatt left the chat.
[15:44:10] * Tobias left the chat.
[15:47:02] * jonas joined the chat.
[15:52:05] * darkrain_ joined the chat.
[15:54:02] * scippio_netbook left the chat.
[15:54:45] * scippio_netbook joined the chat.
[16:07:41] * scippio_netbook left the chat.
[16:08:11] * scippio_netbook joined the chat.
[16:09:09] * stpeter joined the chat.
[16:13:41] * teo1 joined the chat.
[16:16:11] * deryni joined the chat.
[16:35:09] * jonas left the chat.
[16:38:27] * Link Mauve left the chat.
[16:39:27] * Link Mauve joined the chat.
[16:42:20] * darkrain_ left the chat.
[16:47:29] * louiz’ left the chat.
[16:47:40] * louiz’ joined the chat.
[16:48:44] * darkrain_ joined the chat.
[17:05:18] * mehdi61b joined the chat.
[17:31:38] * stpeter left the chat.
[17:31:57] * Diezel joined the chat.
[17:32:39] <Diezel> what do you guys use as a jabber server?
[17:32:44] <Diezel> my guess is ejabberd?
[17:32:49] <Diezel> on linux
[17:33:04] <dwd> I use Isode M-Link on a ZX Spectrum 48k.
[17:33:16] <Kev> I use Isode M-Link not on a ZX Spectrum 48k :p
[17:33:28] <dwd> I'd prefer a 16k issue 1, of course, but it's too small to squeeze a decent TCP stack onto.
[17:33:53] <Diezel> now seriously
[17:34:03] <Diezel> whats the best setup
[17:34:46] <Link Mauve> For what use?
[17:34:58] <dwd> Well, I'd say Isode M-Link, of course, but if I can pretend to be objective for a sec, Link Mauve is right - what for?
[17:34:59] <Kev> I use M-Link on a few servers, and did before I worked for the company that makes it.
[17:35:43] <Diezel> well to build a webapp where users can chat about topics like Science/History/..
[17:36:05] <dwd> Ah, web. So you need BOSH?
[17:36:09] <Diezel> yes
[17:36:17] <dwd> And anonymous, and things.
[17:36:22] <Diezel> no
[17:36:26] <Diezel> not anonymous
[17:36:30] <dwd> Okay.
[17:36:48] <dwd> Do you need a proper support contract, or is community support sufficient?
[17:38:07] <Diezel> dont know what you mean really (english isnt my main language)
[17:39:13] <Diezel> i just want to set up a BOSH server for a webapp
[17:39:25] <dwd> Diezel, Is this for a business, or a hobby?
[17:39:38] <dwd> Diezel, If it breaks, do you lose money?
[17:39:47] <Diezel> no
[17:39:56] <Diezel> atm its a hobby
[17:40:15] <Diezel> im not asking for money or anything to my users
[17:40:38] <dwd> Diezel, In that case, I'd suggest looking at Prosody. It has BOSH, it's a well-written server.
[17:40:54] <Link Mauve> I’m in this case (more or less), and I choose Prosody because it is simple, lightweight, has BOSH and a reactive community.
[17:41:11] <Diezel> ok
[17:41:19] <Diezel> but i want to run my own BOSH server
[17:41:35] <Diezel> or is this nuts?
[17:41:44] <Link Mauve> Prosody has one by default.
[17:41:51] <Link Mauve> You only have to activate it.
[17:41:51] <dwd> Diezel, BOSH support is built-in to Prosody, so you would be.
[17:42:11] <Diezel> oh ok, i first thought Prosody was a service
[17:42:22] <Diezel> best run on linux i guess?
[17:42:39] <Diezel> (got a dedicated linux server in germany)
[17:43:15] <dwd> Linux should be fine, if that's what you have.
[17:43:42] <Diezel> alright
[17:44:29] <Diezel> any one you guys made web apps connected to a BOSH server?
[17:44:42] <Diezel> i mean apps that are in production (live)
[17:46:11] <Link Mauve> I contribute to Jappix, why?
[17:46:31] <Diezel> just wondering
[17:46:46] <Diezel> im pretty new to IM via xmpp
[17:47:29] <Link Mauve> XMPP isn’t limited to IM, you can do a lot of wonderful things with it!
[17:48:00] <Diezel> yeah i know, but in my case im interested in the im/group-chat funcitons
[17:48:03] <Diezel> multi-user chat
[17:48:12] * petermount left the chat.
[18:10:59] * scippio_netbook left the chat.
[18:12:43] * luca tagliaferri left the chat.
[18:15:58] * Treebilou joined the chat.
[18:16:09] * elmex joined the chat.
[18:18:14] * wiretap joined the chat.
[18:19:55] * Neustradamus joined the chat.
[18:22:40] * petermount joined the chat.
[18:22:53] * mlundblad joined the chat.
[18:23:03] * mehdi61b joined the chat.
[18:23:10] * petermount left the chat.
[18:24:45] * abhinavsingh joined the chat.
[18:24:59] * zanchin joined the chat.
[18:27:26] * will.thompson joined the chat.
[18:28:01] * stpeter joined the chat.
[18:36:28] * dwd joined the chat.
[18:41:41] * darkrain_ joined the chat.
[18:42:38] * jonas joined the chat.
[18:44:12] * mehdi61b left the chat.
[19:03:32] * scippio joined the chat.
[19:25:19] * Treebilou left the chat.
[19:25:22] * Treebilou joined the chat.
[19:26:19] * Treebilou left the chat.
[19:26:22] * Treebilou joined the chat.
[19:30:19] * niekie joined the chat.
[19:56:27] * Tobias joined the chat.
[20:03:25] * mehdi61b joined the chat.
[20:03:35] * mehdi61b left the chat.
[20:14:03] * will.thompson left the chat.
[20:14:04] * will.thompson joined the chat.
[20:14:28] * will.thompson left the chat.
[20:14:57] * will.thompson joined the chat.
[20:15:23] * will.thompson left the chat.
[20:15:57] * sjr joined the chat.
[20:16:17] <sjr> What's a good Java XMPP Library?
[20:16:23] <sjr> If smack is not very good
[20:17:57] * Link Mauve joined the chat.
[20:29:03] * MattJ joined the chat.
[20:34:16] <stpeter> sjr: it seems that most people use Smack
[20:34:31] <stpeter> (sorry, just returned from being AFK)
[20:34:38] <sjr> np
[20:34:50] <sjr> Is there any reason why it blocks on IQ requests?
[20:35:07] <stpeter> um, that seems like a serious bug, if it does that
[20:35:34] <stpeter> brb
[20:35:41] <sjr> 'it' seems to be doing that, though I'm not sure, that was consistent with my observation, and someone pointed that out as what was happening, not sure if it's true or not.
[20:36:00] <sjr> getting users avatars from the server seems to choke out the rest of the connections
[20:37:39] <MattJ> sjr, yes, it does block
[20:38:01] <sjr> any particular reason they would have done this?
[20:38:11] <sjr> didn't feel like having callbacks?
[20:39:04] <MattJ> I don't know Java well, but at least there are more sensible ways in existence of not having callbacks and not blocking either
[20:40:15] <sjr> Hmmmm okay I think I'll just work around it then
[20:40:37] <sjr> I imagine I can probably just write raw IQ packets onto the wire, and pick them up, and it wouldn't block
[20:41:01] <sjr> what would you call the three portions of a jabber ID?
[20:41:05] <sjr> user@host/resource?
[20:41:40] <sjr> Trying to think of general terms for the code
[20:42:11] <MattJ> !xmpp-addr
[20:42:15] <MattJ> sigh
[20:42:34] * johnny joined the chat.
[20:42:35] <MattJ> http://tools.ietf.org/html/draft-ietf-xmpp-address
[20:42:59] <MattJ> In my code, node, host, resource
[20:43:15] <sjr> ah
[20:43:21] <sjr> okay that makes sense
[20:43:27] <sjr> How do you distinguish
[20:43:28] <sjr> between
[20:43:48] <sjr> A fully qualified jabber ID, (with reosurcepart) and without it?
[20:43:51] <MattJ> "localpart" is the new "node" it seems :)
[20:44:02] <MattJ> One has a / after a @, the other doesn't
[20:44:08] <sjr> No I mean in your code
[20:44:20] <sjr> For instance if I have two objects
[20:44:24] <MattJ> full JID / bare JID
[20:44:29] <sjr> ah
[20:44:38] <sjr> So FullJIDs have a resource part and BareJIDs don't
[20:44:45] <sjr> and FullJids can be converted to BareJIDS?
[20:44:53] <sjr> so things like the roster primarily works with BareJIDs?
[20:45:02] <sjr> where as conversation windows primarily work with fulljids.
[20:45:22] <MattJ> Correct
[20:45:33] <sjr> Is Full JID / Bare Jid, your distinction, or a common one?
[20:46:12] <MattJ> It's a standard distinction, they're handled differently in various places
[20:46:17] <MattJ> Notably routing
[20:46:23] <sjr> the terms I mean
[20:46:29] <MattJ> The terms are standard
[20:46:32] <sjr> oh okay
[20:46:34] <sjr> hmmmm
[20:46:41] <sjr> next question
[20:46:54] <MattJ> Note that technically "domain" is also a bare JID, and "domain/resource" is also a full JID
[20:46:54] <sjr> are there any XEPs related to getting chat history information off the server
[20:46:59] <sjr> Yeah
[20:47:39] <MattJ> There are - the (IMHO) horrendously complex XEP-0136, and a simpler one I'm working on
[20:48:09] <sjr> hmmmmm
[20:48:13] <sjr> what language and how far along is yours?
[20:48:27] <MattJ> The spec is in English :)
[20:48:43] <sjr> I meant an implementation?
[20:48:54] <MattJ> The implementation isn't really in existence yet, when it is - Lua
[20:49:25] <sjr> how far along is the spec?
[20:49:53] <MattJ> I'm aiming to submit it prior to the next council meeting (January)
[20:50:13] <sjr> how complex is yours?
[20:50:21] <MattJ> around the same time I'll hopefully have a fully-working client/server
[20:51:17] <MattJ> Quite simple, you ask for messages matching certain critiria (to/from a JID, within a certain timespan) and the server sends them, wrapped in a message
[20:51:37] <MattJ> *criteria, even
[20:51:39] <sjr> hmmmmm
[20:51:48] <sjr> can you specify a limit?
[20:51:49] <MattJ> /me blames the snow for his inability to type
[20:52:00] <sjr> i.e. last 'n' messages
[20:52:52] <MattJ> The server can, the client can't
[20:52:53] <sjr> and perhaps more importantly, does it return both sides of the message?
[20:52:58] <sjr> hmmmmm
[20:53:17] <MattJ> "both sides of the message"?
[20:53:27] <sjr> basically I'd like to reconstruct a conversation or like the last 10 messages in a conversation easily
[20:53:38] <sjr> so something like requesting, between 'me' and 'you' the last 10 messages.
[20:54:11] * waqas joined the chat.
[20:54:28] <MattJ> Most people (users and client devs) simply want to sync history among multiple clients
[20:54:29] <sjr> and then perhaps the previous 10-20 messages
[20:54:37] <sjr> Yeah that was one idea I had
[20:54:40] <MattJ> which is why I didn't factor in the ability for the client to set a limit, but only a timespan
[20:54:57] <sjr> but I'm actually trying to get the previous conversation on the server in the client
[20:55:09] <sjr> similiar to how Psi reopens the window
[20:55:11] <MattJ> And a conversation is always 10 messages? :)
[20:55:15] <sjr> no
[20:55:20] <sjr> at the top of the window they'll be osmething called
[20:55:24] <sjr> 'get next 10 messages'
[20:55:25] <sjr> ^^
[20:55:29] <sjr> and that'll request it from the server
[20:55:37] <sjr> and populate them above
[20:55:46] <sjr> so you can actually keep getting messages and going back
[20:55:53] <sjr> originally I was going to do something with Remote Control and stuff
[20:55:58] <sjr> but I find it tedious and tiresome
[20:56:09] <sjr> and this would actually negate the need for implementing message forwarding.
[20:56:17] <sjr> and fix the lack of client support
[20:56:23] <sjr> when I can just get the messages from the server.
[20:56:24] <MattJ> Yes, agreed
[20:56:49] <MattJ> We (Prosody) also noticed it even has ties with offline messages, and flexible retrieval of them :)
[20:57:06] <sjr> what do you mean?
[20:57:10] <MattJ> e.g. offline messages would just be stored in the archive, with a flag that they haven't been delivered yet
[20:57:39] <sjr> ah
[20:57:47] <sjr> I generally have a client online at all times
[20:58:01] <sjr> Can I see the draft, or is it private?
[20:58:48] <sjr> to possibly implement some parts of it
[20:59:11] <MattJ> I can dig it out and XMPP/email it to you
[20:59:16] <sjr> sure
[20:59:23] <MattJ> Objections to me adding you to my roster?
[20:59:27] <sjr> not at all
[21:00:52] * jonkri@jabber.org joined the chat.
[21:06:50] * Treebilou left the chat.
[21:14:39] <johnny> sjr, i couldn't tell that mattj told you that there is an implementation of xep 136
[21:14:42] <johnny> did he?
[21:14:47] <johnny> in lua of course..
[21:14:50] * abhinavsingh left the chat.
[21:15:19] <darkrain_> Is that actually a complete implementation?
[21:15:30] <MattJ> It's pretty complete, yes
[21:16:00] <MattJ> Not that anyone has used it, because there are few to no deployed clients that support it :)
[21:16:08] <MattJ> Gajim uses just a single part of the spec
[21:29:06] * Florob joined the chat.
[21:30:15] * Kev joined the chat.
[21:33:00] * tofu joined the chat.
[21:33:07] * Link Mauve left the chat.
[21:35:20] * jonkri@jabber.org left the chat.
[21:39:57] <sjr> What docs should I read if I want to write a component, and make sure it's compliant?
[21:40:08] <MattJ> !xep 114
[21:40:10] <sjr> my knowledge is rusty
[21:40:13] * Zash joined the chat.
[21:40:19] <MattJ> Zash, !xep 114
[21:40:39] <sjr> no I meant even before that, to makee sure I'm following Jabberisms appropriately?
[21:40:49] <MattJ> That's what the spec is for
[21:40:51] <Zash> MattJ: You're xep 114
[21:41:00] <darkrain_> I think he's MattJ, actually.
[21:41:14] <darkrain_> Definable only via tautology.
[21:41:28] <MattJ> waqas, !xep 114?
[21:41:31] * Testur joined the chat.
[21:41:36] <Zash> !xep 114
[21:41:43] <Zash> pfft
[21:41:44] * Testur left the chat.
[21:41:51] <darkrain_> ...isn't it safe to assume there's no bot in here that responds to "!commands"? :P
[21:41:51] <MattJ> Sigh, I could have typed the URL myself by now, you're all useless :)
[21:41:58] <waqas> MattJ: No, !xep 225
[21:42:00] <darkrain_> (13:41:55) HAL: XEP-0114: Jabber Component Protocol is Historical (Active, 2005-03-03) See: http://xmpp.org/extensions/xep-0114.html
[21:42:01] <waqas> http://xmpp.org/extensions/xep-0225.html
[21:42:05] <MattJ> darkrain, \o/
[21:43:27] <sjr> Hmmmmm
[21:43:28] <sjr> lets see
[21:44:36] <sjr> So this might be a stupid question, MattJ but are the IQ requests in your addressed to some component, say mam.server.com, or just to/from the server, and I pick them off
[21:44:44] <darkrain_> MattJ: Human jdev<>prosody MUC proxy :)
[21:44:44] <sjr> similar to how transports work
[21:46:10] <MattJ> sjr, they have no 'to' address, to imply they are handled by the user's server
[21:46:26] <MattJ> but it can be addressed to another entity if necessary, e.g a MUC server
[21:46:38] * Testur joined the chat.
[21:46:41] <MattJ> or if you want to add some discovery, I guess we can allow for external archiving services
[21:46:45] <Zash> Testur: ping
[21:46:46] <Testur> Zash: pong
[21:47:08] <Zash> @ping
[21:47:09] <Testur> Zash: pong
[21:47:11] <Zash> right
[21:47:14] * Testur left the chat.
[21:47:56] <MattJ> Zash, I started on a pubsub->MUC repeater
[21:47:56] <sjr> hmmmmm
[21:48:03] <Zash> MattJ: OH
[21:48:05] <MattJ> Zash, pubsub.prosody.im :)
[21:48:17] <sjr> nah no service discovery I just want to rub out this server implementation as quikcly as possible
[21:48:18] <Zash> MattJ: Define "repeater"
[21:48:40] <MattJ> Zash, primarily for atom pubsub payloads to MUC messages
[21:49:09] <MattJ> sjr, you can hard-code it for now, but it can't go in the spec that way :)
[21:49:11] <Zash> MattJ: client or internal?
[21:49:19] <MattJ> Zash, riddim
[21:49:24] <Zash> k :)
[21:49:34] <sjr> prefered name for a component?
[21:49:48] <Zash> MattJ: So I could scrap my `rsstail | clix` thingy then :)
[21:49:52] <MattJ> sjr, What do you mean by "name"?
[21:50:05] <MattJ> Zash, http://code.matthewwild.co.uk/hg2pubsub
[21:50:08] <sjr> what should I call the project in svn / eclipse / code
[21:50:12] <sjr> will it go by mam?
[21:50:28] <MattJ> mam is ok :)
[21:50:38] * tofu left the chat.
[22:19:56] * Link Mauve joined the chat.
[22:20:39] * Zash left the chat.
[22:21:01] * Zash joined the chat.
[22:23:35] * Zash left the chat.
[22:24:00] * Zash joined the chat.
[22:33:12] <sjr> if it's addressed to the server, then it's an 'internal' component?
[22:33:21] <sjr> as oposed to a subdomain, that's an 'external' component?
[22:49:41] <darkrain_> No. An "internal" component is one that is written to tightly integrate with the server (so it's typically not trivially portable to other server software). An "external" component implements one of the two protocols that waqas and I linked to.
[23:04:46] * Tobias left the chat.
[23:13:11] * jonas left the chat.
[23:19:21] * stpeter left the chat.
[23:44:40] * niekie left the chat.
[23:47:43] * niekie joined the chat.
[23:59:54] * Florob left the chat.
[23:59:57] * Florob joined the chat.
[00:02:37] * Florob left the chat.