Script pppd connect.sh
Jump to navigation
Jump to search
#!/bin/bash PATH="$PATH:/usr/local/sbin:/usr/sbin" if [ "$#" != 3 ]; then echo "Usage $0 <phone_number> <id> <pass>"; exit fi; # Vars: TELEFONO="$1" LOGIN="$2" PASSWORD="$3" if [ "$PASSWORD" != "" ]; then PASS_STRING="password $PASSWORD"; else PASS_STRING=""; fi; if `/sbin/ifconfig | grep "ppp0" > /dev/null` then # Esiste già una connessione con «ppp0», quindi non si può # procedere (si interrompe lo script). echo "È già attiva una connessione con ppp0" exit 1 fi # Viene attivato pppd con l'aiuto di chat. # In particolare, chat esegue le operazioni seguenti: # # - imposta il tempo di attesa massimo a 5 secondi per le prime operazioni # - imposta il report della stringa di connessione dell'isp # - interrompe in caso di messaggi di errore # AT attende che il modem sia pronto e risponda OK # ATZ Resets modem at default profile # ATL1 volume altoparlante basso # AT\&A3 Protocol indicators additional result code # AT\&B1 Fixed modem's serial port rate (REQUESTED!) # AT\&H2 Software flow control on Trasmit Data # AT\&I1 Software XON/XOFF to your modem and remote system on Receive Data # AT\&K1 Data compression Auto enable/disable # AT\&M4 Sets Error Control mode at Normal/ARQ # AT\&R2 Received Data hardware flow control to computer only on RTS # - cambia il tempo massimo di attesa a 45 secondi in attesa di CONNECT # ATDT composizione del numero telefonico # - cambia il tempo massimo di attesa a 90 secondi per definire la connessione # - attende CONNECT e quindi invia un ritorno a carrello # AT\&F richiede il prelievo della configurazione di fabbrica del modem # ATX3 Disabilita rilevamento segnale di selezione # ATS7=3 tempo di attesa del segnale di selezione prima di riagganciare # ATS37=17 Velocità linea selezione (dati in uscita) 28800bps # OK ATX3 \ # OK ATS7=3 \ # OK ATS37=17 \ # '' AT \ # OK AT\&F \ # OK ATL1 \ # OK ATM1L1 \ # OK-+++\c-OK ATH0 \ /usr/sbin/pppd connect "/usr/sbin/chat \ TIMEOUT 5 \ REPORT CONNECT \ ABORT BUSY \ ABORT ERROR \ ABORT 'NO CARRIER' \ ABORT 'NO DIALTONE' \ ABORT 'NO DIAL TONE' \ ABORT 'NO ANSWER' \ ABORT DELAYED \ ABORT 'BLACKLISTED' \ '' ATZ \ OK-+++\c-OK ATH0 \ OK ATDT$TELEFONO \ TIMEOUT 60 \ CONNECT \d\c" \ login user $LOGIN $PASS_STRING; # End