timeandplace

Python API for interacting with a TimeAndPlace server


Keywords
school-management, api, python-library
License
GPL-3.0
Install
pip install timeandplace==1.1.0

Documentation

TimeAndPlace API & CLI Application

This repo contains both a Python3 API, and a command-line application for interacting with @salamander2's TimeAndPlace service over a network. The main reason behind this package is for use in another project I have planned for room occupancy tracking.

What kind of data can be accessed?

Currently, this is mostly a Read-Only API. The following data can be accessed when logged in:

  • List of all student IDs
  • A particular student's info
  • Student location tracking *

* This data can be written via the API

Installation

This is a PYPI package. Either call setup.py directly, or run:

python3 -m pip install timeandplace

CLI usage

The command-line app uses "action commands" in the format of:

python3 -m timeandplace --username <username> --password <password> <action> [optional: --endpoint <url>]

A list of possible actions can be viewed by running:

python3 -m timeandplace help

API usage

All interaction is done via the TimeAndPlace object. It has the following methods:

client = TimeAndPlace() # Optional: endpoint="https://example.com"
client.login(str, str)

# These require login to be called
client.getStudentInfo(int) -> StudentInfo
client.getAllStudents() -> List[int]
client.getAllCourses() -> List[CourseInfo]
client.signInStudentToTerminal(int, int)
client.signOutStudentFromTerminal(int, int)

I recommend taking a look at the single source file for more info on the API.