Share via


WINBIO_PRESENCE-Struktur

Enthält Informationen über die Anwesenheit einer Person, deren Anwesenheit überwacht wird.

Syntax

typedef struct _WINBIO_PRESENCE {
  WINBIO_BIOMETRIC_TYPE      Factor;
  WINBIO_BIOMETRIC_SUBTYPE   SubFactor;
  HRESULT                    Status;
  WINBIO_REJECT_DETAIL       RejectDetail;
  WINBIO_IDENTITY            Identity;
  ULONGLONG                  TrackingId;
  WINBIO_PROTECTION_TICKET   Ticket;
  WINBIO_PRESENCE_PROPERTIES Properties;
} WINBIO_PRESENCE, *PWINBIO_PRESENCE;

Member

Faktor

Der biometrische Faktor, der zur Überwachung der Anwesenheit der Person verwendet wird.

SubFactor

Der Qualifizierer des biometrischen Unterfaktors für den biometrischen Faktor, der zur Überwachung der Anwesenheit der Person verwendet wird.

Status

Der Status des Identifikationsverfahrens für die Person.

RejectDetail

Zusätzliche Informationen über die Nichterkennung einer Person, einschließlich einer Rückmeldung, die erklärt, wie der Fehler behoben werden kann.

Identität

Die Identität der Person, deren Anwesenheit überwacht wird, sobald diese Person identifiziert wurde.

TrackingId

Eine Ganzzahl, die vom Adapter generiert wird und die Person eindeutig identifiziert. Der Verfolgungsidentifikator, den der Adapter einer bestimmten Person zuweist, ist garantiert konstant, solange sich diese Person im Kamerabild befindet.

Ticket

Reserviert. Wird vom Adapter auf 0 gesetzt.

Eigenschaften

Faktorspezifische Informationen über die Position einer Person.

Hinweise

Die Funktion EngineAdapterIdentifyAll erstellt ein Array von WINBIO_PRESENCE-Strukturen und sendet dieses Array an den biometrischen Dienst. Der biometrische Dienst verwendet das Array, um sein internes Modell der Menschen in der Nähe des Computers zu aktualisieren.

Je nach den Ergebnissen dieses Updates generiert der biometrische Dienst möglicherweise eine WINBIO_ASYNC_RESULT-Struktur für die Funktion WinBioMonitorPresence für alle Clients mit aktiven Anwesenheitsmonitoren. Das Mitglied WINBIO_ASYNC_RESULT.Operation der Struktur enthält WINBIO_OPERATION_MONITOR_PRESENCE, und das Mitglied WINBIO_ASYNC_RESULT.Parameters.MonitorPresence.ChangeType liefert zusätzliche Informationen über den Zustand der Person.

Wenn eine Person, die der Engine-Adapter mit einem bestimmten Verfolgungsidentifikator assoziiert, zum ersten Mal im Eingabestrom auftaucht, erzeugt der biometrische Dienst eine clientseitige WINBIO_ASYNC_RESULT-Struktur, in der das Mitglied WINBIO_ASYNC_RESULT.Parameters.MonitorPresence.ChangeTypeWINBIO_CHANGE_TYPE_ARRIVAL ist. Diese Struktur wird vor allen anderen WINBIO_ASYNC_RESULT-Strukturen an die Callback-Funktion Ihrer Anwendung oder an die Nachrichtenwarteschlange Ihrer Anwendung gesendet, wenn die WINBIO_ASYNC_RESULT.Parameters.MonitorPresence.PresenceArray-Struktur eine WINBIO_PRESENCE-Struktur mit demselben Wert für WINBIO_PRESENCE.TrackingId enthält.

Die folgenden Kombinationen von Werten im Array der WINBIO_PRESENCE-Strukturen, die das Mitglied WINBIO_ASYNC_RESULT.Parameters.MonitorPresence.PresenceArray enthält, zeigen bestimmte Arten von Änderungen des Zustands einer Person an.

  • Wenn eine Person im Kamerabild sichtbar ist, die Engine aber noch versucht, die Person zu identifizieren, haben die Mitglieder der Struktur WINBIO_PRESENCE die in der folgenden Tabelle aufgeführten Werte.

    Member Wert
    TrackingId Eine ganze Zahl, welche die Person für die Maschine identifiziert.
    Status S_OK
    Identity.Type WINBIO_ID_TYPE_NULL

    In diesem Fall erweitert der biometrische Dienst die Ablaufzeit für die Person und generiert keine clientseitige WINBIO_ASYNC_RESULT-Struktur für den Verfolgungsidentifikator, in dem das Mitglied WINBIO_ASYNC_RESULT. Parameters.MonitorPresence.ChangeTypeWINBIO_CHANGE_TYPE_RECOGNIZE ist.

    Wenn eine WINBIO_ASYNC_RESULT-Struktur zum ersten Mal eine WINBIO_PRESENCE-Struktur enthält, bei der das Status-Mitglied S_OK ist und das Identity. Type-Mitglied WINBIO_ID_TYPE_NULL ist, nachdem eine oder mehrere WINBIO_ASYNC_RESULT-Strukturen eine WINBIO_PRESENCE-Struktur mit einem Status-Mitglied WINBIO_E_BAD_CAPTURE enthielten, erzeugt der Präsenzmonitor eine einzelne WINBIO_ASYNC_RESULT-Struktur für den Verfolgungsidentifikator, bei der das Mitglied WINBIO_ASYNC_RESULT.Parameters.MonitorPresence.ChangeTypeWINBIO_CHANGE_TYPE_TRACK ist. Diese WINBIO_ASYNC_RESULT-Struktur, bei der das Mitglied WINBIO_ASYNC_RESULT.Parameters.MonitorPresence.ChangeTypeWINBIO_CHANGE_TYPE_TRACK ist, teilt dem Client mit, dass das Problem, das den Fehler WINBIO_E_BAD_CAPTURE verursacht hat, behoben wurde. Weitere Informationen zu den Umständen, unter denen eine WINBIO_PRESENCE-Struktur über das Status-Mitglied von WINBIO_E_BAD_CAPTURE verfügt, finden Sie in der Beschreibung, wie der Moduladapter dem Benutzer Feedback gibt, um Erkennungsfehler später in diesen Anmerkungen zu beheben.

  • Wenn eine Person im Kamerarahmen sichtbar ist, aber das Modul immer noch versucht, die Person zu identifizieren und dem Benutzer Feedback zur Behebung eines Erkennungsfehlers zu geben, weisen die Mitglieder der WINBIO_PRESENCE-Struktur die Werte in der folgenden Tabelle auf.

    Member Wert
    TrackingId Eine ganze Zahl, welche die Person für die Maschine identifiziert.
    Status WINBIO_E_BAD_CAPTURE
    Identity.Type WINBIO_ID_TYPE_NULL
    Properties.FacialFeatures.BoundingBox, wenn der Wert vom FaktorWINBIO_TYPE_FACIAL_FEATURES ist Die Position des Gesichts der Person innerhalb des Kamerarahmens.
    Properties.Iris.BoundingBox, wenn der Wert von FaktorWINBIO_TYPE_IRIS ist Die Position der Iris der Person innerhalb des Kamerabildes.

    In diesem Fall erweitert der biometrische Dienst die Ablaufzeit für die Person und generiert eine WINBIO_ASYNC_RESULT-Struktur für den Verfolgungsidentifikator, in dem das Mitglied WINBIO_ASYNC_RESULT. Parameters.MonitorPresence.ChangeTypeWINBIO_CHANGE_TYPE_TRACK ist.

  • Wenn eine Person im Kamerabild sichtbar ist und der Engine-Adapter die Identität der Person feststellt, haben die Mitglieder der Struktur WINBIO_PRESENCE die in der folgenden Tabelle aufgeführten Werte.

    Member Wert
    TrackingId Eine ganze Zahl, welche die Person für die Maschine identifiziert.
    Status S_OK
    Identity.Type WINBIO_ID_TYPE_SID
    Identity.Value.AccountSid Die Sicherheits-ID (SID) der Person.

    In diesem Fall verknüpft der biometrische Dienst den Verfolgungsidentifikator mit der SID der Person und erzeugt eine clientseitige WINBIO_ASYNC_RESULT-Struktur für den Verfolgungsidentifikator, wobei das Mitglied WINBIO_ASYNC_RESULT.Parameters.MonitorPresence.ChangeTypeWINBIO_CHANGE_TYPE_RECOGNIZE lautet. Der biometrische Dienst generiert keine zusätzlichen clientseitigen WINBIO_ASYNC_RESULT-Strukturen für den Verfolgungsidentifikator, es sei denn, die Person verlässt den Kamerarahmen.

  • Wenn eine Einzelperson im Kamerarahmen sichtbar ist, aber der Moduladapter bestimmt, dass die Person nicht registriert ist, weisen die Mitglieder der Struktur WINBIO_PRESENCE die Werte in der folgenden Tabelle auf.

    Member Wert
    TrackingId Eine ganze Zahl, welche die Person für die Maschine identifiziert.
    Status WINBIO_E_UNKNOWN_ID
    Identity.Type WINBIO_ID_TYPE_NULL

    In diesem Fall verknüpft der biometrische Dienst den Verfolgungsidentifikator der Person mit einer Identität von UNKNOWN und erzeugt eine clientseitige WINBIO_ASYNC_RESULT-Struktur für den Verfolgungsidentifikator, bei der das Mitglied WINBIO_ASYNC_RESULT.Parameters.MonitorPresence.ChangeTypeWINBIO_CHANGE_TYPE_RECOGNIZE lautet. Der biometrische Dienst generiert keine zusätzlichen clientseitigen WINBIO_ASYNC_RESULT-Strukturen für den Verfolgungsidentifikator, es sei denn, die Person verlässt den Kamerarahmen.

Wenn eine Person, die der Engine-Adapter mit einem bestimmten Verfolgungsidentifikator assoziiert, das Kamerabild verlässt und nicht mehr in den Werten auftaucht, welche die Funktion EngineAdapterIdentifyAll zurückgibt, läuft der Verfolgungsidentifikator schließlich ab. Wenn der Verfolgungsidentifikator abläuft, erzeugt der biometrische Dienst eine clientseitige WINBIO_ASYNC_RESULT-Struktur, in der das Mitglied WINBIO_ASYNC_RESULT.Parameters.MonitorPresence.ChangeTypeWINBIO_CHANGE_TYPE_DEPART ist. Der Engine-Adapter kann verhindern, dass der biometrische Dienst diese Struktur mit dem Wert WINBIO_CHANGE_TYPE_DEPART erzeugt, indem er eine WINBIO_PRESENCE-Struktur in das Array aufnimmt, das EngineAdapterIdentifyAll zurückgibt, wobei das Mitglied WINBIO_PRESENCE.Status den Wert S_OK und das Mitglied WINBIO_PRESENCE.Identity.Type den Wert WINBIO_ID_TYPE_NULL hat, wie weiter oben in diesen Anmerkungen beschrieben. Mit dieser Aktion wird die Ablaufzeit für die Verfolgungskennung verlängert, ohne dass eine Aktivität auf der Client-Seite erforderlich ist.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows 10 [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows Server 2016 [nur Desktop-Apps]
Header
Winbio_types.h ("Winbio.h" für Client-Anwendungen oder "Winbio_adapters.h" für Adapter)

Siehe auch

WINBIO_ASYNC_RESULT

WinBioMonitorPresence

EngineAdapterIdentifyAll