home *** CD-ROM | disk | FTP | other *** search
/ ARM Club 3 / TheARMClub_PDCD3.iso / hensa / comms / netconfig_1 / !NetConfig / FirstDemon < prev    next >
Text File  |  1995-07-26  |  3KB  |  132 lines

  1. #slipdial
  2. #----------------------------------------------------------------
  3. #    Script to perform initial dial-up to Demon.
  4. #    This is needed to set a password and get the IP address.
  5. #----------------------------------------------------------------
  6.  
  7. # Set trace level
  8. debug 3
  9.  
  10. # Configure
  11. set wport "Internal"
  12. set prtnum 0
  13. set speed 57600
  14. set nodename "nyphot"
  15. set password "abcdefggffff"
  16.  
  17. # Initialise the modem driver
  18. driver USR
  19. port %wport %prtnum
  20. speed %speed
  21.  
  22. # Ring the first-choice PoP
  23. set phonenum 01212754848
  24.  
  25. # Claim the device driver
  26. if (!claim 3) goto noclaim
  27.  
  28. # Initialise the modem
  29. if (! init) goto noinit
  30.  
  31. # Dial Demon; exit if failed
  32. if (!dial /retry=1 /delay=10 %phonenum) goto noanswer
  33.  
  34. # Hurrah, we got in!  No we expect:
  35. #    <machine>.demon.co.uk (tty<something>):
  36. #    demon login:
  37. # To which we reply with our nodename.
  38.  
  39. if (!wait /delay=30 "login:") goto nologin
  40. send %nodename
  41.  
  42. # Now Demon should say:
  43. #    There is no password on your account....
  44. #    Password:
  45. # If the password has already been set, it just prompts for the password.
  46. if (!wait /delay=10 "Password:") goto nopass
  47. send %password
  48.  
  49. # If the account is a new one, Demon now prompt with:
  50. #    ...wasn't mistyped:
  51. # If it's already been set up, we get:
  52. #    Protocol:
  53. # If the account is not set up, or is set up with a different password,
  54. # we get:
  55. #    Login incorrect
  56. set response {wait/delay=20 "typed:" "Protocol:" "incorrect"}
  57. if (?eq %response 0) goto noip
  58. if (?eq %response 3) goto badnode
  59.  
  60. # If logging in for the first time, need to confirm the password
  61. # Otherwise, tell it what protocol
  62. if (?eq %response 1) send %password
  63. if (?eq %response 2) send "slip"
  64.  
  65. # We should now get
  66. #    <nodename>: IP Address: 158.152.<whatever> ...
  67. # So we just need to capture the IP address
  68. message/capture/max=20
  69. if (!ipget/delay=300 "158.152.") goto noip
  70.  
  71. # Hang up the phone line
  72. release
  73.  
  74. # Export the IP address for !NetConfig to pick up
  75. oscli "Set Demon$IpAddress %ipaddress"
  76.  
  77. # Restart !DemConfig to finish the configuration
  78. message/centre "IP address successfully retrieved."
  79. message/add/centre %ipaddress
  80. message/add/centre/wait "Close this window to return to !NetConfig."
  81. quit
  82.  
  83. # ---- Error handling ----
  84. :noclaim
  85. set err1 "Unable to claim the device driver."
  86. set err2 "Is something else using the serial port?"
  87. goto fail
  88.  
  89. :noinit
  90. set err1 "Modem initialisation failed."
  91. set err2 "Is it connected and switched on?"
  92. goto fail
  93.  
  94. :noanswer
  95. release
  96. set err1 "No dialling tone, no answer, engaged or no carrier."
  97. set err2 "Check modem settings and/or try again later."
  98. goto fail
  99.  
  100. :nologin
  101. release
  102. set err1 "No 'login:' prompt after 20 seconds"
  103. set err2 "Demon being very slow? Try again later."
  104. goto fail
  105.  
  106. :nopass
  107. release
  108. set err1 "No 'Password:' prompt after 10 seconds"
  109. set err2 "Demon being very slow? Try again later."
  110. goto fail
  111.  
  112. :noip
  113. release
  114. set err1 "No IP address forthcoming from Demon."
  115. # Don't know what might have happened here...
  116. set err2 "Click ADJUST on the SLIPdial icon to see the log."
  117. goto fail
  118.  
  119. :badnode
  120. release
  121. set err1 "Demon say your nodename / password are incorrect."
  122. set err2 "Is account set up yet?  Or is another password already set?"
  123. goto fail
  124.  
  125. # --- Common exit point on error
  126. :fail
  127. message/centre "*** Initial login to Demon failed ***"
  128. message/add/centre "%err1"
  129. message/add/centre "%err2"
  130. message/add/centre/wait "Close this window to return to !NetConfig."
  131. quit
  132.