MeshModelIdentifier

@available(swift 4.0)
open class MeshModelIdentifier : Encodable
extension MeshModelIdentifier: Hashable
extension MeshModelIdentifier: Equatable

BLE Mesh Model Identifier

All SIG Model IDs that are not defined by this specification or other Bluetooth specifications are Reserved for Future Use (RFU)

  • Model Id

    Declaration

    Swift

    open internal(set) var modelId: ModelIdentifierType { get }
  • Model Name

    Declaration

    Swift

    open internal(set) var name: String { get }
  • Creates Mesh Model Identifier

    Declaration

    Swift

    public init(model modelId: ModelIdentifierType, name: String)

    Parameters

    modelId

    Model Identifier

    name

    Model Name

  • Hashes the essential components of this value by feeding them into the given hasher.

    Implement this method to conform to the Hashable protocol. The components used for hashing must be the same as the components compared in your type’s == operator implementation. Call hasher.combine(_:) with each of these components.

    Important

    Never call finalize() on hasher. Doing so may become a compile-time error in the future.

    Declaration

    Swift

    public func hash(into hasher: inout Hasher)

    Parameters

    hasher

    The hasher to use when combining the components of this instance.

  • Returns a Boolean value indicating whether two values are equal.

    Equality is the inverse of inequality. For any values a and b, a == b implies that a != b is false.

    Declaration

    Swift

    public static func == (lhs: MeshModelIdentifier, rhs: MeshModelIdentifier) -> Bool

    Parameters

    lhs

    A value to compare.

    rhs

    Another value to compare.

Well Known Mesh Model Identifiers

  • Reserved Model ID

    Declaration

    Swift

    class var reserved: MeshModelIdentifier { get }

Generic

  • Generic OnOff Server

    Declaration

    Swift

    class var genericOnOffServer: MeshModelIdentifier { get }
  • Generic OnOff Client

    Declaration

    Swift

    class var genericOnOffClient: MeshModelIdentifier { get }
  • Generic Level Server

    Declaration

    Swift

    class var genericLevelServer: MeshModelIdentifier { get }
  • Generic Level Client

    Declaration

    Swift

    class var genericLevelClient: MeshModelIdentifier { get }
  • Generic Default Transition Time Server

    Declaration

    Swift

    class var genericDefaultTransitionTimeServer: MeshModelIdentifier { get }
  • Generic Default Transition Time Client

    Declaration

    Swift

    class var genericDefaultTransitionTimeClient: MeshModelIdentifier { get }
  • Generic Power OnOff Server

    Declaration

    Swift

    class var genericPowerOnOffServer: MeshModelIdentifier { get }
  • Generic Power OnOff Setup Server

    Declaration

    Swift

    class var genericPowerOnOffSetupServer: MeshModelIdentifier { get }
  • Generic Power OnOff Client

    Declaration

    Swift

    class var genericPowerOnOffClient: MeshModelIdentifier { get }
  • Generic Power OnOff Client

    Declaration

    Swift

    class var genericPowerLevelServer: MeshModelIdentifier { get }
  • Generic Power Level Setup Server

    Declaration

    Swift

    class var genericPowerLevelSetupServer: MeshModelIdentifier { get }
  • Generic Power Level Client

    Declaration

    Swift

    class var genericPowerLevelClient: MeshModelIdentifier { get }
  • Generic Battery Server

    Declaration

    Swift

    class var genericBatteryServer: MeshModelIdentifier { get }
  • Generic Battery Client

    Declaration

    Swift

    class var genericBatteryClient: MeshModelIdentifier { get }
  • Generic Location Server

    Declaration

    Swift

    class var genericLocationServer: MeshModelIdentifier { get }
  • Generic Location Setup Server

    Declaration

    Swift

    class var genericLocationSetupServer: MeshModelIdentifier { get }
  • Generic Location Client

    Declaration

    Swift

    class var genericLocationClient: MeshModelIdentifier { get }
  • Generic Admin Property Server

    Declaration

    Swift

    class var genericAdminPropertyServer: MeshModelIdentifier { get }
  • Generic Manufacturer Property Server

    Declaration

    Swift

    class var genericManufacturerPropertyServer: MeshModelIdentifier { get }
  • Generic User Property Server

    Declaration

    Swift

    class var genericUserPropertyServer: MeshModelIdentifier { get }
  • Generic Client Property Server

    Declaration

    Swift

    class var genericClientPropertyServer: MeshModelIdentifier { get }
  • Generic Property Client

    Declaration

    Swift

    class var genericPropertyClient: MeshModelIdentifier { get }

Sensors

  • Sensor Server

    Declaration

    Swift

    class var sensorServer: MeshModelIdentifier { get }
  • Sensor Setup Server

    Declaration

    Swift

    class var sensorSetupServer: MeshModelIdentifier { get }
  • Sensor Client

    Declaration

    Swift

    class var sensorClient: MeshModelIdentifier { get }

Time and Scenes

  • Time Server

    Declaration

    Swift

    class var timeServer: MeshModelIdentifier { get }
  • Time Setup Server

    Declaration

    Swift

    class var timeSetupServer: MeshModelIdentifier { get }
  • Time Client

    Declaration

    Swift

    class var timeClient: MeshModelIdentifier { get }
  • Scene Server

    Declaration

    Swift

    class var sceneServer: MeshModelIdentifier { get }
  • Scene Setup Server

    Declaration

    Swift

    class var sceneSetupServer: MeshModelIdentifier { get }
  • Scene Client

    Declaration

    Swift

    class var sceneClient: MeshModelIdentifier { get }
  • Scheduler Server

    Declaration

    Swift

    class var schedulerServer: MeshModelIdentifier { get }
  • Scheduler Setup Server

    Declaration

    Swift

    class var schedulerSetupServer: MeshModelIdentifier { get }
  • Scheduler Client

    Declaration

    Swift

    class var schedulerClient: MeshModelIdentifier { get }

Lighting

  • Light Lightness Server

    Declaration

    Swift

    class var lightLightnessServer: MeshModelIdentifier { get }
  • Light Lightness Setup Server

    Declaration

    Swift

    class var lightLightnessSetupServer: MeshModelIdentifier { get }
  • Light Lightness Client

    Declaration

    Swift

    class var lightLightnessClient: MeshModelIdentifier { get }
  • Light CTL Server

    Declaration

    Swift

    class var lightCtlServer: MeshModelIdentifier { get }
  • Light CTL Setup Server

    Declaration

    Swift

    class var lightCtlSetupServer: MeshModelIdentifier { get }
  • Light CTL Client

    Declaration

    Swift

    class var lightCtlClient: MeshModelIdentifier { get }
  • Light CTL Temperature Server

    Declaration

    Swift

    class var lightCtlTemperatureServer: MeshModelIdentifier { get }
  • Light HSL Server

    Declaration

    Swift

    class var lightHslServer: MeshModelIdentifier { get }
  • Light HSL Setup Server

    Declaration

    Swift

    class var lightHslSetupServer: MeshModelIdentifier { get }
  • Light HSL Client

    Declaration

    Swift

    class var lightHslClient: MeshModelIdentifier { get }
  • Light HSL Hue Server

    Declaration

    Swift

    class var lightHslHueServer: MeshModelIdentifier { get }
  • Light HSL Saturation Server

    Declaration

    Swift

    class var lightHslSaturationServer: MeshModelIdentifier { get }
  • Light xyL Server

    Declaration

    Swift

    class var lightXylServer: MeshModelIdentifier { get }
  • Light xyL Setup Server

    Declaration

    Swift

    class var lightXylSetupServer: MeshModelIdentifier { get }
  • Light xyL Client

    Declaration

    Swift

    class var lightXylClient: MeshModelIdentifier { get }
  • Light LC Server

    Declaration

    Swift

    class var lightLcServer: MeshModelIdentifier { get }
  • Light LC Setup Server

    Declaration

    Swift

    class var lightLcSetupServer: MeshModelIdentifier { get }
  • Light LC Client

    Declaration

    Swift

    class var lightLcClient: MeshModelIdentifier { get }

Vendor Mesh Model Identifiers

  • Nordic Simple OnOff Server

    Declaration

    Swift

    class var nordicSimpleOnOffServer: MeshModelIdentifier { get }
  • Nordic Simple OnOff Client

    Declaration

    Swift

    class var nordicSimpleOnOffClient: MeshModelIdentifier { get }