Skip to content

Conversation

@georgejhunt
Copy link
Contributor

Test Procedure:

  1. Start with 6.7 master
  2. git remote add ghunt https://github.com/georgejhunt/iiab, git fetch --all, git checkout -b squash ghunt/squash
  3. Update /etc/iiab/local_vars.yml, enable py_captive_portal, dnsmasq, change ssid
  4. ./iiab-install, and do iiab-admin-console, and iiab-menus
  5. reboot

Test results (first with iiab_gateway_enabled, and ethernet wire)

  1. On Mac, brings up default browser with a splash page link. Click on link brings up home tab, and an extra tab with "success" on the tab , and previous splash
  2. On iOS, brings up a splash page, click on link brings a "open in Safari" button, which leads to fully functional Safari browser (turning 90 degrees browses landscape mode).
  3. Android 5.1, select ssid, brings up "sign in to wifi", which leads to splash, which clicked leads to crippled browser (sign in to network remains at the top, and 90 degree pivot fails)
  4. Android 7.0, fails -- displaying a "sign in to network" for less than a second
  5. Windows 10 -- displays splash, which requires click on link, which displays "Success" and home in two tabs

Test results with ethernet wire removed

  1. Same as above, except that Nextcloud #4 (Android 7) succeeds. That is a "sign in to network" appears, pressed, that leads to a splash page, which displays a message saying "Please ignore the SECURITY warning which appears after clicking the first button". Press the first button displays "The network you're trying to join has security issues. For examble, the login page may not belong to the organization shown. Continue anyway via browser". This leads to the splash page again. Clicking on the second link leads to a fully functional (rotate 90 degrees ) browser

known issues

  1. cannot escape dumbed down browser on Android 5
  2. The online failure of Android 7 should be easy to fix (but I've already lost the test log once by clicking the wrong button). So I want to generate this PR now, and then update it when I fix the bug

rebase bassed upon copy in

cut out obvious dead code

working on put-204

make users a sqlite db

sqlite db has users, and agent info

android timeouts not yet working

android 5 and 6 both work. lost mac

return to a working version for the MAC. Missing the splash

android,mac,windows all appear to work

sqlite get status of execute row == Null

initialize lasttimestamp with ajax call when home is triggered

remove commented code, move towards logging vs print statements

add logging with the -l flag

no changes to default_vars.yml

drop iptables captive portal stuff not using port 8090, and dnsmasq

missed deleting trap_enabled

fixes for 6.7 defaults

add in template dir

rebase bassed upon copy in

cut out obvious dead code

working on put-204

make users a sqlite db

sqlite db has users, and agent info

android timeouts not yet working

android 5 and 6 both work. lost mac

return to a working version for the MAC. Missing the splash

android,mac,windows all appear to work

sqlite get status of execute row == Null

initialize lasttimestamp with ajax call when home is triggered

remove commented code, move towards logging vs print statements

drop iptables captive portal stuff not using port 8090, and dnsmasq

missed deleting trap_enabled

fixes for 6.7 defaults

dispense with apache logs for captive portal, use the rotating portal.log instead

bring in clean defaults and py

Squash debugging details

remove backup file

still cannot dispense with cna on iphone. mac escape from cna broke with these changes

captive comes after iiab in apache config

one filename wrong

logging used for debug, lost mac escape from cna

typos

got mac/iphone full browser back

remove dead code

python was not creating db, or putting ip when first encountered
@tim-moody
Copy link
Contributor

I now see that we have the same experience with respect to 'dumbed down browser'; we just interpret it differently. I also see the sign in to wifi message, even on latest android, but did not interpret that to be dumbed down, because I have seen it over the home page with all javascript working. So you may be right, but I agree that it is pretty much impossible to get rid of the SIGN IN TO WIFI message.

@tim-moody
Copy link
Contributor

BTW, many are prepared to live with the cosmetic problem of the signin message not disappearing if everything else works.

@holta holta added this to the 6.7 milestone Sep 29, 2018
@holta
Copy link
Member

holta commented Oct 1, 2018

Refs: #412 #608 #826 PR #870

@holta
Copy link
Member

holta commented Oct 1, 2018

@jvonau & @m-anish can you review this captive portal PR from @georgejhunt, ideally today or tmrw if you have time, so it can be merged (or revised) as appropriate?

@holta
Copy link
Member

holta commented Oct 1, 2018

@georgejhunt can you look over this PR feedback from @jvonau ?

  • looks like some/the templates and support scripts are not provided
  • there is a duplicate when clause
  • not sure why hosts.yml is being modified
  • why is box.lan being hardcoded in the templates?
  • IIAB_GATEWAY_ENABLED LAN_IP in iiab.env should detect the current state not be a [one-off] when the the file is first installed

@holta
Copy link
Member

holta commented Oct 1, 2018

  • there is a duplicate when clause

Lines 47 and 49 of roles/network/tasks/captive_portal.yml :
https://github.com/iiab/iiab/pull/1179/files#diff-5fb8b8548104837f4087a06b933430beR49

@jvonau also mentions:

  • from the commit messages looks like sqlite is used but not requested as a package along with python-dateutil that could go in packages
  • [ Ansible's service: module should be systemd: with daemon-reload: yes ]

@georgejhunt
Copy link
Contributor Author

Thanks for the extra set of eyes.

  • looks like some/the templates and support scripts are not provided
    -- I think templates and support scripts are all in place -- did a clean install
  • there is a duplicate when clause
    fixed
  • not sure why hosts.yml is being modified
    -- I'm not sure either,reverted -- perhaps when I was playing with virtual hosts in apache
  • why is box.lan being hardcoded in the templates?
    -- I use jinja2 to display the splash, -- and ansible also uses jinja2 -- cannot both interpret {% %} as I want
  • IIAB_GATEWAY_ENABLED LAN_IP in iiab.env should detect the current state not be a [one-off] when the the file is first installed
    -- Don't understand. Template should pick up the current state of variable during ansible install

@holta
Copy link
Member

holta commented Dec 12, 2018

Superseded by PRs #1300, #1327, #1333

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants