، وهي تُ...">
,需要通过父级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);
}
});
})();
مرحبًا! اليوم نحن نناقش أداة رائعة جدًا يمكنها مساعدتنا في تحديد مواقع تسربات المياه المخفية. تُعرف باسم كاميرا تحت الحمراء ، وهي تقنية متقدمة للغاية! يمكن أن تكون تسربات المياه خفية. وفي بعض الأحيان لا تكون مرئية للعين المجردة — ولكن هذا لا يعني أنها لن تسبب أضرارًا كبيرة. هنا تأتي فائدة كاميرا تحت الحمراء الكاميرا الخاصة هذه قادرة على «رؤية» الحرارة المنبعثة من تسربات المياه، حتى من خلال الجدران أو أسفل الأرضيات. وهذا يسمح لنا باكتشاف التسربات بسرعة وإصلاحها قبل أن تسبب ضررًا كبيرًا. تقنية LSJ كاميرا تحت الحمراء لا يضاهى في اكتشاف تلف المياه. فهو يستخدم تقنيات متطورة لتتبع الموقع الدقيق الذي تنبع منه التسريبات. وبهذه الطريقة يستطيع السباكون تحديد مناطق المشكلة بسهولة دون الحاجة إلى تفكيك منزلك بالكامل. يمكنك تحقيق وفورات كبيرة على المدى الطويل من حيث الوقت والتكلفة عند اكتشاف تسربات المياه باستخدام جهاز كاميرا تحت الحمراء قد يكون الأمر مرهقًا للغاية إذا لم تقم بذلك. مع كاميرا تحل محل أيام أو أسابيع من البحث، يمكن اكتشاف مصدر التسرب في جزء بسيط فقط من هذا الوقت. وهذا يعني الحاجة إلى وقت أقل للإصلاحات، وأقل نفقات لمعالجة الأضرار الناتجة عن التسرب. يكون الوقاية من أضرار المياه أكثر فعالية عندما يتم تقليل الخطر في مرحلة مبكرة. كلما اكتشفت التسرب مبكرًا، قل الضرر الذي يمكن أن يسببه. لقد سمح لنا استخدام كاميرا لعرض منزلنا بالضوء تحت الأحمر من شركة LSJ Technology باكتشاف التسربات قبل أن تصبح مشكلات كبيرة. كلما اكتشفنا التسربات مبكرًا، زادت المدخرات لدينا من تكاليف الإصلاحات الباهظة، وزادت سلامة منازلنا وجفافها وصحتها. تُعد الكاميرات تحت الحمراء من LSJ نوعًا جديدًا من الأجهزة للكشف السريع والفعال عن التسربات. فهي تساعدنا في اكتشاف التسربات التي كانت ستظل غير مكتشفة، وتوفّر علينا الوقت والمال وتجنّبنا المتاعب. والآن يمكننا النوم مطمئنين، مع العلم أن منازلنا أصبحت آمنة من أضرار المياه بفضل هذا الجهاز عالي التقنية. منذ عام 2013، تُطوِّر شركة LSJ كاميرات الأشعة تحت الحمراء لكشف تسربات المياه، وتُصنِّع وتزود معدات البحث والإنقاذ عالية الأداء ومعدات رجال الإطفاء. وقد حصلت شركة LSJ على شهادات معايير ISO9001 وCE وROHS. كما تمتلك أكثر من ٣٠ براءة اختراع. وبصفتها شركة رائدة، فإننا نستثمر استثمارات كبيرة في قسم التصميم والبحث والتطوير التابع لنا. وشاركت LSJ في أربع فعاليات كبرى خلال عام ٢٠٢٤، ومنها معرض INTERSEC ومعرض Securika والمعرض الثامن عشر لخدمات الدفاع الآسيوي والمعرض الثالث للأمن الوطني الآسيوي في ماليزيا ومعرض NFPA في الولايات المتحدة الأمريكية. وفي عام ٢٠٢٥، سنتواجد في معرض INTERSEC الذي سيُعقد في دبي في شهر يناير، ما بين ١٤ و١٦ من الشهر. وسنعرِض فيه كاميرات الحرارية الخاصة بالإطفاء، وكذلك معدات المراقبة الصوتية والمرئية، وأجهزة كشف الغاز، والرادارات ثلاثية الأبعاد، وغيرها من المنتجات. ويسرُّنا دعوتكم لزيارة جناحنا. وبفضل خبرتها التي تزيد على ١١ عامًا في مجال التصنيع، تتخصّص شركة LSJ في إعادة تصميم وتصنيع منتجات جديدة تستند إلى ظروف الاستخدام الفعلية للعملاء، مع تحسين مستمرٍ للميزات وتقليل التكاليف. ولدى شركة LSJ أيضًا خبرة واسعة في عمليات الإنقاذ والبحث في المناطق الحضرية. فعلى سبيل المثال، لعب جهاز كشف الحياة اللاسلكي الخاص بشركة LSJ دورًا محوريًّا في جهود الإنقاذ التي بذلتها فرقة «السماء الزرقاء الصينية للإنقاذ» أثناء زلزال تركيا عام ٢٠٢٣. اختر شركة LSJ للحصول على حلول متقدمة وموثوقة، مُصمَّمة خصيصًا لتلبية احتياجاتك المحددة. نقدّم الدعم لإدارات الإطفاء والإنقاذ، وكذلك لخدمات السلامة العامة وكاميرات الأشعة تحت الحمراء لكشف تسربات المياه. وتوفّر شركة LSJ معدات متطوّرة لمكافحة الحرائق، وإجراء عمليات البحث والإنقاذ، والعمل في البيئات الخطرة عبر مجموعة متنوعة من القطاعات. كاميرات التصوير الحراري لمكافحة الحرائق: قمنا ببحث وتصميم نوعين من الكاميرات الحرارية تتوفر بثلاثة خيارات للدقة: ٢٥٦×١٩٢، و٣٨٤×٢٨٨، و٦٤٠×٥١٢. ويمكنها رصد درجات الحرارة حتى ٢٠٠٠ درجة مئوية. معدات البحث والإنقاذ: لدينا مجموعة واسعة من المنتجات تشمل كواشف الغاز، وأجهزة مراقبة الاستقرار، وأنظمة مراقبة الحركة. الكاميرات الحرارية الصناعية: بالإضافة إلى الكاميرات الحرارية لمكافحة الحرائق، تقدّم LSJ كاميرات حرارية محمولة لكشف تسربات المياه، وتفقُّد المباني، وإصلاح الأجهزة الإلكترونية، وتحديد أماكن فقدان الحرارة في أنظمة التدفئة الأرضية، وتفقُّد أنظمة التكييف والتبريد (HVAC). المناظير الحرارية: تُعدّ مناظير الرؤية الليلية الخاصة بنا مثالية للرؤية الليلية، وهي تحظى بشعبية كبيرة بين الصيادين، كما يمكن تركيبها بسهولة على البنادق. وتلتزم شركة LSJ بتوفير معدات تصوير حراري ومعدات إنقاذ عالية الجودة تلبي متطلبات مختلف القطاعات، مما يحسّن الكفاءة ويعزّز السلامة. اختر LSJ للحصول على أكثر الحلول تطوراً وكفاءة. اعتمِد على LSJ كشريكك الرئيسي في مجال عمليات البحث والإنقاذ الحضري. في شركة LSJ، ندرك أهمية تقديم كاميرات الأشعة تحت الحمراء لاكتشاف تسربات المياه وتقديم خدمة ممتازة لعملائنا. ونقدّم ضمانات تستمر لمدة سنة واحدة أو خمس سنوات، مما يعكس ثقتنا في متانة منتجاتنا وجودتها. ونستثمر استثماراً كبيراً في مجال البحث والتطوير لضمان أن تلبّي منتجاتنا أعلى المعايير. ونتبع إجراءات صارمة لمراقبة الجودة كشركة مُصنِّعة، بدءاً من المواد الخام ووصولاً إلى المنتج النهائي. كما نقدّم مجموعة واسعة من المنتجات التي تلبي احتياجات جميع العملاء. ونحتفظ أيضاً بمخزون شامل من المواد الخام والمكونات لضمان التسليم في الوقت المحدَّد لكل طلب. وفي حال فشلنا في الوفاء بالموعد المتفق عليه، فإننا نردّ لعملائنا ما نسبته ٢٪–٥٪ من قيمة الطلب. ولمساعدتكم على الاستفادة القصوى من منتجاتنا، نقدّم مقاطع فيديو تعليمية مفصّلة. كما يمكننا توفير دورات تدريبية فنية مباشرة في موقع العميل، مصمَّمة خصيصاً لتلبية احتياجاتكم، لضمان قدرتكم على استخدام منتجاتنا بثقة وسهولة. اختر شركة LSJ للحصول على منتجات عالية الجودة ومتينة، وخدمة عملاء استثنائية. تُعتبر شركة LSJ رائدة في السوق في تصنيع كاميرات الأشعة تحت الحمراء عالية الجودة لاكتشاف تسربات المياه، والمُطابِقة للمعايير الدولية.
الخدمات ما قبل البيع:
نحن هنا لمساعدتكم منذ البداية. ونقدّم استشارات شاملة لمساعدتكم على فهم احتياجاتكم الخاصة، وتوفير حلول مُصمَّمة خصيصًا لكم. كما نقدّم المواصفات الفنية والعروض التوضيحية للمنتجات لمساعدتكم في اتخاذ قرارٍ مستنير.
خدمات البيع:
نضمن أن تكون عملية البيع بأكملها سلسةً وفعّالة. وتضمن كاميراتنا الفعّالة للأشعة تحت الحمراء لاكتشاف تسربات المياه، إلى جانب عمليات مراقبة الجودة الصارمة لدينا، وصول منتجاتكم إليكم في الوقت المحدَّد وبأعلى جودة ممكنة. وندعم أيضًا خدمة التوصيل من الباب إلى الباب.
الخدمات ما بعد البيع:
إن علاقتنا بكم لا تنتهي بمجرد استلامكم منتجاتنا. ونقدّم مجموعة واسعة من الخدمات ما بعد البيع، بما في ذلك إرشادات التركيب، بالإضافة إلى تثقيف المستخدمين وخدمات الصيانة. ولدينا فريق متخصص لخدمة العملاء دائم التواجد لمساعدتكم في أي استفسارات أو مشكلات قد تواجهونها، وضمان رضاكم التام. وبعد شرائكم المعدات من شركة LSJ، سنقدّم لكم ضمانًا لمدة ثلاث سنوات، ويمكنكم الاستفادة من خدمات ما بعد البيع المخصصة التي نقدّمها.
وعند اختياركم شركة LSJ، فإنكم تختارون الجودة والموثوقية والدعم الذي لا يُضاهى. ونتطلّع إلى أن نكون شركاءكم في مجال عمليات البحث والإنقاذ في المناطق الحضرية وفرق الإطفاء. حقوق النسخ © شركة تكنولوجيا بيجين LSJ للتنمية المحدودة. جميع الحقوق محفوظة
-
سياسة الخصوصية
كاميرا الأشعة تحت الحمراء لكشف التسريبات المائية
تكنولوجيا متقدمة لتحديد تلف المياه بدقة

وفر الوقت والمال بتقنية كاميرا الأشعة تحت الحمراء

احمي من تلف المياه المكلف من خلال الكشف المبكر

حل مبتكر لتحديد التسريبات بسرعة وكفاءة
Why choose LSJ Technology كاميرا الأشعة تحت الحمراء لكشف التسريبات المائية?
شركة تصنيع معدات إنقاذ وبحث ذات أداء عالٍ ومبتكرة
سلاسل إمداد مكتملة لمعدات البحث والإنقاذ الحضري
ضمان الجودة والتوصيل في الوقت المحدد: التزام LSJ برضاء العملاء
لماذا يمكن أن تكون LSJ مصنعك وموردك الأساسي؟
فئات المنتجات ذات الصلة
هل تبحث عن شيءٍ ما ولا تجده؟
اطلب عرض أسعار الآن
اتصل بمستشارينا للحصول على مزيد من المنتجات المتاحة.إلمس