1opengt 2set com 460800n81 3set senddelay 0.05 4waitquiet 1 0.2 5 6system "nvram set g3state_z=0" 7system "nvram set g3state_q0=0" 8system "nvram set g3state_apn=0" 9system "nvram set g3state_dial=0" 10system "nvram set g3state_conn=0" 11 12 13:ready 14system "nvram set g3state_z=1" 15send "ATZ^m" 16waitfor 10 "OK","ERR" 17if % = -1 goto timeerror 18if % = 0 goto set_parameters 19system "nvram set g3state_z=-1" 20goto error 21 22 23:set_parameters 24system "nvram set g3state_q0=1" 25send "E1 Q0 V1 X4 &C1 &D1 &R1 &S0 &K0 +FCLASS0^m" 26waitfor 10 "OK","ERR" 27if % = -1 goto timeerror 28if % = 0 goto set_apn 29system "nvram set g3state_q0=-1" 30goto error 31 32 33:set_apn 34system "nvram set g3state_apn=1" 35let $x=$rpipe("nvram get modem_apn") 36let l=len($x) 37if l=0 goto apnerror 38if l>32 goto apnerror 39send "AT+CGDCONT=1,\"IP\",\"" 40send $x 41send "\"^m" 42waitfor 20 "OK","ERR" 43if % = -1 goto apntimeerror 44if % = 0 goto set_dial 45system "nvram set g3state_apn=-1" 46goto apnerror 47 48 49:set_dial 50system "nvram set g3state_dial=1" 51let $x=$rpipe("nvram get modem_dialnum") 52let a=len($x) 53if a=0 goto error 54send "ATDT" 55send $x 56send "^m" 57waitfor 10 "CONNECT","ERR","ERROR" 58if % = -1 goto timeerror 59if % = 0 goto done 60system "nvram set g3state_dial=-1" 61goto error 62 63 64:done 65system "nvram set g3state_conn=1" 66print "CONNECTED\n" 67exit 0 68 69 70:apnerror 71system "nvram set g3err_apn=1" 72print "ERROR entering APN\n" 73print \"The COMGTAPN env variable is not set.\n" 74send "ATH^m" 75exit 1 76 77 78:apntimeerror 79system "nvram set g3err_apn=2" 80print \"ERROR entering APN\n" 81print "The device timeout\n" 82send "ATH^m" 83exit 1 84 85 86:error 87system "nvram set g3err_conn=1" 88print "CONNECT ERROR\n" 89send "ATH^m" 90exit 1 91 92 93:timeerror 94system "nvram set g3err_conn=2" 95print "CONNECT TIMEOUT\n" 96send "ATH^m" 97exit 1 98