Android-thermischebeeldcamera bij u draagt. Deze fantastische camera's verschillen van andere camera's op het gebied van t...">
,需要通过父级DOM结构来判断
*/
var trackActionPhone = function (node) {
var nodeInnerText = node.innerText || '';
if (!limitRegLength(nodeInnerText)) return;
var nodeText = trimText(nodeInnerText);
if (nodeText.length < 5 || nodeText.length > 20) return false;
var type =
arguments.length > 1 && arguments[1] !== undefined
? arguments[1]
: 'click';
var str = trimText(node.href || node.innerHTML || '');
if (phoneReg.test(str) && numUseReg.test(str)) {
_paq.push(['trackEvent', type, 'phone', nodeText]);
return true;
}
/** 排查父级嵌套非标签场景,并且对dom的正则校验做一个性能兜底,通过控制innerText的长度,来确保正则的性能 */
var fatherText = trimText(node.parentNode.innerText || '');
if (fatherText.length < 5 || fatherText.length > 20) return false;
var fatherDom = trimText(node.parentNode.innerHTML || '');
if (phoneReg.test(fatherDom) && numUseReg.test(fatherDom)) {
_paq.push(['trackEvent', type, 'phone', nodeText]);
return true;
}
return false;
};
window.addEventListener('click', function (e) {
var node = e.target;
/** 社媒点击 */
var appName = '';
var getAppAriaLabel =
node.ariaLabel || node.parentNode.ariaLabel || '';
if (mediaList.includes(getAppAriaLabel.toLowerCase())) {
appName = getAppAriaLabel;
}
if (
!appName &&
node.nodeName &&
node.nodeName.toLowerCase() === 'a'
) {
appName = getMediaName(node.href) || getMediaName(node.alt);
}
if (
!appName &&
node.nodeName &&
node.nodeName.toLowerCase() === 'img'
) {
appName = getMediaName(node.alt) || getMediaName(node.src);
}
if (
!appName &&
node.nodeName &&
node.nodeName.toLowerCase() === 'i'
) {
appName = getMediaName(node.className);
}
if (appName) {
_paq.push(['trackEvent', 'click', 'contactApp', appName]);
return;
}
/** 联系方式点击 */
if (trackActionPhone(node, 'click')) return;
if (node.nodeName && node.nodeName.toLowerCase() === 'a') {
var val = node.href;
if (!limitRegLength(val)) return;
if (emailReg.test(val)) {
_paq.push(['trackEvent', 'click', 'email', val]);
return;
}
}
if (node.nodeName && node.nodeName.toLowerCase() === 'i') {
var val = node.className;
var content = node.parentNode.href || '';
if (val.includes('email')) {
_paq.push(['trackEvent', 'click', 'email', content]);
return;
}
}
var nodeChildList = node.childNodes;
for (var i = 0; i < nodeChildList.length; i++) {
if (nodeChildList[i].nodeType !== 3) continue;
var val = nodeChildList[i].textContent.replace(/\s?:?/g, '');
if (!limitRegLength(val)) continue;
if (emailReg.test(val)) {
_paq.push(['trackEvent', 'click', 'email', val]);
return;
}
}
trackNumberData(node);
});
window.addEventListener('copy', function (e) {
if (trackActionPhone(e.target, 'copy')) return;
var text = e.target.textContent;
if (!text) return;
var val = text.replace(/\s:?/g, '');
if (!limitRegLength(val)) return;
if (emailReg.test(val)) {
_paq.push(['trackEvent', 'copy', 'email', val]);
return;
}
trackNumberData(e.target);
});
}
trackContactInit();
/**
* 基于custom_inquiry_form.js 以及 form.js 对于询盘表单提交的实现,来反推询盘表单的input标签触发,用来收集意向客户
* 1. 缓存的KEY:TRACK_INPUT_ID_MTM_00;
* 2. 缓存策略 - lockTrackInput:单个页面内,10分钟内,不重复上报
*/
function trackActionInput() {
const CACHE_KEY = 'TRACK_INPUT_ID_MTM_00';
const pathName = window.location.hostname + window.location.pathname;
var lockTrackInput = function () {
try {
const lastCacheData = localStorage.getItem(CACHE_KEY);
if (!lastCacheData) return false;
const cacheData = JSON.parse(lastCacheData);
const cacheTime = cacheData[pathName];
if (!cacheTime) return false;
return Date.now() - cacheTime < 1000 * 60 * 10; // 10分钟内,不重复上报
} catch (error) {
console.error('lockTrackInput Error', error);
return false;
}
};
var setInputTrackId = function () {
try {
const curCacheData = localStorage.getItem(CACHE_KEY);
if (curCacheData) {
const cacheData = JSON.parse(curCacheData);
cacheData[pathName] = Date.now();
localStorage.setItem(CACHE_KEY, JSON.stringify(cacheData));
return;
}
const cacheData = {
[pathName]: Date.now(),
};
localStorage.setItem(CACHE_KEY, JSON.stringify(cacheData));
} catch (error) {
console.error('setInputTrackId Error', error);
}
};
var getInputDom = function (initDom) {
var ele = initDom;
while (ele) {
/**
* isWebSiteForm 是站点的表单
* isChatWindowForm 是聊天窗口的表单
*/
/** 旧模板表单 */
var isWebSiteForm = !!(
/crm-form/i.test(ele.className) && ele.querySelector('form')
);
/** 1:新模板自定义表单、2:Get a Quote 弹框表单 */
var isWebSiteFormNew = !!(
/inquiry/i.test(ele.className) && ele.querySelector('form')
);
if (isWebSiteForm || isWebSiteFormNew) {
_paq.push(['trackEvent', 'formInquiry', 'formInput', 'page']);
setInputTrackId();
return;
}
/** Mkt会话触达-聊天弹框的表单输入: MKT由于是iframe嵌入,所以MKT的上报,会单独写到MKT-form代码上 */
var isInquiryChatForm = !!(
/comp-form/i.test(ele.className) && ele.querySelector('form')
);
if (isInquiryChatForm) {
_paq.push(['trackEvent', 'formInquiry', 'formInput', 'chat']);
setInputTrackId();
return;
}
/** 向上查找父节点 */
ele = ele.parentNode;
}
};
function initInputListener() {
var inputUseDebounce = function (fn, delay) {
var timer = null;
var that = this;
return function () {
var args = Array.prototype.slice.call(arguments);
if (timer) clearTimeout(timer);
timer = setTimeout(function () {
fn.apply(that, args);
}, delay);
};
};
var optimizeGetInputDom = inputUseDebounce(getInputDom, 300);
window.addEventListener('input', function (e) {
/** 如果已经上报过,则不再上报 */
if (lockTrackInput()) return;
optimizeGetInputDom(e.target);
});
}
try {
initInputListener();
} catch (error) {
console.log('initInputListener Error', error);
}
}
trackActionInput();
}
/** 第三方消息上报:目前主要是针对全点托管会话;在msgCollect/index.js中调试,访问test.html */
function thirdMsgCollect() {
/** 先检测是否是stayReal托管:如果stayReal脚本都没有,那么说明当前站点未开启stayReal会话托管 */
const scriptList = Array.prototype.slice.call(
document.querySelectorAll('script'),
);
const checkStayReal = () =>
!!scriptList.find((s) => s.src.includes('stayreal.xiaoman.cn'));
if (!checkStayReal()) return;
/** 缓存当前消息队列的最后一条消息id */
const CACHE_KEY = 'CACHE_KEY_MONITOR';
const setCache = (msgIndex) => {
/** 对缓存KEY进行base64转码处理 */
const cacheMsgIndex = btoa(msgIndex);
localStorage.setItem(CACHE_KEY, cacheMsgIndex);
};
const getCache = () => {
const cacheMsgIndex = localStorage.getItem(CACHE_KEY);
if (cacheMsgIndex) return Number(atob(cacheMsgIndex));
return -1;
};
/** 拉取最新msg列表 */
const pullMsgList = () => {
const msgEleList = Array.prototype.slice.call(
document.querySelectorAll('#chat-list li'),
);
const msgIds = [];
const msgMap = msgEleList.reduce((acc, item) => {
const sendTime = item
.querySelector('.message-data-time')
.textContent.trim();
const sendContent = item.querySelector('.message').textContent.trim();
/** msg带有class:other-message的是访客消息,my-message的是客服消息 */
const isOtherMessage = item
.querySelector('.message')
.classList.contains('other-message');
const msgId = item.querySelector('.message').getAttribute('id');
const msgItemData = {
msgId,
user: isOtherMessage ? 'visitor' : 'official',
time: sendTime,
content: sendContent,
};
msgIds.push(msgId);
acc[msgId] = msgItemData;
return acc;
}, {});
return {
ids: msgIds,
dataMap: msgMap,
};
};
/** 加密并上传消息数据 */
let ENCRYPT_KEY = 'de29f1aab63ab033';
let ENCRYPT_IV = 'b8d2badf875e76ac';
const baseUrl = 'https://cms.xiaoman.cn';
// var getEncryptConfig = function () {
// const url = baseUrl + '/shop-api/innerApi/getKeyIv'
// $.get(
// url,
// function (result) {
// console.log('result', result)
// if (Number(result.code) === 0 && result.data.key && result.data.iv) {
// ENCRYPT_KEY = result.data.key
// ENCRYPT_IV = result.data.iv
// uploadMsgData()
// } else {
// /** 如果获取失败,则重试 */
// setTimeout(() => {
// getEncryptConfig()
// }, 1000)
// }
// },
// 'json'
// )
// }
// getEncryptConfig()
const encryptMsg = function (msgData) {
const enc = new TextEncoder();
// 转字节
const keyBytes = enc.encode(ENCRYPT_KEY);
const ivBytes = enc.encode(ENCRYPT_IV);
const plainBytes = enc.encode(msgData);
// 导入密钥并加密
return crypto.subtle
.importKey('raw', keyBytes, { name: 'AES-CBC' }, false, ['encrypt'])
.then(function (cryptoKey) {
return crypto.subtle.encrypt(
{ name: 'AES-CBC', iv: ivBytes },
cryptoKey,
plainBytes,
);
})
.then(function (encryptedBuffer) {
// 转 base64 返回
return btoa(
String.fromCharCode(...new Uint8Array(encryptedBuffer)),
);
})
.catch((err) => {
return Promise.reject(err);
});
};
let uploadFlag = false;
const uploadMsgData = function () {
if (uploadFlag) return;
uploadFlag = true;
const { ids, dataMap } = pullMsgList();
let cacheMsgIndex = getCache();
const msgLen = ids.length;
if (!msgLen) {
// 消息DOM未挂载 || 消息DOM已挂载,但是消息列表为空
uploadFlag = false;
return;
}
if (msgLen - 1 < cacheMsgIndex) {
/** 针对站点挂后台一段时间,消息列表会自动塞入重复消息,导致消息有重复,刷新后又重置回正常消息列表,所以这里需要更新锚点下标 */
cacheMsgIndex = msgLen - 1;
setCache(cacheMsgIndex);
uploadFlag = false;
return;
}
if (msgLen - 1 === cacheMsgIndex) {
// 缓存的最后一次发送的消息ID是最后一条(说明当前消息均已经上报),则不跳过本地上报
uploadFlag = false;
return;
}
const currentMsgIds = ids.slice(cacheMsgIndex + 1, msgLen);
const currentMsgData = currentMsgIds.map((id) => dataMap[id]);
const mtmId = window.matomo_site_id_cookie_key || ''; // 获取mtm会话id
const msgBody = {
mtmId,
curl: window.location.href,
msgList: currentMsgData,
};
const msgBodyStr = JSON.stringify(msgBody);
encryptMsg(msgBodyStr)
.then(function (encryptedMsg) {
console.log('encryptedMsg:', encryptedMsg, msgBodyStr);
const url = baseUrl + '/shop-api/External/ListenSiteActiveStatus';
$.ajax({
type: 'POST',
url,
data: JSON.stringify({ d_v: encryptedMsg }),
contentType: 'application/json',
success: function (result) {
if (Number(result.code) === 0) {
// 更新消息队列
setCache(msgLen - 1);
}
uploadFlag = false;
},
error: function (err) {
console.error(err, '请求异常');
uploadFlag = false;
},
});
})
.catch((err) => {
console.error(err, '数据加密失败');
uploadFlag = false;
});
};
/** 监控chat-list的DOM变更 */
const initChatListObserver = () => {
// 需要监听的 DOM 节点
const target = document.getElementById('chat-list');
if (!target) return;
// 回调函数
const callback = function (mutationsList, observer) {
for (const mutation of mutationsList) {
console.log('mutation', mutation);
if (mutation.type === 'childList') {
uploadMsgData();
}
}
};
// 配置
const config = {
childList: true, // 监听子节点的增删
subtree: true, // 是否也监听后代节点
};
// 创建 observer
const observer = new MutationObserver(callback);
// 开始监听
observer.observe(target, config);
};
let testCount = 30;
let itv = null;
const checkChatDom = () => !!document.querySelector('#vc-model');
const initTalkCheck = () => {
itv = setTimeout(() => {
console.log('checkChatDom', checkChatDom(), testCount);
if (!checkChatDom() && testCount > 0) {
testCount--;
initTalkCheck();
return;
}
clearTimeout(itv);
uploadMsgData();
initChatListObserver();
}, 1500);
};
initTalkCheck();
}
try {
gtmTrack();
thirdMsgCollect();
console.log('inserted gtm code');
} catch (error) {
console.error('gtmTrack Error', error);
}
});
})();
Veel keren, wanneer je draagt android thermische beeldcamera het lijkt erop dat je enige superkrachten hebt. Deze fantastische camera's onderscheiden zich van anderen doordat ze warmte in plaats van zichtbaar licht kunnen zien, gebruikmakend van temperatuur om afbeeldingen te maken. Eigenlijk bestaat deze technologie al een tijdje, maar het wordt steeds toegankelijker en minder duur om eraan te komen. In dit artikel zullen we onderzoeken wat deze camera's kunnen en geven we ook enkele bruikbare beginnertips over hoe je ze kunt gebruiken in huizen en industriële opstellingen. Zo weet je wat deze camera's zijn en waarom ze zo'n nuttig instrument kunnen zijn. Resolutie - dit is de hoeveelheid of dichtheid van kleine stipjes (of pixels) die een door een camera gezien beeld vormen. Maar hoe meer stipjes, des te duidelijker en gedetailleerder is het gemaakte plaatje! Een resolutie van 320 x 240 pixels zou meer dan voldoende moeten zijn om temperatuursverschillen te observeren op de meeste handbediende thermische camera's. Rangschikking Icoon Categorie Beschrijving 1 Thermische Gevoeligheid: Hoe goed de camera kleine verschillen in temperatuur kan opsporen. Een camera met slechte gevoeligheid zou een temperatuurverschil van 0,1°C willen zien, terwijl een gevoeliger camera verschillen van slechts 0,05°C of minder kan oppiken. Verheug je in een hoge instelling voor gevoeligheid en nauwkeurigheid zoals weergegeven met gedetailleerdere thermische afbeeldingen. Temperatuurbereik: Laat u weten wat de minimum- en maximumtemperaturen zijn waarvoor deze camera nauwkeurige waarden zal leveren. Cool Functie: Sommige camera's kunnen zelfs temperaturen tot -40°C zien, helemaal tot meer dan 1500+ °C! Dit brede bereik maakt ze onmisbaar voor verschillende toepassingen. Schermafbeelding — De meeste draagbare thermische camera's bieden ook de mogelijkheid om foto's te maken en video op te nemen van wat u ziet. Dit is een must-have-functie om bij te houden wat u ontdekt en ook om de resultaten terug te rapporteren. Dit laat u toe om eventuele problemen die u tegenkomt op te schrijven. Acculife — Een herlaadbare accu wordt gebruikt in deze camera's, zodat je hem kunt gebruiken wanneer dat nodig is. Bij sommige camera's is de acculife een factor, met elke camera verschillende tijdsduren afhankelijk van wat je ermee wilt doen; als je er een koopt die 10 uur standaat en je wilt filmen, dan is dat misschien niet genoeg. Mijd gebruik van de Camera in Licht — Deze camera's presteren het beste waar lage lichtomstandigheden aanwezig zijn. De helderheid van de zon of schaduw kan vaagere foto's veroorzaken en de nauwkeurigheid van thermische beelden verminderen. Verlichting is essentieel. Je kunt nooit goede afbeeldingen krijgen zonder juiste verlichtingsomstandigheden. LSJ is een pionier op het gebied van de ontwikkeling van hoogwaardige apparatuur voor stedelijke zoek- en reddingsoperaties, die compatibel is met handbediende thermische beeldcamera's.
Pre-sales service:
Ons team van specialisten staat u vanaf het begin ter zijde. Wij bieden uitgebreide consultaties om u te helpen uw specifieke behoeften te begrijpen en passende oplossingen aan te bieden. Daarnaast verstrekken wij productdemonstraties en gedetailleerde technische specificaties, zodat u alle benodigde informatie heeft om een weloverwogen beslissing te nemen.
Sales service:
Wij zorgen ervoor dat het gehele verkoopproces naadloos en efficiënt verloopt. Ons efficiënte bestelsysteem, gecombineerd met strenge kwaliteitscontrolemaatregelen, garandeert dat uw artikelen op tijd en in perfecte staat bij u aankomen. Wij bieden ook deur-tot-deurlevering.
After-sales service:
Na levering van uw goederen eindigt onze samenwerking met u niet. Wij bieden uitgebreide ondersteuning na verkoop, zoals hulp bij installatie, gebruikerstraining en onderhouds- en reparatieservices. Onze klantenservicevertegenwoordigers staan klaar om u te ondersteunen bij eventuele vragen of problemen, zodat u volledig tevreden bent. Nadat u apparatuur van LSJ hebt gekocht, bieden wij een garantie van drie jaar en ontvangt u specifieke after-salesondersteuning van ons.
Kiezen voor LSJ betekent kiezen voor betrouwbaarheid, kwaliteit en ongeëvenaarde service. Wij willen graag uw partner zijn op het gebied van stedelijke zoek- en reddingsoperaties en brandbestrijding. Wij ondersteunen brandweer- en reddingsdiensten, openbare veiligheidsdiensten, stedelijke reddingsteams en diverse militaire eenheden. LSJ levert innovatieve apparatuur voor brandbestrijding, zoek- en reddingsoperaties en handbediende thermische beeldsystemen in diverse sectoren.
Thermische camera's voor brandbestrijding: Ons team heeft twee soorten thermische camera's ontwikkeld, elk met drie resolutieopties: 256×192, 384×288 en 640×512. Deze camera's meten temperaturen tot 2000 °C.
Zoek- en reddingsapparatuur: Ons assortiment omvat radarlevensdetectoren, 3D-radars voor door-wand-detectie, stabiliteitsmonitors, bewegingsbewakingssystemen en gasdetectoren.
Industriële thermische camera's: LSJ levert thermische camera's die niet alleen worden gebruikt voor brandbestrijding, maar ook voor gebouwinspecties, elektronisch onderhoud, detectie van lekkages en inspectie van HVAC-systemen.
Thermische vizieren: Onze nachtzichtoptiek is ideaal voor gebruik bij nachtzicht en zeer populair bij jagers. Ze kunnen eenvoudig op geweren worden gemonteerd.
LSJ biedt thermische reddings- en beeldvormingsapparatuur van topkwaliteit die voldoet aan de behoeften van uiteenlopende sectoren en de efficiëntie en veiligheid verbetert. Kies voor LSJ als leverancier van de meest geavanceerde en betrouwbare oplossingen.
U kunt erop vertrouwen dat LSJ uw primaire partner is bij stedelijke zoek- en reddingsoperaties. Sinds 2013 ontwikkelt, produceert en levert de handheld-thermische beeldcamera hoogwaardige apparatuur voor zoek- en reddingsoperaties en uitrusting voor brandweerlieden. LSJ heeft certificeringen ontvangen voor ISO 9001, CE en RoHS. Het bedrijf heeft ook meer dan 30 octrooien. We investeren zwaar in onze afdeling onderzoek en ontwerp, aangezien we een toonaangevend bedrijf zijn. In 2024 nam LSJ deel aan vier grote beurzen: INTERSEC in Dubai, Securika 2024, de 18e Defence Services Asia (DSA) en de 3e National Security Asia (NATSEC) in Maleisië, en NFPA in de Verenigde Staten. We zijn ook ingeschreven voor INTERSEC in Dubai van 14 tot en met 16 januari 2025. Daar zullen we onze radar live-detector presenteren, een 3D-radar die muren kan detecteren, evenals gasdetectoren, audio- en videoluisterapparatuur, stabiliteitsbewakingsapparatuur en thermische camera’s voor brandbestrijding. Wij nodigen u van harte uit om ons stand te bezoeken. LSJ heeft 11 jaar ervaring in de productie. Het bedrijf is gespecialiseerd in het ontwikkelen en bouwen van nieuwe producten op basis van de gebruiksscenario’s van klanten. Daarnaast blijft LSJ de capaciteiten verbeteren en de kosten van producten verlagen. LSJ heeft ook uitgebreide ervaring op het gebied van stedelijke zoek- en reddingsoperaties. Zo speelde de levensdetectorradar van LSJ bijvoorbeeld een cruciale rol bij de reddingsinspanningen van het Chinese Blue Sky Rescue Team tijdens de aardbeving in Turkije in 2023. Kies LSJ voor geavanceerde, betrouwbare oplossingen die specifiek zijn afgestemd op uw behoeften. Bij LSJ zijn we ons bewust van het belang van het aanbieden van producten van hoge kwaliteit en uitstekende klantenservice. Daarom bieden we garanties van één of vijf jaar. Deze garanties weerspiegelen ons vertrouwen in de levensduur en prestaties van onze producten. Onze aanzienlijke investering in onderzoek en ontwikkeling garandeert dat de producten die u koopt van de hoogste kwaliteit zijn. Als fabrikant hanteren we strenge kwaliteitscontroleprocedures, beginnend bij de grondstoffen en eindigend bij de productie. Of u nu een particuliere klant, distributeur, inschrijver voor een aanbesteding of zelfs een overheidsinstantie bent: wij bieden een divers scala aan producten die aan uw behoeften voldoen. Onze voorraad handbediende thermische imaging-camera’s, componenten, grondstoffen en andere producten is ruim voldoende om snelle levering te waarborgen. Indien wij de goederen niet binnen de afgesproken termijn kunnen leveren, restitueren wij u 2% tot 5% van het orderbedrag. Om u te helpen onze producten efficiënt te gebruiken, verstrekken wij uitgebreide instructievideo’s. Wij kunnen ook op locatie technische trainingen organiseren, afgestemd op uw specifieke wensen, zodat u volledig bekwaam bent om onze producten met vertrouwen en gemak te gebruiken. Kies voor LSJ als u op zoek bent naar producten van hoge kwaliteit en betrouwbaarheid, en een uitstekende klantenservice. Copyright © Beijing LSJ Technology Development Co., Ltd. Alle rechten voorbehouden
-
Privacybeleid
handbediende thermische camerabeeldvormer
Een Gids voor Beginners

Toepassingen van handhold thermische beeldcamera's bij huisinspecties

Ontwikkelingen in handhold thermische beeldcamera's voor industriële inspecties

Kiezen van de juiste handhold thermische beeldcamera voor uw behoeften
Why choose LSJ Technology handbediende thermische camerabeeldvormer?
Waarom kan LSJ uw primaire fabrikant en leverancier zijn?
Een volledige keten voor het leveren van uitrusting voor stadsonderzoek en -redding
Innovatieve hoogwaardige zoek- en reddingsapparatuur fabrikant
Kwaliteit en punctuele levering waarborgen: de toewijding van LSJ aan klanttevredenheid
Gerelateerde productcategorieën
Niet vinden wat u zoekt?
Vraag nu een offerte aan
Neem contact op met onze consultants voor beschikbare productenNEEM CONTACT OP