androidan termokameron? Tio estas tre potenca ilo, kiu permesas al ni observi tion, kion niaj okuloj povas mem supervidi. Termokamero uzas infraruĝon l...">
,需要通过父级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);
}
});
})();
Hejmpaĝo /
Ĉu vi scias pri la termokamera por Android ? Tio estas tre povailo ilo kiu permesas al ni observi tion kion niaj okuloj ne povas vidi sole. Termala kamera uzas infrarougan lumon por formi bildon. Tio vere estas mirinda ĉar ĝi permesas al ni vidi varmon. Kun tiu varma vidpovo ni povas malkovri kaŝitajn problemojn kiuj alie restus nevideblaj! Pripensu vian domon, aŭ lernejon kun forprenita parto de la teto. Identigi el kie venas la akvo povas esti tre malfacila. Vi malofte trovos filtrilon, speciale se la akvo jam disvastiĝis. Kun la termokamera por Android ni povas vidi, kie akvo malvarmigas aĵojn pli ol necesite. Termala bildigilo montras malsamajn temperaturojn, do ni scias, ke tio estas la preciza loko, kiu bezonas riparo supre! Tiel ni povas limigi la filtradon antaŭ ol ĝi faras ankoraŭ pli da damaĝo. Multaj el la problemoj kiujn ni renkontas povus esti solvataj aŭ malhelpitaj se ili estus trovitaj frue kun malakra terma kamera por Android . Tio estas tiom graviga, ĉar se neniel solvita, ĝi nur malpliigos. Kaj korekti tion, kiam jam ĉio iri malbone, estus multe pli malfacila. Tio ŝparos al ni tempon kaj mono postenon por fiksi ĝin. Tio similas iri al regulaj kontroladoj ĉe via doktoro. Imagu, ke temas pri nia sano kaj la doktoro trovas problemon frue, do ni havas simplan (aŭ pli simplan) solvon ol kiam ĝi iros vere maleble. Tial, ĝi ŝparus multe da tempo kaj mono por riparoj faritaj de la malakra terma kamera por Android . Pli da mono kaj tempo, kiun ni akumulas, pli da ĝi ni povos elpensi por amuzaj aferoj, kiuj povas doni veran feliĉon en nia vivo. Nun, kiam mi pensas pri tio, ni povus utiligi pli da tempo ludante kun niaj amikoj kaj iri sur amuzaj aventuroj aŭ akiri la sekvan ludilon. Simplike estos tempo kiam homoj havos laboron en areoj, kiuj venas kun tro da riskoj. La vorto por tiuj danĝeraj lokoj estas perigaj medioj. Eble vi havas ĉirkaŭe aĵojn kiuj povus esti danĝeraj por ili - ekzemple tre varma akvo, netigaj kemikaliaj produktoj aŭ io alia. Kiam ni faras termalajn kamerajn skanejn en petrokimiaj fabrikoj aŭ rafinarioj de Horizon Excel, la laborlokoj estas pli sekuraj por iu, kiu devas iri en tiujn areojn. Tio estas simile al kiam vi bezonas labori en tre varma areo, ni faras termalan kameran skanon por kontroli ke la homo ne trovarmas sin. Ni kontrolas tiujn aferojn, kaj se la kamera montras ke ili estas tro varmaj, ni povas fari ŝanĝojn por malvarmigi la areon, do restas ankoraŭ sekura por ili sed pli sekura. Tio permesas al ni resti pli sekuraj kaj saniĝaj dum ni laboras! Por tio, nature, ni povas kontroli la izoladon malfruene de muroj. Izolado estas esenca por malhelpi perdon de varmo aŭ akiradon. Per uzado de la termala kamera ni facile povas vidi areojn de izolado kiuj eble estas difektaj aŭ alie pli malprofundaj ol ili devus esti. Tio certigos ke la edifo estas sana antaŭ ol ĝi havos loĝantojn kaj helpos fari la vivon de estontaj loĝantoj komforta, estante sekura en iliaj respektivaj apartamentoj. Ĉe LSJ ni valoras la termikan kameroskanadon kaj la provizon de produktoj de alta kvalito kaj elstara servico al niaj klientoj. Tial ni ofertas garantiojn da unu aŭ kvin jaroj. Tio montras nian konfidon en la kvaliton kaj funkciadon de niaj produktoj. Ni investas grandan sumon en esploradon kaj evoluigon por certigi, ke niaj produktoj plenumas la plej altajn normojn. Ni havas striktajn normojn pri kvalitkontrolo kiel produktanto, de la komenco ĝis la fina produkto. Ni ofertas diversajn produktojn por kontentigi la bezonojn de ĉiuj uzantoj. Nia stoko de komponantoj, brutmaterialoj kaj aliaj artikoloj estas sufiĉe granda por garantii tempan liveradon. Ni rembursos al vi ĝis 5% de la sumo, se ni ne povos liveri la varojn tempe. Por helpi vin uzi niajn produktojn produktive kaj efike, ni provizas kompleksajn instruajn videojn. Ni ankaŭ ofertas teknikan trejnadon surloke, speciale adaptitan al viaj bezonoj, tiel ke vi povos uzi niajn produktojn efike kaj facile. Elektu LSJ pro kvalito, fidindeco de produktoj kaj eksterordinara klienta servico. Ekde 2013, la termokamera-skanado de LSJ evoluas, produktas kaj liveras altperforman ekipaĵon por serĉo kaj savo kaj ekipaĵon por bombofajristoj. LSJ ricevis certigojn pri ISO9001, CE kaj ROHS. La kompanio ankaŭ posedas pli ol 30 patentojn. Ni investas grandajn sumojn en nian esplor- kaj dezign-departementon, ĉar ni estas gvidanta entrepreno. En 2024, LSJ partoprenis en kvar gravaj ekspozicioj: INTERSEC en Dubajo, Securika 2024, la 18-a Defence Services Asia (DSA) kaj la 3-a National Security Asia (NATSEC) en Malajzio, kaj NFPA en Usono. Ni ankaŭ jam registriĝis por INTERSEC en Dubajo la 14–16-an de januaro 2025. Tie ni montras nian radaran vivdetektilon, 3D-radaron kapablan detekti murojn, gasdetektilon, audio- kaj videaŭskultilan ekipaĵon, kiel ankaŭ ekipaĵon por monitorado de stabileco kaj termokamerojn por kontraŭbatalo de fajroj. Ni invitas vin viziti nian standon. LSJ havas 11-jaran sperton en produktado. Ili estas ekspertoj pri evoluigo kaj konstruado de novaj produktoj bazitaj sur la uzaj scenaroj de la klientoj. Ili ankaŭ daŭre plibonigas kapablojn kaj malpliigas kostojn de siaj produktoj. LSJ ankaŭ havas vastan sperton en urbaj serĉo kaj savo. Ekzemple, dum la teruriga tertremo en Turkio en 2023, la radara vivdetektilo de LSJ ludis decidan rolon en la savoperacioj de la ĉina Blua Ĉielo Savteamo. Elektu LSJ por progresintaj, fidindaj solvoj, kiuj estas adaptitaj al viaj postuloj. Ni provizas subtenon al Fajro- kaj Savdepartementoj, krom al Publikservoj pri Sekureco kaj urbaj serĉ- kaj savteamoj. LSJ provizas novigan ekipaĵon por termokamera-skanado, serĉo kaj savo, kaj laboro en danĝeraj areoj trans diversaj industrioj.
Fajrokom-bazitaj Termokameroj: Ni studis kaj disvolvis du tipojn de termokameroj. Ili estas haveblaj kun tri rezolucio-opcioj: 256×192, 384×288 kaj 640×512. Tiuj kameroj povas mezuri temperaturojn ĝis 2000 °C.
Serĉ- kaj Sav-Ekipaĵo: Ni provizas aron da produktoj, inkluzive de stabiligaj monitoroj, gasdetektiloj kaj moviĝ-monitoraj sistemoj.
Industriaj Termokameroj: Krom termokameroj por fajrokombo, LSJ ofertas porteblajn termokamerojn por detekti akvofluojn kaj konstruaĵinspektojn, same kiel elektronikajn riparojn, perdojn de subplankaj varmigiloj kaj inspektojn de HVAC-sistemoj.
Termoskopoj kaj Noktovidaj Skopoj estas perfektaj por noktovido nokte kaj estas popularaj inter ĉasistoj. Ili povas esti montitaj sur fusiloj.
LSJ dediĉas sin al provizado de alta-kvalita termoimaga kaj sav-equipaĵo por plenumi la postulojn de diversaj industrioj, pliigante sekurecon kaj efikecon. LSJ ofertas la plej sekurajn kaj progresintajn solvojn.
Vi povas fidi LSJ kiel vian ĉefan partneron en la kampo de urbaj serĉ- kaj savoperacioj. LSJ estas pioniro en la disvolvo de termokamera skanaj urbaj serĉo- kaj saviloj, kiuj plenumas internaciajn normojn. Antaŭvendaj servoj: Nia teamo da specialuloj estas pretaj helpi vin jam ekde la komenco. Ni ofertas detalan konsulton por plene kompreni viajn postulojn kaj kreigi proprajn solvojn. Ni provizas detalan specifon de la produkto kaj demonstrovadon por helpi vin pri informita decido. Vendaj servoj: Ni zorgas ke la tuta vendprocezo estu senproblemaj kaj efikaj. Ni garantias, ke viaj produktoj alvenos ĝuste je tempo kaj en perfekta stato dank' al nia raciigita ordosistemo kaj strikta kvalitkontrolo. Ni ankaŭ subtenas liveradon de pordo al pordo. Postvendaj servoj: Nia kunlaboro kun vi ne finiĝas kun la liverado de niaj produktoj. Niaj vastaj postvendaj servoj inkluzivas instalaĵan helpon, uzantotrainadon kaj prizorgon. Nia klienta servoteamo estas preta helpi vin pri iuj ajn problemoj aŭ demandoj, kiujn vi povus havi, kaj certigi vian plenan kontenton. Kiam vi aĉetas ekipaĵon de LSJ, ni provizos tri-jaran garantion, kaj vi povos ricevi specifajn postvendajn servojn de ni. Kiam vi elektas LSJ, vi elektas kvaliton, fidindecon kaj senekvivalentan servon. Ni antaŭĝojas iĝi via partnero en urbaj serĉo- kaj savoperacioj kaj incendio-batado. Tutaj Rajtoj Rezervitaj © Pekino LSJ Teknologia Disvolvigo Konsiliumo, Ltd.
-
Politiko pri Privateco
skanado per termala kamera
Skanado per termala kamera ŝparas tempon kaj monojn por entreteno

Skanado per termala kamera plibonigas sekurecon en riskaj medioj

Skanado per termala kamera pligrandigas energiecon

Skanado per termala kamera donas preciajn informojn por konstruaj inspektoj
Why choose LSJ Technology skanado per termala kamera?
Garantado de kvalito kaj puntualeco: la ĝisdatigo de LSJ pri klienta kontento
Inovanta alta-prestiga serĉa kaj salvadoa aparataro fabrikanto
Plena langeto pri urba serĉado kaj subveno: ĉeĥoj de provizado de ekipmento
Kial LSJ Povas Estar Via Unua Manufakciulo kaj Furnacistino?
Rilataj kategorioj de produktoj
Ĉu vi ne trovas tion, kion vi serĉas?
Sendu peton pri oferto nun
Kontaktu niajn konsultantojn por pli da haveblaj produktoj.Kontaktu nin