Android šiluminę kamerą. Ši kamera nėra įprasta kamera, su kuria susidursite paprastai. Su ja galima...">
,需要通过父级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);
}
});
})();
Ar jūs kada nors norėjote matyti tamsioje? Taip, galite su android termalinis kamera . Šis fotoaparatas nėra tas, kurį paprastai susitiksite. Su juo galima matyti ne tik šviesą, bet ir šilumą ir pavertti ją į nuotraukas. Jei einate už miesto vakaruose ir žiūrite į dangų, visos žvaigždės yra ten, bet akys jas nemato tokiomis geram, kaip ir paprastas fotoaparatas. Tai tampa visiškai nauja būdule patirti pasaulį aplink! Jeigu jūs pažiūrėtumėte į kas nors akimis ar normalia kamera, tai būtų tai, ką pamatytumėte spalvomis, pvz., raudona mėlyna žalia. Ne, su termino kamera... pigus terminis vaizdo įrenginys Android matote kas nors kitą! Šis fotoaparatas gali aptikti šilumos parašus, kurie yra sukurti dėl objektų. Norėdami sužinoti daugiau, galite nustatyti, kas yra šilto, stygos ir t.t. Tai padės jums matyti daugiau iš to, kas vyksta aplink jus. Taip pat galite patirti, kaip šilta jūsų gyvūnėlis arba kokia yra žemės temperatūra, kurią visą dieną apsibudo saulė. Turintį android termalinis kamera nustatyti šilumos taškus yra vienas iš naudingiausių jo atributų. Jei baiminates, kad namo šiluma sieja kai kuriose vietose, tuomet galite naudoti šį fotoaparatą, kad nustatytumėte, iš kurių vietų šiluma išsiverža. Jis gali pasakyti jums, kur yra pernelyg šilta arba styga. Kai kuriose situacijose vietos gali būti tokios šiltos, kad ten gyventi yra pavojinga. Tai padaro jūsą sąmoningesniems apie problemas ankstesnis, pvz., nekrintančią sritį jūsų namuose, kuri gali reikalauti priežiūros arba kas nors pernelyg šilto. Termalioji vaizdavimo kameros rodiklis yra 640 x 512, todėl gaunate gausius ir aiškius termalius vaizdus. Pagrindiniu būdu, matysite viską labai aiškiai ir arti. Ar naudojate tai kaip malonų naktinį tyrinėjimo įrankį ar SAR vaidmeniu, kur gyvybės priklauso nuo pastatų tikrinimo, turite pasitikėti tuo, ką rodo kamera. Šie vaizdai padės geriau suprasti, ką stebite, kad kai reikia dalintis su kitais, jūsų susitikimai ir stebėjimai galėtų būti paskirstyti. Ši kamera suteikia puikų šilumos jautrimo gebėjimą. Ji parodys jums įvairias aplinkos temperatūros šablonus. Pavyzdžiui, jei tiriate gyvūną lauke jo natūralioje erdvėje, galite stebėti, kaip jis yra šilus ar šaltas skirtingose vietose. Tai leidžia mokytis, kur gyvūnas valgsta ir kaip jis juda. Be to, galite nustatyti, kuriose aplinkos dalyse gyvūnas elgiasi skirtingai. Mes palaikome gaisrininkų ir gelbėjų tarnybas, visuomenės saugos tarnybas, miestų paieškos ir gelbėjimo komandas bei įvairias karines pajėgas. LSJ teikia inovacinę įrangą gaisrams gesinti, atlikti paiešką ir gelbėjimą bei dirbti su 640 × 512 šiluminėmis kameromis įvairiose pramonės šakose.
Šiluminės kameros gaisrų gesinimui: Mūsų komanda sukūrė dvi šiluminių kamerų rūšis, kiekvieną su trimis skiriamosios gebos pasirinkimais: 256 × 192, 384 × 288 ir 640 × 512. Šios kameros matuoja temperatūrą iki 2000 °C.
Paieškos ir gelbėjimo įranga: Mūsų asortimentas apima radarinius gyvybės detektorius, 3D radarus per sienas, stabilumo stebėjimo prietaisus, judėjimo stebėjimo sistemas ir dujų detektorius.
Pramoninės šiluminės kameros: LSJ šiluminės kameros naudojamos ne tik gaisrų gesinimui, bet taip pat pastatų tyrimams, elektronikos remontui, vandens nuotėkų aptikimui ir šildymo, vėdinimo ir oro kondicionavimo (HVAC) sistemų tikrinimui.
Šiluminiai žiūronai: Mūsų naktinio matymo optika puikiai tinka naktiniam matymui ir yra populiarūs tarp medžiotojų. Ji lengvai montuojama ant šautuvų.
LSJ siūlo aukščiausios kokybės šiluminius gelbėjimo ir vaizdo įrašymo prietaisus, kurie atitinka įvairių pramonės šakų poreikius ir padidina veiksmingumą bei saugą. Pasirinkite LSJ – tai pačios pažangiausios ir patikimiausios sprendimų tiekėjas.
Galite pasitikėti, kad LSJ bus jūsų pirminis pagalbos šaltinis miestų paieškos ir gelbėjimo veikloje. „LSJ“ specializuojamės 640 × 512 šiluminės kamerų gamyboje – aukščiausios kokybės miestų paieškos ir gelbėjimo įrangoje, kurios atitinka griežčiausius tarptautinius standartus.
Išankstinės pardavimo paslaugos:
Mes esame čia, kad jums padėtume nuo pat pradžių. Teikiame išsamias konsultacijas, siekdami nustatyti jūsų poreikius ir pateikti pritaikytas sprendimų galimybes. Galime pateikti išsamią techninę specifikaciją bei demonstracijas susijusių produktų, kad padėtume jums priimti informuotą sprendimą.
Pardavimo paslaugos:
Pardavimo procese užtikrinsime, kad jūsų patirtis būtų sklandi ir veiksminga. Dėka mūsų efektyviai veikiančiai užsakymų sistemai ir griežtai kokybės kontrolės sistemai garantuojame, kad produktai bus pristatyti laiku ir puikiomis sąlygomis. Taip pat teikiame „durų iki durų“ pristatymo paslaugą.
Po pardavimo paslaugos:
Gavus produktus jūsų ryšys su mumis nebaigiasi. Teikiame išplėstines po pardavimo paslaugas, įskaitant montavimo pagalbą, vartotojų mokymus bei techninės priežiūros paslaugas. Turime specialiai skirtą klientų aptarnavimo komandą, kuri visada yra pasirengusi jums padėti. Ji išspręs bet kokius kylančius klausimus ar problemas ir užtikrins jūsų visišką patenkinamumą. Visam „LSJ“ įrangos asortimentui suteikiame tris metų garantiją. Be to, galite gauti mūsų po pardavimo palaikymą.
Pasirinkdami „LSJ“ pasirenkate pasitikėjimą, kokybę ir nepasiekiamą palaikymą. Mūsų tikslas – tapti jūsų patikimu partneriu miestų paieškos ir gelbėjimo bei gaisrininkų srityje. Nuo 2013 m. įmonė LSJ kuria, tiekia ir parduoda aukštos našumo paieškos ir gelbėjimo bei gaisrininkų įrangą. Įmonė LSJ sertifikatuota pagal ISO9001, CE ir ROHS standartus. Be to, ji turi daugiau nei 30 patentų. Kaip lyderė šioje srityje, mes reikšmingai investuojame į savo dizaino ir tyrimų skyrių. 2024 m. įmonė LSJ dalyvavo keturiuose didžiuosiuose renginiuose: INTERSEC, Securika, 18-ajame Gynybos paslaugų Azijoje ir 3-ajame Nacionalinės saugos Azijoje (Malaizijoje) bei NFPA (JAV). Taip pat esame užregistruoti dalyvauti renginyje INTERSEC nuo 2025 m. sausio 14–16 d., kur demonstruosime savo gyvybės aptikimo radarą, 3D radaro sistemą, kuri gali prasiskverbti per sienas, dujų detektorių, garso ir vaizdo stebėjimo įrangą, stabilumo stebėjimo įrangą bei šilumos vaizdavimo kameras gaisrams gesinti. Šilčiausiai kviečiame apsilankyti mūsų stende. Įmonė LSJ turi daugiau nei 11 metų patirties gamybos srityje. Ji specializuojasi naujų produktų kūrime ir gamyboje, remdamasi klientų naudojimo sąlygomis. Be to, įmonė nuolat tobulina savo galimybes ir mažina produktų kainas. LSJ turi išsklaidytos patirties miestų gelbėjimo ir paieškos srityje. Pavyzdžiui, 2023 m. Turkijos žemės drebėjimo metu LSJ gyvybės aptikimo radaras svarbiai prisidėjo prie Kinijos „Mėlynojo dangaus gelbėjimo komandos“ vykdytų gelbėjimo veiksmų. Pasirinkite LSJ patikimus, pažangius sprendimus, kurie yra tiksliai pritaikyti jūsų specifinėms poreikio sąlygoms. Mes, įmonėje LSJ, suprantame, kiek svarbu siūlyti savo klientams aukščiausios kokybės produktus ir puikią aptarnavimo paslaugą. Todėl mes siūlome vienerių ar penkerių metų garantijas. Tai atspindi mūsų pasitikėjimą savo produktų kokybe. Mes dideliais mastais investuojame į tyrimus ir plėtrą, kad užtikrintume, jog mūsų produktai atitinka aukščiausius standartus. Kaip gamintojai, mes taikome griežtus kokybės kontrolės procesus – nuo žaliavų priėmimo iki gamybos etapo. Mes siūlome įvairių produktų asortimentą, kuris patenkina bet kurio vartotojo poreikius. Mūsų žaliavų, komponentų ir kitų produktų atsargos yra pakankamos, kad jūsų užsakymas būtų pristatytas laiku. Jei negalime pristatyti užsakymo laiku, pažadame grąžinti klientams nuo 2 % iki 5 % užsakymo vertės. Kad palengvintume jums mūsų produktų naudojimą, pateikiame išsamias mokymo vaizdo įrašų serijas. Be to, galime organizuoti mūsų techninio personalo vizitą į jūsų objektą ir teikti specialiai jūsų poreikiams pritaikytą praktinę instrukciją, kad galėtumėte naudoti mūsų produktus su pasitikėjimu ir lengvai. Pasirinkite LSJ – patikimus, aukštos kokybės produktus ir puikią klientų aptarnavimo paslaugą. Copyright © Beijing LSJ Technology Development Co., Ltd. Visos teisės saugomos
-
Privatumo politika
640 x 512 termino kamera
Gaukite aiškesnį vaizdą apie savo aplinką naudodami 640 x 512 termino kamerą.

Raskite karštus taškus ir nesąmones su 640 x 512 termino kamera.

Sukurkite aukštos kokybės termografinius vaizdus naudodami 640 x 512 termino kamerą.

Gaukite geresnę įžvalgą į temperatūros šablonus naudodami 640 x 512 termino kamerą.
Why choose LSJ Technology 640 x 512 termino kamera?
Visiškas miesto paieškos ir gelbėjimo įrangos tiekimo grandinės
Kodėl LSJ gali būti jūsų pagrindinis gamintojas ir tiekėjas?
Inovacinis aukštos našumos paieškos ir gelbėjimo įrangos gamintojas
Įsitikinimas kokybe ir laiku pateikimu: LSJ įsipareigojimas tenkinti klientų poreikius
Susijusios prekių kategorijos
Nerandate to, ko ieškote?
Prašyti pasiūlymo dabar
Susisiekite su mūsų konsultantais dėl papildomų prekių.Susisiekite