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

    Support for Hotspot wifi captive portal via RFC 8910 and RFC 8908

    Scheduled Pinned Locked Moved OS
    21 Posts 3 Posters 1.3k Views 3 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.
    • G Offline
      gpatel-fr @pparent
      last edited by

      @pparent said:

      on desktop this feature is not as important as on mobile

      I did not say that the feature was useless, what I was meaning is that when there is already a feature upstream it's not the best idea of reinventing it unless there is good reason that the upstream wheel don't fit the use case.

      In fact upstreaming (when it makes sense) is in the UT COC, so somehow maintainers are supposed to think of that.

      @pparent said:

      it's handled browser-side

      Hum, I did not even think of that. If Google has absorbed the idea in its gigantic browser, it could trickle in QT browser engine. That's another case where it could be better not to use a specific UT implementation.

      @pparent said:

      it was not a merge request it was just an issue

      it was an issue but there is a MR linked (look under 'Development'). The idea is that it's a generic feature, not something specific to Ubuntu Touch. After all, mobile is far from a remote consideration for so called 'desktop' environments such as Kde and Gnome.

      pparentP 1 Reply Last reply Reply Quote 0
      • pparentP Online
        pparent @gpatel-fr
        last edited by pparent

        @gpatel-fr said:

        The idea is that it's a generic feature, not something specific to Ubuntu Touch.

        Well yes and no. It is a generic feature to detect option 114 and make the request to the API. BUT It is an OS sepcific feature to decide how you are going to display the captive portal. Here I display it using urlDispatcher via DBus that is an UT-specific feature that could hardly be upstreamed. Android has it's own mini-browser designed exclusively to display captive portal.

        So this is kind of hard to have a generic way to handle captive portals in all OS that embed NetworkManager, independenty of the OS specifics. And all the existing OS (Android, iOS, Windows, MacOS) handle captive portal each, their own way.

        I don't think in that regard UT should limit itself to what is availiable upstream, i.e keep basic things not working and not implemented, while it requires a 20 line script to have things running fine. If some day NetworkManager improve it's implementation, it will allways be time to use it then.

        G 2 Replies Last reply Reply Quote 0
        • G Offline
          gpatel-fr @pparent
          last edited by

          @pparent said:

          this is kind of hard

          yes

          pparentP 1 Reply Last reply Reply Quote 0
          • pparentP Online
            pparent @gpatel-fr
            last edited by

            I've made a pull request here:

            https://gitlab.com/ubports/development/core/hybris-support/lxc-android-config/-/merge_requests/184

            P 1 Reply Last reply Reply Quote 0
            • P Offline
              projectmoon @pparent
              last edited by

              @pparent so if I dump this script into the network manager scripts dir, it will Just Work™?

              pparentP 1 Reply Last reply Reply Quote 0
              • pparentP Online
                pparent @projectmoon
                last edited by pparent

                @projectmoon

                Yes!

                Use the latest script from my PR:

                https://gitlab.com/pparent/lxc-android-config/-/blob/main/etc/NetworkManager/dispatcher.d/99captive_portal?ref_type=heads

                Make sure to make it executable (chmod +x) and reboot before testing

                1 Reply Last reply Reply Quote 0
                • G Offline
                  gpatel-fr @pparent
                  last edited by

                  @pparent said:

                  it is an OS sepcific feature to decide how you are going to display the captive portal.

                  now you have seen the reaction to your MR 🙂

                  Quote from Gitlab:

                  I have a deep interest in captive portal as a feature being also available to other distros (such as pmOS or Mobian)
                  
                  pparentP 1 Reply Last reply Reply Quote 0
                  • pparentP Online
                    pparent @gpatel-fr
                    last edited by

                    Here is what looks like a new prototype:

                    https://www.youtube.com/shorts/MrFvLvAq4bc

                    More info here:

                    https://gitlab.com/ubports/development/core/hybris-support/lxc-android-config/-/merge_requests/184#note_3271557185

                    P 1 Reply Last reply Reply Quote 1
                    • P Offline
                      projectmoon @pparent
                      last edited by

                      @pparent so I was not able to get this script or app to work. Is there something I should look for in the logs?

                      pparentP P 2 Replies Last reply Reply Quote 0
                      • pparentP Online
                        pparent @projectmoon
                        last edited by

                        @projectmoon

                        With the latest version of the script you need to install this app first:

                        https://github.com/pparent76/Captiveviewer-UT/releases/tag/0.1.0

                        Then install the latest version of the script, and chmod +x the script, and reboot

                        https://gitlab.com/pparent/lxc-android-config/-/blob/main/etc/NetworkManager/dispatcher.d/99captive_portal?ref_type=heads

                        Then you should get a notification when you connect to a wifi with captive portal, and if you click the notification it will open the captive portal app.

                        1 Reply Last reply Reply Quote 0
                        • P Offline
                          projectmoon @projectmoon
                          last edited by

                          Ok I had to fix ownership and perms on the script. Portal app loads, but not the portal itself. But that's not the fault of the portal app.

                          pparentP 1 Reply Last reply Reply Quote 0
                          • pparentP Online
                            pparent @projectmoon
                            last edited by

                            @projectmoon

                            What do you mean, do you get the notification when you connect to the wifi network with captive portal?

                            (You should not open the app from the app grid, it is useless, it will open when you click on the notification, in the notification panel, like in the video)

                            P 1 Reply Last reply Reply Quote 0
                            • P Offline
                              projectmoon @pparent
                              last edited by

                              @pparent yeah I got the notification and opened the app from it. But i couldn't load the page. But I think that it's a problem with my network configuration.

                              pparentP 1 Reply Last reply Reply Quote 0
                              • pparentP Online
                                pparent @projectmoon
                                last edited by pparent

                                @projectmoon

                                Ok well I don't know, are you testing with a specific wifi network with captive portal? Does it support RFC 8910 and RFC 8908, or is it legacy? Did you try with other wifi networks?

                                Ps: You can also retry with mobile data disabled, sometimes it's better.

                                P 1 Reply Last reply Reply Quote 0
                                • P Offline
                                  projectmoon @pparent
                                  last edited by

                                  @pparent said:

                                  @projectmoon

                                  Ok well I don't know, are you testing with a specific wifi network with captive portal? Does it support RFC 8910 and RFC 8908, or is it legacy? Did you try with other wifi networks?

                                  Ps: You can also retry with mobile data disabled, sometimes it's better.

                                  Disabling mobile data didn't help. The app receives the captive portal URL, but I get connection refused. I don't think this has anything to do with the captive portal helper. I thought it might be uAdblock, but seems no. So, no idea. I also have no idea if the captive portal is RFC or legacy.

                                  pparentP 1 Reply Last reply Reply Quote 0
                                  • pparentP Online
                                    pparent @projectmoon
                                    last edited by

                                    @projectmoon

                                    Can you do

                                    journactl -r | grep 99captive_portal
                                    

                                    ?

                                    1 Reply Last reply Reply Quote 0

                                    Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                    Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                    With your input, this post could be even better 💗

                                    Register Login
                                    • First post
                                      Last post