# 4.5. Script Σύνδεσης (Login Script)

Διόρθωση Script (Edit Script)

  Χρησιμοποιήστε αυτό το διάλογο για να συνθέσετε ένα script σύνδεσης με τον ISP σας. Χρησιμοποιήστε το mini-terminal και τις πληροφορίες που σας έδωσε ο ISP σας, για να κατανοήσετε ποιά ακολουθία ενεργειών απαιτείται να εκτελεστεί.

  - Expect: το kppp θα περιμένει να λάβει την ακολουθία χαρακτήρων που προσδιορίσατε.

  - Send: το kppp θα στείλει την ακολουθία χαρακτήρων που προσδιορίσατε.

  - Pause: παύση για το προκαθορισμένο διάστημα, σε δευτερόλεπτα

  - Hangup: το kppp θα στείλει στο modem την εντολή διακοπής κλήσης

  - Answer: το kppp θα κάνει το modem να απαντήσει την κλήση

  - Timeout: αλλαγή του προκαθορισμένου διαστήματος λήξης χρόνου, στο διάστημα που προσδιορίσατε, σε δευτερόλεπτα, δυναμικά κατά την διάρκεια της εκτέλεσης του script. Αν είναι αναγκαίο, μπορείτε να αλλάξετε το χρονικό αυτό διάστημα πολλές φορές, κατά τη διάρκεια εκτέλεσης του script.

  - Prompt: Παροτρύνει τον kppp χρήστη να δώσει γράψει κάτι, δείχνοντάς του το προκαθορισμένο μήνυμα ως υπόδειξη. Ο χρήστης βλέπει αυτό που πληκτρολογεί.

  - PWPrompt: Παροτρύνει τον kppp χρήστη να γράψει κάτι, προτρέποντάς τον με αυτό το μήνυμα. Για κάθε χαρακτήρα που πληκτρολογεί, εμφανίζεται στη θέση του ένας αστερίσκος.

  - ID: Αν το πεδίο ID, στον κύριο διάλογο του Kppp, συμπληρωθεί, το αποστέλλει ID. Αν όχι, ζητάει από τον χρήστη του kppp να εισάγει ένα ID, προτρέποντάς τον με αυτό το μήνυμα. Ο χρήστης θα βλέπει τι γράφει. Σε ένα δεύτερο πέρασμα, όπως π.χ. στη δεύτερη επανάληψη ενός βρόχου, θα εμφανιστεί μια γραμμή εισαγωγής χαρακτήρων (prompt), προτρέποντας τον χρήστη με την εμφάνιση αυτού του μηνύματος.

  - Password: Αν το πεδίο password στον κύριο διάλογο του Kppp συμπληρωθεί, θα στείλει αυτό το password. Αν όχι, θα ζητήσει από τον χρήστη του kppp να συμπληρώσει ένα password, προτρέποντάς τον με αυτό το μήνυμα. Για κάθε χαρακτήρα που πληκτρολογείται, θα εμφανίζεται ένας αστερίσκος. Σε ένα δεύτερο πέρασμα, όπως π.χ. στη δεύτερη επανάληψη ενός βρόχου, θα εμφανιστεί μια γραμμή εισαγωγής χαρακτήρων (prompt), προτρέποντας τον χρήστη με την εμφάνιση αυτού του μηνύματος.

  - LoopStart: το kppp θα περιμένει μέχρι να ληφθεί το προσδιοριζόμενο string. Αποθηκέυει αυτό το string, για χρήση από την LoopEnd

  - LoopEnd: το kppp θα περιμένει να λάβει το string που προσδιορίσατε για να βγει από το βρόχο (loop). Αν το string που έχει αποθηκευθεί από την αντίστοιχη LoopStart ληφθεί πρώτο, θα πυροδοτήσει ένα άλμα στην γραμμή του script που ακολουθεί την LoopStart, επιτρέποντας έτσι, επαναλήψεις της μορφής username/password.

## 4.5.1. Παραδείγματα scripts

Να ένα απλό script που θα μπορούσα να χρησιμοποιώ για να συνδέομαι με τον ISP μου :

     Expect      ID:                        # περίμενε για ID:
     Send        myid                       # αντικαταστήστε το myid με το id σας
     Expect      word:                      # περίμενε για τη λέξη 'password'
     Send        4u3fjkl                    # στείλε το password '4u3fjkl'
     Expect      granted                    # ISP στέλνει 'Permission granted' αν επιτύχει το login.
     Send        ppp                        # Εκκινά, στην πλευρά του ISP, την ppp σύνδεσή μου

Το ίδιο script με μήνυμα προτροπής για εισαγωγή ID και password : Αυτό το script θα σας παροτρύνει να εισάγετε ID και password κάθε φορά, ανεξάρτητα από το τι έχετε γράψει στα πεδία ID και password του κύριου διαλόγου του Kppp. Το script επιδεικνύει επίσης την δομή LoopStart/LoopEnd. Αν κάτι πάει λάθος, κατά τη διάρκεια της διαδικασίας εισαγωγής (login), για παράδειγμα αν δώσετε λάθος password, ο ISP μου θα εμφανίσει ένα μήνυμα λάθους και θα ξαναρχίσει το βρόχο id/password, ξαναστέλνοντας το string "ID:". Αν το string "ID" ληφθεί πριν το LoopEnd, το kppp θα επαναλάβει το script ξανά, από την λέξη-κλειδί LoopStart και μετά.

     LoopStart   ID:                        # περίμενε για το ID:
     Prompt      Enter ID:                  # Ρώτησε με για το ID μου και στείλε το.
     Expect      word:                      # περίμενε για 'password'
     PWPrompt    Enter Password:            # Ρώτησε με για το password μου και στείλε το.
     LoopEnd     granted                    # Ο ISP στέλνει 'Permission granted' αν όλα είναι OK.
     Send        ppp                        # Ξεκινά την ppp σύνδεσή μου

Να το script που πραγματικά χρησιμοποιώ για να συνδεθώ με τον ISP μου : Αυτό το script θα ζητήσει ID και password μόνο αν δεν έχω συμπληρώσει τα αντίστοιχα πεδία στον κύριο διάλογο του kppp.

     LoopStart   ID:                        # περίμενε για το ID:
     ID          Enter ID:                  # Ρώτησε με για το ID μου και στείλε το.
     Expect      word:                      # περίμενε για 'password'
     Password    Enter Password             # Ρώτησε με για το password μου και στείλε το..
     LoopEnd     granted                    # Ο ISP στέλνει 'Permission granted' αν όλα είναι OK.
     Send        ppp                        # Εκκινά, στην πλευρά του ISP, την ppp σύνδεσή μου