… šilumos kameras Kanadoje. LSJ Te...">
,需要通过父级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);
}
});
})();
Sveiki! Ar jūs esate susipažinę su šiluminėmis kameromis? Šiandien noriu jums papasakoti apie Sąsmukinių garsų klausymo įranga ... šilumines kameras Kanadoje. LSJ Technology turi puikių dalykų jums, išradėjų entuziastams! Šios šiluminės kameros yra specializuotos kamerų rūšis, kurios aptinka šilumą, o ne šviesą. Jos Kanadoje yra labai naudingos, kad išliktumėte šilti, nes čia būna šalta! Tokios kameros leidžia mums matyti dalykus, kurių negalima pamatyti pliku akimi. Gana nuostabu, ar ne? Taigi, pirmiausia paaiškinsime, kaip veikia šiluminės kameros. Šios kameros aptinka šiluminę energiją ir paverčia ją vaizdu, kurį galime matyti ekrane. Tai leidžia mums atpažinti objektus, kurie skleidžia šilumą, pvz., žmones ar gyvūnus. Kanadoje mes naudojame šilumines kameras daugelyje įdomių sričių! Šiluminiai kameros plačiai naudojamos daugelyje Kanados pramonės šakų. Ūkyje jos gali padėti ūkininkams stebėti savo pasėlius ir gyvulius, užtikrindami jų sveikatą. Šiluminės kameros gali būti naudojamos ieškant žmonių, pamestų šaltyje, kartais kaip dalis LSJ-C-E Rdar Gyvybės detektorius misijų. Jos taip pat naudojamos nustatant, ar pastatai praranda šilumą, statybose. Kanada man per šalta, net žiemą. Parodydamos mums, kur iš mūsų namų prasigeria šiluma, šiluminės kameros gali padėti visiems mums pasijusti šilčiau. Taip mes galime pašalinti visas skyles ir išlaikyti šilumą ten, kur jos norime. Šiluminės kameros leidžia mums namuose jaustis jaukiai! Šiluminės kameros Kanadoje nėra neįprastos. Gaisrininkai jas naudoja, kad rastų žmones, kuriems reikia pagalbos dūmų apsuptyje. Jas taip pat naudoja policija, medžiodama nusikaltėlius, bandančius pasislėpti. Šiluminės kameros netgi naudojamos tyrimuose siekiant sužinoti daugiau apie gyvūnus jų natūralioje aplinkoje. Taigi, štai ir viskas: šiluminiai kameros yra nuostabūs įrankiai, kurie padeda mums pasaulį pamatyti visiškai nauju būdu. Kanadaiems pasisekė gyventi su šia nuostabia technologija. O jei kada nors turėsite galimybę pabandyti šiluminę kamerą, pažiūrėkite pro ją. Nustebsite, ką galėsite pastebėti! Mes teikiame paramą gaisrų ir gelbėjimo departamentams, taip pat viešosios saugos paslaugoms ir miestų paieškos bei gelbėjimo komandoms. LSJ tiekia inovacinę įrangą šiluminėms kameroms Kanadoje, atlieka paieškos ir gelbėjimo veiksmus bei dirba pavojingose vietose įvairiose pramonės šakose.
Gaisrininkų šiluminės kameros: Mes ištirkome ir sukūrėme dvi šiluminių kamerų rūšis. Jos yra su trimis skiriamąja geba: 256×192, 384×288 ir 640×512. Šios kameros gali matuoti temperatūrą iki 2000 °C.
Paieškos ir gelbėjimo įranga: Mes siūlome įvairių produktų asortimentą, įskaitant stabilizavimo monitorius, dujų detektorius ir judėjimo stebėjimo sistemas.
Pramoninės šiluminės kameros: Be gaisrininkų šiluminių kamerų, LSJ siūlo rankinės šiluminės kameras vandens nuotėkų aptikimui, pastatų apžiūroms, elektroninėms remontinėms darbams, grindinio šildymo šilumos nuostoliams bei šildymo, vėdinimo ir oro kondicionavimo (HVAC) sistemų tikrinimui.
Šiluminiai žiūronai ir naktinio matymo žiūronai puikiai tinka naktiniam matymui ir yra populiarūs tarp medžiotojų. Juos galima montuoti ant šautuvų.
LSJ įsipareigojo tiekti aukščiausios kokybės šiluminio vaizdavimo ir gelbėjimo įrangą, kad būtų patenkintos įvairių pramonės šakų reikalavimai, padidinant saugą ir efektyvumą. LSJ siūlo patikimiausius ir pažangiausius sprendimus.
Galite pasitikėti LSJ kaip savo pagrindiniu partneriu miestų paieškos ir gelbėjimo srityje. Nuo šiluminės kamerų gamybos Kanadoje įmonė LSJ kuria, gamina ir tiekia aukštos našumo paieškos ir gelbėjimo bei gaisrininkų įrangą. Įmonei LSJ suteikti sertifikatai pagal ISO9001, CE ir ROHS standartus. Ji taip pat turi daugiau nei 30 patentų. Kaip lyderė mes dideliais mastais investuojame į savo tyrimų ir kūrimo skyrių. 2024 metais įmonė LSJ dalyvavo keturiuose didžiuose parodose: Dubaje vykusioje parodoje „INTERSEC“, 2024 metų parodoje „Securika“, 18-ajame Gynybos paslaugų Azijoje (DSA) renginyje ir 3-ajame Nacionalinės saugos Azijoje (NATSEC) renginyje Malaizijoje bei JAV vykusioje parodoje „NFPA“. Be to, 2025 m. sausio 14–16 dienomis Dubaje vyksiančioje parodoje „INTERSEC“ turėsime savo stendą. Šiame renginyje demonstruosime savo radarinį gyvybės aptikimo prietaisą, 3D radarus, kurie geba „matyti“ per sienas, dujų detektorius, garso ir vaizdo klausymosi įrenginius, stabilumo stebėjimo įrangą bei šilumines kameras gaisrams gesinti. Šilčiausiai kviečiame aplankyti mūsų stendą. Turėdama daugiau nei 11 metų gamybos patirties, įmonė LSJ specializuojasi naujų produktų perprojektavime ir gamyboje remiantis klientų naudojimo scenarijais, nuolat tobulindama funkcionalumą ir mažindama produktų kainas. Įmonė LSJ turi išsamios patirties miestų gelbėjimo ir paieškos srityje. 2023 metais Turkijos žemės drebėjimo metu LSJ radarinis gyvybės aptikimo prietaisas buvo esminis Kinijos „Blue Sky Rescue Team“ gelbėjimo veiksmų vykdymui. Pasirinkite įmonę LSJ – tai pažangūs, patikimi sprendimai, kurie tiksliai pritaikyti jūsų poreikiams. „LSJ“ esame ekspertai aukštos kokybės miestų paieškos ir gelbėjimo įrangos gamyboje, atitinkančioje aukščiausius tarptautinius standartus.
Išankstinės pardavimo paslaugos:
Mes esame čia, kad padėtume jums nuo pat pradžių. Teikiame išsamias konsultacijas, siekdami nustatyti jūsų individualius reikalavimus, ir siūlome pritaikytas sprendimų. Taip pat pateikiame išsamią techninę specifikaciją bei produktų demonstracijas, kad padėtume jums priimti informuotą sprendimą.
Pardavimo paslaugos:
Užtikriname, kad mūsų pardavimo procesas būtų sklandus ir efektyvus. Dėl paprasto užsakymo proceso ir griežtos kokybės kontrolės garantuojame, kad jūsų produktai bus pristatyti laiku ir puikiomis sąlygomis. Taip pat teikiame „durų iki durų“ pristatymo paslaugą.
Po pardavimo paslaugos:
Po jūsų produkto pristatymo mūsų ryšys su jumis nebus nutrauktas. Mūsų išsami po pardavimo palaikymo paslauga apima pagalbą diegiant įrangą, vartotojų mokymą ir priežiūrą. Mūsų klientų aptarnavimo komanda visada pasirengusi padėti jums su bet kokiomis problemomis ar klausimais. Užtikrinsime, kad būtumėte visiškai patenkinti. Įsigijus įrangą iš „LSJ“, suteikiame tris metų garantiją. Taip pat galite pasinaudoti konkrečiomis po pardavimo paslaugomis.
Pasirinkdami „LSJ“ pasirenkate patikimumą kokybėje, paslaugose ir nepažymima palaikymo parama. Laukiame, kad taptumėte mūsų patikimu partneriu miestų paieškos ir gelbėjimo srityje bei gaisrininkų veikloje. „LSJ“ mes suprantame, kiek svarbu siūlyti aukštos kokybės produktus ir puikią klientų aptarnavimo paslaugą. Todėl siūlome vienerių ar penkerių metų garantijas. Šios garantijos atspindi mūsų pasitikėjimą savo produktų ilgaamžiškumu ir veikimu. Didelės investicijos į tyrimus ir plėtrą užtikrina, kad pirkiamieji produktai būtų aukščiausios kokybės. Kaip gamintojai, mes taikome griežtas kokybės kontrolės procedūras – nuo žaliavų priėmimo iki gamybos pabaigos. Jei esate privatusis klientas, platintojas, konkuruojantis dėl viešųjų pirkimų ar net valdžios institucija, turime įvairių produktų asortimentą, kuris atitinka jūsų poreikius. Mūsų šilumos kameros Kanadoje komponentų, žaliavų ir kitų produktų atsargos yra pakankamos, kad užtikrintume greitą pristatymą. Jei negalėsime pristatyti prekių nustatytu laiku, grąžinsime jums 2–5 % užsakymo sumos. Kad padėtume jums efektyviai naudoti mūsų produktus, pateikiame išsamias instrukcijų vaizdo įrašų medžiagas. Taip pat galime organizuoti techninį mokymą vietoje, pritaikytą jūsų poreikiams, kad užtikrintume, jog gebėtumėte naudoti mūsų produktus su pasitikėjimu ir lengvumu. Pasirinkite „LSJ“, jei norite aukštos kokybės, patikimų produktų ir nepriekaištingos klientų aptarnavimo paslaugos. Copyright © Beijing LSJ Technology Development Co., Ltd. Visos teisės saugomos
-
Privatumo politika
šiluminė kamera Kanada
Šiluminės kamerų technologija Kanadoje

Šiluminės kameros Kanados pramonėje

Išliksite šilti su šiluminėmis kameromis Kanados šaltame klimate

Šiluminių kamerų taikymas Kanadoje
Why choose LSJ Technology šiluminė kamera Kanada?
Visiškas miesto paieškos ir gelbėjimo įrangos tiekimo grandinės
Inovacinis aukštos našumos paieškos ir gelbėjimo įrangos gamintojas
Kodėl LSJ gali būti jūsų pagrindinis gamintojas ir tiekėjas?
Įsitikinimas kokybe ir laiku pateikimu: LSJ įsipareigojimas tenkinti klientų poreikius
Susijusios produktų kategorijos
Nerandate ko ieškote?
Prašykite kainos pasiūlymą dabar
Susisiekite su mūsų konsultantais dėl daugiau galimų produktų.Susisiekite