==== Χρήση του Mobile API ====
Τα βασικά scripts είναι
* ''openeclass_base/modules/mobile/mcourses.php'' Επιστρέφει τα μαθήματα της πλατφόρμας σε μορφή xml (αντίστοιχο με το ''opencourses.php'').
* ''openeclass_base/modules/mobile/mcourses.php?registered''. Αν ο χρήστης έχει κάνει login, επιστρέφει μόνο τα μαθήματα στα οποία είναι γραμμένος, αν δεν έχει κάνει login, επιστρέφει την ίδια ακριβώς λίστα όπως προηγουμένως.
* ''openeclass_base/modules/mobile/mtools.php?course=CODE''. Επιστρέφει τα εργαλεία μαθήματος για συγκεκριμένο μάθημα (δηλαδή το αριστερό μενού μαθήματος). Λειτουργεί με τον ίδιο τρόπο που λειτουργεί και το κανονικό μενού, δηλαδή αν ο χρήστης είναι καθηγητής θα του φέρει 2 επιπλέον groups εργαλείων (τα ανενεργά και τα διαχείρισης).
* ''openeclass_base/modules/mobile/mlogin.php?token=TOKEN''. Ως είσοδο εδώ δέχεται το php session id (ό,τι πληροφορία έχει και το cookie δηλαδή). Αν βρεθεί το συγκεκριμένο session, τότε επιστρέφει σε plain text ''OK'', αλλιώς σε plain text ''EXPIRED''. Στην περίπτωση επιτυχημένου login επιστρέφει plain text το TOKEN που χρησιμοποιείται στο από πάνω παράδειγμα.
* ''openeclass_base/modules/mobile/mlogin.php?uname=UNAME&pass=PASS''. Σε περίπτωση επιτυχημένου login επιστρέφει XML περιεχόμενο ''SUCCESS'' πετυχημένου login. Σε περίπτωση αποτυχίας επιστρέφει σε μορφή plain text ένα από τα παρακάτω:
* ''FAILED'' ως γενική περίπτωση αποτυχίας
* ''NOTENABLED'' όταν δεν είναι ενεργοποιημένο το api στα configs του eclass admin
* ''USERNOTACTIVE'' όταν ο λογαριασμός του χρήστη στο eclass έχει λήξει
* ''OK'' σε περίπτωση επιτυχίας χωρίς XML output (πχ στο logout request)
* ''openeclass_base/modules/mobile/mlogin.php?logout''. Καταστροφή του session και logout.
* ''openeclass_base@/modules/mobile/midentity.php''. Πληροφορίες για την εγκατεστημένη πλατφόρμα χωρίς authentication. Παράδειγμα απάντησης
Όλα τα παραπάνω δέχονται τα arguments είτε με GET είτε με POST.
----
== Παράδειγμα χρήσης μέσω Bash Script (προϋποθέτει την ύπαρξη της ''curl'') ==
#!/bin/bash
ECLASSURL="http://eclassURL"
# login using user credentials
TOKEN=`curl -d "uname=myUsername&pass=myPassword" "$ECLASSURL/modules/mobile/mlogin.php"`
# request user portfolio using TOKEN
curl -d "token=$TOKEN" "$ECLASSURL/modules/mobile/mportfolio.php"
# request user's registered courses using TOKEN
curl -d "token=$TOKEN" "$ECLASSURL/modules/mobile/mcourses.php"
# request the tools of a registered courses using TOKEN and course code
curl -d "token=$TOKEN" "$ECLASSURL/modules/mobile/mtools.php?course=COURSECODE"
# logout from eclass
curl -d "token=$TOKEN" "$ECLASSURL/modules/mobile/mlogin.php?logout"
----
=== Διαγράμματα του mobile API ===
{{:el:developers:mobileapi.png?600|}}
{{:el:developers:mobileapi-return-codes.png?600|}}
----
=== Χρήση μέσω C# ===
Αν είστε χρήστης της C# τότε μπορείτε να χρησιμοποιήσετε τον παρακάτω mobile API client:
[[https://github.com/amoraitis/EclassMobileApi]]
Μπορείτε να το εγκαταστήσετε μέσω NuGet ([[https://www.nuget.org/packages/EclassApi]])