๐Ÿ‘‹ About The Project

1. Built With

Logo

(back to top)

โš™๏ธ Getting Started

This is an example of how you may give instructions on setting up your project locally. To get a local copy up and running follow these simple example steps.

1. Prerequisites

Prerequisites list of things you need to use the software and how to install them.

  • PyEnv

    pip install pyenv
  • Python 3.9.5 (or greater)

    pyenv virtualenv 3.9.5 NAME-ENV
  • Activate your Virtual Env

    pyenv activate NAME-ENV
  • MyGES Package

    pip install MyGES
  • Requests Package (to handle API Call)

    pip install requests

    (back to top)

2. Usage

Letโ€™s started by creating your client to proceed your requests :

โš ๏ธ Many dates that you can find in the routes are in EpochUnix (ms) format. โš ๏ธ

If you want to get an understandable date, feel free to use the private fonction โ€˜_EpochUnixToDateTime(EpochUnixMsFormat)โ€™ that Iโ€™ve just created for this project (you should get a DateTime format YYYY-MM-DD HH:MM:SS).

Example : create_date = 1694249045776 -> _EpochUnixToDateTime(create_date) = โ€˜2023-10-11 13:36:15โ€™

from MyGES import MyGesClient

# Create your access to MyGES Client
client = MyGesClient(name='YOUR-ID', password='YOUR-PASSWORD')

๐Ÿซ - MyGES Section

# Access to all the informations in the banners of MyGES 
# (Img, links, texts, etc...)
mygesBanners = client.getBanners()

# Access to the list of all the partners of MyGES
mygesPartners = client.getPartners()

# Access to all the events promoted by MyGES 
mygesEvents = client.getEvents()

# Access to ICDL certification register informations
mygesIcdl = client.getIcdlInscription()

# Access to your profile informations
mygesProfile = client.getProfile()

# Access to your list of annual documents
mygesAnnualDocuments = client.getAnnualDocuments()

# Access to all the classes you've been through GES Network
mygesStudentsPeriode = client.getStudentPeriode()

# Access to all the "Opens" associations in your campus
mygesOpens = client.opens()

# Access to the information about your last campus
mygesStudentLastCampus = client.getStudentLastCampus()

(back to top)

๐Ÿ“† - Agenda Section

# Access to all the informations about your agenda between two dates
agendaStartEnd = client.getAgenda(start, end) # formated date : DD/MM/YY

# Access to all the informations about your agenda for the next month
agendaForNextMonth = client.getAgendaForTheNextMonth()

# Access to all the informations about next course
agendaNextCourse = client.getNextCourses(numberOfNextCourses)

(back to top)

๐Ÿ‘ค - Presence Section

# Access to all the informations about your previous absences
absencesListed = client.getAbsences()

# WIP - Maybe for the integration of Edusign (return nothing actually)
presenceAttestation = client.getPresenceAttestations()

(back to top)

๐Ÿ“Š - Grade Section

# Access to all the informations about your grades for the actual year
gradeForActualYear = client.getGrades()

# Access to all the informations about your grades about a precise year
gradeForSpecificYear = client.getYearGrades(year)

(back to top)

๐Ÿ“– - Project Section

To get your project_id, you have to use the call โ€˜client.getProjects()โ€™ route or โ€˜client.getSimpleProjects()โ€™ route (I recommand the second one for the lisibility)

# Access to all the informations about your projects for the actual year
actualProject = client.getProjects()

# Access to important informations (only) about your projects for 
# the actual year
projectSimpleInformations = client.getSimpleProjects()

# Access to your next project steps (steps to be delivered)
projectNextSteps = client.getNextProjectsSteps()

# Access to all the informations about one specific project
projectFocus = client.getProjectsInformations(project_id)

# Access to the subject of a specific project
projectSubject = client.getProjectSubject(project_id)

# Access to the planning of a specific project
projectPlanning = client.getProjectPlanning(project_id)

# Access to the students list of a specific project
projectStudents = client.getProjectStudents(project_id)

(back to top)

๐Ÿ“š - Courses Section

To get your course_id, you have to use the call โ€˜client.getCourses()โ€™ route

# Access to all the informations about your courses for the actual year
coursesForActualYear = client.getCourses()

# Access to all the documents about a specific courses
coursesDocuments = client.getCourseDocuments(course_id)

(back to top)

๐Ÿ‘จโ€๐Ÿซ - Teachers Section

# Access to all the informations about your teachers for the actual year
teachersForActualYear = client.getTeachers()

(back to top)

๐Ÿด๓ ง๓ ข๓ ฅ๓ ฎ๓ ง๓ ฟ - TOEIC Section

# Access to your previous TOEIC result(s)
toeicResults = client.getToeicResult()

# Access to the informations about your previous TOEIC session(s)
toeicSessions = client.getToeicSessions()

# Access to the informations about your previous TOEIC transaction(s)
toeicTransaction = client.getToeicTransaction()

# Access to the informations about the next TOEIC date(s)
toeicNextDates = client.getNextToeicDates()

# Access to your previous TOEIC result(s)
toeicResults = client.getToeicResult()

(back to top)

๐Ÿš€ Roadmap

1. Done

  • Create the connexion to the API
  • Create private functions for human understanding
  • Create main functions : getProfile, getAgenda, getGrades, etcโ€ฆ
  • Format many date for an human understanding

2. Todo

  • Create a special function to retrieve only your projects
  • Continue the parsing of the dates for an human understanding

See the open issues for a full list of proposed features (and known issues).

(back to top)

โœ๏ธ License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)

๐Ÿ” Contact

Project Link: https://github.com/CurtainShow/API-MyGES

(back to top)

๐Ÿ’ก Acknowledgments

(back to top)