• Wiki editing (part zero in draft stage)

    From sardaukar@21:2/114 to All on Saturday, March 18, 2017 20:51:00
    Hello again!

    So I have an initial draft of "part zero" of the tutorial on the wiki (http://wiki.bbs.geek.nz/tutorials:crystal_bbs:part_zero) - let me know what you think and of any typos I might have missed.

    I hope to get the next part up tomorrow!

    Cheers,

    --
    "I must not fear. Fear is the mind-killer."

    --- Mystic BBS v1.12 A31 (Raspberry Pi)
    * Origin: Scifi Hangout (21:2/114)
  • From Apam@21:1/188.2 to Sardaukar on Sunday, March 19, 2017 17:31:00
    RE: Wiki editing (part zero in draft stage)
    BY: sardaukar(21:2/114)

    I would say the 'delay' when connecting to a BBS is more likely due to
    it resolving your address rather than waiting for telnet commands,
    telnet commands can happen at any time throughout the connection and are handled (if they are handled) on the fly, so no need to wait.

    For example say someone resizes their terminal while connected, the
    telnet protocol must update window size and so on.

    Also, ansi codes are not related to telnet, they are related to your
    terminal type and can be sent over any kind of connection, be it telnet
    ssh, serial connection or just your system console.

    Andrew

    --- WWIV 5.3.0.development
    * Origin: System 17 - andrew.homeunix.org:2025 (21:1/188.2)
  • From sardaukar@21:2/114 to Apam on Sunday, March 19, 2017 11:39:00
    I would say the 'delay' when connecting to a BBS is more likely due to
    it resolving your address rather than waiting for telnet commands,
    telnet commands can happen at any time throughout the connection and are handled (if they are handled) on the fly, so no need to wait.

    Some of the options are negotiated at the very start (window size,
    status line, flow, etc) and those are needed before the rest of the session
    can continue. In a request/response flow, the only way to be sure all of the client's *initial* options are set is to wait for more being sent.

    Since Crystal doesn't do non-blocking IO (yet), I have to set the socket timeout to 1 second and then, if no more data is sent from the client, to assume no more options related to the session's initial setup are needed.
    I've seen this kind of "negotiation" timeout in other telnet servers.

    For example say someone resizes their terminal while connected, the
    telnet protocol must update window size and so on.

    Sure, but again that's not necessary for the initial setup of the session.

    Also, ansi codes are not related to telnet, they are related to your terminal type and can be sent over any kind of connection, be it telnet ssh, serial connection or just your system console.

    Do you mean IAC messages or escape sequences? I mention escape sequences as being maybe familiar to bash prompts and so on, but I might need to emphasize that they're not Telnet related.

    Cheers,

    --
    "I must not fear. Fear is the mind-killer."

    --- Mystic BBS v1.12 A31 (Raspberry Pi)
    * Origin: Scifi Hangout (21:2/114)
  • From sardaukar@21:1/101 to Apam on Monday, March 20, 2017 01:20:00
    OK, so I went over the tutorial again, and yeah the whole ANSI/IAC divide was murky - I've polished it a bit and I think it's clearer now. Let me know know what you think!

    Cheers,

    --- Mystic BBS v1.12 A31 (Windows)
    * Origin: Agency BBS | telnet://agency.bbs.geek.nz (21:1/101)
  • From apam@21:1/188.5 to sardaukar on Sunday, March 19, 2017 22:35:00
    OK, so I went over the tutorial again, and yeah the whole ANSI/IAC divid
    e was
    murky - I've polished it a bit and I think it's clearer now. Let me know
    know
    what you think!

    Looks good. I'm wondering if it could be modified slightly (to remove the tutorial references) and moved to Misc->Telnet Handling, then Have the
    crystal BBS tutorial reference that?

    I just suggest this as I think it's a good introduction to telnet, and I
    think any Telnet Handling page would just duplicate your work, and it
    could be referenced then from other tutorials, the python bbs tutorial
    and any future page that wants to reference telnet handling.

    What do you think?

    Andrew

    --- MagickaBBS v0.5alpha (NetBSD/evbarm)
    * Origin: Cauldron BBS - Magicka Test BBS (21:1/188.5)
  • From apam@21:1/188.5 to apam on Sunday, March 19, 2017 22:37:00
    and any future page that wants to reference telnet handling.

    I've got to fix my external editor lol. It cut off the rest of the
    message..

    Was just wondering what your thoughts were, on that?

    Andrew

    --- MagickaBBS v0.5alpha (NetBSD/evbarm)
    * Origin: Cauldron BBS - Magicka Test BBS (21:1/188.5)
  • From sardaukar@21:1/101 to apam on Monday, March 20, 2017 11:55:00
    Hmm yeah, not sure how that would look. I think the text would need some mending, but it's surely doable. I'm typing up part one now with some actual code, so when I'm done I'll get to it if it's not too late.

    Cheers,

    --- Mystic BBS v1.12 A31 (Windows)
    * Origin: Agency BBS | telnet://agency.bbs.geek.nz (21:1/101)