Skip to main content

PosiStageNet parser

Project description

python-psn

Pure Python parsing library for PSN V2 - PosiStageNet

Official PSN specification

Source code

Installation

pip install pypsn

To install latest master from git via pip:

python -m pip install https://codeload.github.com/open-stage/python-psn/zip/refs/heads/master

Usage

import pypsn

# define a callback function
def callback_function(data):
    if isinstance(data, pypsn_module.psn_data_packet): # packet type: psn.psn_data_packet
        for tracker in data.trackers: # loop through all trackers
            print(tracker.pos) # print the received coordinates

    if isinstance(data, pypsn_module.psn_info_packet): # packet type: psn.psn_info_packet
        print(data.name) # print server name
        for tracker in data.trackers: # loop through all trackers
            print(tracker.tracker_name) # print the received tracker name

# provide a callback function and an IP address
receiver = pypsn.receiver(callback_function, "10.0.0.1")
receiver.start()  # start the receiving thread

receiver.stop() # stop receiving

See examples folder for some more examples.

Development, status

  • Supporting PSN V2
  • Parsing only, not sending
  • Using threading module
  • Linux, Windows and macOS tested
  • Typed, no-strict
  • Initial pytest testing provided together with CI/CD setup

Type hints

  • At this point, the --no-strict-optional is needed for mypy tests to pass:
mypy pypsn/*py  --pretty  --no-strict-optional

Format

Testing

  • to test, use pytest
  • to test typing with mypy use
pytest --mypy -m mypy pypsn/*py

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pypsn-0.1.1.tar.gz (4.8 kB view hashes)

Uploaded Source

Built Distribution

pypsn-0.1.1-py3-none-any.whl (5.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page