Skip to content

Commit 5ccb3c9

Browse files
committed
SDK-1716: Add ID document comparison to demo
1 parent 36860e7 commit 5ccb3c9

File tree

4 files changed

+86
-2
lines changed

4 files changed

+86
-2
lines changed

examples/doc-scan/app/Http/Controllers/HomeController.php

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,10 @@
77
use Yoti\DocScan\DocScanClient;
88
use Yoti\DocScan\Session\Create\Check\RequestedDocumentAuthenticityCheckBuilder;
99
use Yoti\DocScan\Session\Create\Check\RequestedFaceMatchCheckBuilder;
10+
use Yoti\DocScan\Session\Create\Check\RequestedIdDocumentComparisonCheckBuilder;
1011
use Yoti\DocScan\Session\Create\Check\RequestedLivenessCheckBuilder;
12+
use Yoti\DocScan\Session\Create\Filters\Orthogonal\OrthogonalRestrictionsFilterBuilder;
13+
use Yoti\DocScan\Session\Create\Filters\RequiredIdDocumentBuilder;
1114
use Yoti\DocScan\Session\Create\SdkConfigBuilder;
1215
use Yoti\DocScan\Session\Create\SessionSpecificationBuilder;
1316
use Yoti\DocScan\Session\Create\Task\RequestedTextExtractionTaskBuilder;
@@ -34,6 +37,10 @@ public function show(Request $request, DocScanClient $client)
3437
->withManualCheckNever()
3538
->build()
3639
)
40+
->withRequestedCheck(
41+
(new RequestedIdDocumentComparisonCheckBuilder())
42+
->build()
43+
)
3744
->withRequestedTask(
3845
(new RequestedTextExtractionTaskBuilder())
3946
->withManualCheckNever()
@@ -52,6 +59,24 @@ public function show(Request $request, DocScanClient $client)
5259
->withErrorUrl(config('app.url') . '/error')
5360
->build()
5461
)
62+
->withRequiredDocument(
63+
(new RequiredIdDocumentBuilder())
64+
->withFilter(
65+
(new OrthogonalRestrictionsFilterBuilder())
66+
->withWhitelistedDocumentTypes(['PASSPORT'])
67+
->build()
68+
)
69+
->build()
70+
)
71+
->withRequiredDocument(
72+
(new RequiredIdDocumentBuilder())
73+
->withFilter(
74+
(new OrthogonalRestrictionsFilterBuilder())
75+
->withWhitelistedDocumentTypes(['DRIVING_LICENCE'])
76+
->build()
77+
)
78+
->build()
79+
)
5580
->build();
5681

5782
$session = $client->createSession($sessionSpec);

examples/doc-scan/resources/views/success.blade.php

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -140,6 +140,26 @@
140140
</div>
141141
</div>
142142
@endif
143+
144+
@if (count($sessionResult->getIdDocumentComparisonChecks()) > 0)
145+
<div class="card">
146+
<div class="card-header" id="comparison-checks">
147+
<h3 class="mb-0">
148+
<button class="btn btn-link" type="button" data-toggle="collapse" data-target="#collapse-comparison-checks" aria-expanded="true" aria-controls="collapse-comparison-checks">
149+
ID Document Comparison Checks
150+
</button>
151+
</h3>
152+
</div>
153+
154+
<div id="collapse-comparison-checks" class="collapse" aria-labelledby="comparison-checks">
155+
<div class="card-body">
156+
@foreach($sessionResult->getIdDocumentComparisonChecks() as $check)
157+
@include('partial/check', ['check' => $check])
158+
@endforeach
159+
</div>
160+
</div>
161+
</div>
162+
@endif
143163
</div>
144164
</div>
145165
</div>

examples/docker/Dockerfile

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
FROM nginx:latest
22

3+
COPY openssl.cnf /etc/ssl/openssl.localhost.cnf
34
COPY default.conf /etc/nginx/conf.d/
45

56
RUN rm -rf /usr/share/nginx/html/index.html \
@@ -9,10 +10,11 @@ RUN apt-get update \
910
&& apt-get install php7.0 php-curl openssl -y
1011

1112
RUN openssl req \
13+
-config /etc/ssl/openssl.localhost.cnf \
1214
-x509 \
1315
-nodes \
1416
-days 365 \
17+
-sha256 \
1518
-newkey rsa:2048 \
1619
-keyout /etc/ssl/server.key \
17-
-out /etc/ssl/server.crt \
18-
-subj "/C=UK/ST=London/L=London/O=Yoti/OU=Yoti/CN=localhost"
20+
-out /etc/ssl/server.crt

examples/docker/openssl.cnf

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
[req]
2+
default_bits = 2048
3+
default_md = sha256
4+
encrypt_key = no
5+
prompt = no
6+
distinguished_name = subject
7+
req_extensions = req_ext
8+
x509_extensions = x509_ext
9+
10+
[ subject ]
11+
C = UK
12+
ST = London
13+
L = London
14+
O = Yoti
15+
OU = Yoti
16+
CN = localhost
17+
18+
[ req_ext ]
19+
subjectKeyIdentifier = hash
20+
basicConstraints = CA:FALSE
21+
keyUsage = digitalSignature, keyEncipherment
22+
extendedKeyUsage = serverAuth, clientAuth
23+
subjectAltName = @alternate_names
24+
nsComment = "Self-Signed SSL Certificate"
25+
26+
[ x509_ext ]
27+
subjectKeyIdentifier = hash
28+
authorityKeyIdentifier = keyid,issuer
29+
basicConstraints = CA:FALSE
30+
keyUsage = digitalSignature, keyEncipherment
31+
extendedKeyUsage = serverAuth, clientAuth
32+
subjectAltName = @alternate_names
33+
nsComment = "Self-Signed SSL Certificate"
34+
35+
[ alternate_names ]
36+
DNS.1 = localhost
37+
IP.1 = 127.0.0.1

0 commit comments

Comments
 (0)