XSF Discussion - 2017-12-05


  1. marc

    Ge0rG, Did you take a look at the XEP?

  2. Ge0rG

    marc: you mean at the examples? 😜 yes, I did

  3. marc

    Ge0rG, yes the examples ;) Any objections so far? :P

  4. Ge0rG

    marc: I still think that the ad-hoc command has two parameters too many. Also not sure about just adding another element to the IBR request

  5. marc

    Ge0rG, these two elements are still optional ;)

  6. marc

    Ge0rG, do you have an other idea for IBR?

  7. Ge0rG

    marc: I'm not sure means I don't know if this can be made legal by the XEP. The alternative would be to use full fledged Data Forms

  8. Ge0rG

    marc: and it needs some way to integrate with PARS, so that users who already have an account will be accounted for as well

  9. marc

    Ge0rG, what do you mean? can you give me an exmaple?

  10. intosi

    Yay. Spim from @yax.im.

  11. goffi

    Hi, https://news.ycombinator.com/item?id=15850597

  12. goffi

    some votes may help ;)

  13. Tobias

    intosi, also got it and put the domain on my blocklist. but maybe Ge0rG can get his act together and prevent these things

  14. SouL

    Of course! yes goffi :D

  15. edhelas

    upvoted :p

  16. Zash

    Ge0rG: How's your acting?

  17. Flow

    jonasw, no ProtoXEP annoucement for ISR 0.0.5? I also don't see a council trello card for it

  18. Flow

    goffi, upvoted, also read the blog post, sounds great!

  19. Tobias

    goffi, why does the vidoe have white bars top and bottom?

  20. goffi

    Tobias: because it's old blog renderer and the CSS is bad

  21. jonasw

    Flow, no

  22. jonasw

    I don’t do that normally, I thought your mail was announcement enough

  23. jonasw

    maybe CC council@ next time

  24. goffi

    but can't use the new one yet (which is responsive), there is not yet atom feed or pagination.

  25. edhelas

    you shouldn't enforce width and height for the video size

  26. jonasw

    (ProtoXEP updates are out-of-process, so there’s no tooling for this)

  27. Flow

    jonasw, ok, i've a feeling that people will refuse to deal with the submission if it's not officially announced. Would you be so kind and add a card to council's trello?

  28. jonasw

    I doubt that people will refuse that

  29. jonasw

    I am in a meeting right now

  30. Flow

    hope so

  31. jonasw

    remind me in a few hours, then I’ll do that

  32. Ge0rG

    Tobias: seriously? You've blocked yax.im?

  33. Tobias

    Ge0rG, if domains send spam my way, i block them :)

  34. jonasw

    Tobias, maybe first contact the admin?

  35. jonasw

    that’s kinda extreme

  36. Tobias

    it's even the less harsh approach, compared to others who whitelist domains they do s2s with :)

  37. jonasw

    especially if the admin is part of the XMPP core-ish community

  38. Tobias

    jonasw, well...i can unblock them

  39. Tobias

    even did so after a week

  40. Ge0rG

    Tobias: that makes me very sad, still

  41. Tobias

    it also makes me very sad that i received spam from your domain

  42. Ge0rG

    Tobias: so what would be your proposed solution? Shut down all public servers?

  43. Tobias

    no...apply some limitations to new accounts on public servers

  44. Guus

    Oh, I'm with Tobias: I've blocked various domains that delivered nothing to mine, except spam.

  45. Tobias

    and monitor behaviour of new accounts on public servers

  46. Tobias

    i have more than 50 domains on my block list

  47. Guus

    oh, i ~10 :)

  48. Ge0rG

    Tobias: I'm doing the following: - limit IBR per IP - monitor large numbers of outgoing messages and block accounts - limit the number of stanzas a client can send - watch my logs - react to abuse reports as fast as I can

  49. Ge0rG

    Tobias: and you didn't even report it to me.

  50. Tobias

    Ge0rG, will do the next time, I promise

  51. Ge0rG

    Tobias: you still can report the message content that you received :P

  52. SouL says: come on, cheer up everybody yay :)

  53. Ge0rG

    Tobias: I know how annoying spam is, and it really really really makes me sad to learn about it in such a public-shaming way.

  54. edhelas

    Tobias Guus is it possible to get thoses blacklists ?

  55. Tobias

    edhelas, yes

  56. Ge0rG

    Tobias: so what's the spam message you received, anyway? I'd like to improve my outbound filters.

  57. Tobias

    Ge0rG, just going through my logs to find it

  58. Ge0rG

    Tobias: and did you receive it from digital.advert307@yax.im or a different JID?

  59. Guus

    edhelas, I can look them up for you. Note that because _my_ users aren't appear to be talking to valid accounts on those domains, yours might. I'm not sure if a permanent blacklisting is approriate.

  60. Zash

    I also block on first offence. I am evil.

  61. Ge0rG

    Tobias: so I've just deleted eight spammer accounts that connected through the same IP address. If you had told me the JID or the content of the message you received (did you receive one at all?), I possibly could have deleted more.

  62. Tobias

    Ge0rG, does your server ping every s2s connection every minute? even if you don't send other messages over that connection for a longer time?

  63. Ge0rG

    Tobias: it does ping other servers, but I'm not sure if it is actually set to one minute. Why?

  64. Zash

    wc -l blocklist/zash.dat 256 blocklist/zash.dat

  65. Zash

    Eeeeeeeevil

  66. Tobias

    just looking at my log

  67. Ge0rG

    Zash: how often will prosody 0.10 send whitespace via s2a?

  68. Ge0rG

    Zash: how often will prosody 0.10 send whitespace via s2s?

  69. Zash

    Ge0rG: We never got around to adjusting the timeout, so after 6h of silence.

  70. Ge0rG

    mod_pinger should only ping c2s, from reading the source code.

  71. jonasw

    dwd, I added ProtoXEP ISR to the proposed agendums [sic]

  72. jonasw

    (cc @ Flow)

  73. Ge0rG

    Zash: why is it sending two whitespaces per minute on an s2sin then? And also one ping per minute on s2sout?

  74. Zash

    Ge0rG: Are you using 3rd party plugins that I have no idea about what they are doing?

  75. Ge0rG

    Zash: if by "3rd party" you mean "from prosody-modules", then yes.

  76. Zash

    Yes, I do

  77. Ge0rG

    Zash: where is the code that sends the once-in-6hr whitespace?

  78. Zash

    Ge0rG: In mod_s2s, when the network backend invokes the "read timeout" handler.

  79. Zash

    Have you perhaps changed the read timeout setting?

  80. Ge0rG

    Zash: I have. `network_settings.read_timeout = 840` - which is NOT 60 seconds.

  81. Ge0rG

    Zash: also why should it send twice on an s2sin link?

  82. Zash

    Ge0rG: Duno. Bug?

  83. Ge0rG

    just to pick a random s2s: Dec 05 10:18:52 s2sin98ca6d0 debug sending: Dec 05 10:18:52 s2sin98ca6d0 debug sending: Dec 05 10:18:52 s2sin98ca6d0 debug Received[s2sin]: <iq id='keepalive' type='result' to='yax.im' from='tengu.chat'> Dec 05 10:19:52 s2sin98ca6d0 debug sending: Dec 05 10:19:52 s2sin98ca6d0 debug sending: Dec 05 10:19:52 s2sin98ca6d0 debug Received[s2sin]: <iq id='keepalive' type='result' to='yax.im' from='tengu.chat'>

  84. Zash

    Ge0rG: Weird. Libevent?

  85. Ge0rG

    Tobias: thanks for pointing out the bug. Were you able to find anything in your logs regarding that spammer you encountered?

  86. Tobias

    not yet...will tell you in about half an hour

  87. jonasw

    zinid, if you’re doing strict schema validation, how do you handle the lax order requirements of XMPP?

  88. jonasw

    which cannot really be reflected in schemas?

  89. jonasw

    (well, somebody did the work to reflect that in XEP-0030, but ...)

  90. Ge0rG

    Sigh. Blocking messages from strangers is really annoying. I get a subscription request from a JID I don't recognize and I can't even ask them why they contact me without exposing my presence.

  91. Ge0rG

    Oh, `admin@xmpp.wiki` is not actually an admin.

  92. SouL

    Does .wiki domain exist?

  93. Zash

    Looks like one of chatmes domains?

  94. SouL

    Didn't know that

  95. Ge0rG

    Zash: yes, it is.

  96. mathieui

    mod_block_registrations should also be required for IBR servers…

  97. mathieui

    with admin, operator, and root banned

  98. Ge0rG

    mathieui: right, that too.

  99. Ge0rG

    block_registrations_users = { "abuse", "admin", "administrator", "hostmaster", "info", "news", "noc", "owner", "postmaster", "register", "registration", "root", "security", "service", "signup", "support", "sysadmin", "sysop", "system", "test", "trouble", "webmaster", "www", "xmpp", }

  100. Ge0rG

    based on http://tools.ietf.org/html/rfc2142 and http://blog.postbit.com/reserved-username-list.html

  101. Ge0rG

    added `operator` now.

  102. Ge0rG

    Zash: ^

  103. Zash

    Ew, spaces for indentation!

  104. Ge0rG

    Zash: what? I'm using tabs.

  105. Zash

    The module

  106. SouL

    wtf who uses tabs for indentation

  107. ralphm

    This

  108. Zash

    No, TABS! Holy war!

  109. mathieui

    oh no

  110. mathieui

    maybe we should talk about tea instead

  111. Zash

    No, Coffee! Holy war!

  112. mathieui

    nobody expects the xmpp inquisition

  113. Ge0rG

    mathieui: nobody expects the whitespace inquisition?

  114. Tobias

    Ge0rG, https://q.zash.se/a6db0f2a6dcf.txt

  115. Ge0rG

    Tobias: that's been almost two weeks ago!?

  116. Tobias

    yes?

  117. Ge0rG

    Tobias: you didn't know that I'm the admin of yax.im?

  118. Tobias

    i did

  119. Tobias

    like I said, next time I'll report it to you before blocking your domain

  120. Ge0rG

    Tobias: sorry, but I'm speechless.

  121. Tobias

    is the account already deleted?

  122. Ge0rG

    BTW, there is a dozen of accounts that used the same IP address.

  123. Ge0rG

    Tobias: no. I'm not even sure why the message went out at all. It should be blocked for multiple reasons.

  124. Tobias

    like high percentage of YELLING?

  125. Ge0rG

    Tobias: I'm not measuring that. But multi-line messages to non-subscribers should be blocked.

  126. Holger

    jonasw: What order requirement can't be reflected?

  127. Zash

    Ge0rG: does `prosodyctl mod_firewall test` work?

  128. Holger

    jonasw: Either way ejabberd is using it's own schema format, not XSD.

  129. Ge0rG

    Zash: I remember now. my `bodycheck` rule had to be disabled for outgoing messages because IN_ROSTER doesn't work in `::preroute`

  130. Zash

    Say what

  131. zinid

    jonasw, we don't use XSD, they are shit

  132. Ge0rG

    Zash: what does IN_ROSTER return when applied in the ::preroute chain?

  133. Zash

    Ge0rG: Oh right, because it refers to the receivers roster, which wouldn't be available for a remote user

  134. Ge0rG

    Zash: so how do I find out if the local sender is subscribed to the remote receiver?

  135. zinid

    jonasw, it has erlangish format, here it is: https://github.com/processone/xmpp/blob/master/specs/xmpp_codec.spec

  136. Zash

    Ge0rG: And the sender can just add whatever they want to their roster, so you'd need the thing, yes, subscription check

  137. Ge0rG

    SUBSCRIBED Tests whether the recipient is subscribed to the sender, ie will receive presence updates from them. Note that this does work, regardless of direction and which chain is used, since both the sender and the recipient will have mirrored roster entries.

  138. Zash

    Ge0rG: SUBSCRIBED?

  139. Zash

    Right

  140. Ge0rG

    is that what I need? Will it work as expected?

  141. Zash

    Ge0rG: Unless it has the same bug...

  142. Ge0rG

    Zash: actually I need the opposite - whether the sender is subscribed to the receiver.

  143. Zash

    Ge0rG: Why?

  144. Ge0rG

    Whoever invented asymmetric presence subscription.

  145. Ge0rG

    Zash: because a spammer could pre-approve all receivers?

  146. Zash

    Ge0rG: But that's not implemented! :D

  147. Ge0rG

    Zash: ah, it looks like `rostermanager.is_contact_subscribed` will actually check both directions.

  148. Ge0rG

    Zash: thanks very much.

  149. Ge0rG

    So now I can apply a `JUMP_CHAIN=user/bodycheck` to outgoing messages as well. But how can I add another action to inform the admin about local users spamming?

  150. Ge0rG

    JUMP_CHAIN will BOUNCE when spam was found.

  151. Ge0rG

    Tobias: deleted the twelve spammer accounts. Improved firewall rules. Sent abuse report to ISP. Thanks for reporting.

  152. Tobias

    ta

  153. jonasw

    Holger, in XMPP, the order of elements of different names (e.g. <{disco}feature/> and <{disco}identity/>) is irrelevant. this can be, but is very hard to, represent with XSD

  154. jonasw

    but sure, if you use your own validation, that doesn’t affect you, zinid

  155. zinid

    this is not strictly speaking the validation, it's more like ASN.1 codec, which transforms XML into internal language structure

  156. zinid

    but validation is performed during decoding, yes

  157. jonasw

    you have a weird obsession for ASN.1

  158. jonasw

    which is fine, I guess

  159. tux

    zinid: You do Erlang, too? xD

  160. tux

    (just kidding)

  161. zinid

    tux, well, erlang knowledge is required for ejabberd development, most of the time 🙂

  162. Holger

    jonasw: <xs:complexType><xs:all><xs:element name="feature"/><xs:element name="identity"/></xs:all></xs:complexType> won't do the trick?

  163. zinid

    jonasw, ha, you didn't see my obsession regarding parsers yet 😀

  164. jonasw

    Holger, afaik not

  165. jonasw

    I.

  166. zinid

    jonasw, for example, from this ABNF file https://github.com/processone/xmpp/blob/master/c_src/uri.abnf the parser code is generated: https://github.com/processone/xmpp/blob/master/c_src/xmpp_uri.c

  167. jonasw

    I think that enforces order between feature and identity

  168. Holger

    jonasw: No. That would be xs:sequence instead of xs:all.

  169. jonasw

    Holger, tbh, I have not much of an idea about XSD, I tried to read the spec and I find it massively confusing

  170. jonasw

    there have been some comments w.r.t. on standards@

  171. Ge0rG

    Ah, the new rules absolutely pay off. Found another 18 spammer accounts.

  172. tux

    zinid: yeah, that's true. 8)

  173. Holger

    jonasw: I'm not much into it either, dunno whether you can express all XMPP syntax weirdness with XSD.

  174. Ge0rG

    inetnum: 176.126.252.8 - 176.126.252.15 netname: FVDE descr: Tor Exit Node Hosting

  175. Ge0rG

    Whoops. Four of five IPs that injected spam today are exit nodes.

  176. zinid

    wow, suddenly

  177. zinid

    just ban all exit nodes 😀

  178. Zash

    Require all Tor users fill in a Google Captcha!

  179. intosi

    Ge0rG: good busy!

  180. Ge0rG

    Okay, so I've deleted another 50 accounts

  181. Ge0rG

    @iteam - our wiki claims "The XMPP Standards Foundation maintains a dedicated email list (muc@xmpp.org) about MUC" but there is no such list. Does anybody want one?

  182. jonasw

    I’m pretty sure I was on that list.

  183. jonasw

    it was deleted though

  184. jonasw

    Subject: [MUC] deleting this list Date: 14.02.13 05:09 From: Peter Saint-Andre <stpeter@stpeter.im> To: muc@xmpp.org I just deleted the specialized bosh@xmpp.org list. I think it would be appropriate to do the same with the muc@xmpp.org list. Instead of having a specialized conversation here, we'll simply use the main standards@xmpp.org list. Any objections? Peter

  185. jonasw

    the only reply to that was from someone who claimed to not have done anything with jabber for 3 years

  186. Ge0rG

    How appropriate.

  187. Zash

    Hah

  188. jonasw

    TBH, I don’t see a use-case for separate lists

  189. jonasw

    Ge0rG, edit that out of the wiki maybe?

  190. Zash

    jonasw: Very active topics that drown out others?

  191. Ge0rG

    jonasw: done

  192. jonasw

    Zash, I find standards@ still comfortable to read

  193. Kev

    I think it's more about interests not overlapping than about traffic.

  194. Ge0rG

    If only we had threaded email-like message support in XMPP.

  195. Zash

    It works like a sort of filter, but enforced by the sender instead of the receiver

  196. Kev

    If you expect the same people on both lists, it's not gaining much, but if you think lots of people care about MUC, but not other stuff on standards@ there's a point.

  197. Kev

    I don't think there is in this case.

  198. jonasw

    Ge0rG, why aren’t you in jdev@?

  199. Ge0rG

    jonasw: I'm not?

  200. jonasw

    now you’re

  201. Ge0rG

    jonasw: I had a power outage.

  202. jonasw

    zinid, re your standards@ reply: > Well, yes, it will be timed out. I also don't think this is a > violation, because in this case we cannot block IQ from flooders for > example, as this is also a violation.

  203. jonasw

    I would suggest to send some IQ type="error" back in these cases

  204. jonasw

    and making IQ requests timeout is super-annoying

  205. Kev

    You can't type=error to a result or an error.

  206. jonasw

    Kev, yes

  207. jonasw

    this was in response to what he said about flooders

  208. jonasw

    (which is why I didn’t reply on the standards@ thread)

  209. zinid

    jonasw, why would I send iq=errors to flood IQs? wtf?

  210. zinid

    what if this is a dos attack, I should do that too?

  211. jonasw

    zinid, depends on how sure you are that it’s a genuine flood

  212. zinid

    ok, so if I want that much, then I can 🙂

  213. jonasw

    if might also be a client which is confused or simply has a lot of things to do. sending proper type="wait" errors back.

  214. jonasw

    it might also be a client which is confused or simply has a lot of things to do. sending proper type="wait" errors back.

  215. jonasw

    it might also be a client which is confused or simply has a lot of things to do. sending proper type="wait" errors back seems more reasonable to me, until it becomes a burden.

  216. zinid

    whatever, as daniel said any discussions are pointless

  217. zinid

    you already built up your mind, why bother

  218. zinid

    I'm also not sure why on earth I should route (or store) malformed packets

  219. jonasw

    because you can’t be sure that they’re malformed

  220. zinid

    jonasw, I can if I have schema

  221. jonasw

    okay, but then you have to consider how schemas are used in XMPP and acknowledge that elements and attributes may be added at any time, and must be ignored

  222. zinid

    well, that's the rule I don't like

  223. jonasw

    I know that

  224. jonasw

    but that’s how XMPP works and has always worked

  225. jonasw

    (*always: to my knowledge)

  226. zinid

    and where is it now?

  227. jonasw

    I don’t think that this specific rule is the cause of the low popularity of XMPP

  228. zinid

    it can be pretty much though

  229. jonasw

    how?

  230. zinid

    what? lack of formal validation of packets/

  231. zinid

    ?

  232. zinid

    for example, some people would rather use something more robust, like asn.1

  233. jonasw

    you can formally validate what you know about, there’s no problem with that

  234. jonasw

    no, if you’re going down the "no XML" route, what people nowadays want to use is JSON

  235. zinid

    but I know there is no <retry/> element in the schema

  236. jonasw

    in which schema?

  237. jonasw

    the one you made up, or the non-normative which may or may not be in the XEP?

  238. zinid

    ah, indeed, we don't even have schemas

  239. jonasw

    exactly

  240. Zash

    The 'critical' property of things in ASN.1 sure seems nice

  241. jonasw

    because the rule I mentioned earlier (unknown things need to be ignored, and also the order of things does not matter) is hard to codify in XMLSchema

  242. jonasw

    Zash, google dropped "required" in protocol buffers 3.0

  243. jonasw

    (critical is "you have to understand it", right?)

  244. zinid

    jonasw, yeah, and you resorted for postulate this ad-hoc

  245. jonasw

    zinid, I don’t understand your statement, sorry, could you rephrase?

  246. Zash

    jonasw: Yes. If you don't understand something marked 'critical' then that's a fatal error and you should abort everything.

  247. Zash

    Much nicer than just blanked ignoring of everything not understood.

  248. jonasw

    Zash, idneed

  249. jonasw

    we could have that, if we wanted to

  250. Zash

    In XML? Hrrrm

  251. jonasw

    but even then I’d find it questionable for a server to decide what a client understands

  252. jonasw

    Zash, xmpp:critical="true", define xmpp prefix on <stream:stream/>, be done with it :-)

  253. jonasw

    but SamWhited will kill me for that

  254. Zash

    It probably wouldn't have much use outside of initial stream negotation

  255. jonasw

    possibly

  256. Zash

    Well. Depends

  257. Zash

    Altho that's working fine enough.

  258. zinid

    jonasw, nah, I'm pretty much bored

  259. zinid

    jonasw, I will anyway do what I think better

  260. Holger

    Basic XEP-0060 question. I don't get how the interaction of proper PubSub (non-PEP) nodes with presence is supposed to work.

  261. Holger

    E.g. pubsub#access_model=presence. This assumes the PubSub service has access to the node owner's roster data? The node owner might be a remote user, no?

  262. jonasw

    yes, I think so

  263. jonasw

    that access model probably simply doesn’t work for services where this isn’t true

  264. Holger

    Or pubsub#send_last_published_item=on_sub_and_presence (this is even the default).

  265. Holger

    This assumes the PubSub service will receive presence from the subscriber?

  266. jonasw

    probably

  267. Holger

    It's like these parts of 0060 were written without federation in mind.

  268. Zash

    In theory, the service could send a presence request

  269. jonasw

    Zash, so it’d have to regularly type="probe" the subscribers?

  270. Zash

    jonasw: if it's subscribed, it should get presence pushed to it, like any other contact

  271. jonasw

    oh good point

  272. zinid

    you still need to send probes after restart

  273. Zash

    Sure, it would have to do the things the server does for users with rosters.

  274. jonasw

    Zash, do servers do that on behalf of components?

  275. jonasw

    argh

  276. jonasw

    nevermind, I misread your sentence

  277. daniel

    Briefly looking over Ge0rG's email. Retraction... Wait there is a retraction feature in MIX? 😂

  278. daniel

    That makes me wonder what else is in there

  279. jonasw

    that mail is long enough to make kmail think for a moment before showing it. well done, Ge0rG

  280. Ge0rG

    daniel: that mail was shorter than I expected.

  281. jonasw

    that mail is long enough to make kmail think for a moment before showing it. well done, Ge0rG)

  282. daniel

    I wonder if Georg will be talking about the dish washing feature later in the email

  283. jonasw

    :D

  284. Ge0rG

    no, but there is a valet parking feature.

  285. daniel

    For scooter and cars?

  286. Steve Kille

    daniel: there is both user and administrator retraction. Both can be configured on or off

  287. Ge0rG

    for gas driven locomotives

  288. Steve Kille

    Ge0rG: will add the valet parking feature in next update

  289. Steve Kille

    Ge0rG: I plan to respond to your email later this week

  290. Ge0rG

    Steve Kille: I think there is no need to hurry. It took me multiple weeks to read the XEP and write the mail, so take your time :)

  291. daniel

    Ge0rG, LMC should probably be changed to use origin-ids

  292. intosi

    Steve Kille: is this valet parking feature available for my office trip next week? :)

  293. Ge0rG

    daniel: I think the stanza-id XEP should be changed to enforce a client setting message-id = origin-id.

  294. Ge0rG

    intosi: only if you implement MIX 2.0 until then

  295. daniel

    Ge0rG, probably. but that's orthogonal to changing LMC et al to using origin-ids

  296. Ge0rG

    daniel: changing LMC et all would be a breaking change.

  297. daniel

    and most sane implementations will already set message-id=origin-id

  298. daniel

    Ge0rG, sure

  299. daniel

    but it's a breaking change either way

  300. Ge0rG

    daniel: it's not a breaking change to fix stanza-id ;)

  301. daniel

    yes?! but it's still orthogonal

  302. Ge0rG

    daniel: you might resurrect the thread I had with Flow regarding that topic in October.

  303. Ge0rG

    let's say its complementary.

  304. daniel

    even if you force origin-id to be the same as message-id. if lmc gives origin-id precedence over message-id that's still a breaking change

  305. daniel

    because that xep has to deal with the case where they are not the same

  306. Ge0rG

    can't we just properly fix message-id, once and for all?

  307. daniel

    fix meaning?

  308. Ge0rG

    mandate globally unique message IDs

  309. Ge0rG

    and just plain reject messages that violate that rule

  310. daniel

    that doesn't prevent services from rewriting the id though

  311. daniel

    which is imho the bigger issue

  312. Ge0rG

    daniel: stopping id rewriting would be the other part of fixing message-id

  313. Zash

    But is the outgoing message from a MUC really the same message as the incoming one?

  314. Ge0rG

    Zash: if a tree falls in a MUC, and there are no participants, will there be a presence update?

  315. Zash

    Schrödingers presence update.

  316. Ge0rG

    Zash: when you want to LMC a MUC message you just sent, will you use the sent-message-id, the reflected-message-id, the MAM id or the origin-id?

  317. daniel

    origin-id

  318. daniel

    (once the XEP says so)

  319. Ge0rG

    Zash: is it the MUC service's task to track all message ID references it rewrites and fix them?

  320. zinid

    origin-id, stanza-id

  321. zinid

    you guys are reinventing version vectors and vector clocks

  322. Ge0rG

    http://www.abdsphysics.com/uploads/6/5/0/9/65090265/4802565.png?540

  323. Ge0rG

    I think that it's very typical for the XMPP standardization process that we end up with a message having three different IDs.

  324. Zash

    Why don't we stick a nonce in each message, apply canonicalization and declare that the message id is a hash of the canonical serialization of it?

  325. daniel

    fwiw Conversations already gives origin-id precedence over stanza-id when it comes to LMC, reciepts chat markers

  326. Zash

    /s ;)

  327. Ge0rG

    daniel: please comment on the "UPDATED: XEP-0359 (Unique and Stable Stanza IDs)" thread.

  328. Ge0rG

    daniel: thanks! :)