• syncWXremix 1.02 release

    From KenDB3@VERT/KD3NET to All on Sunday, January 10, 2016 00:15:26
    For those of you still following along, here is the 1.02 release with all the recent changes and fixes.

    http://bbs.kd3.us/kd3doors.ssjs
    or FTP
    ftp://bbs.kd3.us/main/KD3DOORS/sWXr102.zip

    The breakdown of what's changed:

    - Functions for retrieving a WebSocket client's real IP address specifically for the new v4 WebUI that is being developed. (Thanks echicken!)
    - Better checking for private/local network users. (ec again)
    - Added support for checking for dialup users. (Thanks to Tbirdsradio for all the testing!)
    - Clear abort flag before terminating. (Thanks DM)
    - Add display option for non-ANSI Terminals. (Much prettier now)

    Big thanks to all who have helped!

    ~KenDB3

    ---
    þ Synchronet þ KD3net-Rhode Island's only BBS about nothing. http://bbs.kd3.us
  • From Deepend@VERT/RDBBS to KenDB3 on Sunday, January 10, 2016 02:04:48
    Not sure If I should have done anything to update to this version outside of replacing the files. But having it as a login event it now doesn't show the right locations weather, it shows me the weather from the BBS IP. And using it as a door with the web client just uses my fall-back setting.


    Thanks
    Mike

    ---
    þ Synchronet þ RetroDigital BBS - rdnetbbs.com
  • From Digital Man@VERT to KenDB3 on Sunday, January 10, 2016 01:21:25
    Re: syncWXremix 1.02 release
    By: KenDB3 to All on Sun Jan 10 2016 12:15 am

    For those of you still following along, here is the 1.02 release with all the recent changes and fixes.

    http://bbs.kd3.us/kd3doors.ssjs
    or FTP
    ftp://bbs.kd3.us/main/KD3DOORS/sWXr102.zip

    The breakdown of what's changed:

    - Functions for retrieving a WebSocket client's real IP address specifically for the new v4 WebUI that is being developed. (Thanks echicken!)
    - Better checking for private/local network users. (ec again)
    - Added support for checking for dialup users. (Thanks to Tbirdsradio for all the testing!)
    - Clear abort flag before terminating. (Thanks DM)
    - Add display option for non-ANSI Terminals. (Much prettier now)

    Big thanks to all who have helped!

    I did receive one change request (for your next version, no rush):

    Change occurences of this:
    if(console.yesno("Read the full alert"))
    to this:
    if(!console.noyes("Read the full alert"))

    This will make "No" the default (e.g. if the user just hits enter a bunch of times to get through all the logon screens, not actually reading what they're seeing).

    digital man

    Synchronet "Real Fact" #69:
    Rob Swindell was interviewed for Jason Scott's BBS Documentary in July of 2002. Norco, CA WX: 50.9øF, 86.0% humidity, 3 mph WSW wind, 0.00 inches rain/24hrs

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From Deuce@VERT/SYNCNIX to Digital Man on Sunday, January 10, 2016 13:43:45
    Re: syncWXremix 1.02 release
    By: Digital Man to KenDB3 on Sun Jan 10 2016 01:21 am

    I did receive one change request (for your next version, no rush):

    Change occurences of this:
    if(console.yesno("Read the full alert"))
    to this:
    if(!console.noyes("Read the full alert"))

    This will make "No" the default (e.g. if the user just hits enter a bunch of times to get through all the logon screens, not actually reading what they're seeing).

    Or even better, make it an option... a default of "yes" makes sense for a door, but "no" makes sense for a login event.

    ---
    http://DuckDuckGo.com/ a better search engine that respects your privacy.
    Mro is an idiot. Please ignore him, we keep hoping he'll go away.
    þ Synchronet þ My Brand-New BBS (All the cool SysOps run STOCK!)
  • From KenDB3@VERT/KD3NET to Deepend on Sunday, January 10, 2016 14:54:31
    Not sure If I should have done anything to update to this version outside of replacing the files. But having it as a login event it now doesn't show the right locations weather, it shows me the weather from the BBS IP. And using it as a door with the web client just uses my fall-back setting.


    Thanks
    Mike

    Hmmm... let me take a stab at each.
    1) First issue, the update from 1.01b to 1.02 did not require any changes with the modopts.ini file. However, if you were running the original ver. 1.00, then yes, things changed, check out Sysop.txt.

    Is the problem with the BBS's IP happening when you log in with traditional Telnet/SSH/RLogin, or is it happening with an HTML 5 Terminal (ftelnet)? I logged into your site with SyncTerm over Telnet and saw the weather for Pawtucket, RI just fine. Also, what is your "fallback_type" set to?

    I tried to log in via ftelnet on your site, but for some reason it wasn't loading.

    One last thing, there was a change made to SBBS on 2016-12-16 where SBBS would remember your ~Last~ IP address from your previous session (at least the Javascript model was, not the @-Code). So, if you were using an SBBS version prior to the change, and you were to log in via HTML 5, then log out and log back in via Telnet, you would most likely see a DIFFERENT IP during the Logon events than when you ran it as an External Door later on in the same session.

    2) I've had a chance to test the v4 WebUI from ec, and I think you have to be actually Logged Into the web page for the TTYLOC to work (but, I am not sure, as that was ec's bit of programming). I had mixed results, but it did work sometimes using the HTML 5 (web socket based) client, but not all the time. I think from only a small amount of testing though, it was being logged into the WebUI that made the difference.

    For item 1 specifically, let me know a bit more about what it is doing, vs. what you were expecting it to do and I'll see what I can do :-).

    ~KenDB3

    ---
    þ Synchronet þ KD3net-Rhode Island's only BBS about nothing. http://bbs.kd3.us
  • From KenDB3@VERT/KD3NET to Digital Man on Sunday, January 10, 2016 14:58:12
    Re: syncWXremix 1.02 release
    By: KenDB3 to All on Sun Jan 10 2016 12:15 am

    For those of you still following along, here is the 1.02 release with all the recent changes and fixes.

    http://bbs.kd3.us/kd3doors.ssjs
    or FTP
    ftp://bbs.kd3.us/main/KD3DOORS/sWXr102.zip

    The breakdown of what's changed:

    - Functions for retrieving a WebSocket client's real IP address specifically for the new v4 WebUI that is being developed. (Thanks echicken!)
    - Better checking for private/local network users. (ec again)
    - Added support for checking for dialup users. (Thanks to Tbirdsradio for all the testing!)
    - Clear abort flag before terminating. (Thanks DM)
    - Add display option for non-ANSI Terminals. (Much prettier now)

    Big thanks to all who have helped!

    I did receive one change request (for your next version, no rush):

    Change occurences of this:
    if(console.yesno("Read the full alert"))
    to this:
    if(!console.noyes("Read the full alert"))

    This will make "No" the default (e.g. if the user just hits enter a bunch of times to get through all the logon screens, not actually reading what they're seeing).

    digital man

    That's a pretty good suggestion. Think it would be better as a configurable item in the modopts.ini? Like:

    wxalerts = yesno
    or
    wxalerts = noyes

    Then sysops could pick their poison.

    ~KenDB3

    ---
    þ Synchronet þ KD3net-Rhode Island's only BBS about nothing. http://bbs.kd3.us
  • From echicken@VERT/ECBBS to KenDB3 on Sunday, January 10, 2016 17:32:40
    Re: Re: syncWXremix 1.02 release
    By: KenDB3 to Deepend on Sun Jan 10 2016 14:54:31

    2) I've had a chance to test the v4 WebUI from ec, and I think you have to be actually Logged Into the web page for the TTYLOC to work (but, I am not

    Basically you need to have the following files up to date with what's in the CVS:

    exec/load/websocket-proxy.js
    exec/websocket-rlogin-service.js
    exec/websocket-telnet-service.js

    You should change your existing [WebSocket] section in ctrl/services.ini so that the command is 'websocket-telnet-service.js', and you should add a section like this:

    [WebSocketRLogin]
    Port=1513
    Command=websocket-rlogin-service.js

    (Use whatever port you like; add an Options line if you want NO_HOST_LOOKUP, etc., add a MaxClients line if you wish.)

    If you have a 'websocket-proxy.js' or 'websocket-rlogin-service.js' in your mods directory, remove them. Restart your services or your BBS.

    The method I provided for fetching an RLogin + WebSocket user's real IP address is tied to my new web UI. In that case, the user must be logged into the web interface for this to work. This is really only useful if syncWXremix appears on your 'Games' page in the web UI. (I should probably change the name of that page.)

    The method I provided for fetching a Telnet + WebSocket user's real IP address doesn't require login, but it does depend on the 'websocket-telnet-service.js' mentioned above. That service should intercept the Telnet TTYLOC command and respond with the WebSocket client's real IP address.

    In both cases the real IP address may yet be on your local network.

    ---
    echicken
    electronic chicken bbs - bbs.electronicchicken.com - 416-273-7230
    þ Synchronet þ electronic chicken bbs - bbs.electronicchicken.com
  • From KenDB3@VERT/KD3NET to Deuce on Sunday, January 10, 2016 22:16:12
    Re: syncWXremix 1.02 release
    By: Digital Man to KenDB3 on Sun Jan 10 2016 01:21 am

    I did receive one change request (for your next version, no rush):

    Change occurences of this:
    if(console.yesno("Read the full alert"))
    to this:
    if(!console.noyes("Read the full alert"))

    This will make "No" the default (e.g. if the user just hits enter a bunch of times to get through all the logon screens, not actually reading what they're seeing).

    Or even better, make it an option... a default of "yes" makes sense for a door, but "no" makes sense for a login event.


    Crazy question: Any way to tell if a door is being run from Logon event vs regular External? Or is there a way in javascript to pass an argument in the command line from SCFG (like - "?weather.js noyes")? Then you could set up two different instances.

    ~KenDB3

    ---
    þ Synchronet þ KD3net-Rhode Island's only BBS about nothing. http://bbs.kd3.us
  • From KenDB3@VERT/KD3NET to echicken on Sunday, January 10, 2016 22:22:25
    Re: Re: syncWXremix 1.02 release
    By: KenDB3 to Deepend on Sun Jan 10 2016 14:54:31

    2) I've had a chance to test the v4 WebUI from ec, and I think you have to be actually Logged Into the web page for the TTYLOC to work (but, I am not

    Basically you need to have the following files up to date with what's in the CVS:

    exec/load/websocket-proxy.js
    exec/websocket-rlogin-service.js
    exec/websocket-telnet-service.js

    You should change your existing [WebSocket] section in ctrl/services.ini so that the command is 'websocket-telnet-service.js', and you should add a section like this:

    [WebSocketRLogin]
    Port=1513
    Command=websocket-rlogin-service.js

    (Use whatever port you like; add an Options line if you want NO_HOST_LOOKUP, etc., add a MaxClients line if you wish.)

    If you have a 'websocket-proxy.js' or 'websocket-rlogin-service.js' in your mods directory, remove them. Restart your services or your BBS.

    The method I provided for fetching an RLogin + WebSocket user's real IP address is tied to my new web UI. In that case, the user must be logged into the web interface for this to work. This is really only useful if syncWXremix appears on your 'Games' page in the web UI. (I should probably change the name of that page.)

    The method I provided for fetching a Telnet + WebSocket user's real IP address doesn't require login, but it does depend on the 'websocket-telnet-service.js' mentioned above. That service should intercept the Telnet TTYLOC command and respond with the WebSocket client's real IP address.

    In both cases the real IP address may yet be on your local network.


    Thanks for the clarification. I only played around with it for a little while. For the Telnet and TTYLOC part, it sounds like it doesn't have to be the v4 WebUI, is that correct? Just the newer proxy, 'websocket-telnet-service.js'. If that is true, one more question, would I need to be hosting my own install of ftelnet, or could I be using the embedded version Ree has at my.ftelnet.ca? (Mostly just curious)

    ~KenDB3

    ---
    þ Synchronet þ KD3net-Rhode Island's only BBS about nothing. http://bbs.kd3.us
  • From Digital Man@VERT to KenDB3 on Sunday, January 10, 2016 20:46:06
    Re: Re: syncWXremix 1.02 release
    By: KenDB3 to Deuce on Sun Jan 10 2016 10:16 pm

    Crazy question: Any way to tell if a door is being run from Logon event vs regular External?

    Probably, but I can't think of what it would be off the top of my head. :-)

    Or is there a way in javascript to pass an argument in the
    command line from SCFG (like - "?weather.js noyes")? Then you could set up two different instances.

    Yes, that's also an option (you parse command-line options in JS via the 'argv' array).

    digital man

    Synchronet "Real Fact" #25:
    The Synchronet Web Server was written predominantly by Stephen Hurd (Deuce). Norco, CA WX: 52.1øF, 87.0% humidity, 2 mph NNW wind, 0.00 inches rain/24hrs

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From echicken@VERT/ECBBS to KenDB3 on Sunday, January 10, 2016 23:33:52
    Thanks for the clarification. I only played around with it for a little while. For the Telnet and TTYLOC part, it sounds like it doesn't have to be the v4 WebUI, is that correct? Just the newer proxy, 'websocket-telnet-service.js'. If that is true, one more question, would I need to be hosting my own install of ftelnet, or could I be using the embedded version Ree has at my.ftelnet.ca? (Mostly just curious)

    For WebSocket-Telnet clients, the important part here is the proxy service. This is the part that reports the client's IP address in response to TTYLOC, and is independent of the web UI.

    For WebSocket-RLogin clients, the important part is the web UI (mine) which records the user's IP address in a session store. If the user is on via RLogin and from the local network, then you can read their IP address from their web session store to find out where they (probably) came from.

    Loading fTelnet from some other location is fine, but the connection still needs to pass through a proxy that will respond to the TTYLOC command - which for now is likely only to be one that you host for yourself. I don't know enough about fTelnet embedding options to say more (I just host my own), but if you can tell it to use a particular WebSocket proxy then it'll work.

    ---
    echicken
    electronic chicken bbs - bbs.electronicchicken.com - 416-273-7230
    þ Synchronet þ electronic chicken bbs - bbs.electronicchicken.com
  • From Deuce@VERT/SYNCNIX to KenDB3 on Sunday, January 10, 2016 23:04:25
    Re: Re: syncWXremix 1.02 release
    By: KenDB3 to Deuce on Sun Jan 10 2016 10:16 pm

    Crazy question: Any way to tell if a door is being run from Logon event vs regular External? Or is there a way in javascript to pass an argument in the command line from SCFG (like - "?weather.js noyes")? Then you could set up two different instances.

    You can support arguments via the argv array. While there are ways to detect if it's an external or logon event, I would strongly advise against that.

    ---
    http://DuckDuckGo.com/ a better search engine that respects your privacy.
    Mro is an idiot. Please ignore him, we keep hoping he'll go away.
    þ Synchronet þ My Brand-New BBS (All the cool SysOps run STOCK!)
  • From Deuce@VERT/SYNCNIX to Digital Man on Sunday, January 10, 2016 23:04:53
    Re: Re: syncWXremix 1.02 release
    By: Digital Man to KenDB3 on Sun Jan 10 2016 08:46 pm

    Crazy question: Any way to tell if a door is being run from Logon event vs regular External?

    Probably, but I can't think of what it would be off the top of my head. :-)

    I was thinking the user action.

    ---
    http://DuckDuckGo.com/ a better search engine that respects your privacy.
    Mro is an idiot. Please ignore him, we keep hoping he'll go away.
    þ Synchronet þ My Brand-New BBS (All the cool SysOps run STOCK!)
  • From Deepend@VERT/RDBBS to KenDB3 on Monday, January 11, 2016 01:02:21
    Hmmm... let me take a stab at each.
    1) First issue, the update from 1.01b to 1.02 did not require any changes with the modopts.ini file. However, if you were running the original ver. 1.00, then yes, things changed, check out Sysop.txt.

    I have went over the file and it was good.

    Is the problem with the BBS's IP happening when you log in with traditional Telnet/SSH/RLogin, or is it happening with an HTML 5 Terminal (ftelnet)? I logged into your site with SyncTerm over Telnet and saw the weather for Pawtucket, RI just fine. Also, what is your "fallback_type" set to?

    fallback_type nonip
    and fallback is YYC
    When I login with Syncterm the logon event shows weather where the server is which is in Quebec Canada and running it with syncterm as a door works fine. On the web side of things it shows Quebec at logon and shows the fallback YYC when ran as door.

    I tried to log in via ftelnet on your site, but for some reason it wasn't loading.

    I will check into that. (some glitches I have had due to reverse proxy to use SSL on Synchronets website.)

    One last thing, there was a change made to SBBS on 2016-12-16 where SBBS would remember your ~Last~ IP address from your previous session (at least the Javascript model was, not the @-Code). So, if you were using an SBBS version prior to the change, and you were to log in via HTML 5, then log out and log back in via Telnet, you would most likely see a DIFFERENT IP during the Logon events than when you ran it as an External Door later on in the same session.

    That is possible to be at least my logon event issue maybe?

    2) I've had a chance to test the v4 WebUI from ec, and I think you have to be actually Logged Into the web page for the TTYLOC to work (but, I am not sure, as that was ec's bit of programming). I had mixed results, but it did work sometimes using the HTML 5 (web socket based) client, but not all the time. I think from only a small amount of testing though, it was being logged into the WebUI that made the difference.

    Always logged on to webui when I am using it.

    For item 1 specifically, let me know a bit more about what it is doing, vs. what you were expecting it to do and I'll see what I can do :-).

    I think I covered things pretty good above. Can you let me know where to look for update to sbbs and I will try that as well.

    Thanks
    Mike

    ---
    þ Synchronet þ RetroDigital BBS - rdnetbbs.com
  • From Deepend@VERT/RDBBS to KenDB3 on Monday, January 11, 2016 01:15:27
    OK I updated the SBBS files that echicken recommended. That did fix the logon event while using Syncterm. As for the WEBUI the issue there could be that I use websockify to allow me to use the telnet under my SSL URL. So I may not be able to fix that.

    Thanks
    Mike

    ---
    þ Synchronet þ RetroDigital BBS - rdnetbbs.com
  • From KenDB3@VERT/KD3NET to echicken on Monday, January 11, 2016 13:15:32
    Re: Re: syncWXremix 1.02 release
    By: echicken to KenDB3 on Sun Jan 10 2016 11:33 pm

    Thanks for the clarification. I only played around with it for a
    little while. For the Telnet and TTYLOC part, it sounds like it
    doesn't have to be the v4 WebUI, is that correct? Just the newer
    proxy, 'websocket-telnet-service.js'. If that is true, one more
    question, would I need to be hosting my own install of ftelnet, or
    could I be using the embedded version Ree has at my.ftelnet.ca?
    (Mostly just curious)

    For WebSocket-Telnet clients, the important part here is the proxy service. This is the part that reports the client's IP address in response to TTYLOC, and is independent of the web UI.

    For WebSocket-RLogin clients, the important part is the web UI (mine) which records the user's IP address in a session store. If the user is on via RLogin and from the local network, then you can read their IP address from their web session store to find out where they (probably) came from.

    Loading fTelnet from some other location is fine, but the connection still needs to pass through a proxy that will respond to the TTYLOC command - which for now is likely only to be one that you host for yourself. I don't know enough about fTelnet embedding options to say more (I just host my own), but if you can tell it to use a particular WebSocket proxy then it'll work.

    I wasn't seeing it at all while using Ree's embed code from my.ftelnet.ca, but that wasn't the problem. Changing over to the newer 'websocket-telnet-service.js' had a slight change in how my BBS saw the connection coming in. The 'websocket-telnet-service.js' sees my local IP on the Services side, and then passes over to the Terminal Server the BBS's IP address. So, before, with 'websocketservice.js', the Terminal Server would see the connection come from my local private IP, in this case 192.168.1.100. Now, it sees the connection coming from my Public IP.

    I changed a test version to look for my IP specifically, and that worked. But I am not sure if I was seeing this with your V4 WebUI.

    ~KenDB3

    ---
    þ Synchronet þ KD3net-Rhode Island's only BBS about nothing. http://bbs.kd3.us
  • From KenDB3@VERT/KD3NET to Deepend on Monday, January 11, 2016 13:19:10
    Re: Re: syncWXremix 1.02 release
    By: Deepend to KenDB3 on Mon Jan 11 2016 01:15 am

    OK I updated the SBBS files that echicken recommended. That did fix the logon event while using Syncterm. As for the WEBUI the issue there could be that I use websockify to allow me to use the telnet under my SSL URL. So I may not be able to fix that.

    I think you are still going to see some odd behaviour from time to time, as
    it looks like you are using SBBS ver 3.16c (or at the very least, your system info says your version was from Dec 12th). Dec 16th was the change that kept you from seeing your last session when you were in the Logon event.

    Just FYI.

    http://cvs.synchro.net/commitlog.ssjs#32554

    ~KenDB3

    ---
    þ Synchronet þ KD3net-Rhode Island's only BBS about nothing. http://bbs.kd3.us
  • From KenDB3@VERT/KD3NET to echicken on Monday, January 11, 2016 17:10:04
    Re: Re: syncWXremix 1.02 release
    By: KenDB3 to echicken on Mon Jan 11 2016 01:15 pm

    For WebSocket-Telnet clients, the important part here is the proxy
    service. This is the part that reports the client's IP address in
    response to TTYLOC, and is independent of the web UI.

    For WebSocket-RLogin clients, the important part is the web UI
    (mine) which records the user's IP address in a session store. If
    the user is on via RLogin and from the local network, then you can
    read their IP address from their web session store to find out where
    they (probably) came from.
    Loading fTelnet from some other location is fine, but the connection
    still needs to pass through a proxy that will respond to the TTYLOC
    command - which for now is likely only to be one that you host for
    yourself. I don't know enough about fTelnet embedding options to say
    more (I just host my own), but if you can tell it to use a
    particular WebSocket proxy then it'll work.

    I wasn't seeing it at all while using Ree's embed code from my.ftelnet.ca, but that wasn't the problem. Changing over to the newer 'websocket-telnet-service.js' had a slight change in how my BBS saw the connection coming in. The 'websocket-telnet-service.js' sees my local IP

    I should REALLY Clarify what I meant to say there when I said local IP, I meant to say the new service sees the Public IP I am coming from when I access the web site. (Example: my work VPN shows it as a public IP from Virginia when looking in the log from SERVICES, not the log from the Terminal)

    on the Services side, and then passes over to the Terminal Server the BBS's IP address. So, before, with 'websocketservice.js', the Terminal Server would see the connection come from my local private IP, in this case 192.168.1.100. Now, it sees the connection coming from my Public IP.

    (The BBS's Public IP)

    I changed a test version to look for my IP specifically, and that worked. But I am not sure if I was seeing this with your V4 WebUI.

    Sorry, just reread all of this and thought I was terribly unclear. I hadn't had enough coffee at that point :-\

    ~KenDB3

    ---
    þ Synchronet þ KD3net-Rhode Island's only BBS about nothing. http://bbs.kd3.us
  • From echicken@VERT/ECBBS to KenDB3 on Monday, January 11, 2016 18:37:11
    Re: Re: syncWXremix 1.02 release
    By: KenDB3 to echicken on Mon Jan 11 2016 17:10:04

    I should REALLY Clarify what I meant to say there when I said local IP, I meant to say the new service sees the Public IP I am coming from when I access the web site. (Example: my work VPN shows it as a public IP from Virginia when looking in the log from SERVICES, not the log from the Terminal)

    Right - the WebSocket proxy (websocket-telnet-service.js) is accepting a connection from an external client (you, from your work VPN.)

    on the Services side, and then passes over to the Terminal Server
    the BBS's IP address. So, before, with 'websocketservice.js', the
    Terminal Server would see the connection come from my local private
    IP, in this case 192.168.1.100. Now, it sees the connection coming
    from my Public IP.

    Then it's not matching the search for a private address, and the attempt to fetch the real IP address from the WebSocket server isn't happening.

    You could amend the getQuerySuffix() function like so:

    https://gist.github.com/echicken/0c4896e8029f1b95a4b5

    I would expect that to solve the problem, or at least move us along to the next one - but I too have not had enough coffee today, so we'll see.

    ---
    echicken
    electronic chicken bbs - bbs.electronicchicken.com - 416-273-7230
    þ Synchronet þ electronic chicken bbs - bbs.electronicchicken.com
  • From KenDB3@VERT/KD3NET to echicken on Monday, January 11, 2016 22:29:05
    Re: Re: syncWXremix 1.02 release
    By: echicken to KenDB3 on Mon Jan 11 2016 06:37 pm

    on the Services side, and then passes over to the Terminal Server
    the BBS's IP address. So, before, with 'websocketservice.js', the
    Terminal Server would see the connection come from my local private
    IP, in this case 192.168.1.100. Now, it sees the connection coming
    from my Public IP.

    Then it's not matching the search for a private address, and the attempt to fetch the real IP address from the WebSocket server isn't happening.

    You could amend the getQuerySuffix() function like so:

    https://gist.github.com/echicken/0c4896e8029f1b95a4b5

    I would expect that to solve the problem, or at least move us along to the next one - but I too have not had enough coffee today, so we'll see.

    That certainly solves it. Tested against runemaster webui, your v4 ui, and also connected via terminal on a device on the local network to make sure that didn't go whacky. Handles it all like a champ.

    I seriously owe you a cup of coffee at this point.

    ~KenDB3

    ---
    þ Synchronet þ KD3net-Rhode Island's only BBS about nothing. http://bbs.kd3.us
  • From Nightfox@VERT/DIGDIST to KenDB3 on Saturday, January 23, 2016 10:24:18
    Re: syncWXremix 1.02 release
    By: KenDB3 to All on Sun Jan 10 2016 00:15:26

    For those of you still following along, here is the 1.02 release with all the recent changes and fixes.

    http://bbs.kd3.us/kd3doors.ssjs
    or FTP
    ftp://bbs.kd3.us/main/KD3DOORS/sWXr102.zip

    I just updated to version 1.02 on my BBS this morning. But when it runs, I'm getting the following error:
    !JavaScript websocket-helpers.js line 66: ReferenceError: un is not defined

    After rolling back to version 1.01b, it runs successfully.

    Nightfox

    ---
    þ Synchronet þ Digital Distortion: digitaldistortionbbs.com
  • From echicken@VERT/ECBBS to Nightfox on Saturday, January 23, 2016 14:28:37
    I just updated to version 1.02 on my BBS this morning. But when it runs, I'm getting the following error:
    !JavaScript websocket-helpers.js line 66: ReferenceError: un is not defined

    Just an oversight; replace 'un' on the offending line with 'user.number' and that should help.

    ---
    echicken
    electronic chicken bbs - bbs.electronicchicken.com - 416-273-7230
    þ Synchronet þ electronic chicken bbs - bbs.electronicchicken.com
  • From Nightfox@VERT/DIGDIST to echicken on Saturday, January 23, 2016 14:29:31
    Re: syncWXremix 1.02 release
    By: echicken to Nightfox on Sat Jan 23 2016 14:28:37

    I just updated to version 1.02 on my BBS this morning. But when it
    runs, I'm getting the following error:
    !JavaScript websocket-helpers.js line 66: ReferenceError: un is not
    defined

    Just an oversight; replace 'un' on the offending line with 'user.number' and that should help.

    That fixes it, thanks.

    But also, I figured the author of syncWXremix should know so that he can fix it and update the official syncWXremix release package so that other sysops don't run into the same issue.

    Nightfox

    ---
    þ Synchronet þ Digital Distortion: digitaldistortionbbs.com
  • From KenDB3@VERT/KD3NET to Nightfox on Monday, January 25, 2016 21:21:48
    Re: syncWXremix 1.02 release
    By: Nightfox to echicken on Sat Jan 23 2016 02:29 pm

    Re: syncWXremix 1.02 release
    By: echicken to Nightfox on Sat Jan 23 2016 14:28:37

    I just updated to version 1.02 on my BBS this morning. But when it
    runs, I'm getting the following error:
    !JavaScript websocket-helpers.js line 66: ReferenceError: un is not
    defined

    Just an oversight; replace 'un' on the offending line with
    'user.number' and that should help.

    That fixes it, thanks.

    But also, I figured the author of syncWXremix should know so that he can fix it and update the official syncWXremix release package so that other sysops don't run into the same issue.

    Nightfox

    Thank you, gentlemen! I'll drop this into the GitHub repo and do a quick packaging for a new version/bug fix. I've been working on a family project this month and have been tied up. February will be a little less hectic for me. I've been thinking about the request I got for different language support and how best to approach that. Also, the JSON DB idea that was proposed (by Kirkman I think) sounds cool, but scares the living daylights out of me since I have never done anything like that, but certainly makes for a good challenge.

    I also haven't forgotten about the YesNo vs NoYes suggestion from DM. I played with argv and think that's the way to go on that one.

    ~KenDB3

    ---
    þ Synchronet þ KD3net-Rhode Island's only BBS about nothing. http://bbs.kd3.us
  • From KenDB3@VERT/KD3NET to Nightfox on Monday, January 25, 2016 22:07:15
    Re: syncWXremix 1.02 release
    By: KenDB3 to Nightfox on Mon Jan 25 2016 09:21 pm

    I just updated to version 1.02 on my BBS this morning. But when it
    runs, I'm getting the following error:
    !JavaScript websocket-helpers.js line 66: ReferenceError: un is not
    defined

    Just an oversight; replace 'un' on the offending line with
    'user.number' and that should help.

    That fixes it, thanks.

    But also, I figured the author of syncWXremix should know so that he
    can fix it and update the official syncWXremix release package so
    that other sysops don't run into the same issue.

    Thank you, gentlemen! I'll drop this into the GitHub repo and do a quick packaging for a new version/bug fix.

    Updated!
    http://bbs.kd3.us/kd3doors.ssjs
    -or-
    ftp://bbs.kd3.us/main/KD3DOORS/sWXr103.zip

    Thanks again for the report Nightfox, and thanks again for the fix echicken.

    ~KenDB3

    ---
    þ Synchronet þ KD3net-Rhode Island's only BBS about nothing. http://bbs.kd3.us
  • From Gargoyle@VERT/GARGOYLE to KenDB3 on Tuesday, January 26, 2016 06:37:38
    Hi Ken,

    Awesome job!

    Randy

    For those of you still following along, here is the 1.02 release with
    all
    the recent changes and fixes.

    http://bbs.kd3.us/kd3doors.ssjs
    or FTP
    ftp://bbs.kd3.us/main/KD3DOORS/sWXr102.zip

    The breakdown of what's changed:

    - Functions for retrieving a WebSocket client's real IP address
    specifically
    for the new v4 WebUI that is being developed. (Thanks echicken!)
    - Better checking for private/local network users. (ec again)
    - Added support for checking for dialup users. (Thanks to Tbirdsradio
    for
    all the testing!)
    - Clear abort flag before terminating. (Thanks DM)
    - Add display option for non-ANSI Terminals. (Much prettier now)

    Big thanks to all who have helped!

    ~KenDB3

    ---
    þ Synchronet þ KD3net-Rhode Island's only BBS about nothing. http://bbs.kd3.us

    ---
    þ Synchronet þ DarkAges BBS | darkagesbbs.com | Wayne, OK
  • From KenDB3@VERT/KD3NET to Gargoyle on Tuesday, January 26, 2016 09:26:17
    Re: Re: syncWXremix 1.02 release
    By: Gargoyle to KenDB3 on Tue Jan 26 2016 06:37 am

    Hi Ken,
    Awesome job!
    Randy

    Thanks Randy!

    Also, I just packaged up 1.03 with a couple of bug fixes. And I owe some big thanks to a whole bunch of talented people that helped me, and escpecially nolageek for writing the initial app in the first place.

    ~KenDB3

    ---
    þ Synchronet þ KD3net-Rhode Island's only BBS about nothing. http://bbs.kd3.us
  • From spacesst@VERT/SPACESST to KenDB3 on Tuesday, January 26, 2016 16:43:13
    Re: syncWXremix 1.02 release - fixed and updated to 1.03
    By: KenDB3 to Nightfox on Mon Jan 25 2016 22:07:15

    Thank you, gentlemen! I'll drop this into the GitHub repo and do a
    quick packaging for a new version/bug fix.

    Updated!
    http://bbs.kd3.us/kd3doors.ssjs
    -or-
    ftp://bbs.kd3.us/main/KD3DOORS/sWXr103.zip



    How to run it at the Logon of the bbs

    it's working fine in the Xternal menu

    thx

    ---
    þ Synchronet þ SpaceSST BBS - mccarragher.org
  • From KenDB3@VERT/KD3NET to spacesst on Tuesday, January 26, 2016 20:09:45
    Re: syncWXremix 1.02 release - fixed and updated to 1.03
    By: spacesst to KenDB3 on Tue Jan 26 2016 04:43 pm

    Thank you, gentlemen! I'll drop this into the GitHub repo and do a
    quick packaging for a new version/bug fix.

    Updated!
    http://bbs.kd3.us/kd3doors.ssjs
    -or-
    ftp://bbs.kd3.us/main/KD3DOORS/sWXr103.zip

    How to run it at the Logon of the bbs
    it's working fine in the Xternal menu
    thx

    When you are setting up the External Door, the option that is near the bottom that says "Execute on Event", set that to be "Logon" and it will run as a Logon event as well. Another option from that menu is "Logon, Only", but then you will not see it as a regular External Door.

    Should look similar to this:

    1: Name Your Local Weather
    2: Internal Code SYNCWX
    3: Start-up Directory ../xtrn/syncWX/
    4: Command Line ?weather.js
    5: Clean-up Command Line
    6: Execution Cost None
    7: Access Requirements
    8: Execution Requirements
    9: Multiple Concurrent Users Yes
    10: Intercept Standard I/O No
    11: Native (32-bit) Executable No
    12: Use Shell to Execute No
    13: Modify User Data No
    14: Execute on Event No/Logon/Logon, Only
    15: Pause After Execution No
    16: BBS Drop File Type None
    17: Place Drop File In Node Directory
    18: Time Options...

    ~KenDB3

    ---
    þ Synchronet þ KD3net-Rhode Island's only BBS about nothing. http://bbs.kd3.us
  • From Luc Mccarragher@VERT to KenDB3 on Tuesday, January 26, 2016 21:42:42
    Re: syncWXremix 1.02 release - fixed and updated to 1.03
    By: KenDB3 to spacesst on Tue Jan 26 2016 20:09:45

    When you are setting up the External Door, the option that is near the bottom that says "Execute on Event", set that to be "Logon" and it will run as a Logon event as well. Another option from that menu is "Logon, Only", but then you will not see it as a regular External Door.


    Thanks
    --- SBBSecho 2.27-Win32
    * Origin: SpaceSST BBS (1:249/206)
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From spacesst@VERT/SPACESST to KenDB3 on Wednesday, January 27, 2016 08:47:13
    Re: syncWXremix 1.02 release - fixed and updated to 1.03
    By: KenDB3 to spacesst on Tue Jan 26 2016 20:09:45

    When you are setting up the External Door, the option that is near the bottom that says "Execute on Event", set that to be "Logon" and it will run as a Logon event as well. Another option from that menu is "Logon, Only", but then you will not see it as a regular External Door.


    it's Work fine with the noip and the Code for the Airport
    But with BBSIP it make a ERR

    There was a problem getting data from Weather Underground.
    The sysop has been notified.

    ---
    þ Synchronet þ SpaceSST BBS - mccarragher.org
  • From KenDB3@VERT/KD3NET to spacesst on Wednesday, January 27, 2016 22:26:22
    Re: syncWXremix 1.02 release - fixed and updated to 1.03
    By: spacesst to KenDB3 on Wed Jan 27 2016 08:47 am

    When you are setting up the External Door, the option that is near
    the bottom that says "Execute on Event", set that to be "Logon" and
    it will run as a Logon event as well. Another option from that menu
    is "Logon, Only", but then you will not see it as a regular External
    Door.


    it's Work fine with the noip and the Code for the Airport
    But with BBSIP it make a ERR

    There was a problem getting data from Weather Underground.
    The sysop has been notified.

    Hmmm, I might need some more info.
    How are you logging in to the BBS? ie. Telnet, ftelnet (flash), ftelnet (HTML5), Dial-up, etc...?
    Does the error happen only during the Logon event, or just as an External Door, or both?
    What version of Synchronet are you running? 3.16c? Latest 3.17? If 3.17 what date is the version?

    Also, could you do me a favor? Could you change your LogLevel to be Debugging? This should also generate a Debug message in your Synchronet Control Panel that has the actual String sent to wunderground.com and the error the API kicked back (hopefully)

    Changing the LogLevel is done in /sbbs/ctrl/sbbs.ini
    More info about it is listed here: http://wiki.synchro.net/config:sbbs.ini#loglevel

    And see if you can grab 1 or 2 examples and grab the string generated when the Door is run during the Logon event, and then again later when the Door is run as an External from the External Programs menu.

    You can email me results or you can post them here. Feel free to block out the API Key or any other sensitive info, but the IP in the error message would be very helpful.
    Email: kendb3 at bbs.kd3.us

    ~KenDB3

    ---
    þ Synchronet þ KD3net-Rhode Island's only BBS about nothing. http://bbs.kd3.us
  • From KenDB3@VERT/KD3NET to Digital Man on Friday, February 05, 2016 11:08:29
    Re: syncWXremix 1.02 release
    By: Digital Man to KenDB3 on Sun Jan 10 2016 01:21 am

    I did receive one change request (for your next version, no rush):

    Change occurences of this:
    if(console.yesno("Read the full alert"))
    to this:
    if(!console.noyes("Read the full alert"))

    This will make "No" the default (e.g. if the user just hits enter a bunch of times to get through all the logon screens, not actually reading what they're seeing).

    Hi DM, I was getting ready to put this in, and since you were the one who asked about it, I had a design question for you.

    I was think of this two ways, both of which are an argv on the command line:

    Option 1: Add a command line option of "noyes" to change the alert to a NoYes bar instead of the YesNo, keep all other functionality the same.

    Option 2: Same deal. "noyes" on command line changes the alert to a NoYes choice instead. But also, at that point if you are looking for speed, if NO is chosen, give the credits at the bottom and then exit the program without any more intervention by the user. If YES is chosen, it shows the alert (for however many screens) and still ends with a pause like it does now.

    What do you think?

    Anyone else want to weigh in?

    ~KenDB3

    ---
    þ Synchronet þ KD3net-Rhode Island's only BBS about nothing. http://bbs.kd3.us
  • From Al@VERT/TRMB to KenDB3 on Friday, February 05, 2016 09:05:33
    Re: syncWXremix - noyes vs yesno
    By: KenDB3 to Digital Man on Fri Feb 05 2016 11:08 am

    Anyone else want to weigh in?

    I don't know if it would be useful or not, but whenever I encounter this weather info I always wonder what the weather is like at the destination.

    Maybe an option to see that info would be a good idea?

    In any case without any user input just let it go.. :)

    Ttyl :-),
    Al

    ... The computer made me do it!

    ---
    þ Synchronet þ The Rusty MailBox - Penticton, BC Canada - trmb.ca
  • From Digital Man@VERT to KenDB3 on Friday, February 05, 2016 11:51:42
    Re: syncWXremix - noyes vs yesno
    By: KenDB3 to Digital Man on Fri Feb 05 2016 11:08 am

    Re: syncWXremix 1.02 release
    By: Digital Man to KenDB3 on Sun Jan 10 2016 01:21 am

    I did receive one change request (for your next version, no rush):

    Change occurences of this:
    if(console.yesno("Read the full alert"))
    to this:
    if(!console.noyes("Read the full alert"))

    This will make "No" the default (e.g. if the user just hits enter a bunch of times to get through all the logon screens, not actually reading what they're seeing).

    Hi DM, I was getting ready to put this in, and since you were the one who asked about it, I had a design question for you.

    I was think of this two ways, both of which are an argv on the command line:

    Option 1: Add a command line option of "noyes" to change the alert to a NoYes bar instead of the YesNo, keep all other functionality the same.

    Option 2: Same deal. "noyes" on command line changes the alert to a NoYes choice instead. But also, at that point if you are looking for speed, if NO is chosen, give the credits at the bottom and then exit the program without any more intervention by the user. If YES is chosen, it shows the alert (for however many screens) and still ends with a pause like it does now.

    What do you think?

    The only difference between YesNo and NoYes is the default behavior when "enter" is pressed. I think it makes sense for the default to be "No" (for everyone), but if you think this should be configurable via the command-line, then that is certainly possible, but it seems like kind of a minute detail to make configurable.

    As for whether or not there is a "hit a key" pause before exiting, perhaps that makes more sense to be a configuration option. I think using modopts.ini is preferable to adding command-line options since it easier to tweak the settings in the file and no BBS recycle is required when experimenting with the different settings.

    digital man

    Synchronet "Real Fact" #63:
    Synchronet PCMS (introduced w/v2.0) is Programmable Command and Menu Structure. Norco, CA WX: 60.2øF, 29.0% humidity, 6 mph W wind, 0.00 inches rain/24hrs

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From Digital Man@VERT to KenDB3 on Friday, February 05, 2016 11:54:39
    Re: syncWXremix - noyes vs yesno
    By: Digital Man to KenDB3 on Fri Feb 05 2016 11:51 am

    The only difference between YesNo and NoYes is the default behavior when "enter" is pressed.

    That's a lie. The other difference is the return value: YesNo returns true for "Yes" (false otherwise), while NoYes returns true for "No" (false otherwise). :-)

    digital man

    Synchronet "Real Fact" #25:
    The Synchronet Web Server was written predominantly by Stephen Hurd (Deuce). Norco, CA WX: 60.2øF, 29.0% humidity, 6 mph W wind, 0.00 inches rain/24hrs

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From KenDB3@VERT/KD3NET to Digital Man on Saturday, February 06, 2016 22:00:38
    Re: syncWXremix - noyes vs yesno
    By: Digital Man to KenDB3 on Fri Feb 05 2016 11:51 am

    The only difference between YesNo and NoYes is the default behavior when "enter" is pressed. I think it makes sense for the default to be "No" (for everyone), but if you think this should be configurable via the command-line, then that is certainly possible, but it seems like kind of a minute detail to make configurable.

    As for whether or not there is a "hit a key" pause before exiting, perhaps that makes more sense to be a configuration option. I think using modopts.ini is preferable to adding command-line options since it easier to tweak the settings in the file and no BBS recycle is required when experimenting with the different settings.

    I see what you mean. I think I was overcomplicating it in my head.

    That's a lie. The other difference is the return value: YesNo returns true for "Yes" (false otherwise), while NoYes returns true for "No" (false otherwise). :-)

    Got it, that would certainly make a difference! Thanks!

    For now, I'll just keep things simple and just change the default to NoYes. I got a few requests that are going to add some stuff to modopts as it is.

    Thanks again for the suggestion.

    ~KenDB3

    ---
    þ Synchronet þ KD3net-Rhode Island's only BBS about nothing. http://bbs.kd3.us