1113 lines
125 KiB
HTML
1113 lines
125 KiB
HTML
<!DOCTYPE html>
|
||
<html xmlns="http://www.w3.org/1999/xhtml" lang="fa" xml:lang="fa"><head>
|
||
|
||
<meta charset="utf-8">
|
||
<meta name="generator" content="quarto-1.7.33">
|
||
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
|
||
|
||
<meta name="author" content="تیم توسعه">
|
||
|
||
<title>درخواست ثبت OCR کانتینرها – مستندات فنی سامانه تردد</title>
|
||
<style>
|
||
code{white-space: pre-wrap;}
|
||
span.smallcaps{font-variant: small-caps;}
|
||
div.columns{display: flex; gap: min(4vw, 1.5em);}
|
||
div.column{flex: auto; overflow-x: auto;}
|
||
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
|
||
ul.task-list{list-style: none;}
|
||
ul.task-list li input[type="checkbox"] {
|
||
width: 0.8em;
|
||
margin: 0 0.8em 0.2em -1em; /* quarto-specific, see https://github.com/quarto-dev/quarto-cli/issues/4556 */
|
||
vertical-align: middle;
|
||
}
|
||
/* CSS for syntax highlighting */
|
||
html { -webkit-text-size-adjust: 100%; }
|
||
pre > code.sourceCode { white-space: pre; position: relative; }
|
||
pre > code.sourceCode > span { display: inline-block; line-height: 1.25; }
|
||
pre > code.sourceCode > span:empty { height: 1.2em; }
|
||
.sourceCode { overflow: visible; }
|
||
code.sourceCode > span { color: inherit; text-decoration: inherit; }
|
||
div.sourceCode { margin: 1em 0; }
|
||
pre.sourceCode { margin: 0; }
|
||
@media screen {
|
||
div.sourceCode { overflow: auto; }
|
||
}
|
||
@media print {
|
||
pre > code.sourceCode { white-space: pre-wrap; }
|
||
pre > code.sourceCode > span { text-indent: -5em; padding-left: 5em; }
|
||
}
|
||
pre.numberSource code
|
||
{ counter-reset: source-line 0; }
|
||
pre.numberSource code > span
|
||
{ position: relative; left: -4em; counter-increment: source-line; }
|
||
pre.numberSource code > span > a:first-child::before
|
||
{ content: counter(source-line);
|
||
position: relative; left: -1em; text-align: right; vertical-align: baseline;
|
||
border: none; display: inline-block;
|
||
-webkit-touch-callout: none; -webkit-user-select: none;
|
||
-khtml-user-select: none; -moz-user-select: none;
|
||
-ms-user-select: none; user-select: none;
|
||
padding: 0 4px; width: 4em;
|
||
}
|
||
pre.numberSource { margin-left: 3em; padding-left: 4px; }
|
||
div.sourceCode
|
||
{ }
|
||
@media screen {
|
||
pre > code.sourceCode > span > a:first-child::before { text-decoration: underline; }
|
||
}
|
||
</style>
|
||
|
||
|
||
<script src="../../site_libs/quarto-nav/quarto-nav.js"></script>
|
||
<script src="../../site_libs/quarto-nav/headroom.min.js"></script>
|
||
<script src="../../site_libs/clipboard/clipboard.min.js"></script>
|
||
<script src="../../site_libs/quarto-search/autocomplete.umd.js"></script>
|
||
<script src="../../site_libs/quarto-search/fuse.min.js"></script>
|
||
<script src="../../site_libs/quarto-search/quarto-search.js"></script>
|
||
<meta name="quarto:offset" content="../../">
|
||
<script src="../../site_libs/quarto-html/quarto.js" type="module"></script>
|
||
<script src="../../site_libs/quarto-html/tabsets/tabsets.js" type="module"></script>
|
||
<script src="../../site_libs/quarto-html/popper.min.js"></script>
|
||
<script src="../../site_libs/quarto-html/tippy.umd.min.js"></script>
|
||
<script src="../../site_libs/quarto-html/anchor.min.js"></script>
|
||
<link href="../../site_libs/quarto-html/tippy.css" rel="stylesheet">
|
||
<link href="../../site_libs/quarto-html/quarto-syntax-highlighting-ea385d0e468b0dd5ea5bf0780b1290d9.css" rel="stylesheet" id="quarto-text-highlighting-styles">
|
||
<script src="../../site_libs/bootstrap/bootstrap.min.js"></script>
|
||
<link href="../../site_libs/bootstrap/bootstrap-icons.css" rel="stylesheet">
|
||
<link href="../../site_libs/bootstrap/bootstrap-b2c493fdd487b110f6b1348dfd6a5174.min.css" rel="stylesheet" append-hash="true" id="quarto-bootstrap" data-mode="light">
|
||
<script id="quarto-search-options" type="application/json">{
|
||
"location": "sidebar",
|
||
"copy-button": false,
|
||
"collapse-after": 3,
|
||
"panel-placement": "start",
|
||
"type": "textbox",
|
||
"limit": 50,
|
||
"keyboard-shortcut": [
|
||
"f",
|
||
"/",
|
||
"s"
|
||
],
|
||
"show-item-context": false,
|
||
"language": {
|
||
"search-no-results-text": "No results",
|
||
"search-matching-documents-text": "matching documents",
|
||
"search-copy-link-title": "Copy link to search",
|
||
"search-hide-matches-text": "Hide additional matches",
|
||
"search-more-match-text": "more match in this document",
|
||
"search-more-matches-text": "more matches in this document",
|
||
"search-clear-button-title": "Clear",
|
||
"search-text-placeholder": "",
|
||
"search-detached-cancel-button-title": "Cancel",
|
||
"search-submit-button-title": "Submit",
|
||
"search-label": "Search"
|
||
}
|
||
}</script>
|
||
|
||
|
||
<link rel="stylesheet" href="../../styles.css">
|
||
</head>
|
||
|
||
<body class="nav-sidebar docked fullcontent quarto-light">
|
||
|
||
<div id="quarto-search-results"></div>
|
||
<header id="quarto-header" class="headroom fixed-top">
|
||
<nav class="quarto-secondary-nav">
|
||
<div class="container-fluid d-flex">
|
||
<button type="button" class="quarto-btn-toggle btn" data-bs-toggle="collapse" role="button" data-bs-target=".quarto-sidebar-collapse-item" aria-controls="quarto-sidebar" aria-expanded="false" aria-label="Toggle sidebar navigation" onclick="if (window.quartoToggleHeadroom) { window.quartoToggleHeadroom(); }">
|
||
<i class="bi bi-layout-text-sidebar-reverse"></i>
|
||
</button>
|
||
<nav class="quarto-page-breadcrumbs" aria-label="breadcrumb"><ol class="breadcrumb"><li class="breadcrumb-item">مستندات</li><li class="breadcrumb-item"><a href="../../docs/services/delfard.html">سرویسها</a></li><li class="breadcrumb-item"><a href="../../docs/services/dideban.html">دیدهبان</a></li></ol></nav>
|
||
<a class="flex-grow-1" role="navigation" data-bs-toggle="collapse" data-bs-target=".quarto-sidebar-collapse-item" aria-controls="quarto-sidebar" aria-expanded="false" aria-label="Toggle sidebar navigation" onclick="if (window.quartoToggleHeadroom) { window.quartoToggleHeadroom(); }">
|
||
</a>
|
||
<button type="button" class="btn quarto-search-button" aria-label="Search" onclick="window.quartoOpenSearch();">
|
||
<i class="bi bi-search"></i>
|
||
</button>
|
||
</div>
|
||
</nav>
|
||
</header>
|
||
<!-- content -->
|
||
<div id="quarto-content" class="quarto-container page-columns page-rows-contents page-layout-article">
|
||
<!-- sidebar -->
|
||
<nav id="quarto-sidebar" class="sidebar collapse collapse-horizontal quarto-sidebar-collapse-item sidebar-navigation docked overflow-auto">
|
||
<div class="pt-lg-2 mt-2 text-left sidebar-header">
|
||
<div class="sidebar-title mb-0 py-0">
|
||
<a href="../../">مستندات فنی سامانه تردد</a>
|
||
</div>
|
||
</div>
|
||
<div class="mt-2 flex-shrink-0 align-items-center">
|
||
<div class="sidebar-search">
|
||
<div id="quarto-search" class="" title="Search"></div>
|
||
</div>
|
||
</div>
|
||
<div class="sidebar-menu-container">
|
||
<ul class="list-unstyled mt-1">
|
||
<li class="sidebar-item sidebar-item-section">
|
||
<div class="sidebar-item-container">
|
||
<a class="sidebar-item-text sidebar-link text-start" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-1" role="navigation" aria-expanded="true">
|
||
<span class="menu-text">خانه</span></a>
|
||
<a class="sidebar-item-toggle text-start" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-1" role="navigation" aria-expanded="true" aria-label="Toggle section">
|
||
<i class="bi bi-chevron-right ms-2"></i>
|
||
</a>
|
||
</div>
|
||
<ul id="quarto-sidebar-section-1" class="collapse list-unstyled sidebar-section depth1 show">
|
||
<li class="sidebar-item">
|
||
<div class="sidebar-item-container">
|
||
<a href="../../index.html" class="sidebar-item-text sidebar-link">
|
||
<span class="menu-text">صفحه اصلی</span></a>
|
||
</div>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="sidebar-item sidebar-item-section">
|
||
<div class="sidebar-item-container">
|
||
<a class="sidebar-item-text sidebar-link text-start" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-2" role="navigation" aria-expanded="true">
|
||
<span class="menu-text">مستندات</span></a>
|
||
<a class="sidebar-item-toggle text-start" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-2" role="navigation" aria-expanded="true" aria-label="Toggle section">
|
||
<i class="bi bi-chevron-right ms-2"></i>
|
||
</a>
|
||
</div>
|
||
<ul id="quarto-sidebar-section-2" class="collapse list-unstyled sidebar-section depth1 show">
|
||
<li class="sidebar-item sidebar-item-section">
|
||
<div class="sidebar-item-container">
|
||
<a class="sidebar-item-text sidebar-link text-start" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-3" role="navigation" aria-expanded="true">
|
||
<span class="menu-text">سرویسها</span></a>
|
||
<a class="sidebar-item-toggle text-start" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-3" role="navigation" aria-expanded="true" aria-label="Toggle section">
|
||
<i class="bi bi-chevron-right ms-2"></i>
|
||
</a>
|
||
</div>
|
||
<ul id="quarto-sidebar-section-3" class="collapse list-unstyled sidebar-section depth2 show">
|
||
<li class="sidebar-item">
|
||
<div class="sidebar-item-container">
|
||
<a href="../../docs/services/delfard.html" class="sidebar-item-text sidebar-link">
|
||
<span class="menu-text">دلفارد</span></a>
|
||
</div>
|
||
</li>
|
||
<li class="sidebar-item">
|
||
<div class="sidebar-item-container">
|
||
<a href="../../docs/services/dideban.html" class="sidebar-item-text sidebar-link active">
|
||
<span class="menu-text">دیدهبان</span></a>
|
||
</div>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="sidebar-item sidebar-item-section">
|
||
<div class="sidebar-item-container">
|
||
<a class="sidebar-item-text sidebar-link text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-4" role="navigation" aria-expanded="false">
|
||
<span class="menu-text">مدلها</span></a>
|
||
<a class="sidebar-item-toggle text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-4" role="navigation" aria-expanded="false" aria-label="Toggle section">
|
||
<i class="bi bi-chevron-right ms-2"></i>
|
||
</a>
|
||
</div>
|
||
<ul id="quarto-sidebar-section-4" class="collapse list-unstyled sidebar-section depth2 ">
|
||
<li class="sidebar-item">
|
||
<div class="sidebar-item-container">
|
||
<a href="../../docs/models/description.html" class="sidebar-item-text sidebar-link">
|
||
<span class="menu-text">توضیحات</span></a>
|
||
</div>
|
||
</li>
|
||
<li class="sidebar-item">
|
||
<div class="sidebar-item-container">
|
||
<a href="../../docs/models/backend.html" class="sidebar-item-text sidebar-link">
|
||
<span class="menu-text">دیتابیس</span></a>
|
||
</div>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="sidebar-item sidebar-item-section">
|
||
<div class="sidebar-item-container">
|
||
<a class="sidebar-item-text sidebar-link text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-5" role="navigation" aria-expanded="false">
|
||
<span class="menu-text">فرآیندها</span></a>
|
||
<a class="sidebar-item-toggle text-start collapsed" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-5" role="navigation" aria-expanded="false" aria-label="Toggle section">
|
||
<i class="bi bi-chevron-right ms-2"></i>
|
||
</a>
|
||
</div>
|
||
<ul id="quarto-sidebar-section-5" class="collapse list-unstyled sidebar-section depth2 ">
|
||
<li class="sidebar-item">
|
||
<div class="sidebar-item-container">
|
||
<a href="../../docs/processes/business.html" class="sidebar-item-text sidebar-link">
|
||
<span class="menu-text">تجاری</span></a>
|
||
</div>
|
||
</li>
|
||
<li class="sidebar-item">
|
||
<div class="sidebar-item-container">
|
||
<a href="../../docs/processes/truckTerminal.html" class="sidebar-item-text sidebar-link">
|
||
<span class="menu-text">راهداری</span></a>
|
||
</div>
|
||
</li>
|
||
<li class="sidebar-item">
|
||
<div class="sidebar-item-container">
|
||
<a href="../../docs/processes/service.html" class="sidebar-item-text sidebar-link">
|
||
<span class="menu-text">خدمات</span></a>
|
||
</div>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
</nav>
|
||
<div id="quarto-sidebar-glass" class="quarto-sidebar-collapse-item" data-bs-toggle="collapse" data-bs-target=".quarto-sidebar-collapse-item"></div>
|
||
<!-- margin-sidebar -->
|
||
|
||
<!-- main -->
|
||
<main class="content" id="quarto-document-content">
|
||
|
||
<header id="title-block-header" class="quarto-title-block default"><nav class="quarto-page-breadcrumbs quarto-title-breadcrumbs d-none d-lg-block" aria-label="breadcrumb"><ol class="breadcrumb"><li class="breadcrumb-item">مستندات</li><li class="breadcrumb-item"><a href="../../docs/services/delfard.html">سرویسها</a></li><li class="breadcrumb-item"><a href="../../docs/services/dideban.html">دیدهبان</a></li></ol></nav>
|
||
<div class="quarto-title">
|
||
<h1 class="title">درخواست ثبت OCR کانتینرها</h1>
|
||
</div>
|
||
|
||
|
||
|
||
<div class="quarto-title-meta">
|
||
|
||
<div>
|
||
<div class="quarto-title-meta-heading">Author</div>
|
||
<div class="quarto-title-meta-contents">
|
||
<p>تیم توسعه </p>
|
||
</div>
|
||
</div>
|
||
|
||
<div>
|
||
<div class="quarto-title-meta-heading">Published</div>
|
||
<div class="quarto-title-meta-contents">
|
||
<p class="date">۴ شهریور ۱۴۰۴</p>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
</div>
|
||
|
||
|
||
|
||
</header>
|
||
|
||
|
||
<section id="توضیحات" class="level1">
|
||
<h1>توضیحات</h1>
|
||
<p>سرویس ثبت اطلاعات استخراج شده توسط OCR. سرویس مربوطه در بستر وب و معماری REST پیادهسازی شده است.</p>
|
||
<p>جهت ارسال اطلاعات به این سرویس، باید کاربر و api-key احراز هویت شده را از تیم توسعه دریافت کنید و طبق نمونه کدهای ارائه شده در راهنمای زیر، اقدام به ارسال اطلاعات نمایید.</p>
|
||
</section>
|
||
<section id="راهنما" class="level1">
|
||
<h1>راهنما</h1>
|
||
<p>نمونه پیادهسازی در زبانهای برنامهنویسی مختلف</p>
|
||
<div class="callout callout-style-default callout-note callout-titled">
|
||
<div class="callout-header d-flex align-content-center">
|
||
<div class="callout-icon-container">
|
||
<i class="callout-icon"></i>
|
||
</div>
|
||
<div class="callout-title-container flex-fill">
|
||
Note
|
||
</div>
|
||
</div>
|
||
<div class="callout-body-container callout-body">
|
||
<p>بعد از دریافت api-key باید مقدار آن در header درخواست <code>x-api-key</code> قرار دهید.</p>
|
||
<p>هدر درخواست: <code>x-api-key: api-key</code></p>
|
||
<p>نوع درخواست: <code>POST</code></p>
|
||
</div>
|
||
</div>
|
||
<p>آدرس اصلی سامانه:</p>
|
||
<div class="sourceCode" id="cb1"><pre class="sourceCode bash code-with-copy"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="ex">https://api.main.accessport.ir/api/v1/container-ocr/</span></span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
|
||
<p>اطلاعات</p>
|
||
<section id="نمونه-کدها" class="level3">
|
||
<h3 class="anchored" data-anchor-id="نمونه-کدها">نمونه کدها</h3>
|
||
<p>متن your-api-key را با api-key خودتان جایگزین کنید.</p>
|
||
<div class="tabset-margin-container"></div><div class="panel-tabset">
|
||
<ul class="nav nav-tabs" role="tablist"><li class="nav-item" role="presentation"><a class="nav-link active" id="tabset-1-1-tab" data-bs-toggle="tab" data-bs-target="#tabset-1-1" role="tab" aria-controls="tabset-1-1" aria-selected="true" aria-current="page">cURL</a></li><li class="nav-item" role="presentation"><a class="nav-link" id="tabset-1-2-tab" data-bs-toggle="tab" data-bs-target="#tabset-1-2" role="tab" aria-controls="tabset-1-2" aria-selected="false">JavaScript</a></li><li class="nav-item" role="presentation"><a class="nav-link" id="tabset-1-3-tab" data-bs-toggle="tab" data-bs-target="#tabset-1-3" role="tab" aria-controls="tabset-1-3" aria-selected="false">Python</a></li><li class="nav-item" role="presentation"><a class="nav-link" id="tabset-1-4-tab" data-bs-toggle="tab" data-bs-target="#tabset-1-4" role="tab" aria-controls="tabset-1-4" aria-selected="false">CSharp</a></li><li class="nav-item" role="presentation"><a class="nav-link" id="tabset-1-5-tab" data-bs-toggle="tab" data-bs-target="#tabset-1-5" role="tab" aria-controls="tabset-1-5" aria-selected="false">PHP (http v1)</a></li><li class="nav-item" role="presentation"><a class="nav-link" id="tabset-1-6-tab" data-bs-toggle="tab" data-bs-target="#tabset-1-6" role="tab" aria-controls="tabset-1-6" aria-selected="false">JAVA</a></li><li class="nav-item" role="presentation"><a class="nav-link" id="tabset-1-7-tab" data-bs-toggle="tab" data-bs-target="#tabset-1-7" role="tab" aria-controls="tabset-1-7" aria-selected="false">Go</a></li></ul>
|
||
<div class="tab-content">
|
||
<div id="tabset-1-1" class="tab-pane active" role="tabpanel" aria-labelledby="tabset-1-1-tab">
|
||
<div class="sourceCode" id="cb2"><pre class="sourceCode bash code-with-copy"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="ex">curl</span> <span class="at">--request</span> POST <span class="dt">\</span></span>
|
||
<span id="cb2-2"><a href="#cb2-2" aria-hidden="true" tabindex="-1"></a> <span class="at">--url</span> https://api.main.accessport.ir/api/v1/container-ocr/ <span class="dt">\</span></span>
|
||
<span id="cb2-3"><a href="#cb2-3" aria-hidden="true" tabindex="-1"></a> <span class="at">--header</span> <span class="st">'Content-Type: application/json'</span> <span class="dt">\</span></span>
|
||
<span id="cb2-4"><a href="#cb2-4" aria-hidden="true" tabindex="-1"></a> <span class="at">--header</span> <span class="st">'x-api-key: your-api-key'</span> <span class="dt">\</span></span>
|
||
<span id="cb2-5"><a href="#cb2-5" aria-hidden="true" tabindex="-1"></a> <span class="at">--data</span> <span class="st">'{</span></span>
|
||
<span id="cb2-6"><a href="#cb2-6" aria-hidden="true" tabindex="-1"></a><span class="st"> "event_id": "b4a13fc8-2663-4f69-9d1d-1c1a5bb8e9a3",</span></span>
|
||
<span id="cb2-7"><a href="#cb2-7" aria-hidden="true" tabindex="-1"></a><span class="st"> "timestamp_utc": "2025-08-17T14:22:35Z",</span></span>
|
||
<span id="cb2-8"><a href="#cb2-8" aria-hidden="true" tabindex="-1"></a><span class="st"> "source_system": "dideban-hazmat-ocr",</span></span>
|
||
<span id="cb2-9"><a href="#cb2-9" aria-hidden="true" tabindex="-1"></a><span class="st"> "camera": {</span></span>
|
||
<span id="cb2-10"><a href="#cb2-10" aria-hidden="true" tabindex="-1"></a><span class="st"> "id": "11111111-1111-1111-1111-111111111111",</span></span>
|
||
<span id="cb2-11"><a href="#cb2-11" aria-hidden="true" tabindex="-1"></a><span class="st"> "name": "North Gate Camera 3",</span></span>
|
||
<span id="cb2-12"><a href="#cb2-12" aria-hidden="true" tabindex="-1"></a><span class="st"> "group": "Gate Cameras",</span></span>
|
||
<span id="cb2-13"><a href="#cb2-13" aria-hidden="true" tabindex="-1"></a><span class="st"> "location": {</span></span>
|
||
<span id="cb2-14"><a href="#cb2-14" aria-hidden="true" tabindex="-1"></a><span class="st"> "latitude": 35.6892,</span></span>
|
||
<span id="cb2-15"><a href="#cb2-15" aria-hidden="true" tabindex="-1"></a><span class="st"> "longitude": 51.3890,</span></span>
|
||
<span id="cb2-16"><a href="#cb2-16" aria-hidden="true" tabindex="-1"></a><span class="st"> "description": "Tehran Port North Entrance"</span></span>
|
||
<span id="cb2-17"><a href="#cb2-17" aria-hidden="true" tabindex="-1"></a><span class="st"> }</span></span>
|
||
<span id="cb2-18"><a href="#cb2-18" aria-hidden="true" tabindex="-1"></a><span class="st"> },</span></span>
|
||
<span id="cb2-19"><a href="#cb2-19" aria-hidden="true" tabindex="-1"></a><span class="st"> "image": {</span></span>
|
||
<span id="cb2-20"><a href="#cb2-20" aria-hidden="true" tabindex="-1"></a><span class="st"> "id": "649ab03d-f633-4e19-8a9f-2f312d0f90e0",</span></span>
|
||
<span id="cb2-21"><a href="#cb2-21" aria-hidden="true" tabindex="-1"></a><span class="st"> "url": "https://your-system.local/images/649ab03d-f633-4e19-8a9f-2f312d0f90e0.jpg",</span></span>
|
||
<span id="cb2-22"><a href="#cb2-22" aria-hidden="true" tabindex="-1"></a><span class="st"> "local_path": "data/uploads/649ab03d-f633-4e19-8a9f-2f312d0f90e0.jpg",</span></span>
|
||
<span id="cb2-23"><a href="#cb2-23" aria-hidden="true" tabindex="-1"></a><span class="st"> "sha256": "9b1c3ff3469dc70fbd5d7e6dc926fdf2b45a...",</span></span>
|
||
<span id="cb2-24"><a href="#cb2-24" aria-hidden="true" tabindex="-1"></a><span class="st"> "resolution": {"width": 1920, "height": 1080}</span></span>
|
||
<span id="cb2-25"><a href="#cb2-25" aria-hidden="true" tabindex="-1"></a><span class="st"> },</span></span>
|
||
<span id="cb2-26"><a href="#cb2-26" aria-hidden="true" tabindex="-1"></a><span class="st"> "container": {</span></span>
|
||
<span id="cb2-27"><a href="#cb2-27" aria-hidden="true" tabindex="-1"></a><span class="st"> "number": "MSCU1234567",</span></span>
|
||
<span id="cb2-28"><a href="#cb2-28" aria-hidden="true" tabindex="-1"></a><span class="st"> "owner_code": "MSCU",</span></span>
|
||
<span id="cb2-29"><a href="#cb2-29" aria-hidden="true" tabindex="-1"></a><span class="st"> "equipment_category": "U", </span></span>
|
||
<span id="cb2-30"><a href="#cb2-30" aria-hidden="true" tabindex="-1"></a><span class="st"> "serial_number": "123456",</span></span>
|
||
<span id="cb2-31"><a href="#cb2-31" aria-hidden="true" tabindex="-1"></a><span class="st"> "check_digit": "7",</span></span>
|
||
<span id="cb2-32"><a href="#cb2-32" aria-hidden="true" tabindex="-1"></a><span class="st"> "iso_code": "22G1",</span></span>
|
||
<span id="cb2-33"><a href="#cb2-33" aria-hidden="true" tabindex="-1"></a><span class="st"> "size_type_code": "22G1",</span></span>
|
||
<span id="cb2-34"><a href="#cb2-34" aria-hidden="true" tabindex="-1"></a><span class="st"> "read_confidence": 0.95</span></span>
|
||
<span id="cb2-35"><a href="#cb2-35" aria-hidden="true" tabindex="-1"></a><span class="st"> },</span></span>
|
||
<span id="cb2-36"><a href="#cb2-36" aria-hidden="true" tabindex="-1"></a><span class="st"> "hazmat_labels": [</span></span>
|
||
<span id="cb2-37"><a href="#cb2-37" aria-hidden="true" tabindex="-1"></a><span class="st"> {</span></span>
|
||
<span id="cb2-38"><a href="#cb2-38" aria-hidden="true" tabindex="-1"></a><span class="st"> "un_number": "1203",</span></span>
|
||
<span id="cb2-39"><a href="#cb2-39" aria-hidden="true" tabindex="-1"></a><span class="st"> "class_code": "3",</span></span>
|
||
<span id="cb2-40"><a href="#cb2-40" aria-hidden="true" tabindex="-1"></a><span class="st"> "subclass_code": null,</span></span>
|
||
<span id="cb2-41"><a href="#cb2-41" aria-hidden="true" tabindex="-1"></a><span class="st"> "label_name": "Flammable Liquid",</span></span>
|
||
<span id="cb2-42"><a href="#cb2-42" aria-hidden="true" tabindex="-1"></a><span class="st"> "confidence": 0.96,</span></span>
|
||
<span id="cb2-43"><a href="#cb2-43" aria-hidden="true" tabindex="-1"></a><span class="st"> "bounding_box": {</span></span>
|
||
<span id="cb2-44"><a href="#cb2-44" aria-hidden="true" tabindex="-1"></a><span class="st"> "x": 0.62,</span></span>
|
||
<span id="cb2-45"><a href="#cb2-45" aria-hidden="true" tabindex="-1"></a><span class="st"> "y": 0.33,</span></span>
|
||
<span id="cb2-46"><a href="#cb2-46" aria-hidden="true" tabindex="-1"></a><span class="st"> "width": 0.12,</span></span>
|
||
<span id="cb2-47"><a href="#cb2-47" aria-hidden="true" tabindex="-1"></a><span class="st"> "height": 0.18</span></span>
|
||
<span id="cb2-48"><a href="#cb2-48" aria-hidden="true" tabindex="-1"></a><span class="st"> }</span></span>
|
||
<span id="cb2-49"><a href="#cb2-49" aria-hidden="true" tabindex="-1"></a><span class="st"> },</span></span>
|
||
<span id="cb2-50"><a href="#cb2-50" aria-hidden="true" tabindex="-1"></a><span class="st"> {</span></span>
|
||
<span id="cb2-51"><a href="#cb2-51" aria-hidden="true" tabindex="-1"></a><span class="st"> "un_number": "3082",</span></span>
|
||
<span id="cb2-52"><a href="#cb2-52" aria-hidden="true" tabindex="-1"></a><span class="st"> "class_code": "9",</span></span>
|
||
<span id="cb2-53"><a href="#cb2-53" aria-hidden="true" tabindex="-1"></a><span class="st"> "label_name": "Miscellaneous Dangerous Substances",</span></span>
|
||
<span id="cb2-54"><a href="#cb2-54" aria-hidden="true" tabindex="-1"></a><span class="st"> "confidence": 0.88,</span></span>
|
||
<span id="cb2-55"><a href="#cb2-55" aria-hidden="true" tabindex="-1"></a><span class="st"> "bounding_box": {</span></span>
|
||
<span id="cb2-56"><a href="#cb2-56" aria-hidden="true" tabindex="-1"></a><span class="st"> "x": 0.21,</span></span>
|
||
<span id="cb2-57"><a href="#cb2-57" aria-hidden="true" tabindex="-1"></a><span class="st"> "y": 0.55,</span></span>
|
||
<span id="cb2-58"><a href="#cb2-58" aria-hidden="true" tabindex="-1"></a><span class="st"> "width": 0.10,</span></span>
|
||
<span id="cb2-59"><a href="#cb2-59" aria-hidden="true" tabindex="-1"></a><span class="st"> "height": 0.16</span></span>
|
||
<span id="cb2-60"><a href="#cb2-60" aria-hidden="true" tabindex="-1"></a><span class="st"> }</span></span>
|
||
<span id="cb2-61"><a href="#cb2-61" aria-hidden="true" tabindex="-1"></a><span class="st"> }</span></span>
|
||
<span id="cb2-62"><a href="#cb2-62" aria-hidden="true" tabindex="-1"></a><span class="st"> ],</span></span>
|
||
<span id="cb2-63"><a href="#cb2-63" aria-hidden="true" tabindex="-1"></a><span class="st"> "processing_info": {</span></span>
|
||
<span id="cb2-64"><a href="#cb2-64" aria-hidden="true" tabindex="-1"></a><span class="st"> "pipeline_version": "1.2.0",</span></span>
|
||
<span id="cb2-65"><a href="#cb2-65" aria-hidden="true" tabindex="-1"></a><span class="st"> "validated": true,</span></span>
|
||
<span id="cb2-66"><a href="#cb2-66" aria-hidden="true" tabindex="-1"></a><span class="st"> "corrected": false,</span></span>
|
||
<span id="cb2-67"><a href="#cb2-67" aria-hidden="true" tabindex="-1"></a><span class="st"> "processing_duration_ms": 842</span></span>
|
||
<span id="cb2-68"><a href="#cb2-68" aria-hidden="true" tabindex="-1"></a><span class="st"> }</span></span>
|
||
<span id="cb2-69"><a href="#cb2-69" aria-hidden="true" tabindex="-1"></a><span class="st">}'</span></span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
|
||
</div>
|
||
<div id="tabset-1-2" class="tab-pane" role="tabpanel" aria-labelledby="tabset-1-2-tab">
|
||
<div class="sourceCode" id="cb3"><pre class="sourceCode js code-with-copy"><code class="sourceCode javascript"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a><span class="im">import</span> axios <span class="im">from</span> <span class="st">"axios"</span><span class="op">;</span></span>
|
||
<span id="cb3-2"><a href="#cb3-2" aria-hidden="true" tabindex="-1"></a></span>
|
||
<span id="cb3-3"><a href="#cb3-3" aria-hidden="true" tabindex="-1"></a><span class="kw">const</span> options <span class="op">=</span> {</span>
|
||
<span id="cb3-4"><a href="#cb3-4" aria-hidden="true" tabindex="-1"></a> <span class="dt">method</span><span class="op">:</span> <span class="st">'POST'</span><span class="op">,</span></span>
|
||
<span id="cb3-5"><a href="#cb3-5" aria-hidden="true" tabindex="-1"></a> <span class="dt">url</span><span class="op">:</span> <span class="st">'https://api.main.accessport.ir/api/v1/container-ocr/'</span><span class="op">,</span></span>
|
||
<span id="cb3-6"><a href="#cb3-6" aria-hidden="true" tabindex="-1"></a> <span class="dt">headers</span><span class="op">:</span> {</span>
|
||
<span id="cb3-7"><a href="#cb3-7" aria-hidden="true" tabindex="-1"></a> <span class="st">'Content-Type'</span><span class="op">:</span> <span class="st">'application/json'</span><span class="op">,</span></span>
|
||
<span id="cb3-8"><a href="#cb3-8" aria-hidden="true" tabindex="-1"></a> <span class="st">'x-api-key'</span><span class="op">:</span> <span class="st">'your-api-key'</span></span>
|
||
<span id="cb3-9"><a href="#cb3-9" aria-hidden="true" tabindex="-1"></a> }<span class="op">,</span></span>
|
||
<span id="cb3-10"><a href="#cb3-10" aria-hidden="true" tabindex="-1"></a> <span class="dt">data</span><span class="op">:</span> {</span>
|
||
<span id="cb3-11"><a href="#cb3-11" aria-hidden="true" tabindex="-1"></a> <span class="dt">event_id</span><span class="op">:</span> <span class="st">'b4a13fc8-2663-4f69-9d1d-1c1a5bb8e9a3'</span><span class="op">,</span></span>
|
||
<span id="cb3-12"><a href="#cb3-12" aria-hidden="true" tabindex="-1"></a> <span class="dt">timestamp_utc</span><span class="op">:</span> <span class="st">'2025-08-17T14:22:35Z'</span><span class="op">,</span></span>
|
||
<span id="cb3-13"><a href="#cb3-13" aria-hidden="true" tabindex="-1"></a> <span class="dt">source_system</span><span class="op">:</span> <span class="st">'dideban-hazmat-ocr'</span><span class="op">,</span></span>
|
||
<span id="cb3-14"><a href="#cb3-14" aria-hidden="true" tabindex="-1"></a> <span class="dt">camera</span><span class="op">:</span> {</span>
|
||
<span id="cb3-15"><a href="#cb3-15" aria-hidden="true" tabindex="-1"></a> <span class="dt">id</span><span class="op">:</span> <span class="st">'11111111-1111-1111-1111-111111111111'</span><span class="op">,</span></span>
|
||
<span id="cb3-16"><a href="#cb3-16" aria-hidden="true" tabindex="-1"></a> <span class="dt">name</span><span class="op">:</span> <span class="st">'North Gate Camera 3'</span><span class="op">,</span></span>
|
||
<span id="cb3-17"><a href="#cb3-17" aria-hidden="true" tabindex="-1"></a> <span class="dt">group</span><span class="op">:</span> <span class="st">'Gate Cameras'</span><span class="op">,</span></span>
|
||
<span id="cb3-18"><a href="#cb3-18" aria-hidden="true" tabindex="-1"></a> <span class="dt">location</span><span class="op">:</span> {</span>
|
||
<span id="cb3-19"><a href="#cb3-19" aria-hidden="true" tabindex="-1"></a> <span class="dt">latitude</span><span class="op">:</span> <span class="fl">35.6892</span><span class="op">,</span></span>
|
||
<span id="cb3-20"><a href="#cb3-20" aria-hidden="true" tabindex="-1"></a> <span class="dt">longitude</span><span class="op">:</span> <span class="fl">51.389</span><span class="op">,</span></span>
|
||
<span id="cb3-21"><a href="#cb3-21" aria-hidden="true" tabindex="-1"></a> <span class="dt">description</span><span class="op">:</span> <span class="st">'Tehran Port North Entrance'</span></span>
|
||
<span id="cb3-22"><a href="#cb3-22" aria-hidden="true" tabindex="-1"></a> }</span>
|
||
<span id="cb3-23"><a href="#cb3-23" aria-hidden="true" tabindex="-1"></a> }<span class="op">,</span></span>
|
||
<span id="cb3-24"><a href="#cb3-24" aria-hidden="true" tabindex="-1"></a> <span class="dt">image</span><span class="op">:</span> {</span>
|
||
<span id="cb3-25"><a href="#cb3-25" aria-hidden="true" tabindex="-1"></a> <span class="dt">id</span><span class="op">:</span> <span class="st">'649ab03d-f633-4e19-8a9f-2f312d0f90e0'</span><span class="op">,</span></span>
|
||
<span id="cb3-26"><a href="#cb3-26" aria-hidden="true" tabindex="-1"></a> <span class="dt">url</span><span class="op">:</span> <span class="st">'https://your-system.local/images/649ab03d-f633-4e19-8a9f-2f312d0f90e0.jpg'</span><span class="op">,</span></span>
|
||
<span id="cb3-27"><a href="#cb3-27" aria-hidden="true" tabindex="-1"></a> <span class="dt">local_path</span><span class="op">:</span> <span class="st">'data/uploads/649ab03d-f633-4e19-8a9f-2f312d0f90e0.jpg'</span><span class="op">,</span></span>
|
||
<span id="cb3-28"><a href="#cb3-28" aria-hidden="true" tabindex="-1"></a> <span class="dt">sha256</span><span class="op">:</span> <span class="st">'9b1c3ff3469dc70fbd5d7e6dc926fdf2b45a...'</span><span class="op">,</span></span>
|
||
<span id="cb3-29"><a href="#cb3-29" aria-hidden="true" tabindex="-1"></a> <span class="dt">resolution</span><span class="op">:</span> {<span class="dt">width</span><span class="op">:</span> <span class="dv">1920</span><span class="op">,</span> <span class="dt">height</span><span class="op">:</span> <span class="dv">1080</span>}</span>
|
||
<span id="cb3-30"><a href="#cb3-30" aria-hidden="true" tabindex="-1"></a> }<span class="op">,</span></span>
|
||
<span id="cb3-31"><a href="#cb3-31" aria-hidden="true" tabindex="-1"></a> <span class="dt">container</span><span class="op">:</span> {</span>
|
||
<span id="cb3-32"><a href="#cb3-32" aria-hidden="true" tabindex="-1"></a> <span class="dt">number</span><span class="op">:</span> <span class="st">'MSCU1234567'</span><span class="op">,</span></span>
|
||
<span id="cb3-33"><a href="#cb3-33" aria-hidden="true" tabindex="-1"></a> <span class="dt">owner_code</span><span class="op">:</span> <span class="st">'MSCU'</span><span class="op">,</span></span>
|
||
<span id="cb3-34"><a href="#cb3-34" aria-hidden="true" tabindex="-1"></a> <span class="dt">equipment_category</span><span class="op">:</span> <span class="st">'U'</span><span class="op">,</span></span>
|
||
<span id="cb3-35"><a href="#cb3-35" aria-hidden="true" tabindex="-1"></a> <span class="dt">serial_number</span><span class="op">:</span> <span class="st">'123456'</span><span class="op">,</span></span>
|
||
<span id="cb3-36"><a href="#cb3-36" aria-hidden="true" tabindex="-1"></a> <span class="dt">check_digit</span><span class="op">:</span> <span class="st">'7'</span><span class="op">,</span></span>
|
||
<span id="cb3-37"><a href="#cb3-37" aria-hidden="true" tabindex="-1"></a> <span class="dt">iso_code</span><span class="op">:</span> <span class="st">'22G1'</span><span class="op">,</span></span>
|
||
<span id="cb3-38"><a href="#cb3-38" aria-hidden="true" tabindex="-1"></a> <span class="dt">size_type_code</span><span class="op">:</span> <span class="st">'22G1'</span><span class="op">,</span></span>
|
||
<span id="cb3-39"><a href="#cb3-39" aria-hidden="true" tabindex="-1"></a> <span class="dt">read_confidence</span><span class="op">:</span> <span class="fl">0.95</span></span>
|
||
<span id="cb3-40"><a href="#cb3-40" aria-hidden="true" tabindex="-1"></a> }<span class="op">,</span></span>
|
||
<span id="cb3-41"><a href="#cb3-41" aria-hidden="true" tabindex="-1"></a> <span class="dt">hazmat_labels</span><span class="op">:</span> [</span>
|
||
<span id="cb3-42"><a href="#cb3-42" aria-hidden="true" tabindex="-1"></a> {</span>
|
||
<span id="cb3-43"><a href="#cb3-43" aria-hidden="true" tabindex="-1"></a> <span class="dt">un_number</span><span class="op">:</span> <span class="st">'1203'</span><span class="op">,</span></span>
|
||
<span id="cb3-44"><a href="#cb3-44" aria-hidden="true" tabindex="-1"></a> <span class="dt">class_code</span><span class="op">:</span> <span class="st">'3'</span><span class="op">,</span></span>
|
||
<span id="cb3-45"><a href="#cb3-45" aria-hidden="true" tabindex="-1"></a> <span class="dt">subclass_code</span><span class="op">:</span> <span class="kw">null</span><span class="op">,</span></span>
|
||
<span id="cb3-46"><a href="#cb3-46" aria-hidden="true" tabindex="-1"></a> <span class="dt">label_name</span><span class="op">:</span> <span class="st">'Flammable Liquid'</span><span class="op">,</span></span>
|
||
<span id="cb3-47"><a href="#cb3-47" aria-hidden="true" tabindex="-1"></a> <span class="dt">confidence</span><span class="op">:</span> <span class="fl">0.96</span><span class="op">,</span></span>
|
||
<span id="cb3-48"><a href="#cb3-48" aria-hidden="true" tabindex="-1"></a> <span class="dt">bounding_box</span><span class="op">:</span> {<span class="dt">x</span><span class="op">:</span> <span class="fl">0.62</span><span class="op">,</span> <span class="dt">y</span><span class="op">:</span> <span class="fl">0.33</span><span class="op">,</span> <span class="dt">width</span><span class="op">:</span> <span class="fl">0.12</span><span class="op">,</span> <span class="dt">height</span><span class="op">:</span> <span class="fl">0.18</span>}</span>
|
||
<span id="cb3-49"><a href="#cb3-49" aria-hidden="true" tabindex="-1"></a> }<span class="op">,</span></span>
|
||
<span id="cb3-50"><a href="#cb3-50" aria-hidden="true" tabindex="-1"></a> {</span>
|
||
<span id="cb3-51"><a href="#cb3-51" aria-hidden="true" tabindex="-1"></a> <span class="dt">un_number</span><span class="op">:</span> <span class="st">'3082'</span><span class="op">,</span></span>
|
||
<span id="cb3-52"><a href="#cb3-52" aria-hidden="true" tabindex="-1"></a> <span class="dt">class_code</span><span class="op">:</span> <span class="st">'9'</span><span class="op">,</span></span>
|
||
<span id="cb3-53"><a href="#cb3-53" aria-hidden="true" tabindex="-1"></a> <span class="dt">label_name</span><span class="op">:</span> <span class="st">'Miscellaneous Dangerous Substances'</span><span class="op">,</span></span>
|
||
<span id="cb3-54"><a href="#cb3-54" aria-hidden="true" tabindex="-1"></a> <span class="dt">confidence</span><span class="op">:</span> <span class="fl">0.88</span><span class="op">,</span></span>
|
||
<span id="cb3-55"><a href="#cb3-55" aria-hidden="true" tabindex="-1"></a> <span class="dt">bounding_box</span><span class="op">:</span> {<span class="dt">x</span><span class="op">:</span> <span class="fl">0.21</span><span class="op">,</span> <span class="dt">y</span><span class="op">:</span> <span class="fl">0.55</span><span class="op">,</span> <span class="dt">width</span><span class="op">:</span> <span class="fl">0.1</span><span class="op">,</span> <span class="dt">height</span><span class="op">:</span> <span class="fl">0.16</span>}</span>
|
||
<span id="cb3-56"><a href="#cb3-56" aria-hidden="true" tabindex="-1"></a> }</span>
|
||
<span id="cb3-57"><a href="#cb3-57" aria-hidden="true" tabindex="-1"></a> ]<span class="op">,</span></span>
|
||
<span id="cb3-58"><a href="#cb3-58" aria-hidden="true" tabindex="-1"></a> <span class="dt">processing_info</span><span class="op">:</span> {</span>
|
||
<span id="cb3-59"><a href="#cb3-59" aria-hidden="true" tabindex="-1"></a> <span class="dt">pipeline_version</span><span class="op">:</span> <span class="st">'1.2.0'</span><span class="op">,</span></span>
|
||
<span id="cb3-60"><a href="#cb3-60" aria-hidden="true" tabindex="-1"></a> <span class="dt">validated</span><span class="op">:</span> <span class="kw">true</span><span class="op">,</span></span>
|
||
<span id="cb3-61"><a href="#cb3-61" aria-hidden="true" tabindex="-1"></a> <span class="dt">corrected</span><span class="op">:</span> <span class="kw">false</span><span class="op">,</span></span>
|
||
<span id="cb3-62"><a href="#cb3-62" aria-hidden="true" tabindex="-1"></a> <span class="dt">processing_duration_ms</span><span class="op">:</span> <span class="dv">842</span></span>
|
||
<span id="cb3-63"><a href="#cb3-63" aria-hidden="true" tabindex="-1"></a> }</span>
|
||
<span id="cb3-64"><a href="#cb3-64" aria-hidden="true" tabindex="-1"></a> }</span>
|
||
<span id="cb3-65"><a href="#cb3-65" aria-hidden="true" tabindex="-1"></a>}<span class="op">;</span></span>
|
||
<span id="cb3-66"><a href="#cb3-66" aria-hidden="true" tabindex="-1"></a></span>
|
||
<span id="cb3-67"><a href="#cb3-67" aria-hidden="true" tabindex="-1"></a>axios<span class="op">.</span><span class="fu">request</span>(options)<span class="op">.</span><span class="fu">then</span>(<span class="kw">function</span> (response) {</span>
|
||
<span id="cb3-68"><a href="#cb3-68" aria-hidden="true" tabindex="-1"></a> <span class="bu">console</span><span class="op">.</span><span class="fu">log</span>(response<span class="op">.</span><span class="at">data</span>)<span class="op">;</span></span>
|
||
<span id="cb3-69"><a href="#cb3-69" aria-hidden="true" tabindex="-1"></a>})<span class="op">.</span><span class="fu">catch</span>(<span class="kw">function</span> (error) {</span>
|
||
<span id="cb3-70"><a href="#cb3-70" aria-hidden="true" tabindex="-1"></a> <span class="bu">console</span><span class="op">.</span><span class="fu">error</span>(error)<span class="op">;</span></span>
|
||
<span id="cb3-71"><a href="#cb3-71" aria-hidden="true" tabindex="-1"></a>})<span class="op">;</span></span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
|
||
</div>
|
||
<div id="tabset-1-3" class="tab-pane" role="tabpanel" aria-labelledby="tabset-1-3-tab">
|
||
<div class="sourceCode" id="cb4"><pre class="sourceCode python code-with-copy"><code class="sourceCode python"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a><span class="im">import</span> requests</span>
|
||
<span id="cb4-2"><a href="#cb4-2" aria-hidden="true" tabindex="-1"></a></span>
|
||
<span id="cb4-3"><a href="#cb4-3" aria-hidden="true" tabindex="-1"></a>url <span class="op">=</span> <span class="st">"https://api.main.accessport.ir/api/v1/container-ocr/"</span></span>
|
||
<span id="cb4-4"><a href="#cb4-4" aria-hidden="true" tabindex="-1"></a></span>
|
||
<span id="cb4-5"><a href="#cb4-5" aria-hidden="true" tabindex="-1"></a>payload <span class="op">=</span> {</span>
|
||
<span id="cb4-6"><a href="#cb4-6" aria-hidden="true" tabindex="-1"></a> <span class="st">"event_id"</span>: <span class="st">"b4a13fc8-2663-4f69-9d1d-1c1a5bb8e9a3"</span>,</span>
|
||
<span id="cb4-7"><a href="#cb4-7" aria-hidden="true" tabindex="-1"></a> <span class="st">"timestamp_utc"</span>: <span class="st">"2025-08-17T14:22:35Z"</span>,</span>
|
||
<span id="cb4-8"><a href="#cb4-8" aria-hidden="true" tabindex="-1"></a> <span class="st">"source_system"</span>: <span class="st">"dideban-hazmat-ocr"</span>,</span>
|
||
<span id="cb4-9"><a href="#cb4-9" aria-hidden="true" tabindex="-1"></a> <span class="st">"camera"</span>: {</span>
|
||
<span id="cb4-10"><a href="#cb4-10" aria-hidden="true" tabindex="-1"></a> <span class="st">"id"</span>: <span class="st">"11111111-1111-1111-1111-111111111111"</span>,</span>
|
||
<span id="cb4-11"><a href="#cb4-11" aria-hidden="true" tabindex="-1"></a> <span class="st">"name"</span>: <span class="st">"North Gate Camera 3"</span>,</span>
|
||
<span id="cb4-12"><a href="#cb4-12" aria-hidden="true" tabindex="-1"></a> <span class="st">"group"</span>: <span class="st">"Gate Cameras"</span>,</span>
|
||
<span id="cb4-13"><a href="#cb4-13" aria-hidden="true" tabindex="-1"></a> <span class="st">"location"</span>: {</span>
|
||
<span id="cb4-14"><a href="#cb4-14" aria-hidden="true" tabindex="-1"></a> <span class="st">"latitude"</span>: <span class="fl">35.6892</span>,</span>
|
||
<span id="cb4-15"><a href="#cb4-15" aria-hidden="true" tabindex="-1"></a> <span class="st">"longitude"</span>: <span class="fl">51.389</span>,</span>
|
||
<span id="cb4-16"><a href="#cb4-16" aria-hidden="true" tabindex="-1"></a> <span class="st">"description"</span>: <span class="st">"Tehran Port North Entrance"</span></span>
|
||
<span id="cb4-17"><a href="#cb4-17" aria-hidden="true" tabindex="-1"></a> }</span>
|
||
<span id="cb4-18"><a href="#cb4-18" aria-hidden="true" tabindex="-1"></a> },</span>
|
||
<span id="cb4-19"><a href="#cb4-19" aria-hidden="true" tabindex="-1"></a> <span class="st">"image"</span>: {</span>
|
||
<span id="cb4-20"><a href="#cb4-20" aria-hidden="true" tabindex="-1"></a> <span class="st">"id"</span>: <span class="st">"649ab03d-f633-4e19-8a9f-2f312d0f90e0"</span>,</span>
|
||
<span id="cb4-21"><a href="#cb4-21" aria-hidden="true" tabindex="-1"></a> <span class="st">"url"</span>: <span class="st">"https://your-system.local/images/649ab03d-f633-4e19-8a9f-2f312d0f90e0.jpg"</span>,</span>
|
||
<span id="cb4-22"><a href="#cb4-22" aria-hidden="true" tabindex="-1"></a> <span class="st">"local_path"</span>: <span class="st">"data/uploads/649ab03d-f633-4e19-8a9f-2f312d0f90e0.jpg"</span>,</span>
|
||
<span id="cb4-23"><a href="#cb4-23" aria-hidden="true" tabindex="-1"></a> <span class="st">"sha256"</span>: <span class="st">"9b1c3ff3469dc70fbd5d7e6dc926fdf2b45a..."</span>,</span>
|
||
<span id="cb4-24"><a href="#cb4-24" aria-hidden="true" tabindex="-1"></a> <span class="st">"resolution"</span>: {</span>
|
||
<span id="cb4-25"><a href="#cb4-25" aria-hidden="true" tabindex="-1"></a> <span class="st">"width"</span>: <span class="dv">1920</span>,</span>
|
||
<span id="cb4-26"><a href="#cb4-26" aria-hidden="true" tabindex="-1"></a> <span class="st">"height"</span>: <span class="dv">1080</span></span>
|
||
<span id="cb4-27"><a href="#cb4-27" aria-hidden="true" tabindex="-1"></a> }</span>
|
||
<span id="cb4-28"><a href="#cb4-28" aria-hidden="true" tabindex="-1"></a> },</span>
|
||
<span id="cb4-29"><a href="#cb4-29" aria-hidden="true" tabindex="-1"></a> <span class="st">"container"</span>: {</span>
|
||
<span id="cb4-30"><a href="#cb4-30" aria-hidden="true" tabindex="-1"></a> <span class="st">"number"</span>: <span class="st">"MSCU1234567"</span>,</span>
|
||
<span id="cb4-31"><a href="#cb4-31" aria-hidden="true" tabindex="-1"></a> <span class="st">"owner_code"</span>: <span class="st">"MSCU"</span>,</span>
|
||
<span id="cb4-32"><a href="#cb4-32" aria-hidden="true" tabindex="-1"></a> <span class="st">"equipment_category"</span>: <span class="st">"U"</span>,</span>
|
||
<span id="cb4-33"><a href="#cb4-33" aria-hidden="true" tabindex="-1"></a> <span class="st">"serial_number"</span>: <span class="st">"123456"</span>,</span>
|
||
<span id="cb4-34"><a href="#cb4-34" aria-hidden="true" tabindex="-1"></a> <span class="st">"check_digit"</span>: <span class="st">"7"</span>,</span>
|
||
<span id="cb4-35"><a href="#cb4-35" aria-hidden="true" tabindex="-1"></a> <span class="st">"iso_code"</span>: <span class="st">"22G1"</span>,</span>
|
||
<span id="cb4-36"><a href="#cb4-36" aria-hidden="true" tabindex="-1"></a> <span class="st">"size_type_code"</span>: <span class="st">"22G1"</span>,</span>
|
||
<span id="cb4-37"><a href="#cb4-37" aria-hidden="true" tabindex="-1"></a> <span class="st">"read_confidence"</span>: <span class="fl">0.95</span></span>
|
||
<span id="cb4-38"><a href="#cb4-38" aria-hidden="true" tabindex="-1"></a> },</span>
|
||
<span id="cb4-39"><a href="#cb4-39" aria-hidden="true" tabindex="-1"></a> <span class="st">"hazmat_labels"</span>: [</span>
|
||
<span id="cb4-40"><a href="#cb4-40" aria-hidden="true" tabindex="-1"></a> {</span>
|
||
<span id="cb4-41"><a href="#cb4-41" aria-hidden="true" tabindex="-1"></a> <span class="st">"un_number"</span>: <span class="st">"1203"</span>,</span>
|
||
<span id="cb4-42"><a href="#cb4-42" aria-hidden="true" tabindex="-1"></a> <span class="st">"class_code"</span>: <span class="st">"3"</span>,</span>
|
||
<span id="cb4-43"><a href="#cb4-43" aria-hidden="true" tabindex="-1"></a> <span class="st">"subclass_code"</span>: <span class="va">None</span>,</span>
|
||
<span id="cb4-44"><a href="#cb4-44" aria-hidden="true" tabindex="-1"></a> <span class="st">"label_name"</span>: <span class="st">"Flammable Liquid"</span>,</span>
|
||
<span id="cb4-45"><a href="#cb4-45" aria-hidden="true" tabindex="-1"></a> <span class="st">"confidence"</span>: <span class="fl">0.96</span>,</span>
|
||
<span id="cb4-46"><a href="#cb4-46" aria-hidden="true" tabindex="-1"></a> <span class="st">"bounding_box"</span>: {</span>
|
||
<span id="cb4-47"><a href="#cb4-47" aria-hidden="true" tabindex="-1"></a> <span class="st">"x"</span>: <span class="fl">0.62</span>,</span>
|
||
<span id="cb4-48"><a href="#cb4-48" aria-hidden="true" tabindex="-1"></a> <span class="st">"y"</span>: <span class="fl">0.33</span>,</span>
|
||
<span id="cb4-49"><a href="#cb4-49" aria-hidden="true" tabindex="-1"></a> <span class="st">"width"</span>: <span class="fl">0.12</span>,</span>
|
||
<span id="cb4-50"><a href="#cb4-50" aria-hidden="true" tabindex="-1"></a> <span class="st">"height"</span>: <span class="fl">0.18</span></span>
|
||
<span id="cb4-51"><a href="#cb4-51" aria-hidden="true" tabindex="-1"></a> }</span>
|
||
<span id="cb4-52"><a href="#cb4-52" aria-hidden="true" tabindex="-1"></a> },</span>
|
||
<span id="cb4-53"><a href="#cb4-53" aria-hidden="true" tabindex="-1"></a> {</span>
|
||
<span id="cb4-54"><a href="#cb4-54" aria-hidden="true" tabindex="-1"></a> <span class="st">"un_number"</span>: <span class="st">"3082"</span>,</span>
|
||
<span id="cb4-55"><a href="#cb4-55" aria-hidden="true" tabindex="-1"></a> <span class="st">"class_code"</span>: <span class="st">"9"</span>,</span>
|
||
<span id="cb4-56"><a href="#cb4-56" aria-hidden="true" tabindex="-1"></a> <span class="st">"label_name"</span>: <span class="st">"Miscellaneous Dangerous Substances"</span>,</span>
|
||
<span id="cb4-57"><a href="#cb4-57" aria-hidden="true" tabindex="-1"></a> <span class="st">"confidence"</span>: <span class="fl">0.88</span>,</span>
|
||
<span id="cb4-58"><a href="#cb4-58" aria-hidden="true" tabindex="-1"></a> <span class="st">"bounding_box"</span>: {</span>
|
||
<span id="cb4-59"><a href="#cb4-59" aria-hidden="true" tabindex="-1"></a> <span class="st">"x"</span>: <span class="fl">0.21</span>,</span>
|
||
<span id="cb4-60"><a href="#cb4-60" aria-hidden="true" tabindex="-1"></a> <span class="st">"y"</span>: <span class="fl">0.55</span>,</span>
|
||
<span id="cb4-61"><a href="#cb4-61" aria-hidden="true" tabindex="-1"></a> <span class="st">"width"</span>: <span class="fl">0.1</span>,</span>
|
||
<span id="cb4-62"><a href="#cb4-62" aria-hidden="true" tabindex="-1"></a> <span class="st">"height"</span>: <span class="fl">0.16</span></span>
|
||
<span id="cb4-63"><a href="#cb4-63" aria-hidden="true" tabindex="-1"></a> }</span>
|
||
<span id="cb4-64"><a href="#cb4-64" aria-hidden="true" tabindex="-1"></a> }</span>
|
||
<span id="cb4-65"><a href="#cb4-65" aria-hidden="true" tabindex="-1"></a> ],</span>
|
||
<span id="cb4-66"><a href="#cb4-66" aria-hidden="true" tabindex="-1"></a> <span class="st">"processing_info"</span>: {</span>
|
||
<span id="cb4-67"><a href="#cb4-67" aria-hidden="true" tabindex="-1"></a> <span class="st">"pipeline_version"</span>: <span class="st">"1.2.0"</span>,</span>
|
||
<span id="cb4-68"><a href="#cb4-68" aria-hidden="true" tabindex="-1"></a> <span class="st">"validated"</span>: <span class="va">True</span>,</span>
|
||
<span id="cb4-69"><a href="#cb4-69" aria-hidden="true" tabindex="-1"></a> <span class="st">"corrected"</span>: <span class="va">False</span>,</span>
|
||
<span id="cb4-70"><a href="#cb4-70" aria-hidden="true" tabindex="-1"></a> <span class="st">"processing_duration_ms"</span>: <span class="dv">842</span></span>
|
||
<span id="cb4-71"><a href="#cb4-71" aria-hidden="true" tabindex="-1"></a> }</span>
|
||
<span id="cb4-72"><a href="#cb4-72" aria-hidden="true" tabindex="-1"></a>}</span>
|
||
<span id="cb4-73"><a href="#cb4-73" aria-hidden="true" tabindex="-1"></a>headers <span class="op">=</span> {</span>
|
||
<span id="cb4-74"><a href="#cb4-74" aria-hidden="true" tabindex="-1"></a> <span class="st">"Content-Type"</span>: <span class="st">"application/json"</span>,</span>
|
||
<span id="cb4-75"><a href="#cb4-75" aria-hidden="true" tabindex="-1"></a> <span class="st">"x-api-key"</span>: <span class="st">"your-api-key"</span></span>
|
||
<span id="cb4-76"><a href="#cb4-76" aria-hidden="true" tabindex="-1"></a>}</span>
|
||
<span id="cb4-77"><a href="#cb4-77" aria-hidden="true" tabindex="-1"></a></span>
|
||
<span id="cb4-78"><a href="#cb4-78" aria-hidden="true" tabindex="-1"></a>response <span class="op">=</span> requests.request(<span class="st">"POST"</span>, url, json<span class="op">=</span>payload, headers<span class="op">=</span>headers)</span>
|
||
<span id="cb4-79"><a href="#cb4-79" aria-hidden="true" tabindex="-1"></a></span>
|
||
<span id="cb4-80"><a href="#cb4-80" aria-hidden="true" tabindex="-1"></a><span class="bu">print</span>(response.text)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
|
||
</div>
|
||
<div id="tabset-1-4" class="tab-pane" role="tabpanel" aria-labelledby="tabset-1-4-tab">
|
||
<div class="sourceCode" id="cb5"><pre class="sourceCode csharp code-with-copy"><code class="sourceCode cs"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a><span class="dt">var</span> client <span class="op">=</span> <span class="kw">new</span> <span class="fu">HttpClient</span><span class="op">();</span></span>
|
||
<span id="cb5-2"><a href="#cb5-2" aria-hidden="true" tabindex="-1"></a><span class="dt">var</span> request <span class="op">=</span> <span class="kw">new</span> HttpRequestMessage</span>
|
||
<span id="cb5-3"><a href="#cb5-3" aria-hidden="true" tabindex="-1"></a><span class="op">{</span></span>
|
||
<span id="cb5-4"><a href="#cb5-4" aria-hidden="true" tabindex="-1"></a> Method <span class="op">=</span> HttpMethod<span class="op">.</span><span class="fu">Post</span><span class="op">,</span></span>
|
||
<span id="cb5-5"><a href="#cb5-5" aria-hidden="true" tabindex="-1"></a> RequestUri <span class="op">=</span> <span class="kw">new</span> <span class="fu">Uri</span><span class="op">(</span><span class="st">"https://api.main.accessport.ir/api/v1/container-ocr/"</span><span class="op">),</span></span>
|
||
<span id="cb5-6"><a href="#cb5-6" aria-hidden="true" tabindex="-1"></a> Headers <span class="op">=</span></span>
|
||
<span id="cb5-7"><a href="#cb5-7" aria-hidden="true" tabindex="-1"></a> <span class="op">{</span></span>
|
||
<span id="cb5-8"><a href="#cb5-8" aria-hidden="true" tabindex="-1"></a> <span class="op">{</span> <span class="st">"x-api-key"</span><span class="op">,</span> <span class="st">"your-api-key"</span> <span class="op">},</span></span>
|
||
<span id="cb5-9"><a href="#cb5-9" aria-hidden="true" tabindex="-1"></a> <span class="op">},</span></span>
|
||
<span id="cb5-10"><a href="#cb5-10" aria-hidden="true" tabindex="-1"></a> Content <span class="op">=</span> <span class="kw">new</span> <span class="fu">StringContent</span><span class="op">(</span><span class="st">"{</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">event_id</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">b4a13fc8-2663-4f69-9d1d-1c1a5bb8e9a3</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">timestamp_utc</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">2025-08-17T14:22:35Z</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">source_system</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">dideban-hazmat-ocr</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">camera</span><span class="sc">\"</span><span class="st">: {</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">id</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">11111111-1111-1111-1111-111111111111</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">name</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">North Gate Camera 3</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">group</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">Gate Cameras</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">location</span><span class="sc">\"</span><span class="st">: {</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">latitude</span><span class="sc">\"</span><span class="st">: 35.6892,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">longitude</span><span class="sc">\"</span><span class="st">: 51.3890,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">description</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">Tehran Port North Entrance</span><span class="sc">\"\n</span><span class="st"> }</span><span class="sc">\n</span><span class="st"> },</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">image</span><span class="sc">\"</span><span class="st">: {</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">id</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">649ab03d-f633-4e19-8a9f-2f312d0f90e0</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">url</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">https://your-system.local/images/649ab03d-f633-4e19-8a9f-2f312d0f90e0.jpg</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">local_path</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">data/uploads/649ab03d-f633-4e19-8a9f-2f312d0f90e0.jpg</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">sha256</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">9b1c3ff3469dc70fbd5d7e6dc926fdf2b45a...</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">resolution</span><span class="sc">\"</span><span class="st">: {</span><span class="sc">\"</span><span class="st">width</span><span class="sc">\"</span><span class="st">: 1920, </span><span class="sc">\"</span><span class="st">height</span><span class="sc">\"</span><span class="st">: 1080}</span><span class="sc">\n</span><span class="st"> },</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">container</span><span class="sc">\"</span><span class="st">: {</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">number</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">MSCU1234567</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">owner_code</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">MSCU</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">equipment_category</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">U</span><span class="sc">\"</span><span class="st">, </span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">serial_number</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">123456</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">check_digit</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">7</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">iso_code</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">22G1</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">size_type_code</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">22G1</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">read_confidence</span><span class="sc">\"</span><span class="st">: 0.95</span><span class="sc">\n</span><span class="st"> },</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">hazmat_labels</span><span class="sc">\"</span><span class="st">: [</span><span class="sc">\n</span><span class="st"> {</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">un_number</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">1203</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">class_code</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">3</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">subclass_code</span><span class="sc">\"</span><span class="st">: null,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">label_name</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">Flammable Liquid</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">confidence</span><span class="sc">\"</span><span class="st">: 0.96,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">bounding_box</span><span class="sc">\"</span><span class="st">: {</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">x</span><span class="sc">\"</span><span class="st">: 0.62,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">y</span><span class="sc">\"</span><span class="st">: 0.33,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">width</span><span class="sc">\"</span><span class="st">: 0.12,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">height</span><span class="sc">\"</span><span class="st">: 0.18</span><span class="sc">\n</span><span class="st"> }</span><span class="sc">\n</span><span class="st"> },</span><span class="sc">\n</span><span class="st"> {</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">un_number</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">3082</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">class_code</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">9</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">label_name</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">Miscellaneous Dangerous Substances</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">confidence</span><span class="sc">\"</span><span class="st">: 0.88,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">bounding_box</span><span class="sc">\"</span><span class="st">: {</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">x</span><span class="sc">\"</span><span class="st">: 0.21,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">y</span><span class="sc">\"</span><span class="st">: 0.55,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">width</span><span class="sc">\"</span><span class="st">: 0.10,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">height</span><span class="sc">\"</span><span class="st">: 0.16</span><span class="sc">\n</span><span class="st"> }</span><span class="sc">\n</span><span class="st"> }</span><span class="sc">\n</span><span class="st"> ],</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">processing_info</span><span class="sc">\"</span><span class="st">: {</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">pipeline_version</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">1.2.0</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">validated</span><span class="sc">\"</span><span class="st">: true,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">corrected</span><span class="sc">\"</span><span class="st">: false,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">processing_duration_ms</span><span class="sc">\"</span><span class="st">: 842</span><span class="sc">\n</span><span class="st"> }</span><span class="sc">\n</span><span class="st">}"</span><span class="op">)</span></span>
|
||
<span id="cb5-11"><a href="#cb5-11" aria-hidden="true" tabindex="-1"></a> <span class="op">{</span></span>
|
||
<span id="cb5-12"><a href="#cb5-12" aria-hidden="true" tabindex="-1"></a> Headers <span class="op">=</span></span>
|
||
<span id="cb5-13"><a href="#cb5-13" aria-hidden="true" tabindex="-1"></a> <span class="op">{</span></span>
|
||
<span id="cb5-14"><a href="#cb5-14" aria-hidden="true" tabindex="-1"></a> ContentType <span class="op">=</span> <span class="kw">new</span> <span class="fu">MediaTypeHeaderValue</span><span class="op">(</span><span class="st">"application/json"</span><span class="op">)</span></span>
|
||
<span id="cb5-15"><a href="#cb5-15" aria-hidden="true" tabindex="-1"></a> <span class="op">}</span></span>
|
||
<span id="cb5-16"><a href="#cb5-16" aria-hidden="true" tabindex="-1"></a> <span class="op">}</span></span>
|
||
<span id="cb5-17"><a href="#cb5-17" aria-hidden="true" tabindex="-1"></a><span class="op">};</span></span>
|
||
<span id="cb5-18"><a href="#cb5-18" aria-hidden="true" tabindex="-1"></a><span class="kw">using</span> <span class="op">(</span><span class="dt">var</span> response <span class="op">=</span> await client<span class="op">.</span><span class="fu">SendAsync</span><span class="op">(</span>request<span class="op">))</span></span>
|
||
<span id="cb5-19"><a href="#cb5-19" aria-hidden="true" tabindex="-1"></a><span class="op">{</span></span>
|
||
<span id="cb5-20"><a href="#cb5-20" aria-hidden="true" tabindex="-1"></a> response<span class="op">.</span><span class="fu">EnsureSuccessStatusCode</span><span class="op">();</span></span>
|
||
<span id="cb5-21"><a href="#cb5-21" aria-hidden="true" tabindex="-1"></a> <span class="dt">var</span> body <span class="op">=</span> await response<span class="op">.</span><span class="fu">Content</span><span class="op">.</span><span class="fu">ReadAsStringAsync</span><span class="op">();</span></span>
|
||
<span id="cb5-22"><a href="#cb5-22" aria-hidden="true" tabindex="-1"></a> Console<span class="op">.</span><span class="fu">WriteLine</span><span class="op">(</span>body<span class="op">);</span></span>
|
||
<span id="cb5-23"><a href="#cb5-23" aria-hidden="true" tabindex="-1"></a><span class="op">}</span></span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
|
||
</div>
|
||
<div id="tabset-1-5" class="tab-pane" role="tabpanel" aria-labelledby="tabset-1-5-tab">
|
||
<div class="sourceCode" id="cb6"><pre class="sourceCode php code-with-copy"><code class="sourceCode php"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a><span class="kw"><?php</span></span>
|
||
<span id="cb6-2"><a href="#cb6-2" aria-hidden="true" tabindex="-1"></a></span>
|
||
<span id="cb6-3"><a href="#cb6-3" aria-hidden="true" tabindex="-1"></a><span class="va">$request</span> <span class="op">=</span> <span class="kw">new</span> HttpRequest()<span class="ot">;</span></span>
|
||
<span id="cb6-4"><a href="#cb6-4" aria-hidden="true" tabindex="-1"></a><span class="va">$request</span>->setUrl(<span class="st">'https://api.main.accessport.ir/api/v1/container-ocr/'</span>)<span class="ot">;</span></span>
|
||
<span id="cb6-5"><a href="#cb6-5" aria-hidden="true" tabindex="-1"></a><span class="va">$request</span>->setMethod(<span class="cn">HTTP_METH_POST</span>)<span class="ot">;</span></span>
|
||
<span id="cb6-6"><a href="#cb6-6" aria-hidden="true" tabindex="-1"></a></span>
|
||
<span id="cb6-7"><a href="#cb6-7" aria-hidden="true" tabindex="-1"></a><span class="va">$request</span>->setHeaders([</span>
|
||
<span id="cb6-8"><a href="#cb6-8" aria-hidden="true" tabindex="-1"></a> <span class="st">'Content-Type'</span> => <span class="st">'application/json'</span><span class="ot">,</span></span>
|
||
<span id="cb6-9"><a href="#cb6-9" aria-hidden="true" tabindex="-1"></a> <span class="st">'x-api-key'</span> => <span class="st">'your-api-key'</span></span>
|
||
<span id="cb6-10"><a href="#cb6-10" aria-hidden="true" tabindex="-1"></a>])<span class="ot">;</span></span>
|
||
<span id="cb6-11"><a href="#cb6-11" aria-hidden="true" tabindex="-1"></a></span>
|
||
<span id="cb6-12"><a href="#cb6-12" aria-hidden="true" tabindex="-1"></a><span class="va">$request</span>->setBody(<span class="st">'{</span></span>
|
||
<span id="cb6-13"><a href="#cb6-13" aria-hidden="true" tabindex="-1"></a><span class="st"> "event_id": "b4a13fc8-2663-4f69-9d1d-1c1a5bb8e9a3",</span></span>
|
||
<span id="cb6-14"><a href="#cb6-14" aria-hidden="true" tabindex="-1"></a><span class="st"> "timestamp_utc": "2025-08-17T14:22:35Z",</span></span>
|
||
<span id="cb6-15"><a href="#cb6-15" aria-hidden="true" tabindex="-1"></a><span class="st"> "source_system": "dideban-hazmat-ocr",</span></span>
|
||
<span id="cb6-16"><a href="#cb6-16" aria-hidden="true" tabindex="-1"></a><span class="st"> "camera": {</span></span>
|
||
<span id="cb6-17"><a href="#cb6-17" aria-hidden="true" tabindex="-1"></a><span class="st"> "id": "11111111-1111-1111-1111-111111111111",</span></span>
|
||
<span id="cb6-18"><a href="#cb6-18" aria-hidden="true" tabindex="-1"></a><span class="st"> "name": "North Gate Camera 3",</span></span>
|
||
<span id="cb6-19"><a href="#cb6-19" aria-hidden="true" tabindex="-1"></a><span class="st"> "group": "Gate Cameras",</span></span>
|
||
<span id="cb6-20"><a href="#cb6-20" aria-hidden="true" tabindex="-1"></a><span class="st"> "location": {</span></span>
|
||
<span id="cb6-21"><a href="#cb6-21" aria-hidden="true" tabindex="-1"></a><span class="st"> "latitude": 35.6892,</span></span>
|
||
<span id="cb6-22"><a href="#cb6-22" aria-hidden="true" tabindex="-1"></a><span class="st"> "longitude": 51.3890,</span></span>
|
||
<span id="cb6-23"><a href="#cb6-23" aria-hidden="true" tabindex="-1"></a><span class="st"> "description": "Tehran Port North Entrance"</span></span>
|
||
<span id="cb6-24"><a href="#cb6-24" aria-hidden="true" tabindex="-1"></a><span class="st"> }</span></span>
|
||
<span id="cb6-25"><a href="#cb6-25" aria-hidden="true" tabindex="-1"></a><span class="st"> },</span></span>
|
||
<span id="cb6-26"><a href="#cb6-26" aria-hidden="true" tabindex="-1"></a><span class="st"> "image": {</span></span>
|
||
<span id="cb6-27"><a href="#cb6-27" aria-hidden="true" tabindex="-1"></a><span class="st"> "id": "649ab03d-f633-4e19-8a9f-2f312d0f90e0",</span></span>
|
||
<span id="cb6-28"><a href="#cb6-28" aria-hidden="true" tabindex="-1"></a><span class="st"> "url": "https://your-system.local/images/649ab03d-f633-4e19-8a9f-2f312d0f90e0.jpg",</span></span>
|
||
<span id="cb6-29"><a href="#cb6-29" aria-hidden="true" tabindex="-1"></a><span class="st"> "local_path": "data/uploads/649ab03d-f633-4e19-8a9f-2f312d0f90e0.jpg",</span></span>
|
||
<span id="cb6-30"><a href="#cb6-30" aria-hidden="true" tabindex="-1"></a><span class="st"> "sha256": "9b1c3ff3469dc70fbd5d7e6dc926fdf2b45a...",</span></span>
|
||
<span id="cb6-31"><a href="#cb6-31" aria-hidden="true" tabindex="-1"></a><span class="st"> "resolution": {"width": 1920, "height": 1080}</span></span>
|
||
<span id="cb6-32"><a href="#cb6-32" aria-hidden="true" tabindex="-1"></a><span class="st"> },</span></span>
|
||
<span id="cb6-33"><a href="#cb6-33" aria-hidden="true" tabindex="-1"></a><span class="st"> "container": {</span></span>
|
||
<span id="cb6-34"><a href="#cb6-34" aria-hidden="true" tabindex="-1"></a><span class="st"> "number": "MSCU1234567",</span></span>
|
||
<span id="cb6-35"><a href="#cb6-35" aria-hidden="true" tabindex="-1"></a><span class="st"> "owner_code": "MSCU",</span></span>
|
||
<span id="cb6-36"><a href="#cb6-36" aria-hidden="true" tabindex="-1"></a><span class="st"> "equipment_category": "U", </span></span>
|
||
<span id="cb6-37"><a href="#cb6-37" aria-hidden="true" tabindex="-1"></a><span class="st"> "serial_number": "123456",</span></span>
|
||
<span id="cb6-38"><a href="#cb6-38" aria-hidden="true" tabindex="-1"></a><span class="st"> "check_digit": "7",</span></span>
|
||
<span id="cb6-39"><a href="#cb6-39" aria-hidden="true" tabindex="-1"></a><span class="st"> "iso_code": "22G1",</span></span>
|
||
<span id="cb6-40"><a href="#cb6-40" aria-hidden="true" tabindex="-1"></a><span class="st"> "size_type_code": "22G1",</span></span>
|
||
<span id="cb6-41"><a href="#cb6-41" aria-hidden="true" tabindex="-1"></a><span class="st"> "read_confidence": 0.95</span></span>
|
||
<span id="cb6-42"><a href="#cb6-42" aria-hidden="true" tabindex="-1"></a><span class="st"> },</span></span>
|
||
<span id="cb6-43"><a href="#cb6-43" aria-hidden="true" tabindex="-1"></a><span class="st"> "hazmat_labels": [</span></span>
|
||
<span id="cb6-44"><a href="#cb6-44" aria-hidden="true" tabindex="-1"></a><span class="st"> {</span></span>
|
||
<span id="cb6-45"><a href="#cb6-45" aria-hidden="true" tabindex="-1"></a><span class="st"> "un_number": "1203",</span></span>
|
||
<span id="cb6-46"><a href="#cb6-46" aria-hidden="true" tabindex="-1"></a><span class="st"> "class_code": "3",</span></span>
|
||
<span id="cb6-47"><a href="#cb6-47" aria-hidden="true" tabindex="-1"></a><span class="st"> "subclass_code": null,</span></span>
|
||
<span id="cb6-48"><a href="#cb6-48" aria-hidden="true" tabindex="-1"></a><span class="st"> "label_name": "Flammable Liquid",</span></span>
|
||
<span id="cb6-49"><a href="#cb6-49" aria-hidden="true" tabindex="-1"></a><span class="st"> "confidence": 0.96,</span></span>
|
||
<span id="cb6-50"><a href="#cb6-50" aria-hidden="true" tabindex="-1"></a><span class="st"> "bounding_box": {</span></span>
|
||
<span id="cb6-51"><a href="#cb6-51" aria-hidden="true" tabindex="-1"></a><span class="st"> "x": 0.62,</span></span>
|
||
<span id="cb6-52"><a href="#cb6-52" aria-hidden="true" tabindex="-1"></a><span class="st"> "y": 0.33,</span></span>
|
||
<span id="cb6-53"><a href="#cb6-53" aria-hidden="true" tabindex="-1"></a><span class="st"> "width": 0.12,</span></span>
|
||
<span id="cb6-54"><a href="#cb6-54" aria-hidden="true" tabindex="-1"></a><span class="st"> "height": 0.18</span></span>
|
||
<span id="cb6-55"><a href="#cb6-55" aria-hidden="true" tabindex="-1"></a><span class="st"> }</span></span>
|
||
<span id="cb6-56"><a href="#cb6-56" aria-hidden="true" tabindex="-1"></a><span class="st"> },</span></span>
|
||
<span id="cb6-57"><a href="#cb6-57" aria-hidden="true" tabindex="-1"></a><span class="st"> {</span></span>
|
||
<span id="cb6-58"><a href="#cb6-58" aria-hidden="true" tabindex="-1"></a><span class="st"> "un_number": "3082",</span></span>
|
||
<span id="cb6-59"><a href="#cb6-59" aria-hidden="true" tabindex="-1"></a><span class="st"> "class_code": "9",</span></span>
|
||
<span id="cb6-60"><a href="#cb6-60" aria-hidden="true" tabindex="-1"></a><span class="st"> "label_name": "Miscellaneous Dangerous Substances",</span></span>
|
||
<span id="cb6-61"><a href="#cb6-61" aria-hidden="true" tabindex="-1"></a><span class="st"> "confidence": 0.88,</span></span>
|
||
<span id="cb6-62"><a href="#cb6-62" aria-hidden="true" tabindex="-1"></a><span class="st"> "bounding_box": {</span></span>
|
||
<span id="cb6-63"><a href="#cb6-63" aria-hidden="true" tabindex="-1"></a><span class="st"> "x": 0.21,</span></span>
|
||
<span id="cb6-64"><a href="#cb6-64" aria-hidden="true" tabindex="-1"></a><span class="st"> "y": 0.55,</span></span>
|
||
<span id="cb6-65"><a href="#cb6-65" aria-hidden="true" tabindex="-1"></a><span class="st"> "width": 0.10,</span></span>
|
||
<span id="cb6-66"><a href="#cb6-66" aria-hidden="true" tabindex="-1"></a><span class="st"> "height": 0.16</span></span>
|
||
<span id="cb6-67"><a href="#cb6-67" aria-hidden="true" tabindex="-1"></a><span class="st"> }</span></span>
|
||
<span id="cb6-68"><a href="#cb6-68" aria-hidden="true" tabindex="-1"></a><span class="st"> }</span></span>
|
||
<span id="cb6-69"><a href="#cb6-69" aria-hidden="true" tabindex="-1"></a><span class="st"> ],</span></span>
|
||
<span id="cb6-70"><a href="#cb6-70" aria-hidden="true" tabindex="-1"></a><span class="st"> "processing_info": {</span></span>
|
||
<span id="cb6-71"><a href="#cb6-71" aria-hidden="true" tabindex="-1"></a><span class="st"> "pipeline_version": "1.2.0",</span></span>
|
||
<span id="cb6-72"><a href="#cb6-72" aria-hidden="true" tabindex="-1"></a><span class="st"> "validated": true,</span></span>
|
||
<span id="cb6-73"><a href="#cb6-73" aria-hidden="true" tabindex="-1"></a><span class="st"> "corrected": false,</span></span>
|
||
<span id="cb6-74"><a href="#cb6-74" aria-hidden="true" tabindex="-1"></a><span class="st"> "processing_duration_ms": 842</span></span>
|
||
<span id="cb6-75"><a href="#cb6-75" aria-hidden="true" tabindex="-1"></a><span class="st"> }</span></span>
|
||
<span id="cb6-76"><a href="#cb6-76" aria-hidden="true" tabindex="-1"></a><span class="st">}'</span>)<span class="ot">;</span></span>
|
||
<span id="cb6-77"><a href="#cb6-77" aria-hidden="true" tabindex="-1"></a></span>
|
||
<span id="cb6-78"><a href="#cb6-78" aria-hidden="true" tabindex="-1"></a><span class="cf">try</span> {</span>
|
||
<span id="cb6-79"><a href="#cb6-79" aria-hidden="true" tabindex="-1"></a> <span class="va">$response</span> <span class="op">=</span> <span class="va">$request</span>->send()<span class="ot">;</span></span>
|
||
<span id="cb6-80"><a href="#cb6-80" aria-hidden="true" tabindex="-1"></a></span>
|
||
<span id="cb6-81"><a href="#cb6-81" aria-hidden="true" tabindex="-1"></a> <span class="kw">echo</span> <span class="va">$response</span>->getBody()<span class="ot">;</span></span>
|
||
<span id="cb6-82"><a href="#cb6-82" aria-hidden="true" tabindex="-1"></a>} <span class="cf">catch</span> (HttpException <span class="va">$ex</span>) {</span>
|
||
<span id="cb6-83"><a href="#cb6-83" aria-hidden="true" tabindex="-1"></a> <span class="kw">echo</span> <span class="va">$ex</span><span class="ot">;</span></span>
|
||
<span id="cb6-84"><a href="#cb6-84" aria-hidden="true" tabindex="-1"></a>}</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
|
||
</div>
|
||
<div id="tabset-1-6" class="tab-pane" role="tabpanel" aria-labelledby="tabset-1-6-tab">
|
||
<div class="sourceCode" id="cb7"><pre class="sourceCode java code-with-copy"><code class="sourceCode java"><span id="cb7-1"><a href="#cb7-1" aria-hidden="true" tabindex="-1"></a>AsyncHttpClient client <span class="op">=</span> <span class="kw">new</span> <span class="fu">DefaultAsyncHttpClient</span><span class="op">();</span></span>
|
||
<span id="cb7-2"><a href="#cb7-2" aria-hidden="true" tabindex="-1"></a>client<span class="op">.</span><span class="fu">prepare</span><span class="op">(</span><span class="st">"POST"</span><span class="op">,</span> <span class="st">"https://api.main.accessport.ir/api/v1/container-ocr/"</span><span class="op">)</span></span>
|
||
<span id="cb7-3"><a href="#cb7-3" aria-hidden="true" tabindex="-1"></a> <span class="op">.</span><span class="fu">setHeader</span><span class="op">(</span><span class="st">"Content-Type"</span><span class="op">,</span> <span class="st">"application/json"</span><span class="op">)</span></span>
|
||
<span id="cb7-4"><a href="#cb7-4" aria-hidden="true" tabindex="-1"></a> <span class="op">.</span><span class="fu">setHeader</span><span class="op">(</span><span class="st">"x-api-key"</span><span class="op">,</span> <span class="st">"your-api-key"</span><span class="op">)</span></span>
|
||
<span id="cb7-5"><a href="#cb7-5" aria-hidden="true" tabindex="-1"></a> <span class="op">.</span><span class="fu">setBody</span><span class="op">(</span><span class="st">"{</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">event_id</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">b4a13fc8-2663-4f69-9d1d-1c1a5bb8e9a3</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">timestamp_utc</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">2025-08-17T14:22:35Z</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">source_system</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">dideban-hazmat-ocr</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">camera</span><span class="sc">\"</span><span class="st">: {</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">id</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">11111111-1111-1111-1111-111111111111</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">name</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">North Gate Camera 3</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">group</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">Gate Cameras</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">location</span><span class="sc">\"</span><span class="st">: {</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">latitude</span><span class="sc">\"</span><span class="st">: 35.6892,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">longitude</span><span class="sc">\"</span><span class="st">: 51.3890,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">description</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">Tehran Port North Entrance</span><span class="sc">\"\n</span><span class="st"> }</span><span class="sc">\n</span><span class="st"> },</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">image</span><span class="sc">\"</span><span class="st">: {</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">id</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">649ab03d-f633-4e19-8a9f-2f312d0f90e0</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">url</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">https://your-system.local/images/649ab03d-f633-4e19-8a9f-2f312d0f90e0.jpg</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">local_path</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">data/uploads/649ab03d-f633-4e19-8a9f-2f312d0f90e0.jpg</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">sha256</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">9b1c3ff3469dc70fbd5d7e6dc926fdf2b45a...</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">resolution</span><span class="sc">\"</span><span class="st">: {</span><span class="sc">\"</span><span class="st">width</span><span class="sc">\"</span><span class="st">: 1920, </span><span class="sc">\"</span><span class="st">height</span><span class="sc">\"</span><span class="st">: 1080}</span><span class="sc">\n</span><span class="st"> },</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">container</span><span class="sc">\"</span><span class="st">: {</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">number</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">MSCU1234567</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">owner_code</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">MSCU</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">equipment_category</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">U</span><span class="sc">\"</span><span class="st">, </span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">serial_number</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">123456</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">check_digit</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">7</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">iso_code</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">22G1</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">size_type_code</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">22G1</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">read_confidence</span><span class="sc">\"</span><span class="st">: 0.95</span><span class="sc">\n</span><span class="st"> },</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">hazmat_labels</span><span class="sc">\"</span><span class="st">: [</span><span class="sc">\n</span><span class="st"> {</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">un_number</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">1203</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">class_code</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">3</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">subclass_code</span><span class="sc">\"</span><span class="st">: null,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">label_name</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">Flammable Liquid</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">confidence</span><span class="sc">\"</span><span class="st">: 0.96,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">bounding_box</span><span class="sc">\"</span><span class="st">: {</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">x</span><span class="sc">\"</span><span class="st">: 0.62,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">y</span><span class="sc">\"</span><span class="st">: 0.33,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">width</span><span class="sc">\"</span><span class="st">: 0.12,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">height</span><span class="sc">\"</span><span class="st">: 0.18</span><span class="sc">\n</span><span class="st"> }</span><span class="sc">\n</span><span class="st"> },</span><span class="sc">\n</span><span class="st"> {</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">un_number</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">3082</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">class_code</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">9</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">label_name</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">Miscellaneous Dangerous Substances</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">confidence</span><span class="sc">\"</span><span class="st">: 0.88,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">bounding_box</span><span class="sc">\"</span><span class="st">: {</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">x</span><span class="sc">\"</span><span class="st">: 0.21,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">y</span><span class="sc">\"</span><span class="st">: 0.55,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">width</span><span class="sc">\"</span><span class="st">: 0.10,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">height</span><span class="sc">\"</span><span class="st">: 0.16</span><span class="sc">\n</span><span class="st"> }</span><span class="sc">\n</span><span class="st"> }</span><span class="sc">\n</span><span class="st"> ],</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">processing_info</span><span class="sc">\"</span><span class="st">: {</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">pipeline_version</span><span class="sc">\"</span><span class="st">: </span><span class="sc">\"</span><span class="st">1.2.0</span><span class="sc">\"</span><span class="st">,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">validated</span><span class="sc">\"</span><span class="st">: true,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">corrected</span><span class="sc">\"</span><span class="st">: false,</span><span class="sc">\n</span><span class="st"> </span><span class="sc">\"</span><span class="st">processing_duration_ms</span><span class="sc">\"</span><span class="st">: 842</span><span class="sc">\n</span><span class="st"> }</span><span class="sc">\n</span><span class="st">}"</span><span class="op">)</span></span>
|
||
<span id="cb7-6"><a href="#cb7-6" aria-hidden="true" tabindex="-1"></a> <span class="op">.</span><span class="fu">execute</span><span class="op">()</span></span>
|
||
<span id="cb7-7"><a href="#cb7-7" aria-hidden="true" tabindex="-1"></a> <span class="op">.</span><span class="fu">toCompletableFuture</span><span class="op">()</span></span>
|
||
<span id="cb7-8"><a href="#cb7-8" aria-hidden="true" tabindex="-1"></a> <span class="op">.</span><span class="fu">thenAccept</span><span class="op">(</span><span class="bu">System</span><span class="op">.</span><span class="fu">out</span><span class="op">::</span>println<span class="op">)</span></span>
|
||
<span id="cb7-9"><a href="#cb7-9" aria-hidden="true" tabindex="-1"></a> <span class="op">.</span><span class="fu">join</span><span class="op">();</span></span>
|
||
<span id="cb7-10"><a href="#cb7-10" aria-hidden="true" tabindex="-1"></a></span>
|
||
<span id="cb7-11"><a href="#cb7-11" aria-hidden="true" tabindex="-1"></a>client<span class="op">.</span><span class="fu">close</span><span class="op">();</span></span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
|
||
</div>
|
||
<div id="tabset-1-7" class="tab-pane" role="tabpanel" aria-labelledby="tabset-1-7-tab">
|
||
<div class="sourceCode" id="cb8"><pre class="sourceCode go code-with-copy"><code class="sourceCode go"><span id="cb8-1"><a href="#cb8-1" aria-hidden="true" tabindex="-1"></a><span class="kw">package</span> main</span>
|
||
<span id="cb8-2"><a href="#cb8-2" aria-hidden="true" tabindex="-1"></a></span>
|
||
<span id="cb8-3"><a href="#cb8-3" aria-hidden="true" tabindex="-1"></a><span class="kw">import</span> <span class="op">(</span></span>
|
||
<span id="cb8-4"><a href="#cb8-4" aria-hidden="true" tabindex="-1"></a> <span class="st">"fmt"</span></span>
|
||
<span id="cb8-5"><a href="#cb8-5" aria-hidden="true" tabindex="-1"></a> <span class="st">"strings"</span></span>
|
||
<span id="cb8-6"><a href="#cb8-6" aria-hidden="true" tabindex="-1"></a> <span class="st">"net/http"</span></span>
|
||
<span id="cb8-7"><a href="#cb8-7" aria-hidden="true" tabindex="-1"></a> <span class="st">"io/ioutil"</span></span>
|
||
<span id="cb8-8"><a href="#cb8-8" aria-hidden="true" tabindex="-1"></a><span class="op">)</span></span>
|
||
<span id="cb8-9"><a href="#cb8-9" aria-hidden="true" tabindex="-1"></a></span>
|
||
<span id="cb8-10"><a href="#cb8-10" aria-hidden="true" tabindex="-1"></a><span class="kw">func</span> main<span class="op">()</span> <span class="op">{</span></span>
|
||
<span id="cb8-11"><a href="#cb8-11" aria-hidden="true" tabindex="-1"></a></span>
|
||
<span id="cb8-12"><a href="#cb8-12" aria-hidden="true" tabindex="-1"></a> url <span class="op">:=</span> <span class="st">"https://api.main.accessport.ir/api/v1/container-ocr/"</span></span>
|
||
<span id="cb8-13"><a href="#cb8-13" aria-hidden="true" tabindex="-1"></a></span>
|
||
<span id="cb8-14"><a href="#cb8-14" aria-hidden="true" tabindex="-1"></a> payload <span class="op">:=</span> strings<span class="op">.</span>NewReader<span class="op">(</span><span class="st">"{</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">event_id</span><span class="ch">\"</span><span class="st">: </span><span class="ch">\"</span><span class="st">b4a13fc8-2663-4f69-9d1d-1c1a5bb8e9a3</span><span class="ch">\"</span><span class="st">,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">timestamp_utc</span><span class="ch">\"</span><span class="st">: </span><span class="ch">\"</span><span class="st">2025-08-17T14:22:35Z</span><span class="ch">\"</span><span class="st">,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">source_system</span><span class="ch">\"</span><span class="st">: </span><span class="ch">\"</span><span class="st">dideban-hazmat-ocr</span><span class="ch">\"</span><span class="st">,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">camera</span><span class="ch">\"</span><span class="st">: {</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">id</span><span class="ch">\"</span><span class="st">: </span><span class="ch">\"</span><span class="st">11111111-1111-1111-1111-111111111111</span><span class="ch">\"</span><span class="st">,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">name</span><span class="ch">\"</span><span class="st">: </span><span class="ch">\"</span><span class="st">North Gate Camera 3</span><span class="ch">\"</span><span class="st">,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">group</span><span class="ch">\"</span><span class="st">: </span><span class="ch">\"</span><span class="st">Gate Cameras</span><span class="ch">\"</span><span class="st">,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">location</span><span class="ch">\"</span><span class="st">: {</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">latitude</span><span class="ch">\"</span><span class="st">: 35.6892,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">longitude</span><span class="ch">\"</span><span class="st">: 51.3890,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">description</span><span class="ch">\"</span><span class="st">: </span><span class="ch">\"</span><span class="st">Tehran Port North Entrance</span><span class="ch">\"\n</span><span class="st"> }</span><span class="ch">\n</span><span class="st"> },</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">image</span><span class="ch">\"</span><span class="st">: {</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">id</span><span class="ch">\"</span><span class="st">: </span><span class="ch">\"</span><span class="st">649ab03d-f633-4e19-8a9f-2f312d0f90e0</span><span class="ch">\"</span><span class="st">,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">url</span><span class="ch">\"</span><span class="st">: </span><span class="ch">\"</span><span class="st">https://your-system.local/images/649ab03d-f633-4e19-8a9f-2f312d0f90e0.jpg</span><span class="ch">\"</span><span class="st">,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">local_path</span><span class="ch">\"</span><span class="st">: </span><span class="ch">\"</span><span class="st">data/uploads/649ab03d-f633-4e19-8a9f-2f312d0f90e0.jpg</span><span class="ch">\"</span><span class="st">,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">sha256</span><span class="ch">\"</span><span class="st">: </span><span class="ch">\"</span><span class="st">9b1c3ff3469dc70fbd5d7e6dc926fdf2b45a...</span><span class="ch">\"</span><span class="st">,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">resolution</span><span class="ch">\"</span><span class="st">: {</span><span class="ch">\"</span><span class="st">width</span><span class="ch">\"</span><span class="st">: 1920, </span><span class="ch">\"</span><span class="st">height</span><span class="ch">\"</span><span class="st">: 1080}</span><span class="ch">\n</span><span class="st"> },</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">container</span><span class="ch">\"</span><span class="st">: {</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">number</span><span class="ch">\"</span><span class="st">: </span><span class="ch">\"</span><span class="st">MSCU1234567</span><span class="ch">\"</span><span class="st">,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">owner_code</span><span class="ch">\"</span><span class="st">: </span><span class="ch">\"</span><span class="st">MSCU</span><span class="ch">\"</span><span class="st">,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">equipment_category</span><span class="ch">\"</span><span class="st">: </span><span class="ch">\"</span><span class="st">U</span><span class="ch">\"</span><span class="st">, </span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">serial_number</span><span class="ch">\"</span><span class="st">: </span><span class="ch">\"</span><span class="st">123456</span><span class="ch">\"</span><span class="st">,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">check_digit</span><span class="ch">\"</span><span class="st">: </span><span class="ch">\"</span><span class="st">7</span><span class="ch">\"</span><span class="st">,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">iso_code</span><span class="ch">\"</span><span class="st">: </span><span class="ch">\"</span><span class="st">22G1</span><span class="ch">\"</span><span class="st">,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">size_type_code</span><span class="ch">\"</span><span class="st">: </span><span class="ch">\"</span><span class="st">22G1</span><span class="ch">\"</span><span class="st">,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">read_confidence</span><span class="ch">\"</span><span class="st">: 0.95</span><span class="ch">\n</span><span class="st"> },</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">hazmat_labels</span><span class="ch">\"</span><span class="st">: [</span><span class="ch">\n</span><span class="st"> {</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">un_number</span><span class="ch">\"</span><span class="st">: </span><span class="ch">\"</span><span class="st">1203</span><span class="ch">\"</span><span class="st">,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">class_code</span><span class="ch">\"</span><span class="st">: </span><span class="ch">\"</span><span class="st">3</span><span class="ch">\"</span><span class="st">,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">subclass_code</span><span class="ch">\"</span><span class="st">: null,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">label_name</span><span class="ch">\"</span><span class="st">: </span><span class="ch">\"</span><span class="st">Flammable Liquid</span><span class="ch">\"</span><span class="st">,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">confidence</span><span class="ch">\"</span><span class="st">: 0.96,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">bounding_box</span><span class="ch">\"</span><span class="st">: {</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">x</span><span class="ch">\"</span><span class="st">: 0.62,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">y</span><span class="ch">\"</span><span class="st">: 0.33,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">width</span><span class="ch">\"</span><span class="st">: 0.12,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">height</span><span class="ch">\"</span><span class="st">: 0.18</span><span class="ch">\n</span><span class="st"> }</span><span class="ch">\n</span><span class="st"> },</span><span class="ch">\n</span><span class="st"> {</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">un_number</span><span class="ch">\"</span><span class="st">: </span><span class="ch">\"</span><span class="st">3082</span><span class="ch">\"</span><span class="st">,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">class_code</span><span class="ch">\"</span><span class="st">: </span><span class="ch">\"</span><span class="st">9</span><span class="ch">\"</span><span class="st">,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">label_name</span><span class="ch">\"</span><span class="st">: </span><span class="ch">\"</span><span class="st">Miscellaneous Dangerous Substances</span><span class="ch">\"</span><span class="st">,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">confidence</span><span class="ch">\"</span><span class="st">: 0.88,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">bounding_box</span><span class="ch">\"</span><span class="st">: {</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">x</span><span class="ch">\"</span><span class="st">: 0.21,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">y</span><span class="ch">\"</span><span class="st">: 0.55,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">width</span><span class="ch">\"</span><span class="st">: 0.10,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">height</span><span class="ch">\"</span><span class="st">: 0.16</span><span class="ch">\n</span><span class="st"> }</span><span class="ch">\n</span><span class="st"> }</span><span class="ch">\n</span><span class="st"> ],</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">processing_info</span><span class="ch">\"</span><span class="st">: {</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">pipeline_version</span><span class="ch">\"</span><span class="st">: </span><span class="ch">\"</span><span class="st">1.2.0</span><span class="ch">\"</span><span class="st">,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">validated</span><span class="ch">\"</span><span class="st">: true,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">corrected</span><span class="ch">\"</span><span class="st">: false,</span><span class="ch">\n</span><span class="st"> </span><span class="ch">\"</span><span class="st">processing_duration_ms</span><span class="ch">\"</span><span class="st">: 842</span><span class="ch">\n</span><span class="st"> }</span><span class="ch">\n</span><span class="st">}"</span><span class="op">)</span></span>
|
||
<span id="cb8-15"><a href="#cb8-15" aria-hidden="true" tabindex="-1"></a></span>
|
||
<span id="cb8-16"><a href="#cb8-16" aria-hidden="true" tabindex="-1"></a> req<span class="op">,</span> _ <span class="op">:=</span> http<span class="op">.</span>NewRequest<span class="op">(</span><span class="st">"POST"</span><span class="op">,</span> url<span class="op">,</span> payload<span class="op">)</span></span>
|
||
<span id="cb8-17"><a href="#cb8-17" aria-hidden="true" tabindex="-1"></a></span>
|
||
<span id="cb8-18"><a href="#cb8-18" aria-hidden="true" tabindex="-1"></a> req<span class="op">.</span>Header<span class="op">.</span>Add<span class="op">(</span><span class="st">"Content-Type"</span><span class="op">,</span> <span class="st">"application/json"</span><span class="op">)</span></span>
|
||
<span id="cb8-19"><a href="#cb8-19" aria-hidden="true" tabindex="-1"></a> req<span class="op">.</span>Header<span class="op">.</span>Add<span class="op">(</span><span class="st">"x-api-key"</span><span class="op">,</span> <span class="st">"your-api-key"</span><span class="op">)</span></span>
|
||
<span id="cb8-20"><a href="#cb8-20" aria-hidden="true" tabindex="-1"></a></span>
|
||
<span id="cb8-21"><a href="#cb8-21" aria-hidden="true" tabindex="-1"></a> res<span class="op">,</span> _ <span class="op">:=</span> http<span class="op">.</span>DefaultClient<span class="op">.</span>Do<span class="op">(</span>req<span class="op">)</span></span>
|
||
<span id="cb8-22"><a href="#cb8-22" aria-hidden="true" tabindex="-1"></a></span>
|
||
<span id="cb8-23"><a href="#cb8-23" aria-hidden="true" tabindex="-1"></a> <span class="cf">defer</span> res<span class="op">.</span>Body<span class="op">.</span>Close<span class="op">()</span></span>
|
||
<span id="cb8-24"><a href="#cb8-24" aria-hidden="true" tabindex="-1"></a> body<span class="op">,</span> _ <span class="op">:=</span> ioutil<span class="op">.</span>ReadAll<span class="op">(</span>res<span class="op">.</span>Body<span class="op">)</span></span>
|
||
<span id="cb8-25"><a href="#cb8-25" aria-hidden="true" tabindex="-1"></a></span>
|
||
<span id="cb8-26"><a href="#cb8-26" aria-hidden="true" tabindex="-1"></a> fmt<span class="op">.</span>Println<span class="op">(</span>res<span class="op">)</span></span>
|
||
<span id="cb8-27"><a href="#cb8-27" aria-hidden="true" tabindex="-1"></a> fmt<span class="op">.</span>Println<span class="op">(</span><span class="dt">string</span><span class="op">(</span>body<span class="op">))</span></span>
|
||
<span id="cb8-28"><a href="#cb8-28" aria-hidden="true" tabindex="-1"></a></span>
|
||
<span id="cb8-29"><a href="#cb8-29" aria-hidden="true" tabindex="-1"></a><span class="op">}</span></span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
</section>
|
||
</section>
|
||
|
||
</main> <!-- /main -->
|
||
<script id="quarto-html-after-body" type="application/javascript">
|
||
window.document.addEventListener("DOMContentLoaded", function (event) {
|
||
const icon = "";
|
||
const anchorJS = new window.AnchorJS();
|
||
anchorJS.options = {
|
||
placement: 'right',
|
||
icon: icon
|
||
};
|
||
anchorJS.add('.anchored');
|
||
const isCodeAnnotation = (el) => {
|
||
for (const clz of el.classList) {
|
||
if (clz.startsWith('code-annotation-')) {
|
||
return true;
|
||
}
|
||
}
|
||
return false;
|
||
}
|
||
const onCopySuccess = function(e) {
|
||
// button target
|
||
const button = e.trigger;
|
||
// don't keep focus
|
||
button.blur();
|
||
// flash "checked"
|
||
button.classList.add('code-copy-button-checked');
|
||
var currentTitle = button.getAttribute("title");
|
||
button.setAttribute("title", "Copied!");
|
||
let tooltip;
|
||
if (window.bootstrap) {
|
||
button.setAttribute("data-bs-toggle", "tooltip");
|
||
button.setAttribute("data-bs-placement", "left");
|
||
button.setAttribute("data-bs-title", "Copied!");
|
||
tooltip = new bootstrap.Tooltip(button,
|
||
{ trigger: "manual",
|
||
customClass: "code-copy-button-tooltip",
|
||
offset: [0, -8]});
|
||
tooltip.show();
|
||
}
|
||
setTimeout(function() {
|
||
if (tooltip) {
|
||
tooltip.hide();
|
||
button.removeAttribute("data-bs-title");
|
||
button.removeAttribute("data-bs-toggle");
|
||
button.removeAttribute("data-bs-placement");
|
||
}
|
||
button.setAttribute("title", currentTitle);
|
||
button.classList.remove('code-copy-button-checked');
|
||
}, 1000);
|
||
// clear code selection
|
||
e.clearSelection();
|
||
}
|
||
const getTextToCopy = function(trigger) {
|
||
const codeEl = trigger.previousElementSibling.cloneNode(true);
|
||
for (const childEl of codeEl.children) {
|
||
if (isCodeAnnotation(childEl)) {
|
||
childEl.remove();
|
||
}
|
||
}
|
||
return codeEl.innerText;
|
||
}
|
||
const clipboard = new window.ClipboardJS('.code-copy-button:not([data-in-quarto-modal])', {
|
||
text: getTextToCopy
|
||
});
|
||
clipboard.on('success', onCopySuccess);
|
||
if (window.document.getElementById('quarto-embedded-source-code-modal')) {
|
||
const clipboardModal = new window.ClipboardJS('.code-copy-button[data-in-quarto-modal]', {
|
||
text: getTextToCopy,
|
||
container: window.document.getElementById('quarto-embedded-source-code-modal')
|
||
});
|
||
clipboardModal.on('success', onCopySuccess);
|
||
}
|
||
var localhostRegex = new RegExp(/^(?:http|https):\/\/localhost\:?[0-9]*\//);
|
||
var mailtoRegex = new RegExp(/^mailto:/);
|
||
var filterRegex = new RegExp('/' + window.location.host + '/');
|
||
var isInternal = (href) => {
|
||
return filterRegex.test(href) || localhostRegex.test(href) || mailtoRegex.test(href);
|
||
}
|
||
// Inspect non-navigation links and adorn them if external
|
||
var links = window.document.querySelectorAll('a[href]:not(.nav-link):not(.navbar-brand):not(.toc-action):not(.sidebar-link):not(.sidebar-item-toggle):not(.pagination-link):not(.no-external):not([aria-hidden]):not(.dropdown-item):not(.quarto-navigation-tool):not(.about-link)');
|
||
for (var i=0; i<links.length; i++) {
|
||
const link = links[i];
|
||
if (!isInternal(link.href)) {
|
||
// undo the damage that might have been done by quarto-nav.js in the case of
|
||
// links that we want to consider external
|
||
if (link.dataset.originalHref !== undefined) {
|
||
link.href = link.dataset.originalHref;
|
||
}
|
||
}
|
||
}
|
||
function tippyHover(el, contentFn, onTriggerFn, onUntriggerFn) {
|
||
const config = {
|
||
allowHTML: true,
|
||
maxWidth: 500,
|
||
delay: 100,
|
||
arrow: false,
|
||
appendTo: function(el) {
|
||
return el.parentElement;
|
||
},
|
||
interactive: true,
|
||
interactiveBorder: 10,
|
||
theme: 'quarto',
|
||
placement: 'bottom-start',
|
||
};
|
||
if (contentFn) {
|
||
config.content = contentFn;
|
||
}
|
||
if (onTriggerFn) {
|
||
config.onTrigger = onTriggerFn;
|
||
}
|
||
if (onUntriggerFn) {
|
||
config.onUntrigger = onUntriggerFn;
|
||
}
|
||
window.tippy(el, config);
|
||
}
|
||
const noterefs = window.document.querySelectorAll('a[role="doc-noteref"]');
|
||
for (var i=0; i<noterefs.length; i++) {
|
||
const ref = noterefs[i];
|
||
tippyHover(ref, function() {
|
||
// use id or data attribute instead here
|
||
let href = ref.getAttribute('data-footnote-href') || ref.getAttribute('href');
|
||
try { href = new URL(href).hash; } catch {}
|
||
const id = href.replace(/^#\/?/, "");
|
||
const note = window.document.getElementById(id);
|
||
if (note) {
|
||
return note.innerHTML;
|
||
} else {
|
||
return "";
|
||
}
|
||
});
|
||
}
|
||
const xrefs = window.document.querySelectorAll('a.quarto-xref');
|
||
const processXRef = (id, note) => {
|
||
// Strip column container classes
|
||
const stripColumnClz = (el) => {
|
||
el.classList.remove("page-full", "page-columns");
|
||
if (el.children) {
|
||
for (const child of el.children) {
|
||
stripColumnClz(child);
|
||
}
|
||
}
|
||
}
|
||
stripColumnClz(note)
|
||
if (id === null || id.startsWith('sec-')) {
|
||
// Special case sections, only their first couple elements
|
||
const container = document.createElement("div");
|
||
if (note.children && note.children.length > 2) {
|
||
container.appendChild(note.children[0].cloneNode(true));
|
||
for (let i = 1; i < note.children.length; i++) {
|
||
const child = note.children[i];
|
||
if (child.tagName === "P" && child.innerText === "") {
|
||
continue;
|
||
} else {
|
||
container.appendChild(child.cloneNode(true));
|
||
break;
|
||
}
|
||
}
|
||
if (window.Quarto?.typesetMath) {
|
||
window.Quarto.typesetMath(container);
|
||
}
|
||
return container.innerHTML
|
||
} else {
|
||
if (window.Quarto?.typesetMath) {
|
||
window.Quarto.typesetMath(note);
|
||
}
|
||
return note.innerHTML;
|
||
}
|
||
} else {
|
||
// Remove any anchor links if they are present
|
||
const anchorLink = note.querySelector('a.anchorjs-link');
|
||
if (anchorLink) {
|
||
anchorLink.remove();
|
||
}
|
||
if (window.Quarto?.typesetMath) {
|
||
window.Quarto.typesetMath(note);
|
||
}
|
||
if (note.classList.contains("callout")) {
|
||
return note.outerHTML;
|
||
} else {
|
||
return note.innerHTML;
|
||
}
|
||
}
|
||
}
|
||
for (var i=0; i<xrefs.length; i++) {
|
||
const xref = xrefs[i];
|
||
tippyHover(xref, undefined, function(instance) {
|
||
instance.disable();
|
||
let url = xref.getAttribute('href');
|
||
let hash = undefined;
|
||
if (url.startsWith('#')) {
|
||
hash = url;
|
||
} else {
|
||
try { hash = new URL(url).hash; } catch {}
|
||
}
|
||
if (hash) {
|
||
const id = hash.replace(/^#\/?/, "");
|
||
const note = window.document.getElementById(id);
|
||
if (note !== null) {
|
||
try {
|
||
const html = processXRef(id, note.cloneNode(true));
|
||
instance.setContent(html);
|
||
} finally {
|
||
instance.enable();
|
||
instance.show();
|
||
}
|
||
} else {
|
||
// See if we can fetch this
|
||
fetch(url.split('#')[0])
|
||
.then(res => res.text())
|
||
.then(html => {
|
||
const parser = new DOMParser();
|
||
const htmlDoc = parser.parseFromString(html, "text/html");
|
||
const note = htmlDoc.getElementById(id);
|
||
if (note !== null) {
|
||
const html = processXRef(id, note);
|
||
instance.setContent(html);
|
||
}
|
||
}).finally(() => {
|
||
instance.enable();
|
||
instance.show();
|
||
});
|
||
}
|
||
} else {
|
||
// See if we can fetch a full url (with no hash to target)
|
||
// This is a special case and we should probably do some content thinning / targeting
|
||
fetch(url)
|
||
.then(res => res.text())
|
||
.then(html => {
|
||
const parser = new DOMParser();
|
||
const htmlDoc = parser.parseFromString(html, "text/html");
|
||
const note = htmlDoc.querySelector('main.content');
|
||
if (note !== null) {
|
||
// This should only happen for chapter cross references
|
||
// (since there is no id in the URL)
|
||
// remove the first header
|
||
if (note.children.length > 0 && note.children[0].tagName === "HEADER") {
|
||
note.children[0].remove();
|
||
}
|
||
const html = processXRef(null, note);
|
||
instance.setContent(html);
|
||
}
|
||
}).finally(() => {
|
||
instance.enable();
|
||
instance.show();
|
||
});
|
||
}
|
||
}, function(instance) {
|
||
});
|
||
}
|
||
let selectedAnnoteEl;
|
||
const selectorForAnnotation = ( cell, annotation) => {
|
||
let cellAttr = 'data-code-cell="' + cell + '"';
|
||
let lineAttr = 'data-code-annotation="' + annotation + '"';
|
||
const selector = 'span[' + cellAttr + '][' + lineAttr + ']';
|
||
return selector;
|
||
}
|
||
const selectCodeLines = (annoteEl) => {
|
||
const doc = window.document;
|
||
const targetCell = annoteEl.getAttribute("data-target-cell");
|
||
const targetAnnotation = annoteEl.getAttribute("data-target-annotation");
|
||
const annoteSpan = window.document.querySelector(selectorForAnnotation(targetCell, targetAnnotation));
|
||
const lines = annoteSpan.getAttribute("data-code-lines").split(",");
|
||
const lineIds = lines.map((line) => {
|
||
return targetCell + "-" + line;
|
||
})
|
||
let top = null;
|
||
let height = null;
|
||
let parent = null;
|
||
if (lineIds.length > 0) {
|
||
//compute the position of the single el (top and bottom and make a div)
|
||
const el = window.document.getElementById(lineIds[0]);
|
||
top = el.offsetTop;
|
||
height = el.offsetHeight;
|
||
parent = el.parentElement.parentElement;
|
||
if (lineIds.length > 1) {
|
||
const lastEl = window.document.getElementById(lineIds[lineIds.length - 1]);
|
||
const bottom = lastEl.offsetTop + lastEl.offsetHeight;
|
||
height = bottom - top;
|
||
}
|
||
if (top !== null && height !== null && parent !== null) {
|
||
// cook up a div (if necessary) and position it
|
||
let div = window.document.getElementById("code-annotation-line-highlight");
|
||
if (div === null) {
|
||
div = window.document.createElement("div");
|
||
div.setAttribute("id", "code-annotation-line-highlight");
|
||
div.style.position = 'absolute';
|
||
parent.appendChild(div);
|
||
}
|
||
div.style.top = top - 2 + "px";
|
||
div.style.height = height + 4 + "px";
|
||
div.style.left = 0;
|
||
let gutterDiv = window.document.getElementById("code-annotation-line-highlight-gutter");
|
||
if (gutterDiv === null) {
|
||
gutterDiv = window.document.createElement("div");
|
||
gutterDiv.setAttribute("id", "code-annotation-line-highlight-gutter");
|
||
gutterDiv.style.position = 'absolute';
|
||
const codeCell = window.document.getElementById(targetCell);
|
||
const gutter = codeCell.querySelector('.code-annotation-gutter');
|
||
gutter.appendChild(gutterDiv);
|
||
}
|
||
gutterDiv.style.top = top - 2 + "px";
|
||
gutterDiv.style.height = height + 4 + "px";
|
||
}
|
||
selectedAnnoteEl = annoteEl;
|
||
}
|
||
};
|
||
const unselectCodeLines = () => {
|
||
const elementsIds = ["code-annotation-line-highlight", "code-annotation-line-highlight-gutter"];
|
||
elementsIds.forEach((elId) => {
|
||
const div = window.document.getElementById(elId);
|
||
if (div) {
|
||
div.remove();
|
||
}
|
||
});
|
||
selectedAnnoteEl = undefined;
|
||
};
|
||
// Handle positioning of the toggle
|
||
window.addEventListener(
|
||
"resize",
|
||
throttle(() => {
|
||
elRect = undefined;
|
||
if (selectedAnnoteEl) {
|
||
selectCodeLines(selectedAnnoteEl);
|
||
}
|
||
}, 10)
|
||
);
|
||
function throttle(fn, ms) {
|
||
let throttle = false;
|
||
let timer;
|
||
return (...args) => {
|
||
if(!throttle) { // first call gets through
|
||
fn.apply(this, args);
|
||
throttle = true;
|
||
} else { // all the others get throttled
|
||
if(timer) clearTimeout(timer); // cancel #2
|
||
timer = setTimeout(() => {
|
||
fn.apply(this, args);
|
||
timer = throttle = false;
|
||
}, ms);
|
||
}
|
||
};
|
||
}
|
||
// Attach click handler to the DT
|
||
const annoteDls = window.document.querySelectorAll('dt[data-target-cell]');
|
||
for (const annoteDlNode of annoteDls) {
|
||
annoteDlNode.addEventListener('click', (event) => {
|
||
const clickedEl = event.target;
|
||
if (clickedEl !== selectedAnnoteEl) {
|
||
unselectCodeLines();
|
||
const activeEl = window.document.querySelector('dt[data-target-cell].code-annotation-active');
|
||
if (activeEl) {
|
||
activeEl.classList.remove('code-annotation-active');
|
||
}
|
||
selectCodeLines(clickedEl);
|
||
clickedEl.classList.add('code-annotation-active');
|
||
} else {
|
||
// Unselect the line
|
||
unselectCodeLines();
|
||
clickedEl.classList.remove('code-annotation-active');
|
||
}
|
||
});
|
||
}
|
||
const findCites = (el) => {
|
||
const parentEl = el.parentElement;
|
||
if (parentEl) {
|
||
const cites = parentEl.dataset.cites;
|
||
if (cites) {
|
||
return {
|
||
el,
|
||
cites: cites.split(' ')
|
||
};
|
||
} else {
|
||
return findCites(el.parentElement)
|
||
}
|
||
} else {
|
||
return undefined;
|
||
}
|
||
};
|
||
var bibliorefs = window.document.querySelectorAll('a[role="doc-biblioref"]');
|
||
for (var i=0; i<bibliorefs.length; i++) {
|
||
const ref = bibliorefs[i];
|
||
const citeInfo = findCites(ref);
|
||
if (citeInfo) {
|
||
tippyHover(citeInfo.el, function() {
|
||
var popup = window.document.createElement('div');
|
||
citeInfo.cites.forEach(function(cite) {
|
||
var citeDiv = window.document.createElement('div');
|
||
citeDiv.classList.add('hanging-indent');
|
||
citeDiv.classList.add('csl-entry');
|
||
var biblioDiv = window.document.getElementById('ref-' + cite);
|
||
if (biblioDiv) {
|
||
citeDiv.innerHTML = biblioDiv.innerHTML;
|
||
}
|
||
popup.appendChild(citeDiv);
|
||
});
|
||
return popup.innerHTML;
|
||
});
|
||
}
|
||
}
|
||
});
|
||
</script>
|
||
</div> <!-- /content -->
|
||
|
||
|
||
|
||
|
||
</body></html> |