{"id":2379,"date":"2019-04-09T08:01:47","date_gmt":"2019-04-09T07:01:47","guid":{"rendered":"http:\/\/blog.datentraeger.li\/?p=2379"},"modified":"2021-10-16T08:09:46","modified_gmt":"2021-10-16T07:09:46","slug":"conversejs-in-hugo-site","status":"publish","type":"post","link":"https:\/\/blog.datentraeger.li\/?p=2379","title":{"rendered":"conversejs in Hugo-Site"},"content":{"rendered":"\n<p>Vor langer Zeit mal hatte ich kurz <a href=\"https:\/\/github.com\/jappix\/jappix\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"Jappix (opens in a new tab)\">Jappix<\/a> als Webinterface f\u00fcr unseren XMPP-Server laufen. Das Projekt ist nun aber leider tot. Es gibt aber einige XMPP-Webfrontends. <a rel=\"noreferrer noopener\" aria-label=\"Conversejs (opens in a new tab)\" href=\"https:\/\/conversejs.org\" target=\"_blank\">Conversejs<\/a> ist eigentlich noch ganz cool und man hat es auch recht schnell laufen, was mir ganz gut gefiel und deshalb also mal testen&#8230; (wollte ich schon seit langem, aber wie&#8217;s halt so ist&#8230;)<\/p>\n\n\n\n<p>Eigentlich reicht dieser Schnipsel und wir sind schon ready (siehe auch <a rel=\"noreferrer noopener\" aria-label=\"QuickStart Guide (opens in a new tab)\" href=\"https:\/\/conversejs.org\/docs\/html\/quickstart.html\" target=\"_blank\">QuickStart Guide<\/a>). Ich gehe nicht auf die XMPP-Konfiguration und <a rel=\"noreferrer noopener\" aria-label=\"XMPP-Bosh (opens in a new tab)\" href=\"https:\/\/xmpp.org\/extensions\/xep-0206.html\" target=\"_blank\">XMPP-Bosh<\/a> ein, was nat\u00fcrlich Grundvoraussetzung f\u00fcr&#8217;s ganze ist.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;link rel=\"stylesheet\" type=\"text\/css\" media=\"screen\"\u00a0\u00a0\u00a0\u00a0 href=\"https:\/\/cdn.conversejs.org\/css\/converse.min.css\"> &lt;script src=\"https:\/\/cdn.conversejs.org\/dist\/converse.min.js\">&lt;\/script> converse.initialize({\u00a0\u00a0\u00a0\u00a0\u00a0 \n   bosh_service_url: 'http:\/\/localhost:5280\/http-bind\/',\u00a0\u00a0 \n   keepalive: true,\u00a0\u00a0 \n   message_carbons: true,\u00a0\u00a0 \n   play_sounds: true,\u00a0\u00a0 \n   roster_groups: true,\u00a0\u00a0 \n   show_controlbox_by_default: true,\u00a0\u00a0 \n   xhr_user_search: false \n});<\/pre>\n\n\n\n<p>Alle m\u00f6glichen Parameter findet man in der <a href=\"https:\/\/m.conversejs.org\/docs\/html\/configuration.html\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"Dokumentation (opens in a new tab)\">Dokumentation<\/a>.<\/p>\n\n\n\n<p>Das ganze k\u00f6nnte man nun einfach in eine separate Seite schmeissen. Aber ich h\u00e4tte es schon gerne direkt auf der Startpage, einfach minimiert.<\/p>\n\n\n\n<p>Damit das so in Hugo gemacht werden kann, muss der Code nicht in ein Markdown-File geschrieben werden, sondern in die entsprechende Page des Templates. Ich habe das Home-File dazu verwendet (mir reicht das dort, ansonsten w\u00fcrde sich wohl footer.html anbieten, wenn man es auf allen Seiten haben m\u00f6chte&#8230;) Diese Files findet man unter themes\/theme-name\/layouts\/partials\/<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\u00a0\u00a0 ...\u00a0\u00a0\u00a0 &#91;Original-Template des Themes]\u00a0\u00a0\u00a0 ...\u00a0\u00a0 \n&lt;\/div> &lt;\/section> &lt;link rel=\"stylesheet\" type=\"text\/css\" media=\"screen\"\u00a0\u00a0 href=\"https:\/\/cdn.conversejs.org\/css\/converse.min.css\"> &lt;script src=\"https:\/\/cdn.conversejs.org\/dist\/converse.min.js\">&lt;\/script> converse.initialize({\u00a0\u00a0\u00a0\u00a0\u00a0 \n   bosh_service_url: 'http:\/\/host.tld\/http-bind\/',\u00a0\u00a0 \n   keepalive: true,\u00a0\u00a0 \n   message_carbons: true,\u00a0\u00a0 \n   play_sounds: true,\u00a0\u00a0 \n   roster_groups: true,\u00a0\u00a0 \n   show_controlbox_by_default: false, \/\/nicht fullscreen hier...\u00a0\n   xhr_user_search: false \n});<\/code><\/pre>\n\n\n\n<p>Der n\u00e4chste Schritt ist nun also, das ganze auch auf dem eigenen Server zu hosten&#8230;<\/p>\n","protected":false},"excerpt":{"rendered":"Vor langer Zeit mal hatte ich kurz Jappix als Webinterface f\u00fcr unseren XMPP-Server laufen. Das Projekt ist nun aber leider tot. Es gibt aber einige XMPP-Webfrontends. Conversejs ist eigentlich noch ganz cool und man hat es auch recht schnell laufen, was mir ganz gut gefiel und deshalb also mal testen&#8230;&hellip;\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11,56],"tags":[],"class_list":["post-2379","post","type-post","status-publish","format-standard","hentry","category-web","category-xmpp"],"_links":{"self":[{"href":"https:\/\/blog.datentraeger.li\/index.php?rest_route=\/wp\/v2\/posts\/2379","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.datentraeger.li\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.datentraeger.li\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.datentraeger.li\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.datentraeger.li\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2379"}],"version-history":[{"count":17,"href":"https:\/\/blog.datentraeger.li\/index.php?rest_route=\/wp\/v2\/posts\/2379\/revisions"}],"predecessor-version":[{"id":2699,"href":"https:\/\/blog.datentraeger.li\/index.php?rest_route=\/wp\/v2\/posts\/2379\/revisions\/2699"}],"wp:attachment":[{"href":"https:\/\/blog.datentraeger.li\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2379"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.datentraeger.li\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2379"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.datentraeger.li\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2379"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}