home *** CD-ROM | disk | FTP | other *** search
/ GameStar 1998 November / GAMESTAR11A.ISO / Diverses / CServe / CS304_D / scripts.lib / connect.scr < prev    next >
Text File  |  1997-08-12  |  10KB  |  426 lines

  1. !
  2. !  Copyright (c) 1997
  3. !  by CompuServe Incorporated, Columbus, Ohio
  4. !
  5. !  The information in this software is subject to change without
  6. !  notice and should not be construed as a commitment by CompuServe.
  7. !
  8. !  CONNECT:
  9. !       Handles CompuServe and Direct.
  10. !
  11. !  NOTE:  It is recommended that the numeric codes for networks NOT be
  12. !       modified since other utility programs may assume the relationships
  13. !       of network names and network ids specified below.
  14. !
  15. !+V
  16. ! "4.0.2D-Memphis"
  17. !-V
  18.  
  19. !+N
  20. CompuServe = 1;         ! "CompuServe"
  21. AlaskaNet = 36;         ! "AlaskaNet"
  22. ArgNet  = 37;           ! "ARG-Net"
  23. Chilepac= 28;           ! "Chilepac"
  24. CSIRnet = 16;           ! "CSIR-Net"
  25. D1_NETZ = 42;           ! "D1-Netz"
  26. D2_NETZ = 43;           ! "D2-Netz"
  27. DataPac = 4;            ! "DataPac"
  28. Datex_J = 19;           ! "Datex-J"
  29. Datex_P = 10;           ! "Datex-P"
  30. E_PLUS = 41;            ! "E-Plus"
  31. EIRPAC = 33;            ! "EIRPAC"
  32. FENICSII = 24;          ! "FENICS II/IV"
  33. FTConnect = 12;         ! "FT-Connect"
  34. InfoNet_Europe = 5;     ! "InfoNet-Euro"
  35. InfoNet_Korea = 29;     ! "InfoNet-Kor"
  36. InfoNet_SAfrica = 32;   ! "InfoNet-RSA"
  37. InfoNet_Taiwan = 30;    ! "InfoNet-Taiw"
  38. InfoNet_World = 6;      ! "InfoNet-Wrld"
  39. Internet = 25;          ! "Internet"
  40. ISRAKAV = 17;           ! "ISRAKAV"
  41. LATA = 7;               ! "LATA"
  42. CTLATA = 8;             ! "LATA-Ct"
  43. PacNet = 21;            ! "PacNet"
  44. PlusNet = 38;           ! "PlusNet"
  45. PosServe = 27;          ! "HANJIN-NET"
  46. SCITOR = 34;            ! "SCITOR"
  47. SEVA = 35;              ! "SEVA"
  48. Telenet = 2;            ! "SprintNet"
  49. Telepac = 9;            ! "Telepac"
  50. Transpac = 18;          ! "Transpac"
  51. TTNNet = 22;            ! "TTN-Net"
  52. Tymnet = 3;             ! "Tymnet"
  53. VNZNET = 23;            ! "VNZ-Net"
  54. Direkt = 40;            ! "Direkt"
  55. !-N
  56.  
  57. define %CR = "^M";
  58. define %FALSE = 0;
  59. define %TRUE = 1;
  60. define %ErrorCode = 0;
  61. define %PPP = "";
  62. define %GatewayFailure = 0;
  63. GatewayRetry = 0;
  64. define %State = 1;
  65. ! %State defines the state of the connection:
  66. !       1 - Opening port
  67. !       2 - Initializing modem
  68. !       3 - Dialing phone
  69. !       4 - Connecting through alternate gateway
  70. !       5 - Connecting to CompuServe network (Host Name:)
  71. !       6 - Responding to User ID
  72. !       7 - Responding to Password/Secure login
  73. !       8 - Exited success
  74. !       9 - Reserved
  75. !       10 - Disconnecting Network
  76. !       11 - Hanging up modem
  77. !       12 - Exited success
  78.  
  79. hangup = 1;
  80. UsingModem = %FALSE;
  81. CISNetwork = %FALSE;
  82. ifndef %App = "";
  83. if (%App = "CID") and (%Network = Internet) goto Dialer;
  84.  
  85. Initialize:
  86. !
  87. ! Main Program
  88. !
  89. init %Port, %BaudRate;
  90. if %_init goto Continue_Connect;
  91.  
  92. define %FailureMsg = "Konnte Schnittstelle nicht initialisieren";
  93. define %ErrorCode = 2;
  94. if %Network <> Internet goto Connect_Fatal;
  95. define %ErrorCode = 3;
  96. goto Connect_Fatal;
  97.  
  98. Dialer:
  99. define %Network = CompuServe;
  100. goto Initialize;
  101.  
  102. Continue_Connect:
  103.     call %Dir & "first.scr" () : Result;
  104.     if Result = %Cancel goto Cancel_Connect;
  105.     if Result = %Failure goto Connect_Failure;
  106.     if Result = %Fatal goto Connect_Fatal;
  107.  
  108.     on cancel goto Cancel_Connect;
  109.     DirectConnect = (%Network = Direkt) or (%DialType = 2);
  110.  
  111.     if DirectConnect goto Connect_Network;
  112.  
  113.     call %Dir & "phone.scr" () : Result;
  114.  
  115.     if Result = %Cancel goto Cancel_Connect;
  116.     if Result = %Failure goto Connect_Failure;
  117.     if Result = %Fatal goto Connect_Fatal;
  118.     UsingModem = %TRUE;
  119.  
  120. Connect_Network:
  121.     if %Network = CompuServe goto Connect_CIS_DatexJ;
  122.     if %Network = Direkt goto Connect_CIS;
  123.     if %Network = E_PLUS goto Connect_CIS;
  124.     if %Network = D1_NETZ goto Connect_CIS;
  125.     if %Network = D2_NETZ goto Connect_CIS;
  126.     if %Network = Internet goto Connect_CIS;
  127.     if %Network = PlusNet goto Connect_CIS;
  128.     if %Network = VNZNET goto Connect_CIS;
  129.     define %State = 4;
  130.     if %Network = Telenet goto Connect_Telenet;
  131.     if %Network = Tymnet goto Connect_Tymnet;
  132.     if %Network = DataPac goto Connect_DataPac;
  133.     if %Network = InfoNet_Europe goto Connect_InfoNet_Europe;
  134.     if %Network = InfoNet_Korea goto Connect_InfoNet_Korea;
  135.     if %Network = InfoNet_Taiwan goto Connect_InfoNet_Taiwan;
  136.     if %Network = InfoNet_SAfrica goto Connect_InfoNet_SAfrica;
  137.     if %Network = InfoNet_World goto Connect_InfoNet_World;
  138.     if %Network = LATA goto Connect_LATA;
  139.     if %Network = CTLATA goto Connect_CTLATA;
  140.     if %Network = Telepac goto Connect_Telepac;
  141.     if %Network = Datex_P goto Connect_Datex_P;
  142.     if %Network = Datex_J goto Connect_Datex_J;
  143.     if %Network = CSIRnet goto Connect_CSIRnet;
  144.     if %Network = ISRAKAV goto Connect_ISRAKAV;
  145.     if %Network = Transpac goto Connect_Transpac;
  146.     if %Network = PacNet goto Connect_PacNet;
  147.     if %Network = PosServe goto Connect_PosServe;
  148.     if %Network = TTNNet goto Connect_TTNNet;
  149.     if %Network = FENICSII goto Connect_FENICSII;
  150.     if %Network = Chilepac goto Connect_Chilepac;
  151.     if %Network = EIRPAC goto Connect_EIRPAC;
  152.     if %Network = SCITOR goto Connect_SCITOR;
  153.     if %Network = SEVA goto Connect_SEVA;
  154.     if %Network = AlaskaNet goto Connect_AlaskaNet;
  155.     if %Network = ArgNet goto Connect_ArgNet;
  156.     if %Network = FTConnect goto Connect_FTConnect;
  157.  
  158.     define %FailureMsg = "Netzwerk nicht unterstⁿtzt";
  159.     goto Connect_Fatal;
  160.  
  161. !
  162. !  Connect to Telenet
  163. !
  164. Connect_Telenet:
  165.     call %Dir & "telenet.scr" () : Result;
  166.     goto Handle_Network_Return;
  167.  
  168. !
  169. !  Connect to Tymnet
  170. !
  171. Connect_Tymnet:
  172.     call %Dir & "tymnet.scr" (1) : Result;
  173.     goto Handle_Network_Return;
  174.  
  175. !
  176. !  Connect to DataPac
  177. !
  178. Connect_DataPac:
  179.     call %Dir & "datapac.scr" () : Result;
  180.     goto Handle_Network_Return;
  181.  
  182. !
  183. !  Connect to InfoNet World
  184. !
  185. Connect_InfoNet_World:
  186.     call %Dir & "infonet.scr" (0) : Result;
  187.     goto Handle_Network_Return;
  188.  
  189. !
  190. !  Connect to InfoNet Europe
  191. !
  192. Connect_InfoNet_Europe:
  193.     call %Dir & "infonet.scr" (1) : Result;
  194.     goto Handle_Network_Return;
  195.  
  196. !
  197. !  Connect to InfoNet Korea
  198. !
  199. Connect_InfoNet_Korea:
  200.     call %Dir & "infonet.scr" (2) : Result;
  201.     goto Handle_Network_Return;
  202.  
  203. !
  204. !  Connect to InfoNet Taiwan
  205. !
  206. Connect_InfoNet_Taiwan:
  207.     call %Dir & "infonet.scr" (3) : Result;
  208.     goto Handle_Network_Return;
  209.  
  210.  
  211. !
  212. !  Connect to InfoNet South Africa
  213. !
  214. Connect_InfoNet_SAfrica:
  215.     call %Dir & "infonet.scr" (5) : Result;
  216.     goto Handle_Network_Return;
  217.  
  218. !
  219. !  Connect to LATA
  220. !
  221. Connect_LATA:
  222.     call %Dir & "lata.scr" (%TRUE) : Result;
  223.     goto Handle_Network_Return;
  224.  
  225. !
  226. !  Connect to Connecticut LATA
  227. !
  228. Connect_CTLATA:
  229.     call %Dir & "lata.scr" (%FALSE) : Result;
  230.     goto Handle_Network_Return;
  231.  
  232. !
  233. !  Connect to Telepac
  234. !
  235. Connect_Telepac:
  236.     call %Dir & "telepac.scr" () : Result;
  237.     goto Handle_Network_Return;
  238.  
  239. !
  240. !  Connect to Datex-P
  241. !
  242. Connect_Datex_P:
  243.     call %Dir & "datexp.scr" () : Result;
  244.     goto Handle_Network_Return;
  245.  
  246. !
  247. !  Connect to Datex-J
  248. !
  249. Connect_Datex_J:
  250.     call %Dir & "datexj.scr" () : Result;
  251.     goto Handle_Network_Return;
  252.  
  253.  
  254. !
  255. !  Connect to FT-Connect
  256. !
  257. Connect_FTConnect:
  258.     call %Dir & "ftconn.scr" () : Result;
  259.     goto Handle_Network_Return;
  260.  
  261.  
  262. !
  263. !  Connect to CSIR-Net
  264. !
  265. Connect_CSIRnet:
  266.     call %Dir & "csirnet.scr" () : Result;
  267.     goto Handle_Network_Return;
  268.  
  269. !
  270. !  Connect to ISRAKAV
  271. !
  272. Connect_ISRAKAV:
  273.     call %Dir & "israkav.scr" () : Result;
  274.     goto Handle_Network_Return;
  275.  
  276. !
  277. !  Connect to Transpac
  278. !
  279. Connect_Transpac:
  280.     call %Dir & "transpac.scr" () : Result;
  281.     goto Handle_Network_Return;
  282.  
  283. !
  284. !  Connect to AlaskaNet
  285. !
  286. Connect_AlaskaNet:
  287.     call %Dir & "tymnet.scr" (2) : Result;
  288.     goto Handle_Network_Return;
  289.  
  290. !
  291. !  Connect to ArgNet
  292. !
  293. Connect_ArgNet:
  294.     call %Dir & "argnet.scr" () : Result;
  295.     goto Handle_Network_Return;
  296.  
  297. !
  298. !  Connect to PacNet
  299. !
  300. Connect_PacNet:
  301.     call %Dir & "tymnet.scr" (3) : Result;
  302.     goto Handle_Network_Return;
  303.  
  304.     
  305. !
  306. !  Connect to Pos-Serve
  307. !
  308. Connect_PosServe:
  309.     call %Dir & "posserve.scr" () : Result;
  310.     goto Handle_Network_Return;
  311.  
  312. !
  313. !  Connect to TTN-Net
  314. !
  315. Connect_TTNNet:
  316.     call %Dir & "ttnnet.scr" (3) : Result;
  317.     goto Handle_Network_Return;
  318.  
  319. !
  320. !  Connect to FENICS II
  321. !
  322. Connect_FENICSII:
  323.     call %Dir & "fenics2.scr" (3) : Result;
  324.     goto Handle_Network_Return;
  325.  
  326. !
  327. !  Connect to Chilepac
  328. !
  329. Connect_Chilepac:
  330.     call %Dir & "chilepac.scr" (3) : Result;
  331.     goto Handle_Network_Return;
  332.  
  333. !
  334. !  Connect to EIRPAC
  335. !
  336. Connect_EIRPAC:
  337.     call %Dir & "eirpac.scr" () : Result;
  338.     goto Handle_Network_Return;
  339.  
  340. !
  341. !  Connect to SCITOR
  342. !
  343. Connect_SCITOR:
  344.     call %Dir & "scitor.scr" () : Result;
  345.     goto Handle_Network_Return;
  346.  
  347. !
  348. !  Connect to SEVA
  349. !
  350. Connect_SEVA:
  351.     call %Dir & "seva.scr" () : Result;
  352.     goto Handle_Network_Return;
  353.  
  354.  
  355. !
  356. !  Handle Network Return
  357. !
  358. Handle_Network_Return:
  359.     if Result = %Success goto Do_CIS_Script;
  360.     if Result = %Cancel goto Cancel_Connect;
  361.     if Result = %Fatal goto Connect_Fatal;
  362.     goto Connect_Failure;
  363.  
  364. !
  365. !  Connect to CIS
  366. !
  367. Connect_CIS_DatexJ:
  368.     CISNetwork = %TRUE;
  369.     send "." & %CR;
  370.     goto Do_CIS_Script;
  371.  
  372. Connect_CIS:
  373.     CISNetwork = %TRUE;
  374.     send %CR;
  375.  
  376. Do_CIS_Script:
  377.     call %Dir & "cserve.scr" (DirectConnect, CISNetwork) : Result;
  378.     if Result = %Failure goto Connect_Failure;
  379.     if Result = %Cancel goto Cancel_Connect;
  380.     if Result = %Fatal goto Connect_Fatal;
  381.     exit %Success;
  382.  
  383. Connect_Failure:
  384.     if %GatewayFailure = 0 goto ExitFailure;
  385.     define %GatewayFailure = 0;
  386.     if GatewayRetry = 3 goto ExitFailure;
  387.     GatewayRetry = GatewayRetry + 1;
  388.     wait until 50;
  389.     reset;
  390.     goto Initialize;
  391.  
  392. ExitFailure:
  393.  
  394.     gosub Hangup_Connect;
  395.     reset;
  396.     exit %Failure;
  397.  
  398. Connect_Fatal:
  399.     if %GatewayFailure = 0 goto Gateway_OK;
  400.     define %GatewayFailure = 0;
  401.     if GatewayRetry = 3 goto ExitFailure;
  402.     GatewayRetry = GatewayRetry + 1;
  403.     wait until 50;
  404.     reset;
  405.     goto Initialize;
  406.  
  407. Gateway_OK:
  408.  
  409.     gosub Hangup_Connect;
  410.     reset;
  411.     exit %Fatal;
  412.  
  413. Hangup_Connect:
  414.     if not UsingModem goto Hangup_Done;
  415.     define %LOCAL = 1;
  416.     call %Dir & "disconct.scr" ();
  417. Hangup_Done:
  418.     return;
  419.  
  420. Cancel_Connect:
  421.     show "Verbindung abgebrochen";
  422.     gosub Hangup_Connect;
  423.     reset;
  424.     define %ErrorCode = 1;
  425.     exit %Cancel;
  426.