Help
RSS
API
Feed
Maltego
Contact
Domain > whiteboardvideo.nl
×
More information on this domain is in
AlienVault OTX
Is this malicious?
Yes
No
DNS Resolutions
Date
IP Address
2015-02-24
104.28.8.10
(
ClassC
)
2015-02-24
104.28.9.10
(
ClassC
)
2026-02-13
172.67.182.126
(
ClassC
)
Port 80
HTTP/1.1 301 Moved PermanentlyDate: Fri, 13 Feb 2026 15:33:37 GMTContent-Type: text/htmlTransfer-Encoding: chunkedConnection: keep-aliveServer: cloudflareNel: {report_to:cf-nel,success_fraction:0.0,max_age:604800}Location: https://whiteboardvideo.nl/cf-cache-status: DYNAMICReport-To: {group:cf-nel,max_age:604800,endpoints:{url:https://a.nel.cloudflare.com/report/v4?sew82ULNjD0BcDNcOYYoplyCgVJfzPwWISaym8aVdO6DqWgEz2lpiYfJLohAxV1bjetnpc0xhrHWLGi%2FB2%2FgjgPr338EWf0i2jLZAw5faQFOYuQ%3D%3D}}CF-RAY: 9cd56298cb391561-PDXalt-svc: h3:443; ma86400 html>head>title>301 Moved Permanently/title>/head>body>center>h1>301 Moved Permanently/h1>/center>hr>center>nginx/1.24.0 (Ubuntu)/center>/body>/html>
Port 443
HTTP/1.1 200 OKDate: Fri, 13 Feb 2026 15:33:37 GMTContent-Type: text/htmlTransfer-Encoding: chunkedConnection: keep-aliveServer: cloudflareLast-Modified: Fri, 06 Feb 2026 00:34:36 GMTNel: {report_to:cf-nel,success_fraction:0.0,max_age:604800}vary: accept-encodingX-Frame-Options: SAMEORIGINX-Content-Type-Options: nosniffReport-To: {group:cf-nel,max_age:604800,endpoints:{url:https://a.nel.cloudflare.com/report/v4?syo82JUz2urN6AziSLk1sm%2FsXSnuFU6D2UuFHGsp8RY2tSKIdifY2lKWjPQqZG%2BTQ1%2FRuTvoHViDmmSh0GT73gh4wZnWy0BtdXXxDyK1Tfse5nw%3D%3D}}cf-cache-status: DYNAMICCF-RAY: 9cd5629b7d470d10-PDXalt-svc: h3:443; ma86400 !DOCTYPE html>html langnl>head> meta charsetUTF-8> meta nameviewport contentwidthdevice-width, initial-scale1.0> title>Whiteboard Video Laten Maken | AI-Powered | whiteboardvideo.nl/title> meta namedescription contentLaat een professionele whiteboard video maken met AI. Van script tot animatie, volledig op maat.> link relpreconnect hrefhttps://fonts.googleapis.com> link relpreconnect hrefhttps://fonts.gstatic.com crossorigin> link hrefhttps://fonts.googleapis.com/css2?familyInter:wght@400;500;600;700&familySpace+Grotesk:wght@500;600;700&displayswap relstylesheet> style> :root { --primary: #2563eb; --primary-dark: #1d4ed8; --primary-light: #3b82f6; --accent: #f59e0b; --accent-light: #fbbf24; --bg-dark: #0f172a; --bg-light: #f8fafc; --text: #1e293b; --text-light: #64748b; --white: #ffffff; --border: #e2e8f0; --success: #10b981; --error: #ef4444; } * { margin: 0; padding: 0; box-sizing: border-box; } html { scroll-behavior: smooth; } body { font-family: Inter, sans-serif; color: var(--text); line-height: 1.6; background: var(--white); } header { background: var(--white); padding: 1rem 2rem; box-shadow: 0 1px 3px rgba(0,0,0,0.1); position: sticky; top: 0; z-index: 100; } .header-content { max-width: 1200px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; } .logo { font-family: Space Grotesk, sans-serif; font-size: 1.5rem; font-weight: 700; color: var(--primary); text-decoration: none; } .logo span { color: var(--text); } nav { display: flex; gap: 2rem; align-items: center; } nav a { color: var(--text); text-decoration: none; font-weight: 500; transition: color 0.3s; } nav a:hover { color: var(--primary); } .nav-cta { background: var(--primary); color: var(--white) !important; padding: 0.75rem 1.5rem; border-radius: 8px; font-weight: 600; } .nav-cta:hover { background: var(--primary-dark); } .hero { background: linear-gradient(135deg, var(--bg-dark) 0%, #1e3a5f 100%); padding: 6rem 2rem; color: var(--white); position: relative; overflow: hidden; } .hero::before { content: ; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: url(data:image/svg+xml,%3Csvg width60 height60 viewBox0 0 60 60 xmlnshttp://www.w3.org/2000/svg%3E%3Cg fillnone fill-ruleevenodd%3E%3Cg fill%23ffffff fill-opacity0.03%3E%3Cpath dM36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z/%3E%3C/g%3E%3C/g%3E%3C/svg%3E); opacity: 0.5; } .hero-content { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center; position: relative; z-index: 1; } .hero-text h1 { font-family: Space Grotesk, sans-serif; font-size: 3.2rem; font-weight: 700; line-height: 1.2; margin-bottom: 1.5rem; } .hero-text h1 span { color: var(--accent); } .hero-text p { font-size: 1.2rem; opacity: 0.9; margin-bottom: 2rem; line-height: 1.8; } .hero-badges { display: flex; gap: 1rem; margin-bottom: 2rem; flex-wrap: wrap; } .badge { background: rgba(255,255,255,0.1); padding: 0.5rem 1rem; border-radius: 50px; font-size: 0.9rem; display: flex; align-items: center; gap: 0.5rem; } .hero-cta { display: inline-flex; align-items: center; gap: 0.5rem; background: var(--accent); color: var(--bg-dark); padding: 1rem 2rem; border-radius: 8px; font-weight: 700; font-size: 1.1rem; text-decoration: none; transition: all 0.3s; } .hero-cta:hover { background: var(--accent-light); transform: translateY(-2px); } .chat-container { background: var(--white); border-radius: 16px; box-shadow: 0 25px 50px rgba(0,0,0,0.3); overflow: hidden; height: 520px; display: flex; flex-direction: column; } .chat-header { background: var(--primary); color: var(--white); padding: 1rem 1.5rem; display: flex; align-items: center; gap: 0.75rem; } .chat-header-left { display: flex; align-items: center; gap: 0.75rem; flex: 1; } .chat-avatar { width: 40px; height: 40px; background: rgba(255,255,255,0.2); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 1.2rem; } .chat-title { font-weight: 600; } .chat-status { font-size: 0.8rem; opacity: 0.8; } .restart-btn { background: rgba(255,255,255,0.2); border: none; color: white; padding: 0.5rem 1rem; border-radius: 6px; font-size: 0.85rem; cursor: pointer; transition: background 0.3s; } .restart-btn:hover { background: rgba(255,255,255,0.3); } .chat-messages { flex: 1; padding: 1.5rem; overflow-y: auto; background: var(--bg-light); } .message { margin-bottom: 1rem; display: flex; gap: 0.75rem; } .message.bot .message-content { background: var(--white); border-radius: 16px 16px 16px 4px; padding: 1rem; max-width: 85%; box-shadow: 0 2px 8px rgba(0,0,0,0.05); color: var(--text); } .message.user { justify-content: flex-end; } .message.user .message-content { background: var(--primary); color: var(--white); border-radius: 16px 16px 4px 16px; padding: 1rem; max-width: 85%; } .chat-input-area { padding: 1rem; background: var(--white); border-top: 1px solid var(--border); } .chat-input { display: flex; gap: 0.75rem; } .chat-input input { flex: 1; padding: 0.75rem 1rem; border: 2px solid var(--border); border-radius: 8px; font-size: 1rem; outline: none; transition: border-color 0.3s; } .chat-input input:focus { border-color: var(--primary); } .chat-input button { background: var(--primary); color: var(--white); border: none; padding: 0.75rem 1.5rem; border-radius: 8px; font-weight: 600; cursor: pointer; transition: background 0.3s; } .chat-input button:hover { background: var(--primary-dark); } .chat-input button:disabled, .chat-input input:disabled { opacity: 0.6; cursor: not-allowed; } .upload-row { display: flex; gap: 0.5rem; margin-top: 0.75rem; align-items: center; } .upload-btn { background: var(--bg-light); border: 1px dashed var(--border); color: var(--text-light); padding: 0.5rem 1rem; border-radius: 6px; font-size: 0.85rem; cursor: pointer; transition: all 0.3s; display: flex; align-items: center; gap: 0.5rem; } .upload-btn:hover { border-color: var(--primary); color: var(--primary); } .upload-btn input { display: none; } .upload-info { font-size: 0.8rem; color: var(--text-light); } .upload-success { color: var(--success); font-size: 0.85rem; } .upload-error { color: var(--error); font-size: 0.85rem; } .typing-indicator .dots { animation: blink 1.4s infinite; } @keyframes blink { 0%, 20% { opacity: 0; } 50% { opacity: 1; } 80%, 100% { opacity: 0; } } .payment-link-btn { display: inline-block; background: var(--accent); color: var(--bg-dark) !important; padding: 0.75rem 1.5rem; border-radius: 8px; font-weight: 700; text-decoration: none; margin: 0.5rem 0; transition: all 0.3s; } .payment-link-btn:hover { background: var(--accent-light); transform: translateY(-1px); } section { padding: 5rem 2rem; } .section-header { text-align: center; margin-bottom: 3rem; } .section-header h2 { font-family: Space Grotesk, sans-serif; font-size: 2.5rem; color: var(--text); margin-bottom: 0.5rem; } .section-header p { color: var(--text-light); font-size: 1.1rem; } .container { max-width: 1200px; margin: 0 auto; } .how-it-works { background: var(--bg-light); } .steps-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 1.5rem; } .step-card { background: var(--white); padding: 2rem 1.5rem; border-radius: 16px; text-align: center; box-shadow: 0 4px 20px rgba(0,0,0,0.05); } .step-number { width: 48px; height: 48px; background: var(--primary); color: var(--white); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 1.2rem; margin: 0 auto 1rem; } .step-card h3 { font-size: 1.1rem; margin-bottom: 0.5rem; color: var(--text); } .step-card p { font-size: 0.9rem; color: var(--text-light); } .step-price { margin-top: 1rem; padding-top: 1rem; border-top: 1px solid var(--border); font-weight: 700; color: var(--primary); } .features { background: var(--white); } .features-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; } .feature-card { padding: 2rem; border-radius: 16px; border: 1px solid var(--border); transition: all 0.3s; } .feature-card:hover { border-color: var(--primary); box-shadow: 0 10px 30px rgba(37, 99, 235, 0.1); } .feature-icon { width: 56px; height: 56px; background: linear-gradient(135deg, var(--primary), var(--primary-light)); border-radius: 12px; display: flex; align-items: center; justify-content: center; font-size: 1.5rem; margin-bottom: 1rem; } .feature-card h3 { font-size: 1.2rem; margin-bottom: 0.5rem; } .feature-card p { color: var(--text-light); } .cta-section { background: linear-gradient(135deg, var(--primary) 0%, var(--primary-dark) 100%); color: var(--white); text-align: center; } .cta-section h2 { font-family: Space Grotesk, sans-serif; font-size: 2.5rem; margin-bottom: 1rem; } .cta-section p { font-size: 1.2rem; opacity: 0.9; margin-bottom: 2rem; } .cta-button { display: inline-flex; align-items: center; gap: 0.5rem; background: var(--accent); color: var(--bg-dark); padding: 1rem 2.5rem; border-radius: 8px; font-weight: 700; font-size: 1.1rem; text-decoration: none; transition: all 0.3s; } .cta-button:hover { background: var(--accent-light); transform: translateY(-2px); } footer { background: var(--bg-dark); color: rgba(255,255,255,0.7); padding: 3rem 2rem; text-align: center; } footer a { color: var(--accent); text-decoration: none; } @media (max-width: 1024px) { .steps-grid { grid-template-columns: repeat(3, 1fr); } } @media (max-width: 768px) { .hero-content { grid-template-columns: 1fr; text-align: center; } .hero-text h1 { font-size: 2.2rem; } .hero-badges { justify-content: center; } .chat-container { height: 450px; } nav { display: none; } .steps-grid { grid-template-columns: 1fr; } .features-grid { grid-template-columns: 1fr; } section { padding: 3rem 1.5rem; } .section-header h2 { font-size: 1.8rem; } } /style>/head>body> header> div classheader-content> a href/ classlogo>whiteboardspan>video/span>.nl/a> nav> a href#hoe-werkt-het>Hoe werkt het?/a> a href#features>Voordelen/a> a href#chat classnav-cta>Start Nu →/a> /nav> /div> /header> section classhero idchat> div classhero-content> div classhero-text> h1>Jouw span>Whiteboard Video/span> in 5 Simpele Stappen/h1> p>Vertel onze AI over je bedrijf en boodschap. Wij maken een professioneel script, storyboard en video — compleet met voice-over./p> div classhero-badges> span classbadge>✨ AI-Powered/span> span classbadge>🎬 Full HD/span> span classbadge>🎤 Voice Cloning/span> span classbadge>⚡ Snel/span> /div> a href#chat-widget classhero-cta>💬 Start het Gesprek/a> /div> div classchat-container idchat-widget> div classchat-header> div classchat-header-left> div classchat-avatar>🤖/div> div> div classchat-title>Video Assistent/div> div classchat-status>● Online/div> /div> /div> button classrestart-btn onclickstartNewConversation()>🔄 Begin opnieuw/button> /div> div classchat-messages idchat-messages>/div> div classchat-input-area> div classchat-input> input typetext iduser-input placeholderTyp je antwoord... disabled> button idsend-btn disabled>Verstuur/button> /div> div classupload-row> label classupload-btn> 📎 Logo uploaden (optioneel) input typefile idfile-input accept.jpg,.jpeg,.png,.gif,.webp,.svg,.pdf> /label> span classupload-info idupload-status>/span> /div> /div> /div> /div> /section> section classhow-it-works idhoe-werkt-het> div classcontainer> div classsection-header> h2>Hoe Werkt Het?/h2> p>Van idee tot video in 5 stappen/p> /div> div classsteps-grid> div classstep-card> div classstep-number>1/div> h3>Intake Gesprek/h3> p>Vertel ons over je bedrijf, doel en boodschap via de chat./p> div classstep-price>Gratis/div> /div> div classstep-card> div classstep-number>2/div> h3>Script/h3> p>Professioneel videoscript. 2x gratis feedback mogelijk./p> div classstep-price>€25/div> /div> div classstep-card> div classstep-number>3/div> h3>Storyboard/h3> p>Visuele frames van je video. 1x gratis feedback./p> div classstep-price>€50/div> /div> div classstep-card> div classstep-number>4/div> h3>Voice-Over/h3> p>Professionele AI voice-over. Per frame een eigen voice-over segment./p> div classstep-price>€125/div> /div> div classstep-card> div classstep-number>5/div> h3>Video Productie/h3> p>Video slideshow op basis van het storyboard (frames + voice-over)./p> div classstep-price>€300/div> /div> /div> /div> /section> section classfeatures idfeatures> div classcontainer> div classsection-header> h2>Waarom Whiteboard Video?/h2> p>De voordelen voor jouw bedrijf/p> /div> div classfeatures-grid> div classfeature-card> div classfeature-icon>📈/div> h3>Hogere Conversies/h3> p>Bezoekers blijven tot 2x langer op je website met een uitlegvideo./p> /div> div classfeature-card> div classfeature-icon>🧠/div> h3>Beter Onthouden/h3> p>Visuele content wordt 65% beter onthouden dan tekst./p> /div> div classfeature-card> div classfeature-icon>🎯/div> h3>Op Maat Gemaakt/h3> p>Volledig aangepast aan jouw huisstijl en boodschap./p> /div> div classfeature-card> div classfeature-icon>⚡/div> h3>Snel Geleverd/h3> p>Dankzij AI-technologie sneller dan traditionele productie./p> /div> div classfeature-card> div classfeature-icon>🎤/div> h3>Jouw Stem/h3> p>Voice cloning voor een persoonlijke touch./p> /div> div classfeature-card> div classfeature-icon>💰/div> h3>Betaalbaar/h3> p>Professionele kwaliteit voor een fractie van de prijs./p> /div> /div> /div> /section> section classcta-section> div classcontainer> h2>Klaar om te Beginnen?/h2> p>Start een gesprek met onze AI en ontdek hoe jouw whiteboard video eruit kan zien./p> a href#chat classcta-button>💬 Start Gratis Intake/a> /div> /section> footer> p>© 2026 whiteboardvideo.nl | Powered by AI/p> p stylemargin-top: 0.5rem; font-size: 0.85rem;> a href#>Algemene Voorwaarden/a> · a href#>Privacy/a> /p> /footer> script> const API_BASE /api; // Allow resuming via ?sessionid> const urlParams new URLSearchParams(window.location.search); let sessionId urlParams.get(session) || localStorage.getItem(wbv_session_id); const messagesContainer document.getElementById(chat-messages); const userInput document.getElementById(user-input); const sendBtn document.getElementById(send-btn); const fileInput document.getElementById(file-input); const uploadStatus document.getElementById(upload-status); async function initSession() { if (sessionId) { // Persist URL session to localStorage for continued use localStorage.setItem(wbv_session_id, sessionId); try { const response await fetch(`${API_BASE}/session/${sessionId}`); if (response.ok) { const data await response.json(); messagesContainer.innerHTML ; data.messages.forEach(msg > addMessage(msg.content, msg.role assistant ? bot : user)); enableInput(); return; } } catch (e) { console.log(Creating new session); } } try { const response await fetch(`${API_BASE}/session`, { method: POST }); const data await response.json(); sessionId data.sessionId; localStorage.setItem(wbv_session_id, sessionId); messagesContainer.innerHTML ; addMessage(data.message.content, bot); enableInput(); } catch (error) { console.error(Session error:, error); addMessage(Sorry, er is een probleem met de verbinding. Ververs de pagina., bot); } } function enableInput() { userInput.disabled false; sendBtn.disabled false; userInput.focus(); } function disableInput() { userInput.disabled true; sendBtn.disabled true; } function addMessage(content, type) { const div document.createElement(div); div.className `message ${type}`; let formatted content .replace(/\*\*(.*?)\*\*/g, strong>$1/strong>) .replace(/_(.*?)_/g, em>$1/em>) .replace(/\n/g, br>); // Convert URLs to clickable links with button style for payment links formatted formatted.replace( /(https:\/\/www\.mollie\.com\/^\s+)/g, br>a href$1 classpayment-link-btn>💳 Klik hier om te betalen/a>br> ); // Auto-embed storyboard frame images in chat (visual overview) formatted formatted.replace( /(https:\/\/whiteboardvideo\.nl\/storyboards\/^\s+\/frame-\d+\.png)/g, div stylemargin:10px 0;> + a href$1 target_blank styledisplay:block;font-weight:600;color:#2563eb;margin-bottom:6px;>Bekijk frame/a> + img src$1 altStoryboard frame stylemax-width:100%;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 2px 8px rgba(0,0,0,0.06); /> + /div> ); div.innerHTML `div classmessage-content>${formatted}/div>`; messagesContainer.appendChild(div); messagesContainer.scrollTop messagesContainer.scrollHeight; } function addTypingIndicator(customText) { const div document.createElement(div); div.className message bot typing-indicator; div.id typing-indicator; const text customText || Aan het typen; div.innerHTML `div classmessage-content>${text}span classdots>.../span>/div>`; messagesContainer.appendChild(div); messagesContainer.scrollTop messagesContainer.scrollHeight; } function updateTypingIndicator(text) { const el document.getElementById(typing-indicator); if (el) { el.querySelector(.message-content).innerHTML `${text}span classdots>.../span>`; } } function removeTypingIndicator() { const el document.getElementById(typing-indicator); if (el) el.remove(); } async function sendMessage() { const message userInput.value.trim(); if (!message) return; addMessage(message, user); userInput.value ; disableInput(); // Check if this might trigger script generation const msgLower message.toLowerCase(); const mightGenerateScript /^(ja|yes|akkoord|klopt|goed|prima|oké|ok|correct|perfect)$/i.test(msgLower.trim()); if (mightGenerateScript) { addTypingIndicator(⏳ Script wordt gegenereerd); // Update message after a delay to show progress setTimeout(() > updateTypingIndicator(📝 Bijna klaar), 5000); } else { addTypingIndicator(); } try { const response await fetch(`${API_BASE}/chat`, { method: POST, headers: { Content-Type: application/json }, body: JSON.stringify({ sessionId, message }) }); removeTypingIndicator(); if (!response.ok) throw new Error(Failed); const data await response.json(); addMessage(data.message.content, bot); } catch (error) { removeTypingIndicator(); addMessage(Sorry, er ging iets mis. Probeer opnieuw., bot); } enableInput(); } async function uploadFile(file) { if (!sessionId) { uploadStatus.innerHTML span classupload-error>Start eerst een gesprek/span>; return; } uploadStatus.innerHTML Uploaden...; const formData new FormData(); formData.append(file, file); formData.append(sessionId, sessionId); try { const response await fetch(`${API_BASE}/upload`, { method: POST, body: formData }); const data await response.json(); if (response.ok) { uploadStatus.innerHTML `span classupload-success>✓ ${data.originalName} geüpload/span>`; addMessage(`📎 Bestand geüpload: ${data.originalName}`, user); } else { uploadStatus.innerHTML `span classupload-error>${data.error}/span>`; } } catch (error) { uploadStatus.innerHTML span classupload-error>Upload mislukt/span>; } } function startNewConversation() { if (confirm(Weet je zeker dat je opnieuw wilt beginnen? Je huidige gesprek wordt gewist.)) { localStorage.removeItem(wbv_session_id); sessionId null; uploadStatus.innerHTML ; initSession(); } } // Payment functions async function createPayment(product) { try { addMessage(`💳 Betaling aanmaken voor ${product}...`, bot); const response await fetch(`${API_BASE}/payment/create`, { method: POST, headers: { Content-Type: application/json }, body: JSON.stringify({ sessionId, product }) }); const data await response.json(); if (data.paymentUrl) { window.location.href data.paymentUrl; } else { addMessage(Sorry, er ging iets mis met de betaling., bot); } } catch (error) { addMessage(Betaling mislukt. Probeer opnieuw., bot); } } // Check for payment return async function checkPaymentReturn() { const params new URLSearchParams(window.location.search); const paidProduct params.get(paid); const returnSession params.get(session); if (!(paidProduct && returnSession)) return { hasReturn: false }; sessionId returnSession; localStorage.setItem(wbv_session_id, sessionId); window.history.replaceState({}, , /); return { hasReturn: true, paidProduct, returnSession }; } async function pollPaymentUntilPaid(sessionId, product, timeoutMs 90000) { const start Date.now(); while (Date.now() - start timeoutMs) { try { const response await fetch(`${API_BASE}/payment/status/${sessionId}/${product}`); const data await response.json(); console.log(Payment status:, data); if (data.paid) return true; } catch (e) { console.error(Payment poll error:, e); } await new Promise(r > setTimeout(r, 2500)); } return false; } // Add payment button to messages function addPaymentButton(product, price) { const div document.createElement(div); div.className message bot; div.innerHTML `div classmessage-content> button onclickcreatePayment(${product}) stylebackground: var(--accent); color: var(--bg-dark); border: none; padding: 0.75rem 1.5rem; border-radius: 8px; font-weight: 600; cursor: pointer; margin-top: 0.5rem;> 💳 Betaal €${price} voor ${product} /button> /div>`; messagesContainer.appendChild(div); messagesContainer.scrollTop messagesContainer.scrollHeight; } sendBtn.addEventListener(click, sendMessage); userInput.addEventListener(keypress, (e) > { if (e.key Enter) sendMessage(); }); fileInput.addEventListener(change, (e) > { if (e.target.files0) uploadFile(e.target.files0); }); // Init (async () > { const ret await checkPaymentReturn(); // Always load existing chat immediately (prevents empty chat on payment return) await initSession(); if (ret.hasReturn) { addTypingIndicator(⏳ Betaling wordt gecontroleerd); const paid await pollPaymentUntilPaid(sessionId, ret.paidProduct, 90000); removeTypingIndicator(); if (paid) { // Reload session to pull in newly inserted backend messages await initSession(); } else { addMessage(⏳ Betaling wordt nog verwerkt. Ververs de pagina over een minuut als je nog niets ziet., bot); } } })(); /script>/body>/html>
View on OTX
|
View on ThreatMiner
Please enable JavaScript to view the
comments powered by Disqus.
Data with thanks to
AlienVault OTX
,
VirusTotal
,
Malwr
and
others
. [
Sitemap
]