imagerie thermique portable (figure 1...">
,需要通过父级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);
}
});
})();
Souhaitez-vous savoir à quel point quelque chose est chaud sans devoir vous approcher trop près ? C'est là qu'un outil simple et relativement peu coûteux — le imagerie thermique portable (Figure 1) présenté dans cet article — peut être utilisé de manière permanente. Les gadgets innovants qui vous permettent de voir les différences de température et peuvent vous dire ce qui est chaud ou froid sans avoir à les toucher. Ça ressemble à quelque chose sorti d'un film de science-fiction, mais la vérité est que cette technologie existe et peut être utilisée de plusieurs façons ! Vous pouvez l'utiliser de mille manières, comme vérifier si votre nourriture est à la bonne température ou trouver un liquide d'isolation quelque part derrière un meuble. Ils vous indiqueront également si votre moteur a surchauffé ! Un autre avantage principal que vous pouvez apprécier en investissant dans une technologie comme celle-ci est la conception compacte et légère que possèdent de nombreux outils de visualisation thermique portables. Cela signifie que vous pourrez les emmener n'importe où sans problème. Peu importe où vous êtes, chez vous ou en déplacement, cet appareil est suffisamment petit pour être transporté partout en surveillant la tension artérielle. Fonctionnalités de balayage thermique incroyables dans les dispositifs de visualisation thermique main. Thermographie infrarouge : elle permet à l'appareil de détecter des différences de température sur une longue distance. C'est presque comme avoir une vision à rayons X, alors que vous observez le monde et tout ce qui vous entoure changer progressivement de couleur du rouge chaud au jaune/vert puis bleu froid. Le balayage ETW par lumière infrarouge est permis par des capteurs, à savoir l'ASpatial X. C'est le type de lumière que nous recevons des objets chauds ou froids. Ces capteurs enregistrent la lumière et créent une image sur un écran pour nous. Il est assez amusant de voir comment la technologie a la capacité de révéler ce qui resterait sinon invisible à l'œil nu. La portabilité d'un appareil de visualisation thermique tenu à la main est l'un des plus grands avantages. C'est aussi incroyablement simple — il suffit de pointer l'appareil vers ce que vous voulez mesurer, et en une seconde environ, vous pouvez voir sa température. Cela signifie donc que vous n'avez pas besoin d'attendre trente minutes — que ce soit pour l'eau chaude OU froide ! Ils sont une partie pratique de la cuisine chez soi. Température — Probablement l'outil le plus utile en matière de cuisson, c'est ainsi que vous savez si votre nourriture est parfaite. Mais cet petit appareil peut également être utilisé pour faire d'autres choses, comme vérifier la température de votre réfrigérateur ou détecter où la chaleur pourrait s'échapper dans votre maison. Nous fournissons des services aux services d'incendie et de secours, aux équipes urbaines de recherche et de sauvetage ainsi qu’à diverses armées. LSJ propose des équipements innovants destinés à la lutte contre les incendies, aux opérations de recherche et de sauvetage, et aux interventions dans des environnements explosifs, dans divers secteurs industriels. Caméras thermiques pour la lutte contre l’incendie : nous avons conçu et développé deux types de caméras thermiques offrant trois résolutions différentes. Ces caméras permettent de mesurer des températures allant jusqu’à 2000 °C. Équipements de recherche et de sauvetage : nous proposons une variété de produits, notamment des détecteurs de gaz, des capteurs de stabilité et des systèmes de surveillance des mouvements. Caméras thermiques industrielles : LSJ fournit des caméras thermiques qui ne sont pas uniquement destinées à la lutte contre l’incendie, mais également utilisées pour les inspections de bâtiments, les réparations électroniques, la détection de fuites d’eau et l’inspection des systèmes de chauffage, ventilation et climatisation (CVC). Viseurs thermiques : les viseurs à vision nocturne sont idéaux pour assurer une bonne visibilité la nuit ; ils sont également très prisés des chasseurs. Ils se montent facilement sur les fusils. LSJ propose des équipements thermiques de haute qualité pour le sauvetage et l’imagerie, répondant aux exigences spécifiques de divers secteurs industriels, et améliorant ainsi la sécurité et l’efficacité de votre activité. Choisissez LSJ pour obtenir les solutions les plus avancées et les plus fiables. N’hésitez pas à faire confiance à LSJ comme votre premier partenaire en matière de recherche et de sauvetage urbains. LSJ est un pionnier dans le développement d'équipements portatifs d'imagerie thermique pour les opérations de recherche et de sauvetage en milieu urbain, conformes aux normes internationales.
Service avant-vente : Notre équipe de spécialistes est prête à vous accompagner dès le début. Nous proposons des consultations approfondies afin de bien cerner vos besoins et concevoir des solutions sur mesure. Nous fournissons des spécifications détaillées du produit ainsi qu’une démonstration pour vous aider à prendre une décision éclairée.
Service vente : Nous veillons à ce que l’ensemble du processus de vente soit fluide et efficace. Grâce à notre système de commande optimisé et à notre contrôle qualité rigoureux, nous garantissons la livraison de vos produits dans les délais impartis et en parfait état. Nous assurons également une livraison clé en main (porte à porte).
Service après-vente : Notre partenariat avec vous ne prend pas fin avec la livraison de nos produits. Nos services complets après-vente comprennent l’assistance à l’installation, la formation des utilisateurs et la maintenance. Notre service client est à votre disposition pour répondre à toute question ou préoccupation, et garantir votre entière satisfaction. Lorsque vous achetez des équipements LSJ, vous bénéficiez d’une garantie de trois ans et pouvez accéder à des services après-vente spécifiques. Choisir LSJ, c’est choisir qualité, fiabilité et un service inégalé. Nous sommes impatients de devenir votre partenaire dans les domaines de la recherche et du sauvetage en milieu urbain ainsi que de la lutte contre l’incendie. Depuis 2013, LSJ conçoit, fabrique et fournit des dispositifs portables d’imagerie thermique haute performance destinés aux opérations de recherche et de sauvetage ainsi qu’au matériel des pompiers. LSJ a obtenu les certifications ISO 9001, CE et ROHS. L’entreprise détient également plus de 30 brevets. Nous investissons massivement dans notre département de recherche et de conception, car nous sommes une entreprise leader. En 2024, LSJ a participé à quatre grandes expositions : INTERSEC à Dubaï, Securika 2024, la 18e édition de Defence Services Asia (DSA) et la 3e édition de National Security Asia (NATSEC) en Malaisie, ainsi que NFPA aux États-Unis. Nous sommes également inscrits à INTERSEC à Dubaï du 14 au 16 janvier 2025. Lors de cet événement, nous présenterons en direct notre détecteur radar, un radar 3D capable de détecter les murs, un détecteur de gaz, des équipements d’écoute audio et vidéo, ainsi que des équipements de surveillance de stabilité et des caméras thermiques dédiées à la lutte contre les incendies. Nous serions ravis de vous accueillir sur notre stand. LSJ possède 11 ans d’expérience en fabrication. Elle est spécialisée dans le développement et la conception de nouveaux produits fondés sur les scénarios d’utilisation spécifiques de ses clients. Elle améliore continuellement ses capacités tout en réduisant les coûts de production. LSJ dispose également d’une vaste expérience dans le domaine de la recherche et du sauvetage urbains. Par exemple, lors du séisme de Turquie en 2023, le radar détecteur de vie LSJ a joué un rôle crucial dans les opérations de secours menées par l’équipe chinoise de secours « Blue Sky Rescue ». Choisissez LSJ pour des solutions avancées, fiables et entièrement adaptées à vos besoins. Chez LSJ, nous sommes conscients de l'importance des dispositifs portables d'imagerie thermique et nous nous engageons à offrir à nos clients des produits supérieurs et un service exceptionnel. C’est pourquoi nous proposons des garanties d’une ou cinq années, reflétant ainsi notre confiance dans la qualité de nos produits. Nous investissons massivement dans la recherche et le développement afin de garantir que nos produits répondent aux normes les plus exigeantes. En tant que fabricant, nous appliquons des procédures strictes de contrôle qualité, depuis la sélection des matières premières jusqu’à la production. Nous proposons une gamme variée de produits adaptés aux besoins de tout utilisateur. Notre stock de matières premières, de composants et d’autres produits est suffisamment important pour assurer la livraison de votre commande dans les délais convenus. Si nous ne parvenons pas à respecter ces délais, nous nous engageons à rembourser entre 2 % et 5 % de la valeur de l’achat à nos clients. Pour vous accompagner dans l’utilisation de nos produits, nous mettons à votre disposition des vidéos tutorielles complètes. Par ailleurs, nous pouvons organiser l’intervention de notre personnel technique sur site, avec une formation personnalisée adaptée à vos besoins spécifiques, afin que vous puissiez utiliser nos produits en toute confiance et aisance. Choisissez LSJ pour des produits fiables et de haute qualité, ainsi qu’un service client remarquable. Droits d'auteur © Beijing LSJ Technology Development Co., Ltd. Tous droits réservés
-
Politique de confidentialité
appareil d'imagerie thermique portable
Portable et précis pour la détection de température

Technologie de détection de chaleur dans la paume de votre main

Révolutionnez vos inspections avec l'imagerie thermique main levée

Évaluation rapide et efficace de la température n'importe où, à tout moment
Why choose LSJ Technology appareil d'imagerie thermique portable?
Une chaîne d'approvisionnement complète en équipements pour les opérations de recherche et de sauvetage en milieu urbain
Pourquoi LSJ peut être votre fabricant et fournisseur de produits de préparation ?
Fabricant d'équipements de recherche et de sauvetage haute performance innovant
Garantir la qualité et la livraison dans les délais : l'engagement de LSJ en matière de satisfaction clientèle
Catégories de produits connexes
Vous ne trouvez pas ce que vous cherchez ?
Demander un devis maintenant
Contactez nos consultants pour connaître les produits disponibles.Contactez-nous