4. SDK reference
The Proximie SDK is available in both C++ and Python. Choose the appropriate reference section for your language below.
4.1. Experimental features
When the SDK is developing new features or functionality, it can be useful to make them available for early access to developers, for experimentation or feedback. These features are marked as experimental. Experimental features may not be fully tested or documented, may be incomplete, and may radically change or possibly be removed in future SDK releases. Before using any experimental features, it is advisable to check with the Proximie team and review any available documentation and release notes.
4.2. C++ SDK reference
Note
The C++ SDK uses namespaces to organise its API. A detail sub-namespace
contains implementation internals and should not be used directly; content
within it may change without notice in future releases.
-
namespace Proximie
The Proximie SDK is split into a number of supporting C++ namespaces, all under the top-level namespace Proximie. The top-level Proximie namespace also has commonly used types defined.
See the Proximie common types for details.
-
namespace PxCore
The PxCore namespace contains fundamental types, definitions and classes used throughout the Proximie SDK.
See the Proximie::PxCore reference for details.
-
namespace PxUtility
The PxUtility namespace, as the name suggests, contains utility classes and helpers for various tasks and systems used by the Proximie SDK and SDK applications. These utility elements are chiefly stand-alone components agnostic to the details of the Proximie systems and implementation: e.g. logging, REST/HTTP support, serialization etc.
See the Proximie::PxUtility reference for details.
-
namespace PxRestApi
The PxRestApi namespace provides support for various common Proximie REST APIs, typically used to work with Proximie services.
The core class in this namespace is
ProximieServices, which is used to make REST requests.Whilst the REST APIs themselves use JSON payloads, PxRestApi support uses typed C++ structures. These payload structures are available in the PxRestApi namespace.
Note that the full REST APIs are extensive, and this namespace implements a smaller subset pertinent to functions typically required by SDK applications.
See the Proximie::PxRestApi reference for details.
-
namespace PxMedia
The PxMedia namespace implements the core media streaming functionality provided the SDK. This includes audio and video feeds being between the host applications and other participants in a media session.
See the Proximie::PxMedia reference for details.
4.3. Python SDK reference
Python SDK maturity
While we have made every effort to validate the correctness of the Python bindings, they cannot (yet) be considered as production-ready as the C++ SDK itself. They pass automated unit and integration testing, as well as manual testing, but there is a small chance that some edge cases may exhibit unexpected behaviour. If you encounter any issues, please report them to the Proximie team via the Proximie SDK Support Portal.
The Python SDK is provided via the px_core package, organised into
sub-modules that correspond to the C++ SDK components:
px_core.core— context, logging, versioningpx_core.media— media feeds, sessions, and streamingpx_core.rest— Proximie REST API types and servicespx_core.utility— serialization, geometry, errors