• Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Register
  • Login
UBports Robot Logo UBports Forum
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Register
  • Login

Options for a good XMPP client?

Scheduled Pinned Locked Moved App Development
xmpp
24 Posts 7 Posters 4.7k Views 1 Watching
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • P Offline
      poVoq
      last edited by 27 Nov 2019, 13:22

      Found a working work-around which managed to by-pass the open-store restriction:

      https://open-store.io/app/conversejs.povoq

      Help to improve it appreciated, although other than some CSS fixes, most work has to be done upstream in the main ConverseJS.

      Ideas to improve performance would be great.

      Also: is there a way to pass through browser notifications to the main system notifications in qtwebview?

      Fairphone 5 (waiting for port)

      A 1 Reply Last reply 27 Nov 2019, 13:27 Reply Quote 0
      • A Offline
        AppLee @poVoq
        last edited by 27 Nov 2019, 13:27

        @poVoq for information about the notifications, refers to : http://docs.ubports.com/en/latest/appdev/guides/pushnotifications.html

        But AFAIK, there is no such think through QTWebView, maybe you can catch the notifications somehow and use the push notifications system ๐Ÿค”

        P 1 Reply Last reply 27 Nov 2019, 13:31 Reply Quote 0
        • P Offline
          poVoq @AppLee
          last edited by 27 Nov 2019, 13:31

          @AppLee no I mean the HTML browser notifications that modern browsers use to directly pass through web-site notifications to the system notification queue. I am aware that these will not work if an app goes to sleep, but that can be suppressed with UT-tweek tool.

          Push notifications are a totally different beast that I am looking into here: https://github.com/poVoq/conversejs-ubports/issues/1
          (if there was an implementation for this, it would work with any XMPP client on UT, not only mine)

          Fairphone 5 (waiting for port)

          A 1 Reply Last reply 27 Nov 2019, 13:34 Reply Quote 0
          • A Offline
            AppLee @poVoq
            last edited by AppLee 27 Nov 2019, 13:34

            @poVoq I understand what you want to achieve.
            But I don't think confined apps can access the notification layer without using the push notifications system.

            [Edit] Have a look there : https://open-store.io/app/pushclient.christianpauly
            It's easy to understand but I don't have time to dive in ๐Ÿ˜‰

            P 1 Reply Last reply 27 Nov 2019, 14:06 Reply Quote 0
            • P Offline
              poVoq @AppLee
              last edited by poVoq 27 Nov 2019, 14:06

              @AppLee Push notifications work slightly different with XMPP, as it already has build in support for that. In theory you just need to pass back your device identifier and JID of the push service to the XMPP server (ConverseJS has build in support for that) and the XMPP server (if it has mod_push enabled) contacts the push notification service of the app developer (via S2S connection). The problem is that such an XMPP compatible server software that talks to the Ubports push notification server does not exist yet. There are existing projects though that seem quite close to what is needed.

              Edit: if the Ubports push notification server would understand XML messages it could likely also be contacted directly by the XMPP server. I think the original Android push notification system works like that, it is just that Google decided it would only allow registered servers to contact their push notification server, so a proxy server by the XMPP app developer is still needed. I think for Ubports push notification server is is not the case.

              Fairphone 5 (waiting for port)

              P 1 Reply Last reply 1 Dec 2019, 10:24 Reply Quote 0
              • P Offline
                poVoq @poVoq
                last edited by poVoq 12 Jan 2019, 17:59 1 Dec 2019, 10:24

                The developer of P2 is willing to add Ubports push notification support for XMPP clients, but it would need to be implemented by someone with Java knowledge. According to him it should be really easy though.

                On an unrelated note, this might also be a portable qt native xmpp client: https://github.com/ksiazkowicz/lightbulb

                Fairphone 5 (waiting for port)

                1 Reply Last reply Reply Quote -1
                • P Offline
                  poVoq
                  last edited by 20 Dec 2019, 10:26

                  Just as an update to this: I talked to the developer of Jabbercat/aioxmpp and it seems it would be fairly easy to write a new mobile friendly qt quick controls 2 UI on top of his abstracted jclib (pure Python):
                  https://github.com/jabbercat/jclib

                  I am toying with the idea of having a go at it, but if a more experienced Python developer would take it up that would probably be more successful.

                  Fairphone 5 (waiting for port)

                  1 Reply Last reply Reply Quote 0
                  • P Offline
                    poVoq
                    last edited by 8 Jan 2020, 14:18

                    Another but also Javascript based option that seems promising (but still needs a bit of work) is this:
                    https://github.com/nioc/xmpp-web

                    It is even PWA capable, so on Android for example it works quite nicely as a progressive web app already. I hope PWA will be added to UT at some point, as it is really a neat standard for webapps.

                    Fairphone 5 (waiting for port)

                    1 Reply Last reply Reply Quote 0
                    • M Offline
                      mito77
                      last edited by 18 Jan 2020, 12:26

                      Hi everyone, I'm New on ubports, on android I use Conversation , but on Ubports I want to use xmpp client for Muc chatroom support like gajim on Debian . I try with converseJS but don't work because I canโ€™t connect .

                      nexus 5 16gb second hand UBPORTS

                      P 1 Reply Last reply 18 Jan 2020, 15:38 Reply Quote 0
                      • P Offline
                        poVoq @mito77
                        last edited by 18 Jan 2020, 15:38

                        @mito77 said in Options for a good XMPP client?:

                        Hi everyone, I'm New on ubports, on android I use Conversation , but on Ubports I want to use xmpp client for Muc chatroom support like gajim on Debian . I try with converseJS but don't work because I canโ€™t connect .

                        Hi @mito77 can you explain better what you mean with "can't connect"? What XMPP server are you using? If it is self-hosted, make sure it is up to date and configured to expose BOSH or websockets as alternative connection methodes. Due to the webapp nature of ConverseJS you can not connect with the regular 5222 port as Conversations/Gajim etc. does.

                        Fairphone 5 (waiting for port)

                        M B 2 Replies Last reply 18 Jan 2020, 23:43 Reply Quote 0
                        • M Offline
                          mito77 @poVoq
                          last edited by mito77 18 Jan 2020, 23:43

                          @poVoq thank you . it work very good with bosh or wss link . I found on the wiki of the xmpp service. but ConverseJS dont save my login, and don't save my wss or my bosh. When I
                          restart the app it's blank . https://wiki.jabberfr.org/JabberFR
                          it's because the client don't have XEP-0156 natively

                          nexus 5 16gb second hand UBPORTS

                          P 1 Reply Last reply 19 Jan 2020, 09:46 Reply Quote 0
                          • P Offline
                            poVoq @mito77
                            last edited by poVoq 19 Jan 2020, 09:46

                            @mito77 the wss and bosh address is saved in the app, just not displayed again in the form field.

                            However you need to put in again your JID and password each time. I have some ideas how to add an option to stay logged in, but doing so (with the option to also log out again) is a bit complicated.

                            Xep-0156 is supported in the new upstream version of ConverseJS. I need to get around updating my app to it.

                            Fairphone 5 (waiting for port)

                            1 Reply Last reply Reply Quote 0
                            • M Offline
                              mito77
                              last edited by 23 Jan 2020, 00:03

                              Hi Povoq I'm reconnected again and again on a muc, and the error message is : "This groupchat has reached its maximum number of participants". Or we are three people in the muc chatroom.

                              nexus 5 16gb second hand UBPORTS

                              P 1 Reply Last reply 23 Jan 2020, 23:54 Reply Quote 0
                              • P Offline
                                poVoq @mito77
                                last edited by 23 Jan 2020, 23:54

                                @mito77 this isn't really a support thread, and in any case that sounds more like a upstream ConverseJS issue. But what is the actual limit you set? I think in XMPP each connected device is counted as a user, even if representing only three actual people. Maybe there is an issue that devices are recognized as new while the old ones need some time to time out? No idea, just guessing ๐Ÿ™‚

                                Fairphone 5 (waiting for port)

                                1 Reply Last reply Reply Quote 0
                                • B Offline
                                  boky @poVoq
                                  last edited by 23 Apr 2020, 07:43

                                  @poVoq Is it possible to implement port 5222 support?

                                  P 1 Reply Last reply 23 Apr 2020, 15:58 Reply Quote 0
                                  • P Offline
                                    poVoq @boky
                                    last edited by 23 Apr 2020, 15:58

                                    @boky said in Options for a good XMPP client?:

                                    @poVoq Is it possible to implement port 5222 support?

                                    Sorry, with ConverseJS that is not possible.

                                    What should work is Movim, as it proxies the websocket connection to port 5222.

                                    I might look into making a new Movim app, as the old one isn't maintained. But I think it still works.

                                    Fairphone 5 (waiting for port)

                                    T 1 Reply Last reply 11 Oct 2021, 00:33 Reply Quote 1
                                    • T Offline
                                      thousandtopics @poVoq
                                      last edited by 11 Oct 2021, 00:33

                                      @povoq please, thanks.

                                      1 Reply Last reply Reply Quote 0
                                      • First post
                                        Last post