My Ski Tool API Docs

📄 MySkiTool Vision & Business Plan

A high-level vision and plan for the MySkiTool system can be found here: MYSKITOOL HIGH LEVEL VISION / PLAN

Vision Graphic

🎥 SKISTREAM Servlet Overview

SKISTREAM (/skistream) is the servlet that handles communication between various management and viewing apps and recording devices.

It can be used to:

This includes 'active skier' metadata for each camera, as well as applicable lens, zoom, and stabilization parameters.

Active clients using this API include:

Relevant Documentation: GENERAL API DESCRIPTION /skistream SERVLET /skistream QuickAccess 'POST' API

📡 Socket.IO Messaging System

SOCKETIO is a message-passing system that enables real-time client communication without the need for polling.

Clients connect to a central server and send messages that can be:

The messages are JSON key:value pairs which allow for a flexible, structured protocol. Our implementation focuses on two primary message types:

This protocol is designed to evolve and scale. Family/team members can collaborate to define and extend the structure as needed.

Documentation includes the current API state as well as example message/response sequences: MySkiTool SocketIO API MySkiTool SocketIO Message Trace

Handling Video Skier Renaming

GoProName is a parameter in the metadata .TXT file, that identifies the skier for a specific Video

Explanation of the structure of the video's accompaning .TXT, and how to handle Skier renaming HOW TO HANDLE SKIER RENAMING FOR A VIDEO

Captured Video DateTime API

Date/Time Is a field in the MetaData .TXT file associated with a video file, that stores the Date/Time that the video was captured (Secs from 01/01/1970 captured/labeled as UTC time, but is actually the local time where the video was captured

Document that describes how to handle Date/Time Date/Time API

GitHub 'COMMIT' Process

GITHUB is a system to save a snapshot of code, so that it can be insatlled and run in another computer, as well as allow for multiple snapshots to be saved, so the owner can revert to prior versions if needed

Trace of a session to setup a folder for GitHub 'REPOSITORY' GITHUB REPOSITORY SETUP