432 γραμμές
43 KiB
Markdown
432 γραμμές
43 KiB
Markdown
|
+++
|
|||
|
title = 'Επικοινωνία κινητού - υπολογιστή στο Linux'
|
|||
|
date = '2003-06-01T00:00:00Z'
|
|||
|
description = ''
|
|||
|
author = 'Σιδηρόπουλος Αθανάσιος'
|
|||
|
issue = ['Magaz 33']
|
|||
|
issue_weight = 4
|
|||
|
+++
|
|||
|
|
|||
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|||
|
|
|||
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|||
|
|
|||
|
**1. Εισαγωγή.**
|
|||
|
-----------------------------------------
|
|||
|
|
|||
|
**2. Εν αρχή είναι η σύνδεση.**
|
|||
|
--------------------------------------------------------
|
|||
|
|
|||
|
**3. Επικοινωνία κινητού - υπολογιστή.**
|
|||
|
-----------------------------------------------------------------
|
|||
|
|
|||
|
- [3.1 Η ζωή με το kandy.](#ss3.1)
|
|||
|
- [3.2 Η ζωή με το gsmlib.](#ss3.2)
|
|||
|
|
|||
|
**4. Επίλογος**
|
|||
|
----------------------------------------
|
|||
|
|
|||
|
|
|||
|
### [1. Εισαγωγή.]{#s1}
|
|||
|
|
|||
|
Όλοι ξέρουμε ότι το Linux είναι ένα καταπληκτικό λειτουργικό σύστημα που εξελίσσεται ραγδαία, καταφέρνοντας πρώτο αυτό που κανένα UNIX δεν έχει καταφέρει: να
|
|||
|
γίνει προσιτό και να καλύψει τις ανάγκες του απλού χρήστη. Σε αυτό συνέβαλαν τα γραφικά περιβάλλοντα KDE και GNOME και μια πλειάδα εφαρμογών από επεξεργαστές
|
|||
|
κειμένου, λογιστικά φύλλα, προγράμματα παρουσιάσεων και ένα σωρό άλλα που κάνουν την ζωή μας με τον υπολογιστή ευκολότερη κάθε μέρα, ειδικά γι αυτούς που δεν
|
|||
|
είναι συνηθισμένοι στην γραμμή εντολών.
|
|||
|
|
|||
|
Μπορούμε να γράψουμε τα κείμενά μας σε επεξεργαστές WYSIWYG, να ετοιμάσουμε τις παρουσιάσεις για την δουλειά μας να υπολογίσουμε χίλια δυο πράγματα σε ένα
|
|||
|
λογιστικό φύλο να δούμε τις φωτογραφίες μας και να ακούσουμε τα mp3 μας με την ίδια ευκολία ή ακόμα και περισσότερη κάποιες φορές από ότι άλλοι άνθρωποι μπορούν
|
|||
|
να κάνουν χρησιμοποιώντας τα windows.
|
|||
|
|
|||
|
Όμως, καλά όλα αυτά, Αλλά\...
|
|||
|
|
|||
|
Αν θέλω να δημιουργήσω ένα αρχείο στον υπολογιστή μου με τα sms που μου έστειλε η κοπέλα μου; Αν θέλω να δημιουργήσω ένα άλλο αρχείο με τα sms κάποιων φίλων
|
|||
|
μου; Θα κάθομαι και θα πληκτρολογώ ότι μου έχουν στείλει στον υπολογιστή μου; Και αν θέλω να απαντήσω ταυτόχρονα αυτά τα sms; Μήπως μετά πρέπει να παιδευτώ με
|
|||
|
το πληκτρολόγιο του κινητού μου για να γράψω την απάντηση; Και αν θέλω να αλλάξω όλα τα νούμερα που έχω στο κινητό μου επειδή πάλη άλλαξε ο τρόπος κλίσης; (πχ.
|
|||
|
από 093 έγινε 693). Η ακόμα χειρότερα να συγχρονίσω τον τηλεφωνικό κατάλογο του κινητού με τα περιεχόμενα ενός αντίστοιχου που διατηρώ στον υπολογιστή. Σε αυτό
|
|||
|
το άρθρο θα δούμε πως μπορούν να γίνουν όλα τα παραπάνω, χωρίς να χαλάσουμε το uptime του Linux.
|
|||
|
|
|||
|
Ναι, το Linux έχει την δυνατότητα να κάνει και αυτά τα κόλπα και ίσως και καλύτερα από ότι τα windows. Ανάλογα βέβαια και με την \"ποιότητα\" της σχετικής
|
|||
|
εφαρμογής που μας παρέχετε. Αν και είναι ακόμα αρκετά νωρίς και δεν είναι αρκετά εξελιγμένα τα αντίστοιχα GUI και μη προγράμματα η ωρίμανση και σε αυτό το
|
|||
|
σημείο δεν είναι τόσο μακριά.
|
|||
|
|
|||
|
Άλλα αρκετά με τα εισαγωγικά. Ας πάμε στο ζουμί.
|
|||
|
|
|||
|
|
|||
|
### [2. Εν αρχή είναι η σύνδεση.]{#s2}
|
|||
|
|
|||
|
Το πρώτο πράγμα που πρέπει να καταφέρουμε για να κάνουμε όλα αυτά τα ωραία κολπάκια είναι να επιτύχουμε σύνδεση μεταξύ του προσωπικού μας υπολογιστή και του
|
|||
|
κινητού. Αυτή μπορεί να είναι ενσύρματη (RS 232, σειριακή θύρα) είτε ασύρματη (μέσω υπέρυθρων).
|
|||
|
|
|||
|
Να σημειώσουμε εδώ μια αρκετά σημαντική λεπτομέρεια. Η όλη διαδικασία δεν διαφέρει και πολύ από την σύνδεση υπολογιστή με modem. Τα περισσότερα, αν όχι όλα,
|
|||
|
σημερινά κινητά άλλωστε ενσωματώνουν modem και απαντούν σε AT εντολές. Απλώς, έχουν μερικές ακόμη AT εντολές για να διαχειριστούν τον τηλεφωνικό κατάλογο τα sms
|
|||
|
και άλλα.
|
|||
|
|
|||
|
Στην δική μου περίπτωση έπρεπε να ακολουθήσω τον μακρύ και δύσκολο δρόμο των υπερύθρων καθότι δεν διέθετα καλώδιο που να συνδέει το κινητό μου με τον
|
|||
|
υπολογιστή. Και ευτυχώς ο φορητός μου διέθετε υπέρυθρες (γιατί δεν διαθέτει σειριακή) γιατί δεν ήθελα να ασχοληθώ με το ψάξιμο ενός δέκτη υπερύθρων για τον
|
|||
|
σταθερό μου υπολογιστή.
|
|||
|
|
|||
|
Ας δούμε πως γίνεται.
|
|||
|
|
|||
|
Καταρχάς, πρέπει να πούμε στο Linux ότι υπάρχει θύρα υπερύθρων ώστε να \"ακούει\" και εκεί, όπως κάνει με τη σειριακή. Επειδή η διανομή μου (SuSE 7.2 τότε) έχει
|
|||
|
ετοιμάσει τα απαραίτητα για να φορτωθούν τα modules που είναι απαραίτητα για να αναγνωριστεί η υπέρυθρη θύρα, το μόνο που χρειάστηκα να κάνω είναι ένα rcirda
|
|||
|
start. Μετά έπρεπε να βάλω το κινητό μου να βλέπει το \"ματάκι\" των υπερύθρων στο φορητό και να ενεργοποιήσω την θύρα του κινητού από το menu. Εκτελώντας από
|
|||
|
πριν το irdump σε ένα xterm έβλεπα αμέσως να εμφανίζεται το κινητό μου. Η σύνδεση είχε επιτευχθεί. Έμενε να αξιοποιηθεί πλέον από το απαραίτητο λογισμικό.
|
|||
|
|
|||
|
Αν δεν μου τα είχε έτοιμα όλα η διανομή μου, θα έπρεπε να έτρωγα κάποιες ώρες (?) διαβάζοντας το σχετικό how to για να βρω ποια είναι τα απαραίτητα modules
|
|||
|
(αυτά που αντιστοιχούν στο hardware που διαθέτω) του πυρήνα που έπρεπε να φορτώσω (irtty & irda τουλάχιστον στην δικιά μου περίπτωση) και να ασχοληθώ με εντολές
|
|||
|
όπως η irattach για να \"συνδέσω\" την θύρα με ένα οδηγό συσκευής. Όχι πολύ δύσκολα πράγματα δηλαδή.
|
|||
|
|
|||
|
|
|||
|
### [3. Επικοινωνία κινητού - υπολογιστή.]{#s3}
|
|||
|
|
|||
|
Προγράμματα τα οποία να μπορούν να επικοινωνούν με το κινητό τηλέφωνο για να κάνουν την δουλειά που θέλουμε στο Linux γνωρίζω (έχω χρησιμοποιήσει / δοκιμάσει)
|
|||
|
δύο.
|
|||
|
|
|||
|
Το ένα είναι μέρος του KDE, συγκεκριμένα του πακέτου pim και ονομάζεται kandy. Δυστυχώς είναι ακόμα αρκετά ανώριμο και μόλις πρόσφατα φαίνεται να το ξαναπιάσανε
|
|||
|
για να το εξελίξουν περαιτέρω. Ακόμα κι έτσι όμως, είναι πανεύκολο στην χρήση και θα χαρώ πολύ να το δω να βελτιώνεται. Αποτελείται από δύο καρτέλες. Η μία
|
|||
|
είναι η καρτέλα από όπου μπορείς να ελέγξεις τις διάφορες λειτουργίες που σου παρέχει το πρόγραμμα (μεταφορά τηλεφωνικού καταλόγου από το κινητό καθώς και
|
|||
|
συγχρονισμός με τα στοιχεία που υπάρχουν στο pim). Η δεύτερη σου δίνει πλήρη πρόσβαση στις λειτουργίες του κινητού μέσω των εντολών AT και σου δίνει την
|
|||
|
δυνατότητα για προγραμματισμό (εν μέρει) του προγράμματος για να ταιριάξει απόλυτα στις συγκεκριμένες ανάγκες του κινητού σου. Βασικός σκοπός του προγράμματος
|
|||
|
είναι να διαχειριστεί τον τηλεφωνικό κατάλογο του κινητού τηλεφώνου, μη δίνοντας καμιά σημασία στα μηνύματα sms.
|
|||
|
|
|||
|
Το άλλο είναι βασικά μία συλλογή από προγράμματά που μπορεί να διαχειριστεί πλήρως τον τηλεφωνικό κατάλογο του τηλεφώνου καθώς και τα μηνύματα sms που υπάρχουν
|
|||
|
στην κάρτα sim. Το \"πρόβλημα\" του είναι ότι δεν έχει GUI. Για τους λάτρεις του είδους αυτό δεν είναι πρόβλημα αλλά για τον μέσο χρήστη ίσως να είναι. Ελπίζω
|
|||
|
σύντομα να αναπτυχθεί κάποιο front-end και γι αυτό.
|
|||
|
|
|||
|
Το πακέτο αυτό λέγεται gsmlib. Μπορεί κανείς να την βρει στην διεύθυνση www.phx.de/fs/gsmlib/index.html. Την στιγμή που γράφονταν το παρόν άρθρο η έκδοση ήταν
|
|||
|
1.10. θα ασχοληθούμε κυρίως με αυτή την συλλογή καθότι είναι αρκετά ώριμη και λειτουργική και θα κάνουμε μια μικρή μόνο αναφορά στο kandy.
|
|||
|
|
|||
|
### [3.1 Η ζωή με το kandy.]{#ss3.1}
|
|||
|
|
|||
|
Το kandy είναι όπως είπαμε μέρος του πακέτου pim του KDE. Η τρέχουσα έκδοση είναι η 0.3 και έχει αρκετό δρόμο μπροστά του. Βασική του λειτουργία είναι η
|
|||
|
διαχείριση του τηλεφωνικού καταλόγου του κινητού μας. Μπορεί να διαβάσει τα περιεχόμενα του (με πολύ δυσκολία και προσπάθεια σε πολλά κινητά) ή τουλάχιστον ένα
|
|||
|
μέρος αυτού και να περάσει τα δεδομένα αυτά στο pim. Η επικονωνία με τον χρήστη επιτυγχάνεται χάρη σε δύο καρτέλες. Η κύρια καρτέλα (mobile GUI) αποτελείται από
|
|||
|
δύο καταλόγους με τα τηλέφωνα που υπάρχουν, στο KDE address book ο ένας και στο κατάλογο του κινητού τηλεφώνου ο δεύτερος. Κάτω από κάθε ένα υπάρχουν τα κουμπιά
|
|||
|
που θα πατήσει κανείς για να διαβάσει τα νούμερα από το κινητό τηλέφωνο ή το KDE address book καθώς και για να γράψει τα τηλέφωνά πίσω όπως τα βλέπει εκείνη την
|
|||
|
στιγμή. Στα δεξιά μπορεί κανείς να δει πληροφορίες για το κινητό του τηλέφωνο, όπως το μοντέλο και την έκδοσή του καθώς και το ποσοστό φόρτισης της μπαταρίας.\
|
|||
|
Την δεύτερη καρτέλα μπορεί κανείς να την δει επιλέγοντας show -\> terminal από τα μενού. Από εδώ έχει πρόσβαση στο κινητό του τηλέφωνο σε \"χαμηλό\" επίπεδο.
|
|||
|
Μπορεί να δώσει εντολές απευθείας στο κινητό του καθώς και να διορθώσει τις ήδη υπάρχουσες για να καλύψουν τις συγκεκριμένες ιδιαιτερότητες του κινητού του
|
|||
|
τηλέφωνο.
|
|||
|
|
|||
|
### [3.2 Η ζωή με το gsmlib.]{#ss3.2}
|
|||
|
|
|||
|
Το gsmlib είναι μία βιβλιοθήκη που συνοδεύεται από ένα σετ προγραμμάτων για γραμμή εντολής. Αυτά είναι:
|
|||
|
|
|||
|
- gsmpb: Πρόγραμμα διαχείρισης καταλόγου.
|
|||
|
- gsmsctl: Διαχείριση κινητού τηλεφώνου. (ποικίλες δυνατότητες)
|
|||
|
- gsmsmsd: Δαίμονας διαχείρισης μηνυμάτων sms.
|
|||
|
- gsmsiectl: Δεν γνωρίζω δεν απαντώ. Μάλλον για low-level \"δουλειές\".
|
|||
|
- gsmsendsms: Αποστολή sms σε άλλα κινητά.
|
|||
|
- gsmsiexfer: Ούτε για αυτό γνωρίζω τίποτα.
|
|||
|
- gsmsmsstore: Πρόγραμμα διαχείρισης sms.
|
|||
|
|
|||
|
Με αυτά τα απλά προγραμματάκια είναι δυνατόν κάποιος να διαχειριστεί με πολύ μεγάλη ευκολία τον τηλεφωνικό του κατάλογο καθώς και τα μηνύματα sms που έχει
|
|||
|
αποθηκευμένα στο κινητό του. Ας δούμε πως.
|
|||
|
|
|||
|
#### Τηλεφωνικός κατάλογος κινητού τηλεφώνου.
|
|||
|
|
|||
|
Ας ξεκινήσουμε με τον τηλεφωνικό κατάλογο. Γι αυτόν τον σκοπό θα χρησιμοποιήσουμε το gsmpb. Το συγκεκριμένο πρόγραμμα μπορεί να διαβάσει τον κατάλογο του
|
|||
|
κινητού μας αλλά και να γράψει σε αυτόν. Για να διαβάσει τον τηλεφωνικό κατάλογο και να τον αποθηκεύσουμε σε ένα αρχείο στον δίσκο μας δίνουμε την ακόλουθη
|
|||
|
εντολή.
|
|||
|
|
|||
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|||
|
|
|||
|
gsmpb -b 19200 -c -d katalogos.txt -i -p MT -s /dev/ircomm0
|
|||
|
|
|||
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|||
|
|
|||
|
Ας δούμε όμως τι σημαίνει αυτό το μακρινάρι.
|
|||
|
|
|||
|
**-b 19200** είναι η ταχύτητα με την οποία θα γίνει η επικοινωνία μεταξύ υπολογιστή και κινητού. Δεν είναι απαραίτητο να δοθεί Η προεπιλεγμένη τιμή αν δεν δοθεί
|
|||
|
είναι 38400bps.
|
|||
|
|
|||
|
**-c** Για να πραγματοποιηθεί η αντιγραφή των περιεχομένων της \"πηγής\" στον \"προορισμό\" που ορίσαμε.
|
|||
|
|
|||
|
**-d katalogos.txt** Το αρχείο προορισμού του τηλεφωνικού καταλόγου. Στην συγκεκριμένη περίπτωση είναι το katalogos.txt
|
|||
|
|
|||
|
**-i** Για να υπάρχει αύξων αριθμός εγγραφής (ένδειξη θέσης) στο αρχείο που θα δημιουργήσουμε. Αν θέλουμε να γνωρίζουμε ποία ακριβώς θέση στον τηλεφωνικό
|
|||
|
κατάλογο έχει το κάθε τηλέφωνο. Αν δεν βάλουμε το -i τότε το αρχείο θα έχει την μορφή \[όνομα \| νούμερο\]. Αν το βάλουμε θα προστεθεί και ο αύξων αριθμός
|
|||
|
εγγραφής στην αρχή του κάθε τηλεφώνου. Ο διαχωριστής τον πεδίων είναι το \|.
|
|||
|
|
|||
|
**-p MT** Εδώ είναι το ενδιαφέρον μέρος. Καταρχάς όλα τα σημερινά κινητά τηλέφωνα έχουν και δικό τους εσωτερικό τηλεφωνικό κατάλογο και δεν μας αφήνουν στον
|
|||
|
περιορισμένο σε αριθμό εγγραφών κατάλογο της κάρτας sim. Τώρα εμείς μπορεί να θέλουμε είτε τον κατάλογό της κάρτας sim, είτε του κινητού τηλεφώνου, είτε και
|
|||
|
τους δύο μαζί. Για να διευκρινίσουμε τι θέλουμε, δίνουμε έναν κωδικό δύο γραμμάτων. Έτσι αν θέλουμε τον κατάλογο της κάρτας sim θα δώσουμε -p SM. Αν πάλι
|
|||
|
θέλουμε του κινητού τηλεφώνου μόνο δίνουμε -p ME. Στην περίπτωση που δώσουμε -p MT θα πάρουμε τον κατάλογο και του τηλεφώνου (πρώτα) και της κάρτας sim (αμέσως
|
|||
|
μετά και ξεκινώντας από τον επόμενο αύξοντα αριθμό εγγραφής αν έχουμε δώσει -i)
|
|||
|
|
|||
|
**-s** dev/ircomm0/ Μα φυσικά η \"πηγή\" του τηλεφωνικού μας καταλόγου. Η θύρα πού είναι συνδεδεμένο το κινητό μας τηλέφωνο. Στην συγκεκριμένη περίπτωση στην
|
|||
|
πρώτη θύρα υπερύθρων.
|
|||
|
|
|||
|
Για να κάνουμε την αντίθετη εργασία, να γράψουμε τα περιεχόμενα ενός αρχείου με ονόματα και τηλέφωνα που πιθανόν να το έχουμε διορθώσει από τον υπολογιστή μας
|
|||
|
στο κινητό τηλέφωνο απλώς πρέπει να βάλουμε στην θέση του προορισμού την θύρα που συνδέεται το κινητό και στη θέση της πηγής το αρχείο που θέλουμε να
|
|||
|
μεταφέρουμε. Τόσο απλά.
|
|||
|
|
|||
|
Ας δούμε όμως μερικές άλλες παραμέτρους που είναι δυνατόν να χρησιμοποιήσουμε με το gsmpb.
|
|||
|
|
|||
|
**-I \<init string\>**\
|
|||
|
**\--init \<init string\>**\
|
|||
|
Με αυτό μπορούμε να δώσουμε κάποιες εντολές αρχικοποίησης του κινητού μας. Το ποίες θα είναι αυτές, δεν το ξέρω. Ανάλογα τι γνωρίζετε ότι χρειάζεται το κινητό
|
|||
|
σας τηλέφωνο αλλά δεν πρόκειται να το πάρει από το πρόγραμμα υπό κανονικές συνθήκες. Μάλλον δεν θα χρειαστείτε αυτή την παράμετρο, αν δεν θέλετε να κάνετε κάτι
|
|||
|
\"περίεργο\".
|
|||
|
|
|||
|
**-V**\
|
|||
|
**\--verbose**\
|
|||
|
Για να σας δείχνει τι κάνει τόση ώρα που του παίρνει για να τελειώσει την μεταφορά :-)
|
|||
|
|
|||
|
**-v**\
|
|||
|
**\--version**\
|
|||
|
Ε, τα γνωστά. Τυπώνει την έκδοση του προγράμματος.
|
|||
|
|
|||
|
**-X**\
|
|||
|
**\--xonoff**\
|
|||
|
Για να χρησιμοποιηθεί η μέθοδος XON/XOFF κατά την \"συνομιλία\" μεταξύ υπολογιστή / κινητού. Αν αντιμετωπίζετε δυσκολίες με την συνήθη μέθοδο χρησιμοποιήστε
|
|||
|
αυτήν. Αν όχι, καλύτερα με την hardware μέθοδο που είναι η προεπιλογή.
|
|||
|
|
|||
|
**-y**\
|
|||
|
**\--sychronize**\
|
|||
|
Αυτή η επιλογή κάνει συγχρονισμό μεταξύ των περιεχομένων \"πηγής\" και \"προορισμού\". Έτσι, αν μια εγγραφή δεν υπάρχει στον \"προορισμό\" θα προστεθεί. Αν μια
|
|||
|
εγγραφή βρεθεί στην \"πηγή\" με όνομά που υπάρχει και στον \"προορισμό\", η εγγραφή στον \"προορισμό\" θα αλλαχθεί σύμφωνα με την εγγραφή της \"πηγής\". Εάν
|
|||
|
όμως βρεθούν περισσότερες εγγραφές απλά θα προστεθεί μία ακόμα. Επίσης εγγραφές που δεν υπάρχουν στην πηγή θα διαγραφούν.
|
|||
|
|
|||
|
**-t \<character set\>**\
|
|||
|
**\--charset \<character set\>**\
|
|||
|
Εδώ υπάρχει πολύ ζουμί.\
|
|||
|
Μπορεί κανείς να επιλέξει μία από τις διαθέσιμες στο κινητό του κωδικοσελίδες. Τα δεδομένα που θα μεταφερθούν θα είναι σε αυτήν την κωδικοσελίδα. Έτσι μπορεί
|
|||
|
κανείς, με αρκετή προσπάθεια, να καταφέρει να μεταφέρει τα ονόματα του τηλεφωνικού καταλόγου με ελληνικά όπως τα έχει γραμμένα στο τηλέφωνό του. Όμως δυστυχώς η
|
|||
|
προεπιλεγμένη GSM alphabet ΔΕΝ υποστηρίζει τα ελληνικά. Άρα\... πειράματα και προσπάθειες πολλές χρειάζονται, μέχρι να γίνει κάτι τέτοιο εφικτό.
|
|||
|
|
|||
|
#### Αποστολή λήψη μηνυμάτων sms.
|
|||
|
|
|||
|
Ως εδώ είδαμε έναν τρόπο για να διαχειριστούμε τον τηλεφωνικό κατάλογο του κινητού μας τηλεφώνου. Ας δούμε τώρα με ποία προγράμματα θα μεταφέρουμε τα μηνύματα
|
|||
|
sms που έχουμε αποθηκευμένα στο κινητό μας.
|
|||
|
|
|||
|
Ας ξεκινήσουμε με το gsmsendsms, με το οποίο μπορεί κανείς να στείλει μηνύματα sms σε άλλα κινητά τηλέφωνα. Αυτό γίνεται με την παρακάτω εντολή:
|
|||
|
|
|||
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|||
|
|
|||
|
gsmsendsms -b 19200 -d /dev/ircomm0 <αριθμός τηλεφώνου> <μήνυμα>
|
|||
|
|
|||
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|||
|
|
|||
|
Θα παρατηρήσατε πιστεύω ότι το -b και -d είναι ίδια με το το προηγούμενο παράδειγμα. Αυτό συμβαίνει γιατί είναι μερικές από τις κοινές, μεταξύ των προγραμμάτων
|
|||
|
του πακέτου, παραμέτρους. Δεδομένου ότι υπάρχει πιθανότητα να μας καλύπτουν οι προεπιλεγμένες τιμές για αυτές τις παραμέτρους, το μόνο που χρειάζονταν να
|
|||
|
δώσουμε είναι ο αριθμός του κινητού στο οποίο θέλουμε να στείλουμε το μήνυμα και το ίδιο, φυσικά, το μήνυμα.
|
|||
|
|
|||
|
Να σημειωθεί ότι η παράμετρος -d έχει σαν προεπιλογή προορισμού την θέση /dev/mobilephone οπότε ένα link με το πραγματικό device που χρησιμοποιείτε για την
|
|||
|
επικοινωνία με το κινητό τηλέφωνο είναι απαραίτητη.
|
|||
|
|
|||
|
Πρέπει να προσέξουμε ιδιαίτερα ένα σημείο. Το χρησιμοποιούμενο αλφάβητο και σε αυτήν την περίπτωση είναι το GSM alphabet (από την μεριά του κινητού) και το
|
|||
|
latin 1 (από την μεριά του υπολογιστή). Το πρόγραμμα θεωρεί ότι το μήνυμά μας είναι γραμμένο με βάση την κωδικoσελίδα latin 1. Αν το μήνυμά μας περιέχει
|
|||
|
χαρακτήρες που δεν υπάρχουν στην κωδικoσελίδα latin 1 σε αυτό θα αντικατασταθούν από τον GSM delta χαρακτήρα (GSM code 16).
|
|||
|
|
|||
|
Υπάρχουν βέβαια και πολλές άλλες παράμετροι με τις οποίες θα μπορούσαμε να παίξουμε κι εδώ για να κάνουμε κάτι πιο περίπλοκο. Αυτές είναι:
|
|||
|
|
|||
|
**-c \<ταυτότητα μηνύματος\>**\
|
|||
|
**\--concatenate \<ταυτότητα μηνύματος\>**
|
|||
|
|
|||
|
Με αυτήν την παράμετρο μπορούμε να στείλουμε μηνύματα που είναι πολύ μεγαλύτερα από τα συνηθισμένα (160 χαρακτήρες). Το μήνυμά μας χωρίζεται σε μικρότερα με την
|
|||
|
ίδια \"ταυτότητα\" και αύξοντα αριθμό μηνύματος. Αν το κινητό που λαμβάνει το μήνυμα μπορεί να χειριστεί αυτού του είδους τα μηνύματα θα το εμφανίσει σαν ενιαίο
|
|||
|
μήνυμα. Ειδάλλως, θα το λάβει ως ξεχωριστά μηνύματα.
|
|||
|
|
|||
|
**-C \<διεύθυνση υπηρεσίας\>**\
|
|||
|
**\--sca \<διεύθυνση υπηρεσίας\>**
|
|||
|
|
|||
|
Ο αριθμός του κέντρου αποστολής sms μέσω του οποίου θέλουμε να αποσταλούν τα sms μας.
|
|||
|
|
|||
|
**-r**\
|
|||
|
**\--requeststat**
|
|||
|
|
|||
|
Ζητάει αναφορά για το μήνυμα που στείλαμε από το δίκτυο.
|
|||
|
|
|||
|
**-t**\
|
|||
|
**\--test**
|
|||
|
|
|||
|
Για να δούμε πώς θα φτάσει το μήνυμα μας στον προορισμό του. Μην ξεχνάτε ότι το πρόγραμμα δέχεται σαν κωδικοσελίδα του μηνύματος την latin 1 και την μετατρέπει
|
|||
|
σε GSM alphabet για να την στείλει στο κινητό τηλέφωνο. Αν δώσουμε αυτή την παράμετρο στο πρόγραμμά τότε δεν θα στείλει το μήνυμα αλλά θα το μεταφράσει πάλι σε
|
|||
|
latin 1 και θα μας δείξει το πώς θα φαινόταν. Οτιδήποτε είναι εκτός των χρησιμοποιούμενων κωδικοσελίδων μετατρέπεται σε ASCII code 172.
|
|||
|
|
|||
|
Αφού μάθαμε να στέλνουμε sms ώρα να μάθουμε να τα αποθηκεύουμε κιόλας στον υπολογιστή μας. Αυτό μπορεί να το κάνει το πρόγραμμα gsmsmstore. Βεβαίως μπορεί να
|
|||
|
κάνει και την αντίστροφη εργασία. Δηλαδή να αποθηκεύσουμε μηνύματα sms στην κάρτα sim του κινητού μας αν το επιθυμούμε. Αυτό γίνεται με την παρακάτω εντολή:
|
|||
|
|
|||
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|||
|
|
|||
|
gsmsmstore -b 19200 -c -d arxeio.sms -s /dev/ircomm0
|
|||
|
|
|||
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|||
|
|
|||
|
Ας δούμε τι κάνει καθετί:
|
|||
|
|
|||
|
Το **-b** φυσικά είναι ίδιο όπως και στα δύο προηγούμενα παραδείγματα.
|
|||
|
|
|||
|
**-c** σημαίνει αντέγραψε τα περιεχόμενα της πηγής στον προορισμό. Αν στο τέλος της εντολής δίναμε αριθμούς θα έπαιρνε μόνο τα μηνύματα που αντιστοιχούν σε
|
|||
|
αυτές τις θέσεις. Αν, για παράδειγμα, θέλουμε μόνο το 5ο και το 7ο sms από το κινητό μας τηλέφωνο, δεν έχουμε παρά να προσθέσουμε ένα 5 7 στο τέλος.
|
|||
|
|
|||
|
**-d arxeio.sms** Ο προορισμός μας. Το αρχείο με τα sms που θέλουμε.
|
|||
|
|
|||
|
**-s** dev/ircomm0/ Είναι η \"πηγή\" μας. To device που αντιστοιχεί στη θύρα που έχουμε συνδεδεμένο το κινητό μας τηλέφωνο.
|
|||
|
|
|||
|
Ας δούμε τώρα μερικές ακόμα παραμέτρους που μπορούμε να χρησιμοποιήσουμε.
|
|||
|
|
|||
|
**-C \<διεύθυνση υπηρεσίας\>**\
|
|||
|
**\--sca \<διεύθυνση υπηρεσίας\>**\
|
|||
|
Τα είπαμε πριν αυτά έτσι δεν είναι;
|
|||
|
|
|||
|
**-k**\
|
|||
|
**\--backup**
|
|||
|
|
|||
|
Παρόμοιο με το -c με μία διαφορά. Προσθέτει μόνο ότι δεν υπάρχει ήδη στον προορισμό. Με το -c αντιγράφονται όλα τα περιεχόμενα της πηγής στον προορισμό. Κι εδώ,
|
|||
|
αν δώσουμε αριθμούς μηνυμάτων θα λάβει υπόψιν του μόνο τις ανάλογες θυρίδες μηνυμάτων.
|
|||
|
|
|||
|
**-l**\
|
|||
|
**\--list**
|
|||
|
|
|||
|
Επειδή τα μηνύματα στο αρχείο είναι σε μη αναγνώσιμη μορφή, με αυτήν την παράμετρο βλέπουμε στην οθόνη μας σε αναγνώσιμη αυτήν την φορά μορφή και όχι
|
|||
|
κωδικοποιημένα.
|
|||
|
|
|||
|
**-x**\
|
|||
|
**\--delete**
|
|||
|
|
|||
|
Για να διαγράψουμε τα μηνύματα που θέλουμε από τον προορισμό.
|
|||
|
|
|||
|
#### Μηνύματα sms με άλλον τρόπο.
|
|||
|
|
|||
|
Ας δούμε και έναν άλλο τρόπο να διαχειριστούμε τα μηνύματα sms που λαμβάνουμε. Θα χρησιμοποιήσουμε το gsmsmsd. Τον δαίμονα διαχείρισης sms του πακέτου. Ο πιο
|
|||
|
απλός τρόπος λειτουργίας του είναι να περιμένει να έρθει ένα sms στο κινητό μας και να το τυπώσει στην στάνταρ έξοδο. Για να το πετύχουμε αυτό δεν χρειαζόμαστε
|
|||
|
να δώσουμε καμιά απολύτως παράμετρο εκτός ίσως από την επιθυμητή ταχύτητα επικοινωνίας καθώς και την συσκευή που αντιστοιχεί στο κινητό μας αν αυτή δεν την
|
|||
|
έχουμε κάνει ήδη link στο /dev/mobilephone που είναι η προεπιλογή όπως έχουμε δει για όλα τα προγράμματα του πακέτου. Όμως, αν ας πούμε θέλουμε να λαμβάνουμε
|
|||
|
email με τα sms που μας στέλνουνε στο κινητό μας; Τότε;
|
|||
|
|
|||
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|||
|
|
|||
|
gsmsmsd -d /dev/ircomm0 -b 19200 -a "mail xrisths1"
|
|||
|
|
|||
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|||
|
|
|||
|
Πολλοί από εσάς θα βρείτε πολύ πιο χρήσιμες δουλειές για το gsmsmsd, όπως διαχείριση του server εξ\' αποστάσεως μέσω απλών εντολών στο κινητό τηλέφωνο που έχετε
|
|||
|
μονίμως συνδεδεμένο επάνω του. Αφήστε την φαντασία σας να οργιάσει. Χρήσιμη σε μία τέτοια περίπτωση θα φανεί και η δυνατότητα του gsmsmsd να στέλνει μηνύματα
|
|||
|
sms και όχι μόνο να λαμβάνει. Όχι ότι δεν θα ήταν δυνατόν κάτι τέτοιο με τα δύο προηγούμενα προγράμματα. Απλώς εδώ γίνεται αυτοματοποιημένα από ένα μόνο
|
|||
|
πρόγραμμα.
|
|||
|
|
|||
|
Για να δουλέψει όμως το πρόγραμμα είναι απαραίτητο να υπάρχει τουλάχιστον μία κενή θέση αποθήκευσης sms στο κινητό.\
|
|||
|
Ας δούμε εν συντομία τώρα τι άλλες παραμέτρους μπορούμε να δώσουμε στο gsmsmsd.
|
|||
|
|
|||
|
**-c \<ταυτότητα\>**\
|
|||
|
**\--concatenate \<ταυτότητα\>**
|
|||
|
|
|||
|
Όπως και στο gsmsendsms έτσι κι εδώ με την χρήση αυτού του αριθμού ταυτότητας μπορούμε να στείλουμε μεγάλου μεγέθους sms κομμένα σε πολλά μικρότερα τα οποία αν
|
|||
|
το υποστηρίζει το κινητό του παραλήπτη θα ανασυσταθούν σε ένα ενιαίο sms μεγάλου μεγέθους.
|
|||
|
|
|||
|
**-D**\
|
|||
|
**\--direct**
|
|||
|
|
|||
|
Ενεργοποιεί την απευθείας δρομολόγηση των μηνυμάτων. Επειδή όμως δεν υποστηρίζεται από πολλά κινητά η προεπιλογή είναι να αποθηκεύονται πρώτα τα sms και μετά να
|
|||
|
διεκπεραιώνονται.
|
|||
|
|
|||
|
**-f**\
|
|||
|
**\--flush**
|
|||
|
|
|||
|
Διαβάζει και σβήνει τα περιεχόμενα της θυρίδας αποθήκευσης που δίνουμε με την παράμετρο -store. Τα περιεχόμενα ακολουθούν κανονικά τον δρόμο που θα ακολουθούσε
|
|||
|
κάθε νεοεισερχόμενο μήνυμα. Δηλαδή τυπώνονται ή περνούνε στην εντολή που έχουμε δώσει να εκτελείται με την παράμετρο -a (\--action).
|
|||
|
|
|||
|
**-r**\
|
|||
|
**-requeststat**\
|
|||
|
Αιτείται αναφοράς κατάστασης από το δίκτυο για το sms που αποστέλλει.
|
|||
|
|
|||
|
**-s \<κατάλογος\>**\
|
|||
|
**\--spool \<κατάλογος\>**
|
|||
|
|
|||
|
Εδώ είμαστε σε μια αρκετά σημαντική παράμετρο που μπορεί να φανεί ιδιαίτερα χρήσιμη σε μερικούς. Εδώ ορίζουμε έναν κατάλογο που ελέγχεται κάθε 5 δευτερόλεπτα
|
|||
|
και που θα τοποθετήσουμε αρχεία με τα sms που θέλουμε να στείλουμε. Η μορφή των αρχείων αυτών είναι απλή. Περιέχουν τον αριθμό που θέλουμε να στείλουμε το sms
|
|||
|
και αμέσως μετά το μήνυμα. Δηλαδή 6931234567 Sas omhlei o aftomatos thlefoniths toy ypologisth sas.
|
|||
|
|
|||
|
**-t \<Όνομα θυρίδας\>**\
|
|||
|
**\--store \<όνομα θυρίδας\>**
|
|||
|
|
|||
|
Εδώ ορίζουμε που θα κοιτάει το πρόγραμμα για εισερχόμενα μηνύματα. Το σύνηθες είναι να κοιτάει στην κάρτα sim (SM).
|
|||
|
|
|||
|
#### Έλεγχος λειτουργιών κινητού τηλεφώνου.
|
|||
|
|
|||
|
Τέλος θα δούμε πως μπορούμε να παίξουμε με τις λειτουργίες του κινητού μας τηλεφώνου. Για τον σκοπό αυτό θα χρησιμοποιήσουμε το gsmctl. Με το gsmctl μπορούμε
|
|||
|
τόσο να δούμε όσο και να ορίσουμε πολλές και διάφορες παραμέτρους του κινητού μας τηλεφώνου. Καλό είναι όμως πρώτον να μελετήσουμε πάρα πολύ καλά το manual του
|
|||
|
gsmctl γιατί δεν είναι καθόλου δύσκολο να προξενίσουμε αρκετά μεγάλο πρόβλημα στην λειτουργία του κινητού μας τηλεφώνου. Αν δεν είμαστε σίγουροι για το τι
|
|||
|
κάνουμε καλό είναι να το αφήσουμε.
|
|||
|
|
|||
|
Να σημειώσουμε ότι πολλές από τις λειτουργίες που είναι δυνατόν να διαχειριστούμε με το gsmctl ενδέχεται να μην υποστηρίζονται από το κινητό μας τηλέφωνο. Σε
|
|||
|
αυτήν την περίπτωση παίρνουμε ένα ωραιότατο μήνυμα λάθους και διακόπτεται η προσπάθεια.
|
|||
|
|
|||
|
Η σύνταξη της σχετικής εντολής είναι (ανάλογα και με το αν θέλουμε να δούμε η να αλλάξουμε κάτι):
|
|||
|
|
|||
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|||
|
|
|||
|
gsmctl -d /dev/ircomm0 -b 19200 <πληροφορία που θέλουμε>
|
|||
|
gsmctl -d /dev/ircomm0 -b 19200 -o <παράμετρος που πειράζουμε>
|
|||
|
|
|||
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|||
|
|
|||
|
Με την πρώτη μορφή ρωτάμε το κινητό μας για διάφορες πληροφορίες που μπορεί να μας δώσει. Αυτές είναι:
|
|||
|
|
|||
|
**ALL** Όλες οι δυνατές πληροφορίες που μπορεί να μας δώσει.
|
|||
|
|
|||
|
**BATT** Κατάσταση μπαταρίας και επίπεδο φόρτισης.
|
|||
|
|
|||
|
**BITERR** Δίνει μία ένδειξη για τον ρυθμό λαθών που παρουσιάζει το σήμα.
|
|||
|
|
|||
|
**CLIP** Δείχνει αν είναι ενεργή ή όχι η αποστολή αριθμού κλίσης από το δίκτυο.
|
|||
|
|
|||
|
**CSET** Τρέχουσα και διαθέσιμες κωδικοσελίδες.
|
|||
|
|
|||
|
**CURROP** Δείχνει ποιος είναι ο τρέχον παροχέας δικτύου.
|
|||
|
|
|||
|
**FLCAP** Δίνει έναν συνδυασμό δύο γραμμάτων που δείχνει κάποιες από τις δυνατές φραγές που μπορούμε να ενεργοποιήσουμε. Αυτές μπορεί να είναι από το κλείδωμα
|
|||
|
πληκτρολογίου (CS) και της sim (SC) μέχρι φραγή εισερχομένων και εξερχομένων κλίσεων.
|
|||
|
|
|||
|
**FLSTAT** Δείχνει τις ενεργοποιημένες φραγές (δες παραπάνω FLCAP).
|
|||
|
|
|||
|
**FORW** Πληροφορίες για τις προωθήσεις κλίσεων που είναι ενεργές.
|
|||
|
|
|||
|
**OP** Πληροφορίες για τους διαθέσιμους παροχείς δικτύου.
|
|||
|
|
|||
|
**PIN** Πληροφορίες για τον αριθμό PIN (αν απαιτείται η εισαγωγή του π.χ. κατά το άνοιγμα του κινητού).
|
|||
|
|
|||
|
**PW** Δείχνει της προστατευμένες με password φραγές.
|
|||
|
|
|||
|
**SCA** Δίνει το κέντρο διακίνησης sms.
|
|||
|
|
|||
|
**SIG** Μας δίνει έναν αριθμό που αντιστοιχεί με την ένταση λήψης σήματος από το κινητό με βήματα των 2 dBm.
|
|||
|
|
|||
|
Με την δεύτερη μορφή μπορούμε να επηρεάσουμε τον τρόπο που λειτουργεί το κινητό μας τηλέφωνο. Το μόνο που έχουμε να κάνουμε είναι να πούμε τι και πώς επιθυμούμε
|
|||
|
να επηρεάσουμε. Βέβαια, ό,τι πάμε να κάνουμε εδώ θα πρέπει να γίνει με πολύ προσοχή γιατί δεν αποκλείεται να κλειδώσουμε την συσκευή μας καθιστώντας τη άχρηστη.
|
|||
|
Ας δούμε εν συντομία τη μπορούμε να επηρεάσουμε.
|
|||
|
|
|||
|
**-o dial \<νούμερο\>**
|
|||
|
|
|||
|
Κάνει κλίση προς το νούμερο που ορίζουμε και περιμένει να πατήσουμε το \<CR\> για να τερματίσουμε την σύνδεση.
|
|||
|
|
|||
|
**-o forw \<κατάσταση\> \<λόγος\> \<νούμερο\> \[τάξη υπηρεσίας\] \[χρόνος\]**
|
|||
|
|
|||
|
Εδώ μπορούμε να ορίσουμε το που θα προωθούνται οι κλίσεις που δεχόμαστε (\<νούμερο\>) όταν ικανοποιούνται τα κριτήρια που ορίζουμε (\<λόγος\>). Επίσης μπορούμε
|
|||
|
να διαγράψουμε κάποια ενεργή προώθηση κλίσεων (\<κατάσταση\> = erase). Επίσης μπορούμε να ορίσουμε (σε κάποιες περιπτώσεις) μετά από πόση ώρα θα γίνει η
|
|||
|
προώθηση κλίσεως.
|
|||
|
|
|||
|
**-o pin \<νούμερο\>**
|
|||
|
|
|||
|
Ρυθμίζει τον αριθμό pin της κάρτας sim.
|
|||
|
|
|||
|
**-o setsca \<νούμερο\>**
|
|||
|
|
|||
|
Ορίζει τον αριθμό του κέντρου διαχείρισης μηνυμάτων.
|
|||
|
|
|||
|
|
|||
|
### [4. Επίλογος]{#s4}
|
|||
|
|
|||
|
Μην περιμένετε όλα αυτά τα θαυμαστά πράγματα να δουλέψουν απρόσκοπτα σε όλα τα κινητά της αγοράς. Για παράδειγμα, δεν μπόρεσα να κάνω το gsmsmsd να δουλέψει με
|
|||
|
το motorola timeport 250 που έχω καθώς και πολλές από τις πληροφορίες που δίνει το gsmctl έδιναν ένα θαυμάσιο μήνυμα λάθους. Παρόλα αυτά όμως με λίγο
|
|||
|
πειραματισμό δεν αποκλείεται να καταφέρετε να κάνετε τα θαυμαστά πράγματα που υπόσχεται το άρθρο. Λίγος παραπάνω κόπος ίσως είναι αρκετός να σας δώσει την
|
|||
|
δυνατότητα να διαχειριστείτε τον τηλεφωνικό σας κατάλογο ακόμα και στα ελληνικά καθώς και να διαχειριστείτε εξ\' αποστάσεως τον υπολογιστή σας με μόνο μέσο το
|
|||
|
κινητό σας τηλέφωνο.
|
|||
|
|
|||
|
Όσο εξελίσσονται και ωριμάζουν σιγά-σιγά τα σχετικά προγράμματα (ίσως και με την δική σας συνεισφορά) η ευχρηστία τους θα γίνεται όλο και λιγότερη. Ελπίζω το
|
|||
|
παρόν άρθρο να ήταν αρκετά ενδιαφέρον δίνοντας σας ερεθίσματα για πολλές εξαιρετικά ενδιαφέρουσες εφαρμογές.
|
|||
|
|