disguise developers

Python API

Execute Python code in Designer sessions to control and query projects programmatically.

D3NetManager

Nested Classes

Properties

actorMode : bool (Read-Only)

actors : List[Machine]

dedicatedDirectorMode : bool (Read-Only)

director : Machine

directorMode : bool (Read-Only)

director_type : bool

hasValidDirector : bool (Read-Only)

localMachine : Machine (Read-Only)

machines : List[Machine] (Read-Only)

Get all machines in the session, including Understudies and Editors.

mobileEditorMode : bool (Read-Only)

multicastConfigs : List[MulticastConfig]

The project’s pool of multicast destinations. A network head streams to one of these; one that no head has taken yet is kept here until it is assigned.

nonDedicatedDirectorMode : bool (Read-Only)

normal_preset : str

Category: Failover
UserName: Normal preset

outputMachines : List[Machine] (Read-Only)

Get all session machines that currently have an output role. Only includes Understudies if they have taken over another machine.

soloMode : bool (Read-Only)

thisMachine : Machine (Read-Only)

timeout : float

Automatic failover timeout - 0 is disabled

Category: Failover
UserName: Timeout

understudies : List[Machine]

understudy : bool (Read-Only)

Variables

UNDERSTUDY_STATE_NON_OUTPUT_TARGET : Final[UnderstudyConfigStatus] = UnderstudyConfigStatus.NonOutputTarget

UNDERSTUDY_STATE_NO_TARGETS : Final[UnderstudyConfigStatus] = UnderstudyConfigStatus.NoTargets

UNDERSTUDY_STATE_NO_VALID_TARGETS : Final[UnderstudyConfigStatus] = UnderstudyConfigStatus.NoValidTargets

UNDERSTUDY_STATE_OK : Final[UnderstudyConfigStatus] = UnderstudyConfigStatus.OK

UNDERSTUDY_STATE_TARGET_OVERLAP : Final[UnderstudyConfigStatus] = UnderstudyConfigStatus.TargetMachineOverlap

Methods

adoptMulticastConfigsFromHeads(self)

Takes into the pool any multicast config a head references but the pool does not hold, so a project
whose pool and heads disagree keeps the destination the head is configured with. Trashed configs stay deleted.

directorIsX0(self) -> bool

True iff the current (acting) director is an X0; false in all other cases

dispatchCommandAll(self, cmd: RemoteCommand, sessionOnly: bool)

dispatchCommandDirect(self, hostname: str, cmd: RemoteCommand, sessionOnly: bool) -> bool

findMachineByHostname(self, hostname: str) -> Machine

getDirectorUnderstudy(self) -> Machine

Get the first listed (if there are multiple) understudy for the current acting Director, if we have one

getUnderstudyConfigStatus(self, understudy: Machine) -> UnderstudyConfigStatus

isUnderstudy(self, machine: Machine) -> bool

licenseCapabilitiesForMachine(self, machine: Machine) -> optional[LicenseCapabilities]

Returns the shared LicenseCapabilities for the given machine, or None if it is not currently reporting status (i.e. it is not in session).

machineCanBeAddedToSessionAs(self, newMachine: Machine, role: MachineRole) -> bool

Whether the given machine would be allowed to be in the current session in the given role.
Takes into account current state of the machine, so may return true for E.G EX in a normal session
if the machine is currently not connected.

machineIsValidUnderstudyTargetFor(self, understudy: Machine, target: Machine) -> bool

Whether the given machine is allowed to understudy the given target in the current session
Only checks for session configuration violations, I.E it’s ‘valid’ to target another Understudy,
or an Actor which is already targeted by a different Understudy. These are warned about separately.

machineIsX0(self, machine: Machine) -> bool

True iff the given machine exists, is in session, and is an X0; false in all other cases

machineStatus(self, nodeId: int) -> D3NetManager.MachineStatus

removeMulticastConfig(self, config: MulticastConfig)

Takes a config out of the pool, leaving the config itself alone: heads streaming to it carry on.

Parameters:

sendMatrixRouting(self, machine: Machine, feed: FeedScene)

understudyAvailableFor(self, machine: Machine) -> bool

Static Methods

allMachinesConnected(machines: List[Machine]) -> bool

Check whether all specified machines are connected to the session.

anyMachineNeedsDisplaySettingsApplied(machines: List[Machine]) -> bool

Check whether any of the specified machines needs to Apply Feed Settings.

notifyIfAnyMachineNeedsDisplaySettingsApplied(machines: List[Machine]) -> bool

Notify user if any of the specified machines needs to Apply Feed Settings.