home *** CD-ROM | disk | FTP | other *** search
/ PC Professionell 1999 August / PCpro_1999_08.ISO / compusrv / Clients / Cs304d / scripts.lib / connect.scr < prev    next >
Encoding:
Text File  |  1999-02-23  |  10.0 KB  |  431 lines

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