jdev - 2021-05-27


  1. Kev has left
  2. Kev has joined
  3. Kev has left
  4. Kev has joined
  5. gutuning has left
  6. debacle has left
  7. dezant has left
  8. gutuning has joined
  9. raghavgururajan has joined
  10. gutuning has left
  11. şişio has left
  12. Kev has left
  13. Kev has joined
  14. Kev has left
  15. Kev has joined
  16. pulkomandy has left
  17. pulkomandy has joined
  18. Kiwi has left
  19. lovetox has left
  20. dezant has joined
  21. gutuning has joined
  22. alexbay218 has joined
  23. lovetox has joined
  24. belong has left
  25. gutuning has left
  26. gutuning has joined
  27. Kev has left
  28. Kev has joined
  29. Kev has left
  30. Kev has joined
  31. lovetox has left
  32. gutuning has left
  33. gutuning has joined
  34. Kev has left
  35. Kev has joined
  36. belong has joined
  37. Yagizа has joined
  38. larma has left
  39. larma has joined
  40. marc0s has left
  41. marc0s has joined
  42. Kev has left
  43. Kev has joined
  44. Kev has left
  45. Kev has joined
  46. lovetox has joined
  47. wurstsalat has joined
  48. dezant has left
  49. asterix has left
  50. asterix has joined
  51. asterix has left
  52. asterix has joined
  53. asterix has left
  54. asterix has joined
  55. FireFly has joined
  56. asterix has left
  57. dezant has joined
  58. asterix has joined
  59. marc0s has left
  60. marc0s has joined
  61. moparisthebest has left
  62. asterix has left
  63. asterix has joined
  64. moparisthebest has joined
  65. dezant has left
  66. dezant has joined
  67. pulkomandy has left
  68. pulkomandy has joined
  69. pulkomandy has left
  70. pulkomandy has joined
  71. Alex has joined
  72. rion has joined
  73. asterix has left
  74. asterix has joined
  75. asterix has left
  76. asterix has joined
  77. Alex has left
  78. mikeye has joined
  79. jubalh has joined
  80. Alex has joined
  81. goffi has joined
  82. FireFly has left
  83. marc has joined
  84. xecks has joined
  85. gutuning has left
  86. gutuning has joined
  87. mikeye has left
  88. alexbay218 has left
  89. belong has left
  90. belong has joined
  91. debacle has joined
  92. marc has left
  93. rion has left
  94. marc has joined
  95. FireFly has joined
  96. rion has joined
  97. jubalh has left
  98. gutuning has left
  99. SouL has joined
  100. moparisthebest has left
  101. mac has joined
  102. debacle has left
  103. omighty has left
  104. Kiwi has joined
  105. omighty has joined
  106. şişio has joined
  107. marc0s has left
  108. marc0s has joined
  109. wurstsalat has left
  110. gutuning has joined
  111. mac has left
  112. raghavgururajan has left
  113. şişio has left
  114. asterix has left
  115. asterix has joined
  116. belong has left
  117. wurstsalat has joined
  118. Kiwi has left
  119. Kiwi has joined
  120. gutuning has left
  121. rion has left
  122. belong has joined
  123. paul has left
  124. paul has joined
  125. şişio has joined
  126. moparisthebest has joined
  127. gutuning has joined
  128. FireFly has left
  129. FireFly has joined
  130. Wojtek has joined
  131. omighty has left
  132. dezant has left
  133. gutuning has left
  134. gutuning has joined
  135. Alex has left
  136. floretta has left
  137. Alex has joined
  138. dezant has joined
  139. mac has joined
  140. omighty has joined
  141. şişio has left
  142. floretta has joined
  143. şişio has joined
  144. gutuning has left
  145. gutuning has joined
  146. marc0s has left
  147. marc0s has joined
  148. marc has left
  149. xecks has left
  150. xecks has joined
  151. marc has joined
  152. Wojtek has left
  153. gutuning has left
  154. Wojtek has joined
  155. mac has left
  156. mac has joined
  157. gutuning has joined
  158. SouL has left
  159. SouL has joined
  160. mac has left
  161. mac has joined
  162. rom1dep has left
  163. rom1dep has joined
  164. şişio has left
  165. şişio has joined
  166. şişio has left
  167. şişio has joined
  168. Kiwi has left
  169. gutuning has left
  170. gutuning has joined
  171. Freddy has left
  172. Freddy has joined
  173. gutuning has left
  174. gutuning has joined
  175. xecks has left
  176. xecks has joined
  177. x51 has joined
  178. jubalh has joined
  179. gutuning has left
  180. gutuning has joined
  181. xecks has left
  182. xecks has joined
  183. asterix has left
  184. asterix has joined
  185. pulkomandy has left
  186. floretta has left
  187. pulkomandy has joined
  188. floretta has joined
  189. mac has left
  190. mac has joined
  191. Kiwi has joined
  192. xecks has left
  193. Guus has joined
  194. xecks has joined
  195. Guus has left
  196. Kiwi has left
  197. Kiwi has joined
  198. Kiwi has left
  199. xecks has left
  200. xecks has joined
  201. asterix has left
  202. asterix has joined
  203. marc0s has left
  204. marc0s has joined
  205. marc0s has left
  206. marc0s has joined
  207. gutuning has left
  208. xecks has left
  209. xecks has joined
  210. gutuning has joined
  211. FireFly has left
  212. gutuning has left
  213. FireFly has joined
  214. rom1dep has anyone had a look at the component that matrix developed for bridging with IRC servers? Is that something that could be enhanced to serve MUCs in addition to whatever's matrix? If IRC Networks have already bitten the bullet and are running that on their servers, wouldn't that be the easiest and nicest way to bridge with IRC, while simultaneously having the typical MUC features between XMPPers? (MAM, receipts, avatars, …)
  215. moparisthebest Link?
  216. mathieui are we talking about this? https://github.com/matrix-org/matrix-appservice-irc
  217. asterix has left
  218. asterix has joined
  219. rom1dep dunno, maybe? I'm assuming that whatever they do requires server-side support, and if it's the new normal for the freenodes/libera.chat and others to run that service, then why the hell not benefit from it if we can PR our way into it
  220. moparisthebest rom1dep: oh the thing freenode runs to let matrix folk join? They could already run biboumi instead
  221. Zash rom1dep, what are you suggesting exactly?
  222. mac has left
  223. Zash Matrix "appservices" are equivalent to external components in the XMPP world, they have a privileged connection to the server.
  224. rom1dep moparisthebest: you think? Isn't their bridge letting users on matrix side see each others as matrix clients/the irc room as a native matrix room? I don't see how biboumi alone would emulate that
  225. mathieui rom1dep, it is slightly different
  226. mathieui their appservice is creating a matrix room and updating state both ways
  227. dezant has left
  228. mathieui you can also create any room and link it later to an irc channel
  229. mathieui (which is not what happens on the networks)
  230. mathieui A Matrix room can be connected to a IRC network in one of two ways: A portal room, which is a Matrix room created by the bridge on demand when a Matrix user attempts to join an alias that does not yet exist. E.g. #freenode_#myproject:matrix.org. The bridge will hold power over this room and grant moderator status (half-power) to any IRC operators or Matrix users with IRC ops in the room. A plumbed room (also known as provisioning). A Matrix user may create a room ahead of time for their community and later on decide to "plumb in" IRC users to that room. They can do this via an interative UI in Element, via the !plumb command or even via a HTTP endpoint. If done interatively, the bridge has a verification process to ensure the user on the Matrix side has the blessing of the IRC ops first. However, it's possible for the IRC bot to lack kick abilities in the room so kicks and bans may not be bridged both ways.
  231. mathieui and afterwards it gives a link to the forbidden page on matrix.org which will make MattJ unhappy
  232. moparisthebest rom1dep: what native XMPP muc features are you missing from biboumi
  233. mathieui moparisthebest, seeing other XMPP users as XMPP users
  234. mathieui and not through IRC
  235. MattJ moparisthebest, the situation is that two people joined to a "MUC" that is really an IRC channel won't see typing notifications, avatars, etc. of other XMPP users
  236. mathieui though that is not how the matrix irc appservice works (in "portal mode", that is)
  237. rom1dep so, we could hook onto this appservice, let it handle the IRC side of the sync, and translate the other side to a MUC, that way we don't have to reinvent a new biboumi nor to fore the hand of the IRC networks to add yet another gateway (they'd just update their existing matrix bridge)
  238. rom1dep lemme backlog
  239. mathieui rom1dep, this appservice is not really helpful
  240. moparisthebest Oh, well I imagine that could be fixed fairly easily in biboumi
  241. mathieui I mean, I expect 95% of the code to be matrix-related
  242. paul has left
  243. paul has joined
  244. moparisthebest biboumi has 99% of everything you want except avatars I guess
  245. Freddy has left
  246. mathieui moparisthebest, and possibly some heavy rewrites to not have split views of each rooms and handling of XMPP users in the same room
  247. mathieui (but I have not looked at the code in ages)
  248. rom1dep mathieui: I think there is a ton that goes on though, like users joining from matrix being given a IRC nick and such. Not having to reinvent such things could be good
  249. mathieui I don’t see how that’s different, they just take the display nick and add a [m] behind (that is configurable)
  250. rom1dep moparisthebest: I think I remember louiz' saying it wasn't a design goal of biboumi and would not be trivial to do
  251. rom1dep mathieui: they have the component create nicks for as many users are joined from the matrix side, take care of chatlog historisation, etc
  252. rom1dep biboumi can't deduplicate MAM for instance
  253. moparisthebest Biboumi supports single server mode already though, so it's partially a design goal
  254. moparisthebest Who really wants avatars anyway... :)
  255. rom1dep means A joins ; A leaves ; B joins ; B leaves → A doesn't sees B backlog, B doesn't see A backlog
  256. asterix has left
  257. asterix has joined
  258. rom1dep and when A and B are joined together, biboumi happily logs twice the same stuff
  259. moparisthebest My point is I think making that work for XMPP is doing 99999x more work than any changes you might want to make to biboumi
  260. rom1dep but why, though?
  261. moparisthebest You could make biboumi not do that, for instance
  262. mathieui 19:02:45 rom1dep> and when A and B are joined together, biboumi happily logs twice the same stuff → well that’s easy to know why, it is because that way you don’t have to handle any kind of privileges or state tracking linked to history
  263. mathieui much easier
  264. rom1dep however crappy and specific this component might be, at least 50% of it does the job
  265. moparisthebest And biboumi does 97% of the job
  266. debacle has joined
  267. rom1dep it doesn't, it addresses a different problem
  268. rom1dep bbl
  269. jubalh has left
  270. moparisthebest And the matrix bridge doesn't? :)
  271. goffi has left
  272. gutuning has joined
  273. goffi has joined
  274. jubalh has joined
  275. dezant has joined
  276. gutuning has left
  277. marc has left
  278. Freddy has joined
  279. stpeter has joined
  280. x51 has left
  281. lovetox hey, again issue with 0050
  282. lovetox The "sessionid" attribute helps to track a command execution across multiple stages. This attribute MUST be present for subsequent stages, and the responder SHOULD initialize (if not provided) or maintain this attribute. The value of this attribute MUST NOT be empty or null, but otherwise can be any string value. This value MUST be maintained by a requester while executing a command.
  283. lovetox lots of MUST in there but when it counts its vague
  284. lovetox This attribute MUST be present for subsequent stages
  285. lovetox so does this mean if there is no stage, means i execute a command, and the server responds with "completed" there needs to be no sessionid?
  286. Zash Yeah. Single-step commands could probably get away with ignoring that attribute.
  287. marc has joined
  288. lovetox ..
  289. lovetox not sure if i can handle that easily
  290. lovetox whole thing is iq based, why do we need a session anyway
  291. Zash Indeed.
  292. Zash Basically a session cookie, so useful for maintaining state serverside.
  293. jubalh has left
  294. Zash But you could also serialize the state into a hidden field
  295. Wojtek has left
  296. flow lovetox, being IQ based is not enough, cause one ad-hoc command session may span over multiple IQ request-response pairs
  297. gutuning has joined
  298. omighty has left
  299. omighty has joined
  300. gutuning has left
  301. Kev has left
  302. Kev has joined
  303. jubalh has joined
  304. Kev has left
  305. Kev has joined
  306. Yagizа has left
  307. rom1dep mathieui: from the 2 definitions that you posted ("plumbed" or "portal"), I'm still not sure to understand how they work, and whether the IRC networks that currently bridge with matrix have to run any component on their side to make that possible
  308. Kev has left
  309. Kev has joined
  310. gutuning has joined
  311. Kev has left
  312. Kev has joined
  313. jubalh has left
  314. marc0s has left
  315. marc0s has joined
  316. wurstsalat has left
  317. rom1dep my assumption was that they do, and if that's the case, then the opportunity to make large IRC networks "XMPP Native" is enormous. If not, then forget about it
  318. Kev has left
  319. Kev has joined
  320. Zash I imagined IRC networks mostly have to disable some rate limits and such, so that bridges can create as many users as they need to, from some small set of IP addresses.
  321. gutuning has left
  322. moparisthebest also webirc things
  323. wurstsalat has joined
  324. rom1dep Zash: I thought that the bridge was running behind the ircd so that it would always be logging, deduplicating messages and so forth. If those
  325. rom1dep Zash: I thought that the bridge was running behind the ircd so that it would always be logging, deduplicating messages and so forth.
  326. Zash Need network diagrams.
  327. marc0s has left
  328. marc0s has joined
  329. jubalh has joined
  330. asterix has left
  331. asterix has joined
  332. mac has joined
  333. asterix has left
  334. asterix has joined
  335. selurvedu has left
  336. omighty has left
  337. omighty has joined
  338. kloxxy has joined
  339. gutuning has joined
  340. Kiwi has joined
  341. Kev has left
  342. kloxxy has left
  343. Kev has joined
  344. gutuning has left
  345. homebeach has joined
  346. Kev has left
  347. Kev has joined
  348. Freddy has left
  349. asterix has left
  350. asterix has joined
  351. Freddy has joined
  352. rom1dep my understanding is that for this kind of bridge to work reliably (one pretending to be a matrix room for all matrix users), only one of the connected IRC accounts needs to serve as proxy on behalf of all others, otherwise, when IRCUSER1 sends a "helloworld" message, the bridge sees "helloworld" × number of bridged users reaching it at subtely different timestamps. when this user leaves, another one needs to be rotated in and take over (probably with rules such that enough of the other dummies should have seen the first user leaving so the whole thing is netsplit/timeout resilient) none of that is required if it's the server to send the bridge `"IRCUSER1 sent "helloworld" to #room`
  353. Zash If you're managing a horde of simulacra then it's easy enough to have one extra for the bot itself which handles incoming messages.
  354. jonas’ rom1dep, this breaks down once the users have different privileges
  355. pulkomandy It seems easier to just host the room on xmpp and have something to allow irc user to connect to it directly (not going through an existing irc server). I don't see what you need the irc server for here and it makes everything more complicated?
  356. rom1dep jonas’: I'm sure of that
  357. jonas’ pulkomandy, for consistency, it’s easier if the source of truth is on the network with the "lower" capabilities
  358. jonas’ (in this case, IRC)
  359. Zash jonas’, areyousure?
  360. jubalh has left
  361. rom1dep pulkomandy: yep, many existing communities are already on <insert IRC net here>
  362. Zash pulkomandy, https://github.com/moparisthebest/xmpp-ircd might be doing that
  363. Zash but it'll get weird unless you enforce IRC limitations
  364. pulkomandy Depends what your goals are. I'd be fine with "xmpp users get all the cool features, grumpy people who really want to stick to irc get a limited view on things"
  365. Zash which may or may not be desirable
  366. pulkomandy Seems the way to go to convince people to migrate
  367. rom1dep my idea was that if matrix has it all figured-out, we can just hop on the bandwagon and use their bridge (or enhance it to make it behave as an XMPP room on top of being a matrix room)
  368. rom1dep my idea was that if matrix has it all figured-out, we can just hop on the bandwagon and use their bridge (or more precisely, enhance it to make it behave as an XMPP room on top of being a matrix room)
  369. pulkomandy (I'm saying that but I'm annoyed when Matrix bridging to irc says "user x posted a long message, follow this https link to view it")
  370. homebeach Are there any other networks bridged to xmpp with public bridge except ircnet?
  371. homebeach Are there any other irc networks bridged to xmpp with public bridge except ircnet?
  372. jonas’ pulkomandy, what do you do with XMPP nicknames which are not valid in IRC?
  373. rom1dep (I, too, prefer biboumi's splitting the message across several smaller ones)
  374. rom1dep homebeach: how does that work for ircnet?
  375. pulkomandy I don't know, you punycode them?
  376. jonas’ pulkomandy, length limits, but also, how do IRC people highlight XMPP people then?
  377. Zash PULKOM~1
  378. jonas’ the XMPP clients won’t know they’re meant unless you decode at the bridge, which has the potential for errors
  379. homebeach Are there any other irc networks bridged to xmpp with public bridge besides ircnet?
  380. homebeach sorry i meant "besides"
  381. pulkomandy Ah yes, irc networks with a 9 letter limit where I can't use my nickname are a thing
  382. jonas’ bitlbee does something like that, by the way, and it’s terribly annoying to be on the XMPP side of that
  383. Zash ... ircnet what?
  384. homebeach there used to be that public transport that you can use to join ircnet channels
  385. homebeach but is there such for quakenet for example
  386. pulkomandy That being said, xmpp has a xep for mentions, and the irg bridge could use that when it detects the corresponding irc nickname being used
  387. belong has left
  388. homebeach ?
  389. pulkomandy (it's 0372)
  390. belong has joined
  391. Zash heh. I guess 🤷️
  392. rom1dep https://matrix-org.github.io/matrix-appservice-irc/latest/irc_operators.html seems to imply that their bridge has to go though all the hoops I described, in fact
  393. rom1dep > The IRC bridge provides each Matrix user with one IRC connection in order to bridge them "natively" into the IRC network, as so they can largely be treated as real users. Due to the 1:1 connection system, it is often useful that the IRCD network provides the bridge host with a more relaxed ILINE limit depending on the number of Matrix users they'd expect to use the bridge.
  394. Syndace has left
  395. Syndace has joined
  396. Zash Eyup.
  397. Zash Most efficient would be something that speaks the internal IRC clustering protocol on one side and XMPP s2s or component on the other.
  398. Zash But AIUI that would be tied to specific ircd implementations
  399. rom1dep maybe, but maybe not too much of an issue
  400. rom1dep one could probably elaborate a clean API for that
  401. rom1dep that then IRCds could implement
  402. Zash Like a component connection for IRCd
  403. gutuning has joined
  404. rom1dep could be along the lines of `connect_external_user(ext_native_nick, room)` ; `sent_message_callback(room, user, message)`
  405. lovetox has left
  406. SouL has left
  407. SouL has joined
  408. raghavgururajan has joined
  409. asterix has left
  410. asterix has joined
  411. asterix has left
  412. asterix has joined
  413. lovetox has joined
  414. debacle has left
  415. goffi has left
  416. marc0s has left
  417. marc0s has joined
  418. marc has left
  419. marc has joined
  420. wurstsalat has left
  421. mac has left
  422. Kev has left
  423. Kev has joined
  424. edhelas has left
  425. marc has left
  426. edhelas has joined
  427. asterix has left
  428. asterix has joined
  429. Kev has left
  430. Kev has joined
  431. gutuning has left
  432. gutuning has joined
  433. Kev has left
  434. Kev has joined
  435. gutuning has left
  436. Kev has left
  437. Kev has joined
  438. xecks has left
  439. Kev has left
  440. Kev has joined
  441. Kev has left
  442. Kev has joined
  443. FireFly has left
  444. Zash has left
  445. stpeter has left
  446. gutuning has joined
  447. Kev has left
  448. Kev has joined
  449. stpeter has joined