{"id":3386,"date":"2025-04-14T08:15:12","date_gmt":"2025-04-14T01:15:12","guid":{"rendered":"https:\/\/www.hashmicro.com\/id\/blog\/?p=3386"},"modified":"2026-03-10T09:32:00","modified_gmt":"2026-03-10T02:32:00","slug":"mengenal-visitor-management-system","status":"publish","type":"post","link":"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/","title":{"rendered":"Visitor Management System: Pengertian &#038; Manfaatnya"},"content":{"rendered":"<p>Pernah mengalami situasi resepsionis lagi ramai, tamu datang rombongan, lalu pencatatan \u201csekadarnya\u201d di buku tamu atau <em>chat<\/em>? Di momen seperti itu, satu orang bisa saja ikut masuk bareng rombongan, kartu identitas tertinggal, atau tujuan kunjungan tidak tercatat jelas. Kelihatannya sepele, tapi dampaknya baru terasa ketika Anda perlu memastikan siapa yang sempat berada di area tertentu.<\/p>\n<p>Masalahnya, begitu data pengunjung tidak rapi, kontrol akses jadi mengandalkan ingatan dan asumsi. Padahal banyak insiden keamanan berawal dari hal non-teknis seperti kelalaian, salah prosedur, atau social engineering. <a href=\"https:\/\/www.verizon.com\/business\/resources\/reports\/dbir\/\" target=\"_blank\" rel=\"noopener\">Verizon DBIR 2024<\/a> mencatat \u201chuman element\u201d terlibat dalam 68% insiden di dataset mereka.<\/p>\n<p>Selain soal keamanan fisik, data pengunjung juga termasuk data pribadi yang perlu dikelola dengan tertib. UU No. 27 Tahun 2022 tentang Pelindungan Data Pribadi mengatur pemrosesan data pribadi serta kewajiban pengendali\/prosesor data. Karena itu, visitor management system yang baik bukan hanya<a href=\"https:\/\/www.hashmicro.com\/id\/blog\/petty-cash\/\"> \u201cbuku tamu digital\u201d<\/a>, tetapi membantu verifikasi identitas, check-in\/check-out, izin akses area, dan <a href=\"https:\/\/www.hashmicro.com\/id\/blog\/audit-trail\/\">audit trail<\/a> yang jelas.<\/p>\n<table style=\"border-collapse: collapse; background-color: #fffacd; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); border-radius: 25px 25px 25px 25px;\" width=\"100%\">\n<tbody>\n<tr>\n<td style=\"padding: 15px; border: none;\">\n<h3 style=\"margin-bottom: 10px;\"><span style=\"background-color: #990000; color: #ffffff; padding: 5px;\"><b>Key Takeaways<\/b><\/span><\/h3>\n<ul>\n<li aria-level=\"1\"><a href=\"#apa-itu\">Sistem pengelolaan pengunjung adalah<\/a> sebuah sistem yang dirancang untuk mengatur dan memantau kunjungan yang memasuki kantor Anda.<\/li>\n<li aria-level=\"1\">Melalui <a href=\"#fitur-itu\">fitur-fitur canggihnya<\/a>, VMS mampu <a href=\"#manfaat-itu\">meningkatkan kenyamanan<\/a> dan keamanan gedung.<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span id=\"apa-itu\">\r\n\r\n<script>\r\n    \/\/ check which image to use based on screensize\r\n    document.addEventListener(\"DOMContentLoaded\", function() {\r\n        function updateImageSource() {\r\n            var images = document.querySelectorAll('.responsive-image-banner');\r\n            var screenWidth = window.innerWidth;\r\n\r\n            images.forEach(function(img) {\r\n                var mobileSrc = img.getAttribute('data-mobile-src');\r\n                var desktopSrc = img.getAttribute('data-desktop-src');\r\n\r\n                if (screenWidth < 576 && mobileSrc) {\r\n                    img.setAttribute('src', mobileSrc);\r\n                } else {\r\n                    img.setAttribute('src', desktopSrc);\r\n                }\r\n            });\r\n        }\r\n\r\n        \/\/ Initial check\r\n        updateImageSource();\r\n\r\n        \/\/ Update on resize\r\n        window.addEventListener('resize', updateImageSource);\r\n    });\r\n<\/script> <div id=\"toc_group_article\" style=''>\r\n\t<p style='font-size:25px;font-weight:bold; margin-bottom:0px'>\r\n\t\tDaftar Isi:\r\n\t<\/p>\r\n\t<ul id=\"list_toc\" class='list_toc'><\/ul>\r\n<\/div>\r\n\r\n<div id=\"placeholder-toc\"><\/div>\r\n<div id=\"toc\">\r\n    <div class=\"header\">\r\n\t<span class=\"toc-title\" id=\"toc-title\">Daftar Isi<\/span>\t\r\n\t <i class=\"toc-icon\">\r\n        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"30\" height=\"30\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#000\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"header-icon\">\r\n          <path d=\"m6 9 6 6 6-6\" \/>\r\n        <\/svg>\r\n      <\/i>\r\n\t<\/div>\r\n    <div class=\"list\">\r\n      <ul id=\"toc-list\"><\/ul>\r\n    <\/div>\r\n <\/div>\r\n\r\n<style>\r\n\/* Simple styling for the TOC *\/\r\n\t\r\n\t#toc ul li:last-child {\r\n    padding-bottom: 16px; \/* Adjust the value as needed *\/\r\n}\r\n\r\n.td-fix-index {\r\n\t transform: unset !important;\r\n     -webkit-transform: unset !important; \r\n}\r\n.footer-contact .td-fix-index {\r\n\t transform: translateZ(0) !important;\r\n     -webkit-transform: translateZ(0) !important; \r\n}\r\n\t.tdb_single_content .tdb-block-inner.td-fix-index{\r\n\t\tposition: static;\r\n\t}\r\n\t\r\n\r\n\r\n\t\r\n#toc {\r\n  background-color: #FFF;\r\n\tpadding: 17px 24px 0px 24px !important;\r\n  margin-bottom: 20px;\r\n\/*   border: 1px solid #9C171E; *\/\r\n  border-radius: 6px;\r\n\tdisplay: none;\r\n  max-width: 100%;\r\n  transition: .4s ease height;\r\n\tmargin-left: 0;\r\n\toverflow: hidden;\r\n}\r\n\r\n#toc .header{\r\n  display: flex;\r\n  align-items: center;\r\n  justify-content: space-between;\r\n\tbackground-color: transparent;\r\n}\r\n\t\r\n\t#toc.sticky .header{\r\n\t\tpadding: 4px 0;\r\n\t}\r\n\t\r\n.header p{\r\n  font-size: 18px !important;\r\n  font-weight: 600 !important;\r\n  color: #393939;\r\n   margin-bottom: 0;\r\n  \/* margin-top: 20px; *\/\r\n}\r\n\r\n.toc-icon{\r\n  float: right;\r\n\/*   visibility: hidden; *\/\r\n}\r\n\r\n\t.toc-title{\r\n\t\tmargin-right: auto;\r\n\/* \t\tpadding-left: 20px; *\/\r\n\t\tfont-weight: 600;\r\n\t\talign-self: center;\t}\t\r\n\r\n#toc ul {\r\n  list-style-type: none;\r\n  padding-left: 0;\r\n}\r\n\t\r\n#toc.sticky ul{\r\n\toverflow-y: auto;\r\n\tmax-height: 250px;\r\n\tmargin-top: 0px;\r\n\tpadding-top: 20px;\r\n\/* \tborder-top: 1px solid #d3d3d3; *\/\r\n}\r\n\t\r\n#toc ul li {\r\n\/*   margin-bottom: 10px; *\/\r\n  margin-bottom: 10px;\r\n\tmargin-left: 0;\r\n\ttransition: .2s ease;\r\n\tcursor: pointer;\r\n}\r\n\t\r\n\t#toc.sticky ul li {\r\n\t  margin-right: 10px;\r\n\t}\r\n\t\r\n.td-post-content #toc-list li a:hover, .td-post-content #toc-list a.active{\r\n\tbackground-color: #FFF;\r\n\/* \tpadding: 8px 16px 8px 16px; *\/\r\n\tpadding: 4px 16px 4px 16px;\r\n\tborder-radius: 6px;\r\n\tcolor: #9c171e !important;\r\n\tfont-weight: 600 !important;\r\n}\r\n\t\r\n\t.td-post-content #toc-list li:hover a, .td-post-content #toc-list a.active{\r\n\t\tcolor: #9C171E !important;\r\n\t\tfont-weight: 600 !important;\r\n\t}\r\n\t\r\n.td-post-content #toc-list a.active{\r\n\tfont-weight: bold !important;\r\n\tcolor: #9C171E !important;\r\n}\r\n\t\r\n#toc a, .td-post-content #toc-list a {\r\n  text-decoration: none;\r\n  color: #ea1717 !important;\r\n  transition: .2s ease;\r\n\tfont-weight: 400 !important;\r\n\tdisplay: block;\r\n\t\r\n\tpadding: 4px 16px 4px 0;\r\n}\r\n\r\n#toc.sticky {\r\n  position: fixed;\r\n\/*   top: 73px; *\/\r\n\tbottom: 0;\r\n  z-index: 100; \r\n  box-shadow: 0 2px 5px rgba(0,0,0,0.1); \r\n\twidth: 100%; \r\n\tbackground-color: #FFF;\r\n\/* \tbackground-color: #FFF1F1; *\/\r\n\tborder-bottom: 1px solid #ea1717;\r\n\/*   border: 1px solid #393939; *\/\r\n  box-shadow: 0px 0px 14px 0px #00000040;\r\n  cursor: pointer;\r\n\tanimation: fadein .3s ease;\r\n\tpadding: 12px 16px !important;\r\n}\r\n\t\r\n\t.fadein{\r\n\t\tanimation: fadein .3s ease;\r\n\t}\r\n\t\r\n\t.fadeout{\r\n\t\tanimation: fadeout .3s ease;\r\n\t}\r\n\t\r\n\t\r\n\t@keyframes fadein{\r\n\t\t0% {\r\n\t\t\topacity: 0;\r\n\t\t}\r\n\t\t100%{\r\n\t\t\topacity: 1;\r\n\t\t}\r\n\t}\r\n\t\r\n\t@keyframes fadeout{\r\n\t\t0% {\r\n\t\t\topacity: 1;\r\n\t\t}\r\n\t\t100%{\r\n\t\t\topacity: 0;\r\n\t\t}\r\n\t}\r\n\r\n\t\r\n#toc.sticky .header p{\r\n\tmargin-bottom: 10px;\r\n\tmargin-top: 10px;\r\n}\r\n\r\n#toc.sticky .toc-icon{\r\n  visibility: visible;\r\n\/* \ttransition: 0.4s ease; *\/\r\n}\r\n\t\r\n\t.toc-icon{\r\n\t\talign-items: center;\r\n    \tdisplay: flex;\r\n\t}\r\n\t\r\n\tsvg.header-icon{\r\n\/* \t\tbackground-color: #9c171e; *\/\r\n\t\tbackground-color: #FFF;\r\n\t\tborder-radius: 30px;\r\n\t\tpadding: 5px;\r\n\t}\r\n\r\n#toc.sticky .list{\r\n\/*   max-height: 0; *\/\r\n  transition: height 0.4s ease;\r\n}\r\n\t\r\n\t#toc .list{\r\n\/*   max-height: 0; *\/\r\n  transition: height 0.4s ease;\r\n}\r\n\r\n#toc .header.active .toc-icon{\r\n\ttransform: rotate(0deg); \r\n\topacity: 1;\r\n}\r\n\r\n\t#toc .header.active + .list {\r\n\t  max-height: 200px; \/* Adjust this value as needed *\/\r\n\t  opacity: 1;\r\n\t}\r\n\t\r\n\t#placeholder-toc{\r\n\/* \t\tdisplay: none; *\/\r\n\t}\r\n\t\r\n\t@media (min-width: 768px) and (max-width: 991px){\r\n\t\t#toc.sticky{\r\n\/* \t\t\ttop: 104px; *\/\r\n\t\t\tbottom: 0px;\r\n\t\t}\r\n\t\t\r\n\t\t#toc{\r\n\t\t\twidth: unset !important;\r\n\t\t}\r\n\t}\r\n\t\r\n\t@media (max-width: 767px){\r\n\t\t#toc{\r\n\t\t\twidth: 100% !important;\r\n\t\t\tdisplay: inline-block;\r\n\t\t}\r\n\t\t\r\n\t\t#toc.sticky{\r\n\t\t\twidth: 90% !important;\r\n\/* \t\t\ttop: 81px; *\/\r\n\t\t\tbottom: 60px;\r\n\t\t\tmargin-left: auto;\r\n\t\t\tmargin-right: auto;\r\n\t\t\tpadding: 0 16px;\r\n\t\t\tright: 5%;\r\n\t\t}\r\n\t}\r\n\t\r\n\t<\/style>\r\n\r\n<style>\r\n\t#list_toc li {margin-bottom: 0;margin-top: 5px;}\r\n\t#list_toc > li > ul {padding-left: 20px;margin-bottom: 0;}\r\n\t#list_toc{height:max-content;transition:ease-in-out}\r\n\t#list_toc li {margin-bottom: 0;margin-top: 5px;}\r\n\t#list_toc_float li.active > a {color:#b1252d;background: #ffe1e3;}\r\n\t#list_toc_float li a {padding:3px 7px}\r\n\t#list_toc_float li a {\r\n\t\tdisplay: block;\r\n\t\tcolor:#000;\r\n\t\tmargin-bottom: 10px;\r\n\t\ttransition:all 0.2s ease-in-out;\r\n\t\tfont-size:15px\r\n\t}\r\n\t#list_toc_float li{list-style:none;list-style-position:inside; margin-left:0;}\r\n\t#list_toc_float a:hover{color:#b1252d;}\r\n\t\r\n\t#list_toc_float li a{margin-bottom:0px}\r\n\t#toc_group_float{\r\n\t\tline-height: 24px;\r\n\t\tmax-height: calc(100vh - 100px);\r\n\t\toverflow: auto;\r\n\t\tz-index: 99;\r\n\t\tdisplay:none!important;\r\n\t\tbackground:#fff;\r\n\t\ttransition:all 0.5s linear\r\n\t}\r\n\t\r\n\t@media (min-width:1019px){\r\n\t\t#toc_group_float {\r\n\t\t\tdisplay:block!important;\r\n\t\t\t}\r\n\t\t#toc_group_article {\r\n\t\t\tdisplay:none;\r\n\t\t}\r\n\t}\r\n\t\r\n\t@media (max-width:768px){\r\n\t\t#toc_group_article {\r\n\t\t\tdisplay:none;\r\n\t\t}\r\n\t}\r\n\t\r\n\t \/* custom scrollbar style *\/\r\n::-webkit-scrollbar {\r\n    width: 7px;\r\n}\r\n::-webkit-scrollbar-track {\r\n    background: #d7a2a4;\r\n}\r\n::-webkit-scrollbar-thumb {\r\n    background: #b1252d;\r\n    border-radius: 15px;\r\n}\t\t\r\n\r\n<\/style>\r\n\r\n<script>\r\n\tdocument.addEventListener('DOMContentLoaded', function() {\r\n\t\t\/\/ Fungsi untuk menangani klik pada semua elemen <a> dengan href yang dimulai dengan #\r\n\t\tfunction handleTitleClick(event) {\r\n\t\t\tevent.preventDefault();\r\n\t\t\tconst targetId = this.getAttribute('href').substring(1);\r\n\t\t\tconst targetElement = document.getElementById(targetId);\r\n\r\n\t\t\tif (targetElement) {\r\n\t\t\t\tconst headerHeight = document.querySelector('#toc .header').offsetHeight;\r\n\t\t\t\tconst navbarHeight = document.getElementById('tdi_34') ? document.getElementById('tdi_34').offsetHeight : 0;\r\n\t\t\t\tconst windowHeight = window.innerHeight;\r\n\t\t\t\tconst targetOffset = targetElement.offsetTop;\r\n\t\t\t\tconst scrollTo = targetOffset + (windowHeight \/ 2) + (headerHeight) - navbarHeight - 40;\r\n\r\n\t\t\t\twindow.scrollTo({\r\n\t\t\t\t\ttop: scrollTo,\r\n\t\t\t\t\tbehavior: 'smooth'\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t\/\/ Tambahkan event listener untuk semua elemen <a> di toc-list dan list-toc\r\n\t\tconst titleLinks = document.querySelectorAll('#toc-list a, #list_toc a');\r\n\t\ttitleLinks.forEach(link => {\r\n\t\t\tlink.addEventListener('click', handleTitleClick);\r\n\t\t});\r\n\t});\r\n<\/script>\r\n\r\n<!-- ToC List for mobile -->\r\n<script>\r\n \/\/ Generate TOC based on headings\r\ndocument.addEventListener(\"DOMContentLoaded\", function() {\r\n  \/\/ Get the element that will contain the TOC\r\n  const tocList = document.getElementById('toc-list');\r\n\r\n  \/\/ Get the element with the ID 'article-left'\r\n  const article = document.querySelector('.td-post-content');\r\n\r\n  \/\/ Find all h2 elements within 'myarticle'\r\n  const headers = article.getElementsByTagName('h2');\r\n\r\n  \/\/ Loop through the h2 elements and create a list item for each one\r\n  for (let i = 0; i < headers.length; i++) {\r\n    const header = headers[i];\r\n    const headerText = header.textContent;\r\n\/\/     const headerId = 'header-' + i;\r\n    const headerId = headerText\r\n    .toLowerCase()\r\n    .trim()\r\n    .replace(\/[^\\w\\s-]\/g, '')  \/\/ hapus tanda baca\r\n    .replace(\/\\s+\/g, '-'); \/\/ ganti spasi jadi \"-\"\r\n\r\n    \/\/ Set an ID for the header if it doesn't have one\r\n    header.setAttribute('id', headerId);\r\n\r\n    \/\/ Create a list item for the TOC\r\n    const listItem = document.createElement('li');\r\n\r\n    \/\/ Create a link for the list item\r\n    const link = document.createElement('a');\r\n    link.setAttribute('href', '#' + headerId);\r\n    link.textContent = headerText;\r\n\r\n    \/\/ Append the link to the list item\r\n    listItem.appendChild(link);\r\n\r\n    \/\/ Append the list item to the TOC list\r\n    tocList.appendChild(listItem);\r\n  }\r\n});\r\n\r\n\/\/ Keep height and placement of content using placeholder in place of TOC\r\ndocument.addEventListener(\"DOMContentLoaded\", function() {\r\n  const toc = document.querySelector('#toc');\r\n  const placeholderToc = document.querySelector('#placeholder-toc');\r\n\r\n  function setPlaceholderHeight() {\r\n    placeholderToc.style.height = `${toc.offsetHeight}px`;\r\n  }\r\n\r\n  \/\/ Set the initial height of the placeholder\r\n  setPlaceholderHeight();\r\n\r\n  \/\/ Update the height on window resize\r\n  window.addEventListener('resize', setPlaceholderHeight);\r\n});\r\n  const tocTitle = document.querySelector('#toc-title'); \/\/ Assuming header-faq is the element for TOC title\r\n\r\n\/\/ Sticky TOC and update heading\r\n\/\/ document.addEventListener(\"DOMContentLoaded\", function() {\r\n\/\/   const toc = document.querySelector('#toc');\r\n\/\/   const footer = document.querySelector('.td-footer-template-wrap');\r\n\/\/   const tocParent = toc.parentElement;\r\n\/\/   const divTop = tocParent.getBoundingClientRect().top + window.pageYOffset;\r\n\/\/   const tocHeight = toc.offsetHeight;\r\n\/\/   const triggerPoint = divTop + tocHeight + 700;\r\n\/\/   const footerHeight = footer.offsetHeight;\r\n\/\/   const triggerFooterPoint = footer.getBoundingClientRect().top + window.pageYOffset - footerHeight - footerHeight - footerHeight;\r\n\/\/   const phtoc = document.querySelector('#placeholder-toc');\r\n\/\/   const headers = document.querySelectorAll('.td-post-content h2');\r\n\/\/   const navLinks = document.querySelectorAll('#toc-list a');\r\n\t\r\n\/\/ \tconst panel2 = document.querySelector(\"#toc .list\");\r\n\/\/ \tvar icon = document.querySelector(\".toc-icon\");\r\n\r\n\/\/   let activeLink = null; \/\/ Declare activeLink outside the loop\r\n\t\r\n\/\/   \/\/ Function to handle scroll and add\/remove .sticky class\r\n\/\/   function handleScroll() {\r\n\/\/     const windowTop = window.pageYOffset || document.documentElement.scrollTop;\r\n\/\/     let currentHeader = '';\r\n\r\n\/\/     \/\/ Highlight user progress as the heading comes\r\n\/\/     headers.forEach(header => {\r\n\/\/ \t\tconst headerTop = header.offsetTop;\r\n\/\/ \t\tconst headerHeight = header.clientHeight;\r\n\/\/ \/\/ \t\tif (window.scrollY >= (headerTop - headerHeight + 700)) {\r\n\/\/ \/\/ \t\t\tconst currentHeaderId = header.getAttribute('id');\r\n\/\/ \/\/ \t\t\tconst currentHeaderText = document.getElementById(currentHeaderId).textContent;\r\n\/\/ \/\/ \t\t\tconsole.log(\"current header text:\", currentHeaderText);\r\n\/\/ \/\/ \t\t\ttocTitle.textContent = currentHeaderText;\r\n\/\/ \/\/ \t\t\tcurrentHeader = currentHeaderId;\r\n\t\t\t\r\n\/\/ \/\/ \t\t\tif(window.innerWidth < 767){\r\n\/\/ \/\/ \t\t\t\ttocTitle.textContent = 'Daftar Isi';\r\n\/\/ \/\/ \t\t\t}\r\n\/\/ \/\/ \t\t}\r\n\/\/ \t\tif(window.innerWidth < 767){\r\n\/\/ \t\t\ttocTitle.textContent = 'Daftar Isi'; \/\/ Selalu pertahankan judul ini di mobile\r\n\/\/ \t\t} else {\r\n\/\/ \t\t\tif (window.scrollY >= (headerTop - headerHeight + 700)) {\r\n\/\/ \t\t\t\tconst currentHeaderId = header.getAttribute('id');\r\n\/\/ \t\t\t\tconst currentHeaderText = document.getElementById(currentHeaderId).textContent;\r\n\/\/ \t\t\t\ttocTitle.textContent = currentHeaderText;\r\n\/\/ \t\t\t\tcurrentHeader = currentHeaderId;\r\n\/\/ \t\t\t}\r\n\/\/ \t\t}\r\n\/\/ \t});\r\n\r\n\/\/     navLinks.forEach(link => {\r\n\/\/       link.classList.remove('active');\r\n\/\/       if(currentHeader != '') {\r\n\/\/ \t\t  if (link.getAttribute('href').includes(currentHeader)) {\r\n\/\/ \t\t\t  link.classList.add('active');\r\n\/\/ \t\t  }\r\n\/\/ \t  }\r\n\/\/     });\r\n\/\/ \/\/     if (windowTop < triggerFooterPoint) {\r\n\/\/ \/\/         toc.style.display = 'block';\r\n\/\/ \/\/ \t}else{\r\n\/\/ \/\/         toc.style.display = 'none';\r\n\/\/ \/\/ \t}\r\n\/\/     \/\/ Update TOC title if sticky\r\n\/\/     if (windowTop > triggerPoint) {\r\n\/\/       if (!toc.classList.contains('sticky')) {\r\n\/\/         phtoc.style.display = \"block\";\r\n\/\/         toc.classList.add('sticky');\r\n\/\/         toc.style.width = `${tocParent.offsetWidth}px`; \/\/ Set width to match the parent element\r\n\/\/         toc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n\/\/         toc.style.backgroundColor = \"#FFF\";\r\n\/\/ \t\tpanel2.style.height = '0px';\r\n\/\/ \t\t  icon.style.transform = \"rotate(180deg)\";\r\n\/\/ \t\t  if(window.innerWidth < 767){\r\n\/\/ \/\/ \t\t\t  const tocs = document.querySelector('#toc.sticky');\r\n\/\/ \t\t\t  tocTitle.textContent = 'Daftar Isi'; \/\/ Reset title\r\n\/\/        \t\t  toc.style.width = '150px'; \/\/ Set width to match the parent element\r\n\/\/ \t\t  }\r\n\/\/       }\r\n\/\/       if (currentHeader) {\r\n\/\/ \/\/         console.log(\"activeLink:\", activeLink);\r\n\/\/         if (activeLink) {\r\n\/\/ \/\/           tocTitle.textContent = activeLink.textContent; \/\/ Update TOC title\r\n\/\/           tocTitle.textContent = activeLink ? activeLink.textContent : \"\"; \/\/ Update title only if activeLink exists\r\n\/\/         }\r\n\/\/       }\r\n\/\/     } else {\r\n\/\/       toc.classList.remove('sticky');\r\n\/\/       phtoc.style.display = \"none\";\r\n\/\/       toc.style.width = 'unset'; \/\/ Reset to original width\r\n\/\/       toc.style.backgroundColor = \"#FFF\";\r\n\/\/       tocTitle.textContent = 'Daftar isi'; \/\/ Reset title\r\n\/\/ \t\tpanel2.style.height = panel2.scrollHeight + \"px\";\r\n\/\/ \t\ticon.style.transform = \"rotate(180deg)\";\r\n\/\/     }\r\n\/\/   }\r\n\r\n\/\/     \/\/ Attach the scroll event listener to the window\r\n\/\/     window.addEventListener('scroll', handleScroll);\r\n\r\n\/\/     \/\/ Initial call to handleScroll to set the correct state on load\r\n\/\/     handleScroll();\r\n\/\/ });\r\n\t\r\n\/\/ \t\/\/ Open toggle TOC\r\n\/\/ \t  document.addEventListener(\"DOMContentLoaded\", function() {\r\n\/\/ \t\tvar tocHeader = document.querySelector(\"#toc .header\");\r\n\/\/ \t\tvar toc = document.querySelector(\"#toc\");\r\n\/\/ \t\tvar icon = document.querySelector(\".toc-icon\");\r\n\/\/ \t\tconst tocTitle = document.querySelector('#toc-title');\r\n\/\/ \t\tconst tocs = document.querySelector('#toc.sticky');\r\n\/\/  \t\tconst tocParent = toc.parentElement;\t\t  \r\n\r\n\/\/ \t\t  tocHeader.addEventListener(\"click\", function() {\r\n\/\/ \t\t\tvar panel = this.nextElementSibling;\r\n\/\/ \t\t\tif (panel.style.height !== '0px') { \/\/ Check if height is not 0px\r\n\/\/ \t\t\t  panel.style.height = '0px'; \/\/ Set height to 0 for full collapse\r\n\/\/ \t\t\t  icon.style.transform = \"rotate(180deg)\";\r\n\/\/ \/\/ \t\t\t\ttoc.style.paddingBottom = '6px'; \r\n\/\/ \t\t\t\tif(window.innerWidth > 768){\r\n\/\/ \t\t\t\t\tif(!toc.classList.contains('sticky')){\r\n\/\/ \t\t\t\t\t\ttoc.style.width = \"unset\";\r\n\/\/ \/\/ \t\t\t\t\t\ttoc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n\/\/ \t\t\t\t\t}\r\n\/\/ \t\t\t\t\tif (toc.classList.contains('sticky')){\r\n\/\/ \t\t\t\t\t\ttoc.style.width = '${tocParent.offsetWidth}px';\r\n\/\/ \t\t\t\t\t\ttoc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n\/\/ \t\t\t\t\t}\r\n\/\/ \t\t\t\t}\r\n\/\/ \t\t\t\tif(window.innerWidth < 767){\r\n\/\/ \t\t\t\t\ttoc.style.width = \"unset\"; \/\/ Reset width\r\n\/\/ \t\t\t\t}\r\n\/\/ \t\t\t\ttoc.style.backgroundColor = \"#FFF1F1\";\r\n\/\/ \t\t\t} else {\r\n\/\/ \t\t\t  panel.style.height = panel.scrollHeight + \"px\";\r\n\/\/ \t\t\t  icon.style.transform = \"rotate(0deg)\";\r\n\/\/ \t\t\t  toc.style.backgroundColor = \"#FFF\";\r\n\/\/ \t\t\t  tocTitle.textContent = 'Daftar isi'; \/\/ Reset title\r\n\/\/ \t\t\t\ttoc.style.paddingBottom = '24px';\r\n\/\/ \t\t\t \tif(window.innerWidth < 767){\r\n\/\/ \t\t\t\t\ttoc.style.width = `${tocParent.offsetWidth}px`; \/\/ Set width to match the parent element\r\n\/\/ \t\t\t\t\ttoc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n\/\/ \t\t\t\t}\r\n\/\/ \t\t\t}\r\n\/\/ \t\t  });\r\n\r\n\/\/ \t\t  \/\/ Close TOC when a link inside it is clicked\r\n\/\/ \t\t  var tocLinks = document.querySelectorAll(\"#toc .list a\");\r\n\/\/ \t\t  tocLinks.forEach(function(link) {\r\n\/\/ \t\t\tlink.addEventListener(\"click\", function() {\r\n\/\/ \t\t\t  var panel = document.querySelector(\"#toc .list\");\r\n\/\/ \t\t\t  panel.style.height = '0px'; \/\/ Set height to 0 for full collapse\r\n\/\/ \t\t\t  icon.style.transform = \"rotate(180deg)\";\r\n\/\/ \t\t\t  toc.style.backgroundColor = \"#FFF\";\r\n\/\/ \t\t\t});\r\n\/\/ \t\t  });\r\n\/\/ \t\t});\r\n\r\n\/\/ START new JS for ToC improvements\r\ndocument.addEventListener(\"DOMContentLoaded\", function() {\r\n  const toc = document.querySelector('#toc');\r\n  const footer = document.querySelector('.td-footer-template-wrap');\r\n  const tocParent = toc.parentElement;\r\n  const divTop = tocParent.getBoundingClientRect().top + window.pageYOffset;\r\n  const tocHeight = toc.offsetHeight;\r\n  const triggerPoint = divTop + tocHeight + 1750;\r\n\tconsole.log(triggerPoint)\r\n  const footerHeight = footer.offsetHeight;\r\n  const triggerFooterPoint = footer.getBoundingClientRect().top + window.pageYOffset - footerHeight*3;\r\n  const phtoc = document.querySelector('#placeholder-toc');\r\n  const headers = document.querySelectorAll('.td-post-content h2');\r\n  const navLinks = document.querySelectorAll('#toc-list a');\r\n  \r\n  const panel2 = document.querySelector(\"#toc .list\");\r\n  const icon = document.querySelector(\".toc-icon\");\r\n  const tocTitle = document.querySelector('#toc-title');\r\n\r\n  let activeLink = null;\r\n  let userClosedTOC = false; \/\/ Flag user menutup TOC\r\n\r\n  function handleScroll() {\r\n    const windowTop = window.pageYOffset || document.documentElement.scrollTop;\r\n    let currentHeader = '';\r\n\r\n    \/\/ Update TOC title sesuai header yang terlihat\r\n    headers.forEach(header => {\r\n      const headerTop = header.offsetTop;\r\n      const headerHeight = header.clientHeight;\r\n      if(window.innerWidth < 767){\r\n        tocTitle.textContent = 'Daftar Isi'; \r\n      } else {\r\n        if (window.scrollY >= (headerTop - headerHeight + 1750)) {\r\n          const currentHeaderId = header.getAttribute('id');\r\n          const currentHeaderText = document.getElementById(currentHeaderId).textContent;\r\n          tocTitle.textContent = currentHeaderText;\r\n          currentHeader = currentHeaderId;\r\n        }\r\n      }\r\n    });\r\n\r\n    navLinks.forEach(link => {\r\n      link.classList.remove('active');\r\n      if(currentHeader && link.getAttribute('href').includes(currentHeader)) {\r\n        link.classList.add('active');\r\n      }\r\n    });\r\n\r\n    if (windowTop > triggerPoint) {\r\n      if (!toc.classList.contains('sticky')) {\r\n        phtoc.style.display = \"block\";\r\n        toc.classList.add('sticky');\r\n        toc.style.width = `${tocParent.offsetWidth}px`;\r\n        toc.style.backgroundColor = \"#FFF\";\r\n        \/\/ Saat sticky, TOC otomatis tertutup\r\n        panel2.style.height = '0px';\r\n        icon.style.transform = \"rotate(180deg)\";\r\n        userClosedTOC = true; \/\/ Set flag supaya tidak terbuka saat scroll\r\n      }\r\n      \r\n      if(window.innerWidth < 767){\r\n        tocTitle.textContent = 'Daftar Isi'; \r\n        toc.style.width = '150px';\r\n      }\r\n\r\n    } else {\r\n      toc.classList.remove('sticky');\r\n      phtoc.style.display = \"none\";\r\n      toc.style.width = 'unset';\r\n      toc.style.backgroundColor = \"#FFF\";\r\n      tocTitle.textContent = 'Daftar isi'; \r\n\r\n      \/\/ Kembalikan panel jika user belum menutup manual\r\n      if(!userClosedTOC) {\r\n        panel2.style.height = panel2.scrollHeight + \"px\";\r\n        icon.style.transform = \"rotate(0deg)\";\r\n      }\r\n    }\r\n  }\r\n\r\n  window.addEventListener('scroll', handleScroll);\r\n  handleScroll();\r\n\r\n  \/\/ Toggle TOC saat user klik\r\n  const tocHeader = document.querySelector(\"#toc .header\");\r\n  tocHeader.addEventListener(\"click\", function() {\r\n    const panel = panel2;\r\n    if (panel.style.height !== '0px') {\r\n      panel.style.height = '0px';\r\n      icon.style.transform = \"rotate(180deg)\";\r\n      userClosedTOC = true;\r\n    } else {\r\n      panel.style.height = panel.scrollHeight + \"px\";\r\n      icon.style.transform = \"rotate(0deg)\";\r\n      userClosedTOC = false;\r\n    }\r\n  });\r\n\r\n  \/\/ Close TOC saat link diklik\r\n  document.querySelectorAll(\"#toc .list a\").forEach(link => {\r\n    link.addEventListener(\"click\", function() {\r\n      panel2.style.height = '0px';\r\n      icon.style.transform = \"rotate(180deg)\";\r\n      userClosedTOC = true;\r\n    });\r\n  });\r\n});\r\n\/\/ END new JS for ToC improvements\r\n\r\n\t\r\n\/\/ \tmake the heading at the center of the viewport\r\n\/\/ \tdocument.addEventListener('DOMContentLoaded', function() {\r\n\/\/     \/\/ Add click event listener to all links in the TOC list\r\n\/\/     document.querySelectorAll('#toc-list a').forEach(anchor => {\r\n\/\/         anchor.addEventListener('click', function (e) {\r\n\/\/             e.preventDefault(); \/\/ Prevent the default behavior of jumping to the anchor\r\n\/\/ \/\/ \t\t\tconsole.log(\"prevent default\");\r\n\/\/             const targetId = this.getAttribute('href').substring(1); \/\/ Get the ID of the target element\r\n\/\/             const targetElement = document.getElementById(targetId); \/\/ Get the target element\r\n\r\n\/\/             if (targetElement) {\r\n\/\/                 const headerHeight = document.querySelector('#toc .header').offsetHeight; \/\/ Get the height of the fixed header\r\n\/\/                 const windowHeight = window.innerHeight; \/\/ Get the height of the viewport\r\n\/\/                 const targetOffset = targetElement.offsetTop; \/\/ Get the top offset of the target element\r\n\/\/                 const scrollTo = targetOffset + (windowHeight \/ 2) + (headerHeight); \/\/ Calculate the scroll position to center the target element\r\n\r\n\/\/                 \/\/ Scroll to the calculated position smoothly\r\n\/\/                 window.scrollTo({\r\n\/\/                     top: scrollTo,\r\n\/\/                     behavior: 'smooth'\r\n\/\/                 });\r\n\/\/             }\r\n\/\/         });\r\n\/\/     });\r\n\/\/ });\r\n<\/script>\r\n\r\n<script>\r\n    \/\/ Scrollspy function to highlight the active TOC item based on the scroll position\r\n  function scrollSpy(tocClass) {\r\n    const scrollPosition = window.scrollY;\r\n\r\n    \/\/ Find the active h2 and h3 headings based on their position in the corresponding TOC\r\n    let activeH2 = null;\r\n    let activeH3 = null;\r\n\r\n    const tocItems = document.querySelectorAll(`.${tocClass} li`);\r\n    tocItems.forEach(item => {\r\n      const a = item.querySelector('a');\r\n      if (!a) return;\r\n      const href = a.getAttribute('href');\r\n      const targetId = href.substring(1); \/\/ Remove the '#' from the href to get the target ID\r\n      const targetElement = document.getElementById(targetId);\r\n      if (!targetElement) return;\r\n\r\n      const targetTop = targetElement.getBoundingClientRect().top + scrollPosition;\r\n      const nextItem = item.nextElementSibling;\r\n      const nextTop = nextItem ? nextItem.getBoundingClientRect().top + scrollPosition : Infinity;\r\n\r\n      if (targetTop <= scrollPosition + 150) {\r\n        if (a.parentElement.parentElement === tocItems) {\r\n          \/\/ The h2 heading is at the root level of the TOC\r\n          activeH2 = { id: targetId, level: 'h2' };\r\n        } \r\n\t\t  else {\r\n          \/\/ The h3 heading is nested under an h2 heading\r\n          const parentH2 = a.parentElement.parentElement.previousElementSibling;\r\n          if (parentH2) {\r\n            const h2Link = parentH2.querySelector('a');\r\n            if (h2Link) {\r\n              const h2Href = h2Link.getAttribute('href');\r\n              const h2Id = h2Href.substring(1);\r\n              activeH2 = { id: h2Id, level: 'h2' };\r\n            }\r\n          }\r\n          activeH3 = { id: targetId, level: 'h3' };\r\n        }\r\n      }\r\n\r\n      if (targetTop > scrollPosition + 150 && nextTop > scrollPosition + 150 && !activeH3) {\r\n        \/\/ Reset the activeH2 when there are no more active h3 headings\r\n        activeH2 = null;\r\n      }\r\n    });\r\n\r\n    \/\/ Update the active state for the TOC items\r\n    tocItems.forEach(item => {\r\n      item.classList.remove('active');\r\n      const a = item.querySelector('a');\r\n      if (a) {\r\n        const href = a.getAttribute('href');\r\n        const targetId = href.substring(1);\r\n        if ((activeH2 && activeH2.id === targetId) || (activeH3 && activeH3.id === targetId)) {\r\n          item.classList.add('active');\r\n        }\r\n      }\r\n    });\r\n  }\r\n\r\n  \/\/ Call scrollSpy for each TOC on window scroll\r\n  const tocClasses = ['list_toc', 'list_toc_float']; \/\/ Add other TOC class names here if you have more than two instances\r\n  tocClasses.forEach(tocClass => {\r\n    window.addEventListener('scroll', () => scrollSpy(tocClass));\r\n  });\r\n<\/script>\r\n\r\n<!-- ToC List for desktop side bar, diganti jadi inject by php, di code snippet \"Sidebar Accordion\" -->\r\n<!-- <script>\r\n\tdocument.addEventListener(\"DOMContentLoaded\", function() {\r\n\r\n        \/\/ Fungsi untuk membuat nested list\r\n        function createNestedList(parentNode, children) {\r\n            if (children.length === 0) return;\r\n\r\n            const nestedUl = document.createElement('ul');\r\n            children.forEach(child => {\r\n                const nestedLi = document.createElement('li');\r\n                const nestedA = document.createElement('a');\r\n                nestedA.textContent = child.title;\r\n                nestedA.href = `#${child.id}`;\r\n                nestedLi.appendChild(nestedA);\r\n                nestedUl.appendChild(nestedLi);\r\n\r\n                if (child.children.length > 0) {\r\n                    createNestedList(nestedLi, child.children);\r\n                }\r\n            });\r\n\r\n            parentNode.appendChild(nestedUl);\r\n        }\r\n\r\n        \/\/ Membuat objek untuk menyimpan daftar h2 dan h3 beserta judulnya\r\n        const headings = [];\r\n\r\n           \/\/ Mengambil semua elemen h2 dan h3\r\n        \/\/ Mengambil semua elemen h2 dan h3\r\n\t\tconst elements = document.querySelectorAll('.td-post-content h2');\r\n\r\n\t\t\tfunction newFormatId(text) {\r\n\t\t\t\tif(text.toLowerCase() === \"key takeaways\") {\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\tconst result = text.toLowerCase()\r\n\t\t\t\t.trim()\r\n\t\t\t\t.replace(\/[^\\w\\s-]\/g, '')  \/\/ hapus tanda baca\r\n\t\t\t\t.replace(\/\\s+\/g, '-'); \/\/ ganti spasi jadi \"-\"\r\n\r\n\t\t\t\treturn result;\r\n\t\t\t}\r\n\t\r\n\t\telements.forEach(element => {\r\n\t\t\tif (element.tagName === 'H2') {\r\n\t\t\t\tconst id = newFormatId(element.textContent); \/\/ Hasilkan ID baru\r\n\t\t\t\telement.id = id; \/\/ Tetapkan ID ke elemen h2\r\n\t\t\t\tif (element.textContent.toLowerCase() === \"key takeaways\") {return;} \/\/ Kalau Key Takeaways, jangan dimasukin\r\n\t\t\t\theadings.push({ level: 'h2', id: id, title: element.textContent, children: [] });\r\n\t\t\t} else if (element.tagName === 'H3') {\r\n\t\t\t\tconst id = newFormatId(element.textContent); \/\/ Hasilkan ID baru\r\n\t\t\t\telement.id = id; \/\/ Tetapkan ID ke elemen h3\r\n\t\t\t\tif (headings.length > 0) {\r\n\t\t\t\t\theadings[headings.length - 1].children.push({ level: 'h3', id: id, title: element.textContent, children: [] });\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n       \/\/ Membuat list HTML dari objek headings\r\n\t\tconst ul = document.getElementById('list_toc');\r\n\t\tlet currentUl = ul;\r\n\t\theadings.forEach(heading => {\r\n\t\t\tconst li = document.createElement('li');\r\n\t\t\tconst a = document.createElement('a');\r\n\t\t\ta.textContent = heading.title;\r\n\t\t\ta.href = `#${heading.id}`; \/\/ Gunakan ID yang baru dihasilkan\r\n\t\t\tli.appendChild(a);\r\n\r\n\t\t\tif (heading.level === 'h2') {\r\n\t\t\t\tcurrentUl = li;\r\n\t\t\t\tul.appendChild(li);\r\n\t\t\t} else if (heading.level === 'h3') {\r\n\t\t\t\tif (!currentUl.lastElementChild || currentUl.lastElementChild.tagName !== 'UL') {\r\n\t\t\t\t\tconst nestedUl = document.createElement('ul');\r\n\t\t\t\t\tcurrentUl.appendChild(nestedUl);\r\n\t\t\t\t\tcurrentUl = nestedUl;\r\n\t\t\t\t}\r\n\t\t\t\tcurrentUl.appendChild(li);\r\n\t\t\t}\r\n\r\n\t\t\tcreateNestedList(li, heading.children);\r\n\t\t});\r\n\t\t\/\/ Dapatkan elemen ul dengan id 'list_toc'\r\n\t\tconst ulFloat = document.getElementById('list_toc');\r\n\r\n\t\t\/\/ Dapatkan isi (child elements) dari ul dengan id 'list_toc'\r\n\t\tconst clonedChildren = ulFloat.cloneNode(true).children;\r\n\r\n\t\t\/\/ Dapatkan elemen ul dengan id 'list_toc_float'\r\n\t\tconst ulToc = document.getElementById('list_toc_float');\r\n\r\n\t\t\/\/ Tambahkan isi yang telah didapatkan dari 'list_toc' ke ul dengan id 'list_toc_float'\r\n\t\tulToc.append(...clonedChildren);\r\n\r\n\r\n        \/\/ Fungsi untuk mengambil tinggi navbar\r\n\t\tfunction getNavbarHeight() {\r\n\t\t\tconst navbar = document.getElementById('tdi_34');\r\n\t\t\treturn navbar ? navbar.offsetHeight : 0;\r\n\t\t}\r\n\r\n\t\t\/\/ Fungsi untuk menambahkan offset posisi scroll\r\n\t\tfunction scrollToElementWithOffset(elementId) {\r\n\t\t\tconst element = document.getElementById(elementId);\r\n\t\t\tif (element) {\r\n\t\t\t\tconst offset = getNavbarHeight();\r\n\t\t\t\tconst elementPosition = element.getBoundingClientRect().top;\r\n\t\t\t\tconst offsetPosition = elementPosition - offset - 40;\r\n\r\n\t\t\t\twindow.scrollBy({\r\n\t\t\t\t\ttop: offsetPosition,\r\n\t\t\t\t\tbehavior: 'smooth'\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t\/\/ Fungsi untuk menangani klik pada tautan judul\r\n\t\tfunction handleTitleClick(event) {\r\n\t\t\tevent.preventDefault();\r\n\t\t\tconst href = event.target.getAttribute('href').substr(1);\r\n\t\t\tscrollToElementWithOffset(href);\r\n\t\t}\r\n\r\n\t\t\/\/ Tambahkan event listener untuk semua tautan judul\r\n\t\tconst titleLinks = document.querySelectorAll('a[href^=\"#\"]');\r\n\t\ttitleLinks.forEach(link => {\r\n\t\t\tlink.addEventListener('click', handleTitleClick);\r\n\t\t});\r\n\t\t\r\n\t});\r\n    <\/script> -->\r\n<\/span><\/p>\n<h2><strong>Kenali VMS Sebelum Menerapkannya<\/strong><\/h2>\n<p><strong>VMS atau visitor management system<\/strong> adalah perangkat lunak yang melacak dan mengelola pengunjung masuk dan keluar dari gedung atau fasilitas tertentu. Sistem ini umumnya digunakan untuk memperkuat keamanan, mendukung kepatuhan internal, dan membuat pengalaman kunjungan lebih tertib.<\/p>\n<p>Dengan kata lain, VMS membuat proses kunjungan tidak lagi bergantung pada buku tamu, ingatan satpam, atau chat internal. Intinya sederhana: setiap pengunjung tercatat jelas sejak check-in, punya tujuan dan penanggung jawab (host), lalu keluar dengan status check-out yang terdokumentasi.<\/p>\n<p>Karena semua jejak kunjungan tersimpan rapi, Anda lebih mudah memastikan siapa berada di area mana, kapan datang, dan kapan selesai berkunjung. Ini yang membedakan VMS dari pencatatan manual, karena datanya siap dipakai saat perlu pelacakan, evaluasi prosedur, atau audit.<\/p>\n<h2><strong>Empat Alasan VMS Banyak Dipakai di Fasilitas Modern<\/strong><\/h2>\n<p><a href=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/manfaat-visitor-management-system.webp\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone wp-image-160321 size-full\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/manfaat-visitor-management-system.webp\" alt=\"manfaat visitor management system\" width=\"1200\" height=\"675\" srcset=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/manfaat-visitor-management-system.webp 1200w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/manfaat-visitor-management-system-300x169.webp 300w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/manfaat-visitor-management-system-1024x576.webp 1024w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/manfaat-visitor-management-system-768x432.webp 768w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/manfaat-visitor-management-system-747x420.webp 747w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/manfaat-visitor-management-system-150x84.webp 150w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/manfaat-visitor-management-system-696x392.webp 696w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/manfaat-visitor-management-system-1068x601.webp 1068w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/>Platform <\/a><a href=\"https:\/\/www.caliana.id\/en\/blog\/pengertian-fungsi-dan-manfaat-visitor-management-system\">management pengunjung<\/a> tidak hanya mengatur alur keluar-masuk pengunjung, tetapi juga memberikan sejumlah manfaat strategis bagi organisasi, seperti:<\/p>\n<h3><b>1. Meningkatkan keamanan lokasi<\/b><\/h3>\n<p>Visitor management system mencatat identitas dan waktu kunjungan setiap tamu secara real-time. Dengan data yang terdokumentasi dengan baik, Anda dapat segera mengidentifikasi aktivitas mencurigakan atau pelanggaran akses yang tidak sah.<\/p>\n<h3><b>2. Mempercepat proses registrasi tamu<\/b><\/h3>\n<p>Sistem ini menggantikan pencatatan manual dengan metode digital yang lebih cepat dan efisien. Bahkan, pengunjung bisa mendaftar sebelumnya secara online, sehingga waktu tunggu di resepsionis menjadi minimal.<\/p>\n<h3><b>3. Menyediakan data kunjungan yang akurat<\/b><\/h3>\n<p>Setiap kunjungan yang tercatat akan tersimpan dalam database sistem manajemen pengunjung yang mudah Anda akses. Data ini bisa Anda gunakan untuk audit internal, pelaporan rutin, atau evaluasi kebijakan keamanan.<\/p>\n<h3><b>4. Memberikan kesan profesional<\/b><\/h3>\n<p>Dengan proses check-in yang rapi dan terstruktur, perusahaan mampu menampilkan citra yang lebih profesional di mata tamu. Hal ini menjadi penting, terutama dalam lingkungan bisnis yang mengedepankan reputasi dan efisiensi.<\/p>\n<p>Dengan berbagai manfaat yang ada, visitor management system menjadi solusi efektif untuk meningkatkan efisiensi dan keamanan perusahaan Anda. Untuk itu, jika Anda tertarik untuk melihat <b>harga implementasi VMS terbaik<\/b>, cek skema lengkapnya dalam banner berikut.<\/p>\n<style>\r\n.cta-in-article-image .desktop-banner{\r\n    display: none;\r\n    text-align: center;\r\n}\r\n.cta-in-article-image .desktop-mobile{\r\n    display: block;\r\n    text-align: center;\r\n    width: 100%;\r\n}\r\n\t.cta-in-article a {\r\n\t\tfont-size: 0px !important;\r\n\t\tcolor: #fff; \r\n\t\tpadding: 0px !important; \r\n\t\tborder-radius: 0px !important; \r\n\t\tdisplay: block !important; \r\n\t\ttext-decoration: none; \r\n\t}\r\n\t\r\n\t.cta-in-article {\r\n\t\tmargin: 0px !important;\r\n\t\tpadding: 0px !important;\r\n\t\tbox-shadow: none !important;\r\n\t}\r\n\t\r\n@media (min-width: 650px) {\r\n    .cta-in-article-image .desktop-banner {\r\n        display: block!important;\r\n    }\r\n}\r\n@media (min-width: 650px) {\r\n   .cta-in-article-image .desktop-mobile {\r\n        display: none!important;\r\n    }\r\n}\r\n<\/style>\r\n<div class=\"cta-in-article-image\">\r\n\t<a href=\"https:\/\/www.hashmicro.com\/id\/offer\/download-skema-harga-software-erp?blog&utm_source=blog&medium=banner-article\" target=\"_blank\" rel=\"noopener\">\r\n\t\t<div id=\"desktop-banner-container\">\r\n\t\t\t<div class=\"desktop-banner\">\r\n\t\t\t\t<img decoding=\"async\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/02.Skema-Harga-web-resized.webp\" alt=\"download skema harga software erp\">\r\n\t\t\t<\/div>\r\n\t\t<\/div>\r\n\t\t<div id=\"mobile-banner-container\">\r\n\t\t\t<div class=\"desktop-mobile\">\r\n\t\t\t\t<img decoding=\"async\" width=\"372\" height=\"465\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/02.-Skema-Harga-Mobile-372px.webp\" alt=\"download skema harga software erp\">\r\n\t\t\t<\/div>\r\n\t\t<\/div>\r\n\t<\/a>\r\n<\/div>\n<h2><strong>Tipe-Tipe Sistem Kunjungan untuk Memenuhi Kebutuhan Perusahaan<\/strong><\/h2>\n<p>Visitor Management System hadir dalam berbagai bentuk untuk memenuhi kebutuhan perusahaan yang beragam. Beberapa jenis-jenis VMS tersebut meliputi:<\/p>\n<h3><b>1. Sistem registrasi manual<\/b><\/h3>\n<p>Jenis VMS ini masih mengandalkan pencatatan pengunjung secara manual di buku tamu atau formulir fisik. Meskipun sederhana, sistem ini memerlukan lebih banyak waktu dan rentan terhadap kesalahan input data.<\/p>\n<h3><b>2. Sistem registrasi digital<\/b><\/h3>\n<p>Model ini menggunakan perangkat elektronik atau aplikasi VMS untuk mendaftarkan pengunjung secara otomatis. Pengunjung dapat mengisi formulir registrasi melalui kios digital atau aplikasi di ponsel, mempersingkat waktu pendaftaran dan mengurangi kontak fisik.<\/p>\n<h3><b>3. Sistem berbasis QR code<\/b><\/h3>\n<p>Pada jenis visitor management system kali ini, pengunjung menerima QR code setelah mendaftar sebelumnya secara online atau melalui email. Saat tiba di lokasi, mereka cukup memindai kode tersebut untuk melakukan check-in, memberikan pengalaman yang lebih cepat dan tanpa kontak langsung.<\/p>\n<h3><b>4. Sistem pengenalan wajah<\/b><\/h3>\n<p>Sistem ini memanfaatkan teknologi pengenalan wajah untuk mengidentifikasi pengunjung secara otomatis saat mereka datang. Teknologi ini menawarkan tingkat keamanan yang lebih tinggi dan proses check-in yang sangat cepat, cocok untuk lokasi dengan volume kunjungan tinggi.<\/p>\n<h3><b>5. Sistem integrasi keamanan<\/b><\/h3>\n<p><span id=\"fitur-itu\">Jenis ini terintegrasi dengan sistem keamanan lainnya, seperti akses kontrol atau kamera CCTV, untuk memastikan bahwa pengunjung hanya dapat mengakses area yang telah perusahaan setujui. Hal ini memperkuat pengawasan dan melindungi informasi sensitif perusahaan.<\/span><\/p>\n<h2><b>Fitur Utama dalam Visitor Management System<\/b><\/h2>\n<p><a href=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/fitur-utama-dalam-visitor-management-system.webp\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone wp-image-160323 size-full\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/fitur-utama-dalam-visitor-management-system.webp\" alt=\"fitur utama dalam visitor management system\" width=\"1200\" height=\"675\" srcset=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/fitur-utama-dalam-visitor-management-system.webp 1200w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/fitur-utama-dalam-visitor-management-system-300x169.webp 300w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/fitur-utama-dalam-visitor-management-system-1024x576.webp 1024w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/fitur-utama-dalam-visitor-management-system-768x432.webp 768w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/fitur-utama-dalam-visitor-management-system-747x420.webp 747w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/fitur-utama-dalam-visitor-management-system-150x84.webp 150w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/fitur-utama-dalam-visitor-management-system-696x392.webp 696w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/fitur-utama-dalam-visitor-management-system-1068x601.webp 1068w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><\/a>Berikut adalah penjelasan mengenai fitur-fitur penting dalam Visitor Management System (VMS) yang wajib Anda pahami:<\/p>\n<h3><b>1. <\/b><b><i>Visitor management<\/i><\/b><b> (manajemen pengunjung)<\/b><\/h3>\n<p>Fitur ini membantu Anda dalam mencatat data pengunjung yang datang ke tempat Anda. Ini seperti membuat daftar tamu, di mana Anda mencatat nama dan informasi lainnya tentang pengunjung. Dengan cara ini, Anda dapat dengan mudah mengetahui siapa yang datang dan mengapa mereka berkunjung.<\/p>\n<h3><b>2. <\/b><b><i>Property counter<\/i><\/b><b> (penghitung jumlah pengunjung)<\/b><\/h3>\n<p>Fitur visitor management system ini adalah alat yang membantu Anda menghitung berapa banyak orang yang ada di tempat Anda pada waktu tertentu. Pikirkan ini seperti penghitung di pintu masuk toko yang menunjukkan berapa banyak orang yang masuk.<\/p>\n<p>Fitur VMS ini berguna untuk memastikan bahwa tidak terlalu banyak orang dalam satu tempat, menjaga keamanan, atau memastikan bahwa Anda tidak melebihi kapasitas yang diizinkan.<\/p>\n<h3><b>3. <\/b><b><i>Visitor analysis<\/i><\/b><b> (analisis pengunjung)<\/b><\/h3>\n<p>Yang ketiga, fitur ini memberikan Anda informasi yang membantu Anda memahami pengunjung Anda lebih baik. Ini mencakup hal-hal statistik seperti berapa banyak pengunjung yang datang setiap hari atau dari mana asal mereka guna memahami tren dan perilaku pengunjung.<\/p>\n<h3><b>4. <\/b><b><i>Visitor report<\/i><\/b><b> (laporan pengunjung)<\/b><\/h3>\n<p>Fitur ini memungkinkan Anda untuk membuat laporan tentang pengunjung. Ini seperti membuat catatan tentang siapa yang datang dan berapa banyak dari mereka. Laporan ini dapat berguna untuk melihat sejarah kunjungan, memberikan laporan kepada atasan, atau memenuhi persyaratan peraturan.<\/p>\n<h2><b>Studi Kasus dan Penerapan VMS di Operasional Perusahaan Berskala Besar<\/b><\/h2>\n<p>Sebagai langkah awal, pilih VMS yang memperkuat kontrol akses, bukan sekadar \u201cbuku tamu digital\u201d. Idealnya, sistem bisa mengatur check-in\/check-out, mencatat tujuan dan host, memberi izin akses per zona, serta menyimpan log yang mudah ditarik saat audit. Karena VMS memproses data identitas tamu, pastikan juga standar keamanannya selaras dengan prinsip perlindungan data di Indonesia (UU PDP) seperti pembatasan tujuan, kontrol akses, dan akuntabilitas.<\/p>\n<p><strong>Contoh studi kasus di ritel nasional (Matahari)<\/strong><\/p>\n<p>Sebagai contoh, Matahari adalah salah satu klien HashMicro yang menggunakan <a href=\"https:\/\/www.hashmicro.com\/id\/visitor-management-software\">sistem Pengelolaan Pengunjung<\/a>. Dengan 140+ gerai di hampir 80 kota dan dukungan kanal digital, aktivitas operasionalnya melibatkan banyak pihak lintas lokasi. Matahari mengoperasikan 140+ gerai di hampir 80 kota dan juga memiliki kanal digital, sehingga aktivitas operasionalnya melibatkan banyak pihak lintas lokasi.<\/p>\n<p>Dalam skala seperti ini, arus kunjungan biasanya bukan hanya pelanggan, tetapi juga vendor, kontraktor renovasi, kurir logistik, audit internal, hingga tamu kantor pusat. Tantangannya, kalau pencatatan berbeda-beda di tiap lokasi, jejak kunjungan jadi sulit ditelusuri saat terjadi insiden atau pemeriksaan.<\/p>\n<p>Di sinilah VMS berperan sebagai \u201cstandar tunggal\u201d proses kunjungan: tamu didaftarkan dengan tujuan yang jelas, host melakukan konfirmasi, akses dibatasi sesuai kebutuhan, lalu semuanya tercatat rapi dalam satu histori.<\/p>\n<p>Dalam konteks ini, HashMicro dapat menjadi salah satu opsi untuk membantu menstandarkan registrasi tamu, konfirmasi host, hingga pelacakan kunjungan lintas lokasi dalam satu sistem. Ini makin relevan karena perusahaan ritel besar juga menekankan pembatasan akses data hanya untuk pihak berwenang dan kebutuhan bisnis yang jelas, sehingga sistem perlu mendukung kontrol akses dan jejak audit yang kuat.<\/p>\n<h2><b>Kesimpulan<\/b><\/h2>\n<p>Visitor management system pada akhirnya bukan soal mengganti buku tamu menjadi versi digital. Yang Anda dapatkan adalah proses kunjungan yang lebih tertib, mudah ditelusuri, dan selaras dengan kebutuhan keamanan, terutama ketika jumlah pengunjung, vendor, dan aktivitas lintas lokasi semakin tinggi.<\/p>\n<p>Jika Anda ingin mulai menerapkannya, fokuskan evaluasi pada hal yang paling menentukan: registrasi dan verifikasi identitas, check-in\/check-out yang jelas, izin akses per area, serta audit trail yang rapi. Dengan fondasi ini, kontrol akses lebih kuat tanpa membuat pengalaman pengunjung terasa berbelit.<\/p>\n<p>Tersedia berbagai vendor yang menyediakan VMS untuk mendukung standar proses tersebut. Bila Anda ingin memetakan kebutuhan dan alur kunjungan yang paling sesuai untuk fasilitas Anda, Anda dapat mengajukan <a href=\"https:\/\/www.hashmicro.com\/id\/tour-produk-gratis\/\">konsultasi dengan tim kami<\/a>.<\/p>\n<a href=\"https:\/\/www.hashmicro.com\/id\/visitor-management-software?medium=moneysite-banner\" target=\"_blank\"><img decoding=\"async\" loading=\"lazy\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2022\/03\/Visitor-Management-System.png.webp\" data-desktop-src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2022\/03\/Visitor-Management-System.png.webp\" data-mobile-src=\"\" alt=\"VisitorManagementSystem\" class=\"responsive-image-banner\"><\/a>\r\n\r\n<script>\r\n    \/\/ check which image to use based on screensize\r\n    document.addEventListener(\"DOMContentLoaded\", function() {\r\n        function updateImageSource() {\r\n            var images = document.querySelectorAll('.responsive-image-banner');\r\n            var screenWidth = window.innerWidth;\r\n\r\n            images.forEach(function(img) {\r\n                var mobileSrc = img.getAttribute('data-mobile-src');\r\n                var desktopSrc = img.getAttribute('data-desktop-src');\r\n\r\n                if (screenWidth < 576 && mobileSrc) {\r\n                    img.setAttribute('src', mobileSrc);\r\n                } else {\r\n                    img.setAttribute('src', desktopSrc);\r\n                }\r\n            });\r\n        }\r\n\r\n        \/\/ Initial check\r\n        updateImageSource();\r\n\r\n        \/\/ Update on resize\r\n        window.addEventListener('resize', updateImageSource);\r\n    });\r\n<\/script>\n<h2><strong>Pertanyaan Seputar Visitor Management System<\/strong><\/h2>\n<ul class=\"bottom_faq\">\n<li>\n<details>\n<summary><strong>Apakah VMS bisa diintegrasikan dengan sistem lain seperti kontrol akses atau HR?<\/strong><\/summary>\n<p>Ya, VMS dapat Anda integrasikan dengan sistem lain seperti kontrol akses atau HR untuk meningkatkan efisiensi dan keamanan. Sistem ini memungkinkan data pengunjung terkoneksi langsung dengan database karyawan atau sistem keamanan.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>Apakah VMS dapat digunakan untuk mencatat pengunjung yang datang lebih dari sekali?<\/strong><\/summary>\n<p>VMS dapat mencatat pengunjung yang datang lebih dari sekali dengan menyimpan riwayat kunjungan dan memberikan identifikasi unik untuk setiap pengunjung.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>Bagaimana cara kerja Visitor Management System?<\/strong><\/summary>\n<p>Visitor Management System bekerja dengan merekam data pengunjung saat check-in melalui perangkat digital atau aplikasi, kemudian memverifikasi identitas dan mencatat waktu kunjungan secara otomatis.<\/p>\n<\/details>\n<\/li>\n<\/ul>\n<p><script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"FAQPage\",\n  \"mainEntity\": [{\n    \"@type\": \"Question\",\n    \"name\": \"Apakah VMS bisa diintegrasikan dengan sistem lain seperti kontrol akses atau HR?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Ya, VMS dapat Anda integrasikan dengan sistem lain seperti kontrol akses atau HR untuk meningkatkan efisiensi dan keamanan. Sistem ini memungkinkan data pengunjung terkoneksi langsung dengan database karyawan atau sistem keamanan.\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"Apakah VMS dapat digunakan untuk mencatat pengunjung yang datang lebih dari sekali?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"VMS dapat mencatat pengunjung yang datang lebih dari sekali dengan menyimpan riwayat kunjungan dan memberikan identifikasi unik untuk setiap pengunjung.\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"Bagaimana cara kerja Visitor Management System?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Visitor Management System bekerja dengan merekam data pengunjung saat check-in melalui perangkat digital atau aplikasi, kemudian memverifikasi identitas dan mencatat waktu kunjungan secara otomatis.\"\n    }\n  }]\n}\n<\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Pernah mengalami situasi resepsionis lagi ramai, tamu datang rombongan, lalu pencatatan \u201csekadarnya\u201d di buku tamu atau chat? Di momen seperti itu, satu orang bisa saja ikut masuk bareng rombongan, kartu identitas tertinggal, atau tujuan kunjungan tidak tercatat jelas. Kelihatannya sepele, tapi dampaknya baru terasa ketika Anda perlu memastikan siapa yang sempat berada di area tertentu. [&hellip;]<\/p>\n","protected":false},"author":12,"featured_media":160324,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1246],"tags":[],"class_list":{"0":"post-3386","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-visitor-management-system"},"acf":{"post_reviewer":""},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.1 (Yoast SEO v25.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Visitor Management System: Pengertian &amp; Manfaatnya<\/title>\n<meta name=\"description\" content=\"Visitor management system sangat berguna untuk mengelola daftar pengunjung di perusahaan Anda. Simak artikel ini untuk mengetahui manfaatnya!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/\" \/>\n<meta property=\"og:locale\" content=\"id_ID\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Visitor Management System: Pengertian &amp; Manfaatnya\" \/>\n<meta property=\"og:description\" content=\"Visitor management system sangat berguna untuk mengelola daftar pengunjung di perusahaan Anda. Simak artikel ini untuk mengetahui manfaatnya!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/\" \/>\n<meta property=\"og:site_name\" content=\"HashMicro Indonesia\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/hashmicro\" \/>\n<meta property=\"article:published_time\" content=\"2025-04-14T01:15:12+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-03-10T02:32:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/metode-visitor-management-system.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"675\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"Syifa Fadiyah\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@hashmicro\" \/>\n<meta name=\"twitter:site\" content=\"@hashmicro\" \/>\n<meta name=\"twitter:label1\" content=\"Ditulis oleh\" \/>\n\t<meta name=\"twitter:data1\" content=\"Syifa Fadiyah\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimasi waktu membaca\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 menit\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/\"},\"author\":{\"name\":\"Syifa Fadiyah\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/person\/b099ef0a37ede0dda048e75cf4a3f85c\"},\"headline\":\"Visitor Management System: Pengertian &#038; Manfaatnya\",\"datePublished\":\"2025-04-14T01:15:12+00:00\",\"dateModified\":\"2026-03-10T02:32:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/\"},\"wordCount\":1418,\"publisher\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/metode-visitor-management-system.webp\",\"articleSection\":[\"Visitor Management System\"],\"inLanguage\":\"id\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/\",\"url\":\"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/\",\"name\":\"Visitor Management System: Pengertian & Manfaatnya\",\"isPartOf\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/metode-visitor-management-system.webp\",\"datePublished\":\"2025-04-14T01:15:12+00:00\",\"dateModified\":\"2026-03-10T02:32:00+00:00\",\"description\":\"Visitor management system sangat berguna untuk mengelola daftar pengunjung di perusahaan Anda. Simak artikel ini untuk mengetahui manfaatnya!\",\"breadcrumb\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/#breadcrumb\"},\"inLanguage\":\"id\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/#primaryimage\",\"url\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/metode-visitor-management-system.webp\",\"contentUrl\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/metode-visitor-management-system.webp\",\"width\":1200,\"height\":675,\"caption\":\"metode visitor management system\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.hashmicro.com\/id\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Visitor Management System: Pengertian &#038; Manfaatnya\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#website\",\"url\":\"https:\/\/www.hashmicro.com\/id\/blog\/\",\"name\":\"HashMicro Indonesia\",\"description\":\"Blog Software Manajemen Bisnis Indonesia #1\",\"publisher\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.hashmicro.com\/id\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"id\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#organization\",\"name\":\"HashMicro Indonesia\",\"url\":\"https:\/\/www.hashmicro.com\/id\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/11\/hashmicro-logo-blog.webp\",\"contentUrl\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/11\/hashmicro-logo-blog.webp\",\"width\":924,\"height\":121,\"caption\":\"HashMicro Indonesia\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/hashmicro\",\"https:\/\/x.com\/hashmicro\",\"https:\/\/www.linkedin.com\/company\/hashmicro\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/person\/b099ef0a37ede0dda048e75cf4a3f85c\",\"name\":\"Syifa Fadiyah\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2022\/08\/syifa-96x96.jpg\",\"contentUrl\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2022\/08\/syifa-96x96.jpg\",\"caption\":\"Syifa Fadiyah\"},\"description\":\"Saya adalah seorang praktisi untuk penulisan artikel dan berfokus pada konten yang mengulas tentang teknologi bisnis. Saya mengutamakan pendekatan yang aplikatif dan informatif agar dapat membantu para pelaku bisnis profesional dengan informasi yang solutif untuk meningkatkan performa bisnis.\",\"url\":\"https:\/\/www.hashmicro.com\/id\/blog\/author\/syifa-nur-fadiyah\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Visitor Management System: Pengertian & Manfaatnya","description":"Visitor management system sangat berguna untuk mengelola daftar pengunjung di perusahaan Anda. Simak artikel ini untuk mengetahui manfaatnya!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/","og_locale":"id_ID","og_type":"article","og_title":"Visitor Management System: Pengertian & Manfaatnya","og_description":"Visitor management system sangat berguna untuk mengelola daftar pengunjung di perusahaan Anda. Simak artikel ini untuk mengetahui manfaatnya!","og_url":"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/","og_site_name":"HashMicro Indonesia","article_publisher":"https:\/\/www.facebook.com\/hashmicro","article_published_time":"2025-04-14T01:15:12+00:00","article_modified_time":"2026-03-10T02:32:00+00:00","og_image":[{"width":1200,"height":675,"url":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/metode-visitor-management-system.webp","type":"image\/webp"}],"author":"Syifa Fadiyah","twitter_card":"summary_large_image","twitter_creator":"@hashmicro","twitter_site":"@hashmicro","twitter_misc":{"Ditulis oleh":"Syifa Fadiyah","Estimasi waktu membaca":"9 menit"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/#article","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/"},"author":{"name":"Syifa Fadiyah","@id":"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/person\/b099ef0a37ede0dda048e75cf4a3f85c"},"headline":"Visitor Management System: Pengertian &#038; Manfaatnya","datePublished":"2025-04-14T01:15:12+00:00","dateModified":"2026-03-10T02:32:00+00:00","mainEntityOfPage":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/"},"wordCount":1418,"publisher":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/#organization"},"image":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/metode-visitor-management-system.webp","articleSection":["Visitor Management System"],"inLanguage":"id"},{"@type":"WebPage","@id":"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/","url":"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/","name":"Visitor Management System: Pengertian & Manfaatnya","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/#primaryimage"},"image":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/metode-visitor-management-system.webp","datePublished":"2025-04-14T01:15:12+00:00","dateModified":"2026-03-10T02:32:00+00:00","description":"Visitor management system sangat berguna untuk mengelola daftar pengunjung di perusahaan Anda. Simak artikel ini untuk mengetahui manfaatnya!","breadcrumb":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/#breadcrumb"},"inLanguage":"id","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/"]}]},{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/#primaryimage","url":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/metode-visitor-management-system.webp","contentUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/02\/metode-visitor-management-system.webp","width":1200,"height":675,"caption":"metode visitor management system"},{"@type":"BreadcrumbList","@id":"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-visitor-management-system\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.hashmicro.com\/id\/blog\/"},{"@type":"ListItem","position":2,"name":"Visitor Management System: Pengertian &#038; Manfaatnya"}]},{"@type":"WebSite","@id":"https:\/\/www.hashmicro.com\/id\/blog\/#website","url":"https:\/\/www.hashmicro.com\/id\/blog\/","name":"HashMicro Indonesia","description":"Blog Software Manajemen Bisnis Indonesia #1","publisher":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.hashmicro.com\/id\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"id"},{"@type":"Organization","@id":"https:\/\/www.hashmicro.com\/id\/blog\/#organization","name":"HashMicro Indonesia","url":"https:\/\/www.hashmicro.com\/id\/blog\/","logo":{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/11\/hashmicro-logo-blog.webp","contentUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/11\/hashmicro-logo-blog.webp","width":924,"height":121,"caption":"HashMicro Indonesia"},"image":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/hashmicro","https:\/\/x.com\/hashmicro","https:\/\/www.linkedin.com\/company\/hashmicro"]},{"@type":"Person","@id":"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/person\/b099ef0a37ede0dda048e75cf4a3f85c","name":"Syifa Fadiyah","image":{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/person\/image\/","url":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2022\/08\/syifa-96x96.jpg","contentUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2022\/08\/syifa-96x96.jpg","caption":"Syifa Fadiyah"},"description":"Saya adalah seorang praktisi untuk penulisan artikel dan berfokus pada konten yang mengulas tentang teknologi bisnis. Saya mengutamakan pendekatan yang aplikatif dan informatif agar dapat membantu para pelaku bisnis profesional dengan informasi yang solutif untuk meningkatkan performa bisnis.","url":"https:\/\/www.hashmicro.com\/id\/blog\/author\/syifa-nur-fadiyah\/"}]}},"focus_keyword":"visitor management system","order_j":"","_links":{"self":[{"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts\/3386","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/users\/12"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/comments?post=3386"}],"version-history":[{"count":10,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts\/3386\/revisions"}],"predecessor-version":[{"id":190680,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts\/3386\/revisions\/190680"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/media\/160324"}],"wp:attachment":[{"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/media?parent=3386"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/categories?post=3386"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/tags?post=3386"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}