jdev - 2019-08-19

  1. lksjdflksjdf has left
  2. lksjdflksjdf has joined
  3. Daniel has left
  4. Allo has left
  5. Allo has joined
  6. Daniel has joined
  7. Daniel has left
  8. Daniel has joined
  9. Daniel has left
  10. Daniel has joined
  11. lksjdflksjdf has left
  12. Daniel has left
  13. Alex has left
  14. Daniel has joined
  15. aj has joined
  16. Daniel has left
  17. Daniel has joined
  18. Daniel has left
  19. Daniel has joined
  20. Daniel has left
  21. Daniel has joined
  22. Daniel has left
  23. wurstsalat has joined
  24. Daniel has joined
  25. marc0s has joined
  26. marc0s has left
  27. marc0s has joined
  28. Daniel has left
  29. Daniel has joined
  30. larma has left
  31. larma has joined
  32. lksjdflksjdf has joined
  33. lksjdflksjdf has left
  34. aj has left
  35. lksjdflksjdf has joined
  36. gh has joined
  37. gh Kindly ignore this message.
  38. gh has left
  39. aj has joined
  40. marc0s has left
  41. marc0s has joined
  42. Daniel has left
  43. Daniel has joined
  44. marc0s has left
  45. Alex has joined
  46. marc0s has joined
  47. lksjdflksjdf has left
  48. lksjdflksjdf has joined
  49. guus.der.kinderen No!
  50. Daniel has left
  51. Daniel has joined
  52. wurstsalat Hm it would be nice if this group chat had a proper name. Something like "Jabber/XMPP Development". I think the name/title is not set yet.
  53. Daniel has left
  54. Daniel has joined
  55. Daniel has left
  56. Daniel has joined
  57. Daniel has left
  58. Daniel has joined
  59. Alex has left
  60. Alex has joined
  61. Daniel has left
  62. Daniel has joined
  63. Daniel has left
  64. Daniel has joined
  65. Daniel has left
  66. Daniel has joined
  67. Daniel has left
  68. Daniel has joined
  69. Daniel has left
  70. Daniel has joined
  71. Daniel has left
  72. Daniel has joined
  73. Daniel has left
  74. Daniel has joined
  75. Daniel has left
  76. Daniel has joined
  77. bent3n has joined
  78. ralphm wurstsalat: the proper name of this room _is_ jdev, so I set that as its title. The description is "Jabber/XMPP Development".
  79. ralphm It might be that your client shows this suboptimally.
  80. wurstsalat alright! no it shows "jdev" corretly then
  81. pep. I wish conversations displayed the topic at the top instead :(
  82. Zash I named my bookmark for this room "XMPP Development"
  83. wurstsalat Zash, good idea, Gajim had some improvements for name displaying lately :)
  84. lksjdflksjdf has left
  85. lksjdflksjdf has joined
  86. larma has left
  87. larma has joined
  88. bent3n Hi, I'm new to servers and networking. I want to build an xmpp server(I'll rent the server). It's for a chat application I want build(learning project )
  89. bent3n Any suggestion ? Please be as basic as possible as I'm new
  90. Zash Get a Debian VM, install Prosody, tweak the config and poke some DNS, ???, PROFIT!
  91. bent3n Zash Thanks. I have a linux VM installed on my mac. I installed prosody on it I tested it with prosody's client IM app and it works(my domain is localhost). I'm using a bridged network connection. Connecting to the VM from the Mac (host) is the challenge
  92. guus.der.kinderen bent3n - Openfire is pretty easy to setup on any computer
  93. Zash Prosody is a server, not a client.
  94. guus.der.kinderen and geared towards easy entry
  95. bent3n I don't know if I was doing anything wrong that's why I decided to rent a server and then learn
  96. bent3n guus.der.kinderen I installed openfire on the linux guest. I can only access the admin webpage from the host( my MAC)
  97. guus.der.kinderen bent3n exactly what is your goal here? If it's just to experiment, I'd be perfectly happy to host a service for you for a couple of days.
  98. guus.der.kinderen that'd save you from the troubles of setting one up yourself.
  99. bent3n I'm learning from a textbook. and the HTTP connection manager in the textbook is no longer up. So I'll have to create my own if I want to learn
  100. guus.der.kinderen if you'd try to learn how to setup a server, then you'd have to set it up yourself, obviously :
  101. bent3n yeah. Unless bridging between my host and my guest works(which hasn't for me right now) that's why I'm leaning more towards renting a server
  102. guus.der.kinderen let me set one up for you, so that you can at least experiment for a couple of days
  103. guus.der.kinderen if you want to rent that later, we can discuss it.
  104. guus.der.kinderen woudl that work for you?
  105. bent3n That would more than work
  106. Zash I don't know about you all but I just run `./prosody` locally on my workstation. Renting a whole machine seems like a bit overkill.
  107. bent3n thanks guus.der.kinderen
  108. guus.der.kinderen no problem. pick any subdomain (as in the 'something' in "something.goodbytes.im") please
  109. bent3n guus.der.kinderen Zash Here's the app I wanted to test :
  110. bent3n let Hello ={ connection: null, start_time: null, log: function(msg){ $("#log").append("<p>"+ msg +"</p>"); }, send_ping: function(to){ let ping = $iq({ to: to, type:"get", id:"ping1"}).c("ping", {xmlns:"urn:xmpp:ping"}); Hello.log("Sending ping to:"+to+"."); Hello.start_time = (new Date()).getTime(); Hello.connection.send(ping); }, handle_pong: function(iq){ let elapsed =(new Date()).getTime() - Hello.start_time; Hello.log("Received pong from server in : "+ elapsed+" ms"); Hello.connection.disconnect(); return false; } }; $(document).ready(function(){ $("#login_dialog").dialog({ autoOpen: true, draggable: false, modal: true, title:"Connect to XMPP", buttons:{ "Connect": function(){ $(document).trigger("connect",{ jid: $("#jid").val(), password: $("#password").val() }); $("#password").val(""); $(this).dialog('close'); } } }); }); $(document).bind('connect', function(ev, data){ let conn = new Strophe.Connection("http://bosh.metajack.im:5280/xmpp-httpbind"); console.log(conn); conn.connect(data.jid, data.password, function(status){ if (status === Strophe.Status.CONNECTED){ $(document).trigger('connected'); }else if (status === Strophe.Status.DISCONNECTED){ $(document).trigger('disconnected'); } }); Hello.connection = conn; }); $(document).bind('connected', function(){ // inform the user Hello.log("Connection established"); Hello.connection.addHandler(Hello.handle_pong, null, "iq", null, "ping1"); let domain = Strophe.getDomainFromJid(Hello.connection.jid); Hello.send_ping(domain); }); $(document).bind('disconnected', function(){ Hello.log("Connection terminated..."); //remove the connection object Hello.connection = null; });\
  111. bent3n <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Hello - Chapter 3</title> <link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/themes/cupertino/jquery-ui.css"&gt; <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.js"&gt;&lt;/script&gt; <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.js"&gt;&lt;/script&gt; <script src="scripts/strophe.js"></script> <script src="scripts/flXHR.js"></script> <script src="scripts/strophe.flxhr.js"></script> <link rel="stylesheet" href="hello.css"> <script src="hello.js"></script> </head> <body> <h1>Hello</h1> <div id="log"> </div> <div id="login_dialog" class="hidden"> <label>JID:</label><br/><input type="text" id="jid"> <label>Password:</label><br/><input type="password" id="password"> </div> </body> </html>
  112. guus.der.kinderen woah, please don't copy that much code here 🙂
  113. guus.der.kinderen some of us are on mobile phones 🙂
  114. bent3n guus.der.kinderen bent3n would be ok for the subdomain
  115. Zash Déjà vu https://logs.xmpp.org/jdev/2019-08-09?p=h#2019-08-09-ce5c5bf5f9431f5b
  116. bent3n Zash Yes, I tried what JC suggested by installing prosody on my guest (Linux on the VM on my MAC)
  117. bent3n guus.der.kinderen Sorry I did not know that
  118. bent3n There isn't much stuff out there for a beginner(let alone recent material). Like I said. I'm a beginner with 0 experience with networking
  119. guus.der.kinderen bent3n, email me at guus@goodbytes.nl so that we can exchange credentials etc
  120. guus.der.kinderen note that I'm not planning to provide development support with regards to your textbook code 🙂
  121. bent3n guus.der.kinderen just emailed you
  122. guus.der.kinderen received it, tx. I'll forward you instructions shortly
  123. guus.der.kinderen it takes about 10 minutes for the provisioning to happen.
  124. bent3n Thanks
  125. bent3n no problem with code support. I need a connection manager that works. the book I'm using is about 10 years old. The only trustworthy resource for beginners I could find
  126. guus.der.kinderen Yeah, that's an issue. We (the XMPP Standards Foundation) could use more resources for easy entry.
  127. Zash Hot damn, published in 2010? Time flies.
  128. bent3n hahahaha. It's Jack Moffit's book
  129. Zash I know, I have it
  130. Kev The Book is even older.
  131. Kev 2008 or so?
  132. Kev Although as it's not code-sample based primarily, it's pleasing how often it's still relevant when I point the team to it.
  133. Zash Kev: Time for a remake?
  134. Kev I think it's not worth it until we've solved the archive+routing2 stuff.
  135. Kev At that point, maybe.
  136. guus.der.kinderen bent3n check your mail
  137. guus.der.kinderen note that DNS propagation might require some time to get to every corner of the earth - but it's usually pretty fast.
  138. bent3n just seen it. Thanks guus.der.kinderen !
  139. guus.der.kinderen Oh, I should upgrade that webclient that ships with it. The latest version has interesting debugging options, which will probably help you in your own efforts.
  140. guus.der.kinderen I'll try upgrading later.
  141. bent3n thank you so much ! guus.der.kinderen
  142. guus.der.kinderen I just upgraded it (still had the console open 😛 )
  143. guus.der.kinderen try hard-refreshing the inVerse URL if you had already opened it. It should have changed from version 4.2.0 to 5.0.1.
  144. guus.der.kinderen I've now enabled debug mode on that client. If you open the development console of your browser (typically: F12), you'll see a bunch of useful information.
  145. bent3n guus.der.kinderen I got this error when I entered my credentials into the page that loaded from the inverse URL
  146. bent3n 2019-08-19T14:32:39.174Z WARNING: Message Archive Management (XEP-0313) not supported by this server
  147. guus.der.kinderen known issue - ignore it - it simply works.
  148. bent3n ok cool !
  149. guus.der.kinderen https://github.com/conversejs/converse.js/issues/1676
  150. aj has left
  151. bent3n guus.der.kinderen Kev Zash So next is to configure the server to do something right? I ask I switched out the connection manager to the one Guus provided and it still shows connection terminated -- I was expecting it to connect at least
  152. bent3n I'm new to networking
  153. guus.der.kinderen the XMPP server can be used to connect your XMPP client to, and to use that to send back and forth messages.
  154. guus.der.kinderen the connection manager (BOSH) is one way of connecting to the server (it's basically an HTTP wrapper for XMPP traffic)
  155. guus.der.kinderen I've provided you with an account. You should be able to use that to authenticate against the server, and start sending messages and whatnot.
  156. Zash Most XMPP servers these days have a BOSH connection manager built into the server itself, so it's not a proxy anymore and might behave differently to a standalone BOSH proxy
  157. bent3n Zash So does that mean the code I provided above will have to be edited in some way ? Kev These are the files I downloaded so I could use strophe for the example in the book (Hello app on chapter 3)
  158. bent3n 1. checkplayer.js 2. flensed.js 3. flXHR.js 4. flXHR.swf 5. flXHR.vbs 6. strophe.flxhr.js 7. swfobject.js 8. strophe.js 9. updateplayer.swf
  159. bent3n Am I missing any ? can you please point me in the right direction so I can download the files necessary/relevant today so I can complete that example ?
  160. guus.der.kinderen (i'm off to feed the offspring)
  161. bent3n hahaha the offspring
  162. Alex has left
  163. Alex has joined
  164. travis Swf ?
  165. travis If your book wants you to use flash in 2019 burn it
  166. travis Haha .vbs too even better
  167. Kev bent3n: I know nothing much about Jack's book, and I don't do JS-based XMPP. Pinging me won't help here.
  168. MattJ Yeah, this stuff is from before CORS was widespread
  169. travis yea I suspect you'd be better off burning that book and going with something from this decade
  170. travis otherwise you are going to struggle a lot with implementing it, then be rewarded by it not working in any modern browser
  171. jonas’ I would suggest not to *burn* the book, but putting it aside is probably wise.
  172. travis details details... :)
  173. Zash travis: The problem is that there's no book from this decade.
  174. Zash Depending on whether 2010 counts as this decade or the previous one.
  175. travis probably true
  176. Allo has left
  177. travis has left
  178. marc0s has left
  179. marc0s has joined
  180. bent3n Off got I plane to catch. I'll land at 3pm ET
  181. bent3n has left
  182. Kev Zash: Well, that's only a problem if the book was written as a guide for a codebase.
  183. Kev I think (obviously biased) TDG has aged relatively well, but obviously Jack's book on strophe is going to age badly because the web has changed in 10 years.
  184. Zash Kev: Sure, XMPP basics probably haven't changed all that much. Higher level things have moved a bit tho. Were Carbons and MAM around back then for example?
  185. Kev I don't recall. I think 289's in there but not 313, but wouldn't swear to it.
  186. Kev But sure, thing's have changed. The question is whether what's there becomes wrong, or just incomplete.
  187. pep. Also the sleekxmpp book is still here to haunt us for some time. I wouldn't even recommend slixmpp nowadays, I'm looking forward yo aioxmpp in Python
  188. pep. Also the sleekxmpp book is still here to haunt us for some time. I wouldn't even recommend slixmpp nowadays, I'm looking forward to aioxmpp in Python
  189. jonas’ "looking forward to"?
  190. Kev pep.: You mean TDG? Most of the book doen't cover sleek, there's just a few examples at the back.
  191. pep. Hmm, badly said
  192. pep. I don't know the book, Kev. I'm just heard there was one on sleekxmpp.
  193. Kev Not AFAIK.
  194. Kev But TDG has some SleekXMPP examples at the back.
  195. lovetox has joined
  196. Lance has joined
  197. lovetox has left
  198. marc0s has left
  199. marc0s has joined
  200. lovetox has joined
  201. Daniel has left
  202. Daniel has joined
  203. Daniel has left
  204. guus.der.kinderen has left
  205. guus.der.kinderen has joined
  206. Daniel has joined
  207. Lance has left
  208. Daniel has left
  209. ralphm I'm not sure if Jack's book has aged that badly. Strophejs just works and I don't think it is affected as much as other web technologies.
  210. jonas’ .swf was mentioned above
  211. moparisthebest if it has you copying around .swf and .vbs files that's a bad sign
  212. ralphm I'd summarise most new development around frameworks for presentational code, single page apps, WebRTC. So stuff using strophejs might have changed dramatically.
  213. Daniel has joined
  214. ralphm Which reminds me ikDisplay should have a complete overhaul of its UI bits.
  215. Zash ralphm, was ikDisplay pubsub based?
  216. ralphm Is. Yes.
  217. ralphm E.g. a feed on XMPP: https://display.ik.nu/xmpp
  218. lksjdflksjdf has left
  219. ralphm Still has the FOSDEM banner on it 🤣
  220. Zash 😀
  221. larma has left
  222. ralphm It used to be smooth, but browsers have changed and UI should be redone to use modern transitions features.
  223. Daniel has left
  224. larma has joined
  225. lksjdflksjdf has joined
  226. Lance has joined
  227. Daniel has joined
  228. Lance has left
  229. wurstsalat has left
  230. marc0s has left
  231. wurstsalat has joined
  232. marc0s has joined
  233. marc0s has left
  234. marc0s has joined
  235. Lance has joined
  236. Daniel has left
  237. lovetox has left
  238. bent3n has joined
  239. bent3n ralphm Zash moparisthebest Kev MattJ So where would you point a beginner ? For learning resources and the necessary files for strophe or any other JS xmpp library?
  240. bent3n I'm open to new libraries provided there's support and a community? currently checking what webRTC is
  241. wurstsalat has left
  242. Daniel has joined
  243. bent3n JC told me about converse a couple of weeks ago
  244. Daniel has left
  245. Allo has joined
  246. Daniel has joined
  247. moparisthebest I would guess converse.js would be the way to go
  248. Daniel has left
  249. marc0s has left
  250. marc0s has joined
  251. lksjdflksjdf has left
  252. Daniel has joined