el:developers:mobile_api

Τα βασικά scripts είναι

  • openeclass_base/modules/mobile/mcourses.php Επιστρέφει τα μαθήματα της πλατφόρμας σε μορφή xml (αντίστοιχο με το opencourses.php).
  • openeclass_base/modules/mobile/mcourses.php?registered. Αν ο χρήστης έχει κάνει login, επιστρέφει μόνο τα μαθήματα στα οποία είναι γραμμένος, αν δεν έχει κάνει login, επιστρέφει την ίδια ακριβώς λίστα όπως το από πάνω (opencourses).
  • 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.
  • Πληροφορίες για την εγκατεστημένη πλατφόρμα, (χωρίς authentication): openeclass_base@/modules/mobile/midentity.php

Παράδειγμα απάντησης

<?xml version="1.0" encoding="utf-8"?>
<identity>
  <institute name="Ακαδημαϊκό Διαδίκτυο GUNet" url="http://www.gunet.gr/"/>
  <platform name="Open eClass 3.x" version="3.6-dev"/>
  <administrator name="Διαχειριστής Πλατφόρμας"/>
</identity>

Όλα τα παραπάνω δέχονται τα 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


Χρήση μέσω C#

Αν είστε χρήστης της C# τότε μπορείτε να χρησιμοποιήσετε τον παρακάτω mobile API client: https://github.com/amoraitis/EclassMobileApi

Μπορείτε να το εγκαταστήσετε μέσω NuGet (https://www.nuget.org/packages/EclassApi)

  • Last modified: 2022/11/16 10:40