playtron-core 1.0.0

Playtron GameOS core utilities for Rust
Documentation
use serde::{Deserialize, Serialize};
use zbus::{proxy, zvariant::Type};

#[derive(Debug, Clone, Deserialize, Serialize, Type)]
pub struct SessionInfo {
    pub nonce: Vec<u8>,
    pub session_id: String,
}

#[proxy(
    interface = "one.playtron.sdk.Pact",
    default_path = "/one/playtron/sdk/Manager",
    default_service = "one.playtron.Playserve"
)]
pub trait SdkPactInterface {
    async fn create_session(&self) -> zbus::fdo::Result<SessionInfo>;

    async fn get_quote(&self, nonce: Vec<u8>) -> zbus::fdo::Result<String>;
}