Skip to content

Commit e93c6cc

Browse files
feat: regenerate azure.ai.vision.face
1 parent dc5cea7 commit e93c6cc

File tree

77 files changed

+4082
-4512
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

77 files changed

+4082
-4512
lines changed

sdk/face/Azure.AI.Vision.Face/CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,10 @@
55
### Features Added
66

77
- Exposed `JsonModelWriteCore` for model serialization procedure.
8+
- Added support for service versions `v1.2` and `v1.3-preview.1`.
89

910
### Breaking Changes
11+
- Removed deprecated operations prior to service version `v1.2`.
1012

1113
### Bugs Fixed
1214

sdk/face/Azure.AI.Vision.Face/README.md

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -252,8 +252,8 @@ Here is an example to create the session for liveness detection.
252252

253253
```C# Snippet:CreateLivenessSession
254254
var createContent = new CreateLivenessSessionContent(LivenessOperationMode.Passive) {
255-
SendResultsToClient = true,
256255
DeviceCorrelationId = Guid.NewGuid().ToString(),
256+
UserCorrelationId = Guid.NewGuid().ToString(),
257257
};
258258

259259
var createResponse = sessionClient.CreateLivenessSession(createContent);
@@ -268,15 +268,11 @@ After you've performed liveness detection, you can retrieve the result by provid
268268
```C# Snippet:GetLivenessSessionResult
269269
var getResultResponse = sessionClient.GetLivenessSessionResult(sessionId);
270270
var sessionResult = getResultResponse.Value;
271-
Console.WriteLine($"Id: {sessionResult.Id}");
272-
Console.WriteLine($"CreatedDateTime: {sessionResult.CreatedDateTime}");
273-
Console.WriteLine($"SessionExpired: {sessionResult.SessionExpired}");
274-
Console.WriteLine($"DeviceCorrelationId: {sessionResult.DeviceCorrelationId}");
275-
Console.WriteLine($"AuthTokenTimeToLiveInSeconds: {sessionResult.AuthTokenTimeToLiveInSeconds}");
271+
Console.WriteLine($"Id: {sessionResult.SessionId}");
276272
Console.WriteLine($"Status: {sessionResult.Status}");
277-
Console.WriteLine($"SessionStartDateTime: {sessionResult.SessionStartDateTime}");
278-
if (sessionResult.Result != null) {
279-
WriteLivenessSessionAuditEntry(sessionResult.Result);
273+
if (sessionResult.Results != null)
274+
{
275+
WriteLivenessSessionResults(sessionResult.Results);
280276
}
281277
```
282278

sdk/face/Azure.AI.Vision.Face/api/Azure.AI.Vision.Face.net8.0.cs

Lines changed: 231 additions & 198 deletions
Large diffs are not rendered by default.

sdk/face/Azure.AI.Vision.Face/api/Azure.AI.Vision.Face.netstandard2.0.cs

Lines changed: 231 additions & 198 deletions
Large diffs are not rendered by default.

sdk/face/Azure.AI.Vision.Face/assets.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@
22
"AssetsRepo": "Azure/azure-sdk-assets",
33
"AssetsRepoPrefixPath": "net",
44
"TagPrefix": "net/face/Azure.AI.Vision.Face",
5-
"Tag": "net/face/Azure.AI.Vision.Face_3208a2f5ac"
5+
"Tag": "net/face/Azure.AI.Vision.Face_a00e23f72f"
66
}

sdk/face/Azure.AI.Vision.Face/samples/Sample2_DetectLivenessWithSession.md

Lines changed: 34 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,8 @@ Before you can detect liveness in a face, you need to create a liveness detectio
3030

3131
```C# Snippet:CreateLivenessSession
3232
var createContent = new CreateLivenessSessionContent(LivenessOperationMode.Passive) {
33-
SendResultsToClient = true,
3433
DeviceCorrelationId = Guid.NewGuid().ToString(),
34+
UserCorrelationId = Guid.NewGuid().ToString(),
3535
};
3636

3737
var createResponse = sessionClient.CreateLivenessSession(createContent);
@@ -56,69 +56,45 @@ After you've performed liveness detection, you can retrieve the result by provid
5656
```C# Snippet:GetLivenessSessionResult
5757
var getResultResponse = sessionClient.GetLivenessSessionResult(sessionId);
5858
var sessionResult = getResultResponse.Value;
59-
Console.WriteLine($"Id: {sessionResult.Id}");
60-
Console.WriteLine($"CreatedDateTime: {sessionResult.CreatedDateTime}");
61-
Console.WriteLine($"SessionExpired: {sessionResult.SessionExpired}");
62-
Console.WriteLine($"DeviceCorrelationId: {sessionResult.DeviceCorrelationId}");
63-
Console.WriteLine($"AuthTokenTimeToLiveInSeconds: {sessionResult.AuthTokenTimeToLiveInSeconds}");
59+
Console.WriteLine($"Id: {sessionResult.SessionId}");
6460
Console.WriteLine($"Status: {sessionResult.Status}");
65-
Console.WriteLine($"SessionStartDateTime: {sessionResult.SessionStartDateTime}");
66-
if (sessionResult.Result != null) {
67-
WriteLivenessSessionAuditEntry(sessionResult.Result);
68-
}
69-
```
70-
71-
```C# Snippet:WriteLivenessSessionAuditEntry
72-
public void WriteLivenessSessionAuditEntry(LivenessSessionAuditEntry auditEntry)
73-
{
74-
Console.WriteLine($"Id: {auditEntry.Id}");
75-
Console.WriteLine($"SessionId: {auditEntry.SessionId}");
76-
Console.WriteLine($"RequestId: {auditEntry.RequestId}");
77-
Console.WriteLine($"ClientRequestId: {auditEntry.ClientRequestId}");
78-
Console.WriteLine($"ReceivedDateTime: {auditEntry.ReceivedDateTime}");
79-
Console.WriteLine($"Digest: {auditEntry.Digest}");
80-
81-
Console.WriteLine($" Request Url: {auditEntry.Request.Url}");
82-
Console.WriteLine($" Request Method: {auditEntry.Request.Method}");
83-
Console.WriteLine($" Request ContentLength: {auditEntry.Request.ContentLength}");
84-
Console.WriteLine($" Request ContentType: {auditEntry.Request.ContentType}");
85-
Console.WriteLine($" Request UserAgent: {auditEntry.Request.UserAgent}");
86-
87-
Console.WriteLine($" Response StatusCode: {auditEntry.Response.StatusCode}");
88-
Console.WriteLine($" Response LatencyInMilliseconds: {auditEntry.Response.LatencyInMilliseconds}");
89-
Console.WriteLine($" Response Body LivenessDecision: {auditEntry.Response.Body.LivenessDecision}");
90-
Console.WriteLine($" Response Body ModelVersionUsed: {auditEntry.Response.Body.ModelVersionUsed}");
91-
Console.WriteLine($" Response Body Target FaceRectangle: {auditEntry.Response.Body.Target.FaceRectangle.Top}, {auditEntry.Response.Body.Target.FaceRectangle.Left}, {auditEntry.Response.Body.Target.FaceRectangle.Width}, {auditEntry.Response.Body.Target.FaceRectangle.Height}");
92-
Console.WriteLine($" Response Body Target FileName: {auditEntry.Response.Body.Target.FileName}");
93-
Console.WriteLine($" Response Body Target TimeOffsetWithinFile: {auditEntry.Response.Body.Target.TimeOffsetWithinFile}");
94-
Console.WriteLine($" Response Body Target FaceImageType: {auditEntry.Response.Body.Target.ImageType}");
95-
}
96-
```
97-
98-
If there are multiple liveness calls, you can retrieve the result by getting liveness audit entries.
99-
100-
```C# Snippet:GetLivenessSessionAuditEntries
101-
var getAuditEntriesResponse = sessionClient.GetLivenessSessionAuditEntries(sessionId);
102-
foreach (var auditEntry in getAuditEntriesResponse.Value)
61+
if (sessionResult.Results != null)
10362
{
104-
WriteLivenessSessionAuditEntry(auditEntry);
63+
WriteLivenessSessionResults(sessionResult.Results);
10564
}
10665
```
10766

108-
## List all liveness sessions
109-
110-
All existing sessions can be listed by sending a request to the service.
111-
112-
```C# Snippet:GetLivenessSessions
113-
var listResponse = sessionClient.GetLivenessSessions();
114-
foreach (var session in listResponse.Value)
67+
```C# Snippet:WriteLivenessSessionResults
68+
public void WriteLivenessSessionResults(LivenessSessionResults results)
11569
{
116-
Console.WriteLine($"SessionId: {session.Id}");
117-
Console.WriteLine($"CreatedDateTime: {session.CreatedDateTime}");
118-
Console.WriteLine($"SessionExpired: {session.SessionExpired}");
119-
Console.WriteLine($"DeviceCorrelationId: {session.DeviceCorrelationId}");
120-
Console.WriteLine($"AuthTokenTimeToLiveInSeconds: {session.AuthTokenTimeToLiveInSeconds}");
121-
Console.WriteLine($"SessionStartDateTime: {session.SessionStartDateTime}");
70+
if (results.Attempts == null || results.Attempts.Count == 0)
71+
{
72+
Console.WriteLine("No attempts found in the session results.");
73+
return;
74+
}
75+
76+
var firstAttempt = results.Attempts[0];
77+
Console.WriteLine($"Attempt ID: {firstAttempt.AttemptId}");
78+
Console.WriteLine($"Attempt Status: {firstAttempt.AttemptStatus}");
79+
80+
if (firstAttempt.Result != null)
81+
{
82+
var result = firstAttempt.Result;
83+
Console.WriteLine($" Liveness Decision: {result.LivenessDecision}");
84+
Console.WriteLine($" Digest: {result.Digest}");
85+
Console.WriteLine($" Session Image ID: {result.SessionImageId}");
86+
87+
if (result.Targets?.Color?.FaceRectangle != null)
88+
{
89+
var faceRect = result.Targets.Color.FaceRectangle;
90+
Console.WriteLine($" Face Rectangle: Top={faceRect.Top}, Left={faceRect.Left}, Width={faceRect.Width}, Height={faceRect.Height}");
91+
}
92+
}
93+
94+
if (firstAttempt.ClientInformation != null && firstAttempt.ClientInformation.Count > 0)
95+
{
96+
Console.WriteLine($" Client Information Count: {firstAttempt.ClientInformation.Count}");
97+
}
12298
}
12399
```
124100

sdk/face/Azure.AI.Vision.Face/samples/Sample2_DetectLivenessWithSessionAsync.md

Lines changed: 34 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,8 @@ Before you can detect liveness in a face, you need to create a liveness detectio
3030

3131
```C# Snippet:CreateLivenessSessionAsync
3232
var createContent = new CreateLivenessSessionContent(LivenessOperationMode.Passive) {
33-
SendResultsToClient = true,
3433
DeviceCorrelationId = Guid.NewGuid().ToString(),
34+
UserCorrelationId = Guid.NewGuid().ToString(),
3535
};
3636

3737
var createResponse = await sessionClient.CreateLivenessSessionAsync(createContent);
@@ -56,69 +56,45 @@ After you've performed liveness detection, you can retrieve the result by provid
5656
```C# Snippet:GetLivenessSessionResultAsync
5757
var getResultResponse = await sessionClient.GetLivenessSessionResultAsync(sessionId);
5858
var sessionResult = getResultResponse.Value;
59-
Console.WriteLine($"Id: {sessionResult.Id}");
60-
Console.WriteLine($"CreatedDateTime: {sessionResult.CreatedDateTime}");
61-
Console.WriteLine($"SessionExpired: {sessionResult.SessionExpired}");
62-
Console.WriteLine($"DeviceCorrelationId: {sessionResult.DeviceCorrelationId}");
63-
Console.WriteLine($"AuthTokenTimeToLiveInSeconds: {sessionResult.AuthTokenTimeToLiveInSeconds}");
59+
Console.WriteLine($"Id: {sessionResult.SessionId}");
6460
Console.WriteLine($"Status: {sessionResult.Status}");
65-
Console.WriteLine($"SessionStartDateTime: {sessionResult.SessionStartDateTime}");
66-
if (sessionResult.Result != null) {
67-
WriteLivenessSessionAuditEntry(sessionResult.Result);
68-
}
69-
```
70-
71-
```C# Snippet:WriteLivenessSessionAuditEntry
72-
public void WriteLivenessSessionAuditEntry(LivenessSessionAuditEntry auditEntry)
73-
{
74-
Console.WriteLine($"Id: {auditEntry.Id}");
75-
Console.WriteLine($"SessionId: {auditEntry.SessionId}");
76-
Console.WriteLine($"RequestId: {auditEntry.RequestId}");
77-
Console.WriteLine($"ClientRequestId: {auditEntry.ClientRequestId}");
78-
Console.WriteLine($"ReceivedDateTime: {auditEntry.ReceivedDateTime}");
79-
Console.WriteLine($"Digest: {auditEntry.Digest}");
80-
81-
Console.WriteLine($" Request Url: {auditEntry.Request.Url}");
82-
Console.WriteLine($" Request Method: {auditEntry.Request.Method}");
83-
Console.WriteLine($" Request ContentLength: {auditEntry.Request.ContentLength}");
84-
Console.WriteLine($" Request ContentType: {auditEntry.Request.ContentType}");
85-
Console.WriteLine($" Request UserAgent: {auditEntry.Request.UserAgent}");
86-
87-
Console.WriteLine($" Response StatusCode: {auditEntry.Response.StatusCode}");
88-
Console.WriteLine($" Response LatencyInMilliseconds: {auditEntry.Response.LatencyInMilliseconds}");
89-
Console.WriteLine($" Response Body LivenessDecision: {auditEntry.Response.Body.LivenessDecision}");
90-
Console.WriteLine($" Response Body ModelVersionUsed: {auditEntry.Response.Body.ModelVersionUsed}");
91-
Console.WriteLine($" Response Body Target FaceRectangle: {auditEntry.Response.Body.Target.FaceRectangle.Top}, {auditEntry.Response.Body.Target.FaceRectangle.Left}, {auditEntry.Response.Body.Target.FaceRectangle.Width}, {auditEntry.Response.Body.Target.FaceRectangle.Height}");
92-
Console.WriteLine($" Response Body Target FileName: {auditEntry.Response.Body.Target.FileName}");
93-
Console.WriteLine($" Response Body Target TimeOffsetWithinFile: {auditEntry.Response.Body.Target.TimeOffsetWithinFile}");
94-
Console.WriteLine($" Response Body Target FaceImageType: {auditEntry.Response.Body.Target.ImageType}");
95-
}
96-
```
97-
98-
If there are multiple liveness calls, you can retrieve the result by getting liveness audit entries.
99-
100-
```C# Snippet:GetLivenessSessionAuditEntriesAsync
101-
var getAuditEntriesResponse = await sessionClient.GetLivenessSessionAuditEntriesAsync(sessionId);
102-
foreach (var auditEntry in getAuditEntriesResponse.Value)
61+
if (sessionResult.Results != null)
10362
{
104-
WriteLivenessSessionAuditEntry(auditEntry);
63+
WriteLivenessSessionResults(sessionResult.Results);
10564
}
10665
```
10766

108-
## List all liveness sessions
109-
110-
All existing sessions can be listed by sending a request to the service.
111-
112-
```C# Snippet:GetLivenessSessionsAsync
113-
var listResponse = await sessionClient.GetLivenessSessionsAsync();
114-
foreach (var session in listResponse.Value)
67+
```C# Snippet:WriteLivenessSessionResults
68+
public void WriteLivenessSessionResults(LivenessSessionResults results)
11569
{
116-
Console.WriteLine($"SessionId: {session.Id}");
117-
Console.WriteLine($"CreatedDateTime: {session.CreatedDateTime}");
118-
Console.WriteLine($"SessionExpired: {session.SessionExpired}");
119-
Console.WriteLine($"DeviceCorrelationId: {session.DeviceCorrelationId}");
120-
Console.WriteLine($"AuthTokenTimeToLiveInSeconds: {session.AuthTokenTimeToLiveInSeconds}");
121-
Console.WriteLine($"SessionStartDateTime: {session.SessionStartDateTime}");
70+
if (results.Attempts == null || results.Attempts.Count == 0)
71+
{
72+
Console.WriteLine("No attempts found in the session results.");
73+
return;
74+
}
75+
76+
var firstAttempt = results.Attempts[0];
77+
Console.WriteLine($"Attempt ID: {firstAttempt.AttemptId}");
78+
Console.WriteLine($"Attempt Status: {firstAttempt.AttemptStatus}");
79+
80+
if (firstAttempt.Result != null)
81+
{
82+
var result = firstAttempt.Result;
83+
Console.WriteLine($" Liveness Decision: {result.LivenessDecision}");
84+
Console.WriteLine($" Digest: {result.Digest}");
85+
Console.WriteLine($" Session Image ID: {result.SessionImageId}");
86+
87+
if (result.Targets?.Color?.FaceRectangle != null)
88+
{
89+
var faceRect = result.Targets.Color.FaceRectangle;
90+
Console.WriteLine($" Face Rectangle: Top={faceRect.Top}, Left={faceRect.Left}, Width={faceRect.Width}, Height={faceRect.Height}");
91+
}
92+
}
93+
94+
if (firstAttempt.ClientInformation != null && firstAttempt.ClientInformation.Count > 0)
95+
{
96+
Console.WriteLine($" Client Information Count: {firstAttempt.ClientInformation.Count}");
97+
}
12298
}
12399
```
124100

0 commit comments

Comments
 (0)