Every part of our system is exposed to our internal API, which can do almost anything. It is based heavily on JSON and strings.
Not interested in reading documentation? Check out Pixotope API - Examples and come back when you get stuck.
Ways to use the API
There are two ways of interacting with Pixotope using the Pixotope API.
Control a Pixotope service
This allows you to read, write, and call anything exposed in the Pixotope API using a minimal setup.
Recommended for 95 % of cases
Use either ZeroMQ directly or a network protocol exposed by the Pixotope Gateway
Control any of the Pixotope services via a third party hardware or software
Create your own Pixotope service
In addition to the above, this allows you to make the Pixotope Store persist your data for you. It also lets you define your own data and functions that can be accessed by anyone using the API.
Recommended for 5 % of cases
Use ZeroMQ and follow our guidelines to create a Pixotope Service
Use this if you are looking to expand on the capabilities of the Pixotope API itself, for long term use
This is what we have followed internally to create all of our services (such as Tracking and VideoIO).
What is a Pixotope service/network?
A Pixotope Network is made up of an arbitrary number of services across an arbitrary number of machines
They all talk to each other as if they are on the same machine
The services don’t see the network layout nor what machine any specific service is on (unless they parse our adopted naming scheme MachineName-ServiceName)
Any message that is sent to the network can be listened to and acted on from any service on the network
Messages are guaranteed to arrive in order, however, messages that contain a third packet with binary data are considered lower priority and have their own queue.
This means that you can connect to the Pixotope Network from any connected machine and interact with everything and anything on it.