الاستغاثة
المنصة الأساسيةduress_acknowledge_incidentالاستغاثةتُقرّ بحادثة استغاثة مفتوحة نيابةً عن المستخدم: تسجّل أنه يستجيب لها ويمكنها إيقاف المزيد من التصعيد. لا يمكن الإقرار إلا بالحوادث المفتوحة.
أكّد دائمًا أولًا. استدعِ الأداة بدون confirm للحصول على الحادثة، وأخبر المستخدم بما سيُقرّ به، ثم استدعِها مرة أخرى مع confirm: true فقط بعد موافقته.
في سير عمل، أو من وكيل، لا يعمل ذلك إلا إذا كانت خطة الاستجابة في المنشأة تسمح لسير العمل بالإقرار بالإنذارات وحلّها وإطلاقها. لإغلاق حادثة استخدم duress_resolve_incident.
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
incidentId* | string | معرّف الحادثة (inc_...)، من duress_incidents_read list أو من مشغّل سير عمل Duress. |
note | string | ملاحظة اختيارية، مثل "في طريقي إلى الاستقبال" |
confirm | boolean | اضبطه فقط بعد أن يؤكد المستخدم المعاينة التي أعادها الاستدعاء الأول |
duress_end_testالاستغاثةتنهي فورًا اختبار الاستغاثة الجاري في منشأة، فتصبح الضغطة التالية إنذارًا حقيقيًا. تصدر النتائج بعد نحو 10 دقائق، كما في أي اختبار.
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
facilityId | string | معرّف المنشأة. اختياري إذا كانت المنشأة المتصلة هي المقصودة. |
duress_incidents_readالاستغاثةتقرأ حوادث إنذار الاستغاثة (ضغط أحد الموظفين زر استغاثة، أو أطلق سير عمل إنذارًا): القوائم، والخط الزمني لحادثة واحدة وعمليات التسليم الخاصة بها، وتقرير ما بعد الحادثة، ولقطات الدوائر التلفزيونية المغلقة المحيطة بالإنذار.
الحالات: open (لم يُقرّ بها أحد بعد)، وacknowledged (يستجيب لها شخص ما)، وresolved (مغلقة، مع نتيجة: genuine أو false_alarm أو test أو unknown). تعني active أنها open أو acknowledged. تأتي الحوادث التجريبية (isTest) من اختبارات الأزرار؛ وtestType 'unplanned' هو إنذار أُطلق على أنه حقيقي ثم حلّه أحد المستجيبين على أنه اختبار.
حالة التسليم: sent، وacknowledged (أكّد المستلم)، وfailed (راجع error)، وshadow (تشغيل تجريبي، لم يُرسل شيء). تُجمع عمليات التسليم إلى مركز المراقبة أيضًا ضمن monitoringCentre. تذكر النتائج أسماء الأشخاص لكنها لا تتضمن أبدًا أرقام الهواتف أو عناوين البريد الإلكتروني. الأوقات بتنسيق ISO.
الإجراءات:
- list: عرض الحوادث. الأحدث أولًا. scope: facility (الافتراضي؛ المنشأة المحددة أو المتصلة) أو organisation (كل منشأة فيها يمكنك رؤيتها؛ والافتراضي منظمة المنشأة).
- get: الحصول على حادثة. الحالة، والأزرار التي ضُغطت، والخط الزمني (الضغطات وعمليات التصعيد والإقرارات والملاحظات)، وكل محاولة تسليم إشعار أو تسليم إلى مركز المراقبة مع نتيجتها. يتطلب incidentId.
- report: تقرير الحادثة. لمراجعة ما بعد الحادثة: الحادثة، والثواني حتى الإقرار والحل، والخطوات التي بُلغت، وكل إدخال في الخط الزمني، وما أُرسل عبر كل قناة وما فشل، وما إذا احتُفظ باللقطات. استخدمه مع duress_incidents_write add_note لإضافة مراجعة ما بعد الحادثة إلى الحادثة. يتطلب incidentId.
- footage_previews: لقطات الإنذار. كل كاميرا في لقطات الإنذار: حالتها، وعدد الإطارات والمقاطع، والمقاطع المرفوعة، والإطار الأقرب إلى الضغطة (posterSeconds). مع cameraId، تلك الكاميرا فقط إضافةً إلى ثواني Unix لكل إطار (frameSeconds). يتطلب الدوائر التلفزيونية المغلقة في المنشأة. يتطلب incidentId.
- footage_frame: إطار من لقطات الإنذار. إطار واحد من التصوير المتقطع (timelapse) في لقطات الإنذار، يُعاد كصورة: نسخة محفوظة بعد الاحتفاظ باللقطات، وإلا فالإطار المباشر ضمن نافذة الإنذار. قيمة seconds هي قيمة posterSeconds أو frameSeconds من footage_previews. يتطلب incidentId وcameraId وseconds.
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
action* | "list" | "get" | "report" | "footage_previews" | "footage_frame" | الإجراء المطلوب؛ كل إجراء موصوف في وصف الأداة. |
scope | "facility" | "organisation" | الافتراضي facility (list) |
facilityId | string | معرّف المنشأة. اختياري إذا كانت المنشأة المتصلة هي المقصودة. (list) |
organisationId | string | عندما تكون قيمة scope هي organisation. الافتراضي منظمة المنشأة. (list) |
status | "active" | "open" | "acknowledged" | "resolved" | تعني active أنها open أو acknowledged (list) |
from | string | التاريخ والوقت بتنسيق ISO: الحوادث المفتوحة في هذا الوقت أو بعده (list) |
to | string | التاريخ والوقت بتنسيق ISO: الحوادث المفتوحة في هذا الوقت أو قبله (list) |
limit | integer | عدد العناصر في كل صفحة (الافتراضي 25، والحد الأقصى 100) (list) |
cursor | string | قيمة nextCursor من الصفحة السابقة (list) |
incidentId | string | معرّف الحادثة (inc_...)، من duress_incidents_read list أو من مشغّل سير عمل Duress. (get, report, footage_previews, footage_frame) |
cameraId | string | كاميرا في لقطات الإنذار، من footage_previews (footage_previews, footage_frame) |
seconds | integerstring | وقت الإطار بثواني Unix المكوّنة من 10 أرقام (footage_frame) |
duress_incidents_writeالاستغاثةDuress Configurationتغيّر حادثة استغاثة دون المساس بالإنذار نفسه: تسمّيها، وتضيف ملاحظات الموظفين، وتحتفظ بلقطات الدوائر التلفزيونية المغلقة المحيطة بها أو تحرّرها. لا يُنبَّه أحد. للإقرار أو الحل أو إبلاغ المستجيبين استخدم duress_acknowledge_incident أو duress_resolve_incident أو duress_post_update.
الإجراءات:
- rename: تسمية حادثة. يسمّي الحادثة ليسهل العثور عليها لاحقًا، مثل "زائر عدواني عند مكتب الاستقبال". يؤدي الاسم الفارغ أو null إلى إزالة الاسم. تظهر الأسماء في وحدة تحكم Duress والتقارير. يتطلب incidentId.
- add_note: إضافة ملاحظة. يضيف ملاحظة إلى الخط الزمني للحادثة، مثل ما وجده المستخدم أو من حضر. لأي حالة؛ لا يرى الملاحظات إلا الموظفون ولا تغيّر الحادثة. اكتبها بكلمات المستخدم وأكّد الصياغة معه أولًا. يتطلب incidentId وnote.
- keep_footage: الاحتفاظ بلقطات الإنذار. يحتفظ بلقطات الدوائر التلفزيونية المغلقة المحيطة بإنذار حقيقي تم حلّه كي لا تُحذف مع التسجيلات العادية، باستخدام دقائق خطة الاستجابة وكاميراتها. يحدث ذلك بعد بضع دقائق، بمجرد رفعها. لا يُستخدم للاختبارات أو الإنذارات المفتوحة أو اللقطات المحتفظ بها أو المحرّرة مسبقًا. يتطلب incidentId.
- release_footage: تحرير اللقطات المحتفظ بها. يتخلى عن اللقطات المحتفظ بها لإنذار: تعود المقاطع إلى الاحتفاظ العادي وتُحذف الإطارات المحتفظ بها، فلا يمكن عرضها بعد انتهاء صلاحية التسجيلات العادية. يتطلب Duress Configuration في المنشأة. يتطلب incidentId. يطلب التأكيد.
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
action* | "rename" | "add_note" | "keep_footage" | "release_footage" | الإجراء المطلوب؛ كل إجراء موصوف في وصف الأداة. |
incidentId | string | معرّف الحادثة (inc_...)، من duress_incidents_read list أو من مشغّل سير عمل Duress. |
name | stringnull | الاسم؛ والقيمة الفارغة أو null تزيله (rename) |
note | string | الملاحظة (add_note) |
confirm | boolean | اضبطه فقط بعد أن يؤكد المستخدم المعاينة التي أعادها الاستدعاء الأول |
duress_lift_lockdownالاستغاثةترفع الإغلاق الشامل لإنذار استغاثة: تسمح الأبواب التي أغلقها بدخول الأشخاص مجددًا. تعمل أيًا كانت حالة الإنذار.
أكّد أولًا. استدعِ الأداة بدون confirm لرؤية الإغلاق الشامل، وأخبر المستخدم، ثم استدعِها مرة أخرى مع confirm: true بعد موافقته.
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
incidentId* | string | معرّف الحادثة (inc_...)، من duress_incidents_read list أو من مشغّل سير عمل Duress. |
confirm | boolean | اضبطه فقط بعد أن يؤكد المستخدم المعاينة التي أعادها الاستدعاء الأول |
duress_post_updateالاستغاثةتنشر تحديثًا للأشخاص الذين يستجيبون لإنذار استغاثة، مثل "الشرطة في الطريق" أو "زال الخطر، غادر الشخص". يظهر التحديث في صفحة الإنذار لديهم وفي تطبيق Duress، وفي الإنذار الحقيقي يمكن لخطة الاستجابة أيضًا إرساله برسالة نصية إلى كل من تلقى رسالة نصية بشأن الإنذار. يمكن نشر التحديثات حتى 24 ساعة بعد حل الإنذار.
أكّد أولًا. استدعِ الأداة بدون confirm للتحقق من الحادثة، واعرض على المستخدم الصياغة الدقيقة، ثم استدعِها مرة أخرى مع confirm: true بعد موافقته. لما يجب ألا يراه إلا الموظفون، استخدم duress_incidents_write add_note بدلًا من ذلك.
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
incidentId* | string | معرّف الحادثة (inc_...)، من duress_incidents_read list أو من مشغّل سير عمل Duress. |
text* | string | التحديث، حرفيًا |
confirm | boolean | اضبطه فقط بعد أن يؤكد المستخدم المعاينة التي أعادها الاستدعاء الأول |
duress_raise_alarmالاستغاثةتطلق إنذار استغاثة حقيقيًا في المنشأة، كما لو ضُغط زر: تُنفَّذ خطة الاستجابة (يُنبَّه الأشخاص، ويتبع ذلك التصعيد والتذكيرات، وتُنفَّذ إجراءات الاستجابة) ويذكر الإنذار أنه أُطلق بواسطة سير العمل هذا، مع السبب.
- reason: ما حدث، مثل "فُتح الباب عنوةً عند المخرج الخلفي" (حتى 200 حرف).
- deviceSerialNumber: اختياري. زر يُستخدم موقعه؛ وفي هذه الحالة فقط يُبلَّغ مركز المراقبة أيضًا، مع منطقة ذلك الزر.
فقط كخطوة في سير عمل، في المنشآت التي تسمح خطة الاستجابة فيها لسير العمل بالإقرار بالإنذارات وحلّها وإطلاقها. ما دام إنذار سير العمل هذا مفتوحًا فلن يُطلق إنذارًا آخر؛ بل يعيد ذلك الإنذار بدلًا من ذلك.
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
facilityId | string | معرّف المنشأة. اختياري إذا كانت المنشأة المتصلة هي المقصودة. |
reason* | string | ما حدث |
deviceSerialNumber | string | زر في المنشأة (اختياري) |
duress_reports_readالاستغاثةDuress Configurationتقارير امتثال Duress لمنشأة أو علامة تجارية أو منظمة: أوقات الاستجابة (P50/P95)، والحوادث حسب النتيجة ومعدل الإنذارات الكاذبة، وتغطية الاختبارات والمنشآت المتأخرة، ومدة تشغيل الأزرار، ونجاح التسليم إلى مركز المراقبة، وتصدير لكل حادثة على حدة. إضافةً إلى التنبيهات غير المسلَّمة لآخر إنذار في منشأة واحدة.
الأيام بالتوقيت المحلي للمنشأة؛ وتُختصر الفترات التي تتجاوز 400 يوم (range.capped). تُحتسب الحوادث الحقيقية والتجريبية بشكل منفصل. المدد بالمللي ثانية (p50Ms وp95Ms). لا تغطي تقارير العلامة التجارية إلا المنشآت التي يمكنك الوصول إليها ما لم تكن لديك صلاحية وصول على مستوى المنظمة (scope.restrictedToAccessibleFacilities).
الإجراءات:
- overview: نظرة عامة على تقرير Duress. الإجماليات، والاتجاه الشهري، والمقاييس لكل منظمة ولكل علامة تجارية ولكل منشأة (incidents وtestCoverage وdeviceUptime وdeliveries). المنشآت مقسّمة إلى صفحات.
- compliance_summary: ملخص امتثال Duress. ما يعرضه ملف PDF للامتثال: تغطية الاختبارات مع المنشآت المتأخرة، ومدة تشغيل الأزرار، ونجاح التسليم، والاختبارات الأخيرة (testHistory)، ولكل منشأة آخر اختبار وآخر تمرين وآخر إنذار حقيقي مع مدة تشغيل كل زر. المنشآت مقسّمة إلى صفحات.
- incident_export: تصدير حوادث Duress. صف واحد لكل حادثة، الأقدم أولًا، بأعمدة تصدير CSV: المنشأة، واختبار أو حقيقي، والحالة، والنتيجة، والأوقات المحلية، والثواني حتى الإقرار والحل، ومن أقرّ ومن حلّ، وأعداد الأزرار وعمليات التسليم.
- delivery_problems: تنبيهات الإنذار غير المسلَّمة. آخر إنذار أو اختبار في المنشأة (مع نافذة الاختبار بأكملها) والتنبيهات التي لم تصل قط، حسب القناة. تكون قيمة problems هي null عندما يصل كل شيء. يتطلب Duress أو Duress Configuration هناك.
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
action* | "overview" | "compliance_summary" | "incident_export" | "delivery_problems" | الإجراء المطلوب؛ كل إجراء موصوف في وصف الأداة. |
scope | "facility" | "brand" | "organisation" | الافتراضي: المعرّف الأكثر تحديدًا من بين المعرّفات المقدَّمة، وإلا فالمنشأة المتصلة. (overview, compliance_summary, incident_export) |
facilityId | string | معرّف المنشأة. اختياري إذا كانت المنشأة المتصلة هي المقصودة. |
brandId | string | معرّف العلامة التجارية، لقالب العلامة التجارية بدلًا من منشأة (overview, compliance_summary, incident_export) |
organisationId | string | يتطلب صلاحية وصول إلى Duress على مستوى المنظمة (overview, compliance_summary, incident_export) |
from | string | اليوم الأول، YYYY-MM-DD بالتوقيت المحلي للمنشأة (الافتراضي 30 يومًا قبل to) (overview, compliance_summary, incident_export) |
to | string | اليوم الأخير، YYYY-MM-DD بالتوقيت المحلي للمنشأة، شاملًا (الافتراضي اليوم) (overview, compliance_summary, incident_export) |
limit | integer | عدد العناصر في كل صفحة (الافتراضي 25، والحد الأقصى 100) (overview, compliance_summary, incident_export) |
cursor | string | قيمة nextCursor من الصفحة السابقة (overview, compliance_summary, incident_export) |
duress_resolve_incidentالاستغاثةتحلّ حادثة استغاثة: تغلق الإنذار، وتوقف التصعيد، وتسجّل النتيجة. يمكن حل الحوادث المفتوحة والمُقرّ بها.
- disposition:
genuine(حالة طوارئ حقيقية)، أوfalse_alarm، أوtest، أوunknown. - note: ما حدث. مطلوب للإنذار الحقيقي.
أكّد دائمًا أولًا. استدعِ الأداة بدون confirm للحصول على الحادثة، وأخبر المستخدم بالإنذار الذي سيغلقه وبالنتيجة، ثم استدعِها مرة أخرى مع confirm: true فقط بعد موافقته.
في سير عمل، أو من وكيل، لا يعمل ذلك إلا إذا كانت خطة الاستجابة في المنشأة تسمح لسير العمل بالإقرار بالإنذارات وحلّها وإطلاقها.
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
incidentId* | string | معرّف الحادثة (inc_...)، من duress_incidents_read list أو من مشغّل سير عمل Duress. |
disposition* | "genuine" | "false_alarm" | "test" | "unknown" | النتيجة |
note | string | ما حدث. مطلوب عندما تكون قيمة disposition هي genuine. |
confirm | boolean | اضبطه فقط بعد أن يؤكد المستخدم المعاينة التي أعادها الاستدعاء الأول |
duress_settings_readالاستغاثةDuress Configurationتقرأ إعدادات Duress: خطط الاستجابة (من يُنبَّه، وبأي ترتيب وكيف، في منشأة أو كقالب للعلامة التجارية)، والخطة المحسومة التي يستخدمها محرك الإنذار فعليًا، والأشخاص والأدوار الذين يمكن إضافتهم، وتنبيهات الأجهزة (مشكلات البطارية وانقطاع الاتصال والتغطية والتسليم)، وقواعد جهات الاتصال للعلامة التجارية وحالة الخطة، ونظرة عامة على أزرار علامة تجارية أو منظمة، ووجهة الإنذارات إلى مركز المراقبة.
تتبع المنشأة قالب علامتها التجارية (وإلا فقالب منظمتها)، أو توسّعه بجهات اتصال إضافية (mode extend)، أو تستبدله بخطتها الخاصة (mode replace). غيّر الإعدادات باستخدام duress_settings_write. الأوقات بتنسيق ISO.
الإجراءات:
- response_plan: خطة الاستجابة. الخطة السارية في منشأة (effective) وما يحتويه كل مستوى (المصادر: facility وbrand وorganisation)، أو مع brandId فقط قالب العلامة التجارية. جهات الاتصال كما هي محفوظة، وجاهزة للتعديل والحفظ مجددًا.
- resolved_plan: الخطة المحسومة. من يتصل بهم محرك الإنذار في المنشأة، مستوى تلو الآخر: الأدوار موسّعة إلى أشخاص، والقنوات التي يمكن الوصول إلى كل منهم عبرها، والتأخيرات، والتحذيرات التي يجب إصلاحها قبل وقوع إنذار. الأسماء فقط، بدون أرقام هواتف أو عناوين بريد إلكتروني.
- contact_options: خيارات جهات الاتصال. الأشخاص والأدوار الذين يمكن إضافتهم إلى خطة المنشأة (يتطلب Duress Configuration هناك)، أو مع brandId فقط إلى قالب العلامة التجارية، وفق قواعد جهات الاتصال للعلامة التجارية.
- device_alerts: تنبيهات الأجهزة. من يُبلَّغ بانخفاض البطاريات والأزرار غير المتصلة وفقدان التغطية وفشل التسليم: القواعد في كل مستوى والمستلمون المحسومون للمنشأة، أو مع brandId فقط قواعد العلامة التجارية.
- contact_rules: قواعد جهات الاتصال للعلامة التجارية. الأدوار التي يمكن لمنشآت العلامة التجارية إضافتها إلى الخطط: يخفي allowAllExcept الأدوار المدرجة، ولا يعرض manual سواها. يتطلب ما يتطلبه تعديل خطة العلامة التجارية. يتطلب brandId.
- plan_status: حالة خطة العلامة التجارية. كل منشأة في العلامة التجارية: ما إذا كانت تتبع القالب أو توسّعه أو لديها خطتها الخاصة، وعدد جهات الاتصال التي أضافتها، وتحذيرات خطتها. يتطلب brandId.
- buttons_summary: نظرة عامة على الأزرار. كل منشأة في علامة تجارية أو منظمة: أعداد الأزرار والبطاريات المنخفضة وغير المتصلة، والاختبار التالي والأخير. بيانات النظرات العامة في Brands & Customisation وفي المنظمة.
- monitoring: توجيه مركز المراقبة. كيف تغادر الإنذارات المنشأة: eaAlarmType بالقيمة none، أو cid (اتصال بمركز مراقبة عبر eaAlarmProvider)، أو relay (لوحة سلكية عبر eaRelayModel)، والمزوّدون الذين يمكنها استخدامهم.
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
action* | "response_plan" | "resolved_plan" | "contact_options" | "device_alerts" | "contact_rules" | "plan_status" | "buttons_summary" | "monitoring" | الإجراء المطلوب؛ كل إجراء موصوف في وصف الأداة. |
facilityId | string | معرّف المنشأة. اختياري إذا كانت المنشأة المتصلة هي المقصودة. (response_plan, resolved_plan, contact_options, device_alerts, monitoring) |
brandId | string | معرّف العلامة التجارية، لقالب العلامة التجارية بدلًا من منشأة (response_plan, contact_options, device_alerts, contact_rules, plan_status, buttons_summary) |
organisationId | string | معرّف المنظمة (buttons_summary) |
duress_settings_writeDuress Configurationتغيّر إعدادات Duress: خطط الاستجابة (في منشأة، أو قالب علامة تجارية أو منظمة)، وتنبيهات الأجهزة، وقواعد جهات الاتصال للعلامة التجارية، ووجهة الإنذارات إلى مركز المراقبة. يطلب كل تغيير التأكيد لأنه يغيّر من يُنبَّه.
مرّر واحدًا من facilityId (الافتراضي: المنشأة المتصلة) أو brandId أو organisationId. تتطلب خطط المنشآت Duress Configuration هناك؛ وتتطلب القوالب مسؤول منظمة لديه Duress Configuration، أو بالنسبة إلى علامة تجارية Duress Configuration في كل منشأة فيها. اقرأ أولًا باستخدام duress_settings_read.
الإجراءات:
- save_response_plan: حفظ خطة استجابة. مستويات جهات الاتصال التي تُنبَّه بعد afterSeconds من الضغطة (تصاعديًا، والأول عادةً 0)، وackRequired، وreminders، وresponseActions. يمكن للمنشأة بدلًا من ذلك توسيع قالبها (mode extend) بإضافات. تحتفظ الحقول غير المحددة بقيمها المحفوظة؛ وتُدمج responseActions حسب الإجراء. يطلب التأكيد.
- remove_response_plan: إزالة خطة استجابة. يحذف الخطة المحفوظة في هذا المستوى، فتعود المنشأة إلى اتباع قالبها وتعود العلامة التجارية إلى قالب المنظمة. يطلب التأكيد.
- save_device_alerts: حفظ تنبيهات الأجهزة. يستبدل قواعد تنبيهات الأجهزة في هذا المستوى: حتى 10 قواعد، كل منها مجموعة من الأحداث وجهات الاتصال (push أو sms أو email). احتفظ بمعرّفات القواعد المقروءة من duress_settings_read device_alerts. يتطلب rules. يطلب التأكيد.
- remove_device_alerts: إزالة تنبيهات الأجهزة. يحذف قواعد تنبيهات الأجهزة في هذا المستوى، فيعود إلى اتباع المستوى الأعلى التالي. يطلب التأكيد.
- save_contact_rules: حفظ قواعد جهات الاتصال للعلامة التجارية. الأدوار التي يمكن لمنشآت العلامة التجارية إضافتها إلى الخطط: يخفي allowAllExcept القيم roleIds، ولا يعرض manual سوى roleIds. تبقى جهات الاتصال المحفوظة مسبقًا؛ وتُحدَّث الخطط المحسومة. يتطلب brandId وmode وroleIds. يطلب التأكيد.
- save_monitoring: حفظ توجيه مركز المراقبة. وجهة الإنذارات: eaAlarmType بالقيمة none، أو cid (يتطلب eaAlarmProvider، أحد المزوّدين الذين يعرضهم duress_settings_read monitoring)، أو relay (eaRelayModel). يتطلب Duress Configuration في المنشأة. يتطلب eaAlarmType. يطلب التأكيد.
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
action* | "save_response_plan" | "remove_response_plan" | "save_device_alerts" | "remove_device_alerts" | "save_contact_rules" | "save_monitoring" | الإجراء المطلوب؛ كل إجراء موصوف في وصف الأداة. |
facilityId | string | معرّف المنشأة. اختياري إذا كانت المنشأة المتصلة هي المقصودة. (save_response_plan, remove_response_plan, save_device_alerts, remove_device_alerts, save_monitoring) |
brandId | string | معرّف العلامة التجارية، لقالب العلامة التجارية بدلًا من منشأة (save_response_plan, remove_response_plan, save_device_alerts, remove_device_alerts, save_contact_rules) |
organisationId | string | معرّف المنظمة، لقالب المنظمة (save_response_plan, remove_response_plan, save_device_alerts, remove_device_alerts) |
mode | "replace" | "extend" | لخطط المنشآت فقط: replace (مستوياتها الخاصة) أو extend (إضافات إلى القالب) (save_response_plan, save_contact_rules) |
tiers | array | مستويات الخطة (mode replace والقوالب) (save_response_plan) |
additions | array | mode extend: جهات اتصال إضافية لكل مستوى في القالب (tierId وafterSeconds منه) (save_response_plan) |
ackRequired | boolean | ما إذا كان التصعيد يستمر حتى يُقرّ أحدهم (save_response_plan) |
reminders | objectnull | تكرار التنبيهات كل everySeconds (القيمة 0 توقفها) حتى stopAfterSeconds (save_response_plan) |
responseActions | object | الإجراءات حسب الاسم، كل منها { enabled, ... }: unlockOnAcknowledge (doorIds)، lockdown، staffScreenAlerts، buttonAcknowledge، dashboardCctv، dashboardDoorControls، dashboardResolve، updateTexts، aiSummary، workflowControl، retainFootage (minutesBefore, minutesAfter, cameras) (save_response_plan) |
rules | array | القواعد؛ والقائمة الفارغة لا تحفظ أي قاعدة (لا يُنبَّه أحد في هذا المستوى) (save_device_alerts) |
roleIds | array | معرّفات الأدوار التي ينطبق عليها mode (save_contact_rules) |
eaAlarmType | "none" | "cid" | "relay" | none أو cid أو relay (save_monitoring) |
eaAlarmProvider | stringnull | لـ cid: رمز المزوّد (save_monitoring) |
eaRelayModel | "none" | "numato-rl80001" | لـ relay: لوحة المرحّل (save_monitoring) |
confirm | boolean | اضبطه فقط بعد أن يؤكد المستخدم المعاينة التي أعادها الاستدعاء الأول |
duress_start_lockdownالاستغاثةتفرض إغلاقًا شاملًا على المنشأة بسبب إنذار استغاثة: يتوقف كل باب عن السماح بدخول الأشخاص حتى رفع الإغلاق الشامل (duress_lift_lockdown، أو من وحدة التحكم). لا يحصل الإنذار إلا على إغلاق شامل واحد.
لا يُستخدم أبدًا للإنذارات التجريبية أو التي تم حلّها. يتطلب Door/Gate Access في المنشأة.
أكّد أولًا. استدعِ الأداة بدون confirm للتحقق من الحادثة، وأخبر المستخدم بأن كل الأبواب ستُقفل، ثم استدعِها مرة أخرى مع confirm: true بعد موافقته.
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
incidentId* | string | معرّف الحادثة (inc_...)، من duress_incidents_read list أو من مشغّل سير عمل Duress. |
confirm | boolean | اضبطه فقط بعد أن يؤكد المستخدم المعاينة التي أعادها الاستدعاء الأول |
duress_start_testالاستغاثةتبدأ اختبار استغاثة في منشأة فورًا. حتى انتهائه، تكون كل ضغطة اختبارًا وليست إنذارًا حقيقيًا:
walk: يضغط الموظفون كل زر؛ ولا تُنبَّه إلا الخطوة الأولى من خطة الاستجابة، مع التسمية TEST.drill: تُنفَّذ خطة الاستجابة بأكملها، مع التسمية TEST.
تُبلَّغ جهات اتصال الاختبار في المنشأة ببدئه وتتلقى النتائج بعد نحو 10 دقائق من انتهائه. اختبار واحد في كل مرة لكل منشأة. أنهِه مبكرًا باستخدام duress_end_test؛ واحجز الاختبارات مسبقًا باستخدام duress_tests_write.
أكّد أولًا. استدعِ الأداة بدون confirm، وأخبر المستخدم بأن الضغطات لن تطلق إنذارات حقيقية لمدة durationMinutes، ثم استدعِها مرة أخرى مع confirm: true بعد موافقته. في سير عمل، أو من وكيل، لا يعمل ذلك إلا إذا كانت خطة الاستجابة في المنشأة تسمح لسير العمل بالإقرار بالإنذارات وحلّها وإطلاقها.
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
facilityId | string | معرّف المنشأة. اختياري إذا كانت المنشأة المتصلة هي المقصودة. |
type | "walk" | "drill" | walk (الافتراضي) أو drill |
durationMinutes | integer | المدة التي تكون فيها الضغطات اختبارات (الافتراضي 60) |
monitoringCentreMode | "test-codes" | "none" | يرسل `test-codes` إشارات اختبار إلى مركز المراقبة؛ ولا يرسل `none` إليه شيئًا |
confirm | boolean | اضبطه فقط بعد أن يؤكد المستخدم المعاينة التي أعادها الاستدعاء الأول |
duress_tests_readالاستغاثةDuress Configurationتقرأ اختبارات أزرار الاستغاثة: الجداول التي تحجزها (walk أو comms أو drill، مرة واحدة أو متكررة، لمنظمة أو علامات تجارية أو منشآت)، ونوافذ الاختبار التي تنشئها في كل منشأة (المجدولة والنشطة والمكتملة والملغاة، إضافةً إلى الاختبارات المخصصة)، ونتائج نافذة (الأزرار التي ضُغطت أو فاتت، ومن أُبلغ، وإشارات مركز المراقبة، وأوقات الإقرار).
لا تُذكر هوية من حجز اختبارًا أو غيّره أو ألغاه؛ ويُحجب مستلمو التسليم. الأوقات بتنسيق ISO؛ وlocalDate وlocalStartTime بالمنطقة الزمنية للمنشأة. احجز الاختبارات أو غيّرها باستخدام duress_tests_write؛ وابدأ اختبارًا فورًا باستخدام duress_start_test.
الإجراءات:
- schedules: جداول الاختبار. scope بالقيمة facility (الافتراضي؛ كل جدول يغطيها، بما في ذلك الجداول المشتركة التي تتخطاها أو تستبدلها)، أو brand (brandId)، أو organisation (الافتراضي: منظمة المنشأة). الأحدث تغييرًا أولًا.
- windows: نوافذ الاختبار. نوافذ الاختبار لمنشأة من
fromإلىto(الافتراضي من نحو أسبوع مضى إلى شهر مقبل)، أو مع organisationId فقط النوافذ القادمة للمنظمة عبر منشآتها. - results: نتائج الاختبار. نافذة ونتائجها: تُخزَّن بعد إرسالها، وتُحسب مباشرةً أثناء تشغيل الاختبار (قائمة تحقق اختبار walk)، وتكون null للنوافذ المجدولة أو الملغاة. يتطلب Duress في المنشأة. يتطلب startsAtKey.
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
action* | "schedules" | "windows" | "results" | الإجراء المطلوب؛ كل إجراء موصوف في وصف الأداة. |
scope | "facility" | "brand" | "organisation" | الافتراضي facility (schedules) |
facilityId | string | معرّف المنشأة. اختياري إذا كانت المنشأة المتصلة هي المقصودة. |
brandId | string | معرّف العلامة التجارية، لقالب العلامة التجارية بدلًا من منشأة (schedules) |
organisationId | string | عندما تكون قيمة scope هي organisation (schedules, windows) |
includeCancelled | boolean | تضمين الاختبارات الملغاة (schedules, windows) |
limit | integer | عدد العناصر في كل صفحة (الافتراضي 25، والحد الأقصى 100) (schedules, windows) |
cursor | string | قيمة nextCursor من الصفحة السابقة (schedules, windows) |
from | string | التاريخ والوقت بتنسيق ISO (windows) |
to | string | التاريخ والوقت بتنسيق ISO (windows) |
startsAtKey | string | نافذة الاختبار (startsAtKey)، من duress_tests_read windows (results) |
duress_tests_writeDuress Configurationالاستغاثةيحجز جداول اختبارات Duress ويغيّرها ويلغيها، ويحدد كيف تتبع منشأة واحدة جدولًا مشتركًا، ويلغي نافذة اختبار قادمة واحدة. كل تغيير يحجز النوافذ المستقبلية أو يعيد كتابتها ويرسل بريدًا إلكترونيًا إلى أصحاب المصلحة، لذا يطلب كل إجراء التأكيد.
تتطلب الجداول Duress Configuration على كامل نطاقها المستهدف (مسؤول المنظمة للجداول على مستوى المنظمة). الأوقات بالمنطقة الزمنية لكل منشأة. اقرأ الجداول والنوافذ أولًا باستخدام duress_tests_read؛ وابدأ اختبارًا الآن باستخدام duress_start_test.
الإجراءات:
- create_schedule: حجز جدول اختبار. يحجز النوافذ لمدة تصل إلى عام تقريبًا مسبقًا في كل منشأة ضمن target ويرسل تأكيد الحجز بالبريد الإلكتروني. يتطلب name وtype وtarget وstartDate وlocalStartTime وrecurrence. يتطلب name وtype وtarget وstartDate وlocalStartTime وrecurrence. يطلب التأكيد.
- update_schedule: تغيير جدول اختبار. تحتفظ الحقول غير المرسلة بقيمها. تُعاد كتابة النوافذ المستقبلية (وتُترك النوافذ التي بدأت) ويتلقى أصحاب المصلحة إشعارًا بالتغيير. استخدم ownerScope الوارد في النتيجة بعد ذلك. يتطلب ownerScope وscheduleId. يطلب التأكيد.
- cancel_schedule: إلغاء جدول اختبار. يلغي الجدول ونوافذه المستقبلية، ويرسل الإلغاء بالبريد الإلكتروني. تحتفظ المنشآت التي لديها نسختها الخاصة بها. يتطلب ownerScope وscheduleId. يطلب التأكيد.
- set_facility_override: تغيير جدول مشترك لمنشأة واحدة. mode هو follow (تشغيل الجدول المشترك هنا مجددًا) أو skip (إيقافه هنا) أو own (استبداله هنا بنسخة مبنية من schedule). يتطلب Duress Configuration في تلك المنشأة فقط. يتطلب ownerScope وscheduleId وmode. يطلب التأكيد.
- cancel_window: إلغاء نافذة اختبار واحدة. يلغي اختبارًا مجدولًا واحدًا في منشأة (ويستمر الجدول) ويرسل بريدًا إلكترونيًا إلى أصحاب المصلحة. يتطلب Duress في المنشأة؛ أما الاختبار النشط فيُنهى باستخدام duress_end_test بدلًا من ذلك. يتطلب startsAtKey. يطلب التأكيد.
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
action* | "create_schedule" | "update_schedule" | "cancel_schedule" | "set_facility_override" | "cancel_window" | الإجراء المطلوب؛ كل إجراء موصوف في وصف الأداة. |
name | string | يظهر في رسائل البريد الإلكتروني والتقويم (create_schedule, update_schedule) |
type | "walk" | "comms" | "drill" | walk (الضغط على كل زر)، أو comms (ضغطة واحدة لكل مسار مراقبة)، أو drill (استجابة متدرَّب عليها) (create_schedule, update_schedule) |
target | object | المنشآت المعنية: المنظمة بأكملها، أو brandIds، أو facilityIds (create_schedule, update_schedule) |
startDate | string | أول تكرار، بصيغة YYYY-MM-DD بالمنطقة الزمنية لكل منشأة (create_schedule, update_schedule) |
localStartTime | string | بصيغة HH:mm بالمنطقة الزمنية لكل منشأة (create_schedule, update_schedule) |
durationMinutes | integer | القيمة الافتراضية 60 (create_schedule, update_schedule) |
recurrence | "once" | "monthly" | "quarterly" | "twice-yearly" | "yearly" | once أو monthly أو quarterly أو twice-yearly أو yearly (create_schedule, update_schedule) |
repeatOn | objectnull | التكرار في يوم الأسبوع رقم n من الشهر بدلًا من التاريخ نفسه؛ القيمة null تمسحه (create_schedule, update_schedule) |
monitoringCentreMode | "test-codes" | "none" | test-codes يرسل الإشارات بوصفها اختبارات؛ none يُبقي مركز المراقبة خارج الاختبار (create_schedule, update_schedule) |
extraEmails | array | يتلقون أيضًا بالبريد الإلكتروني الحجز والتذكيرات والنتائج (create_schedule, update_schedule) |
organisationId | string | الافتراضي: منظمة المنشأة المتصلة (create_schedule, update_schedule, cancel_schedule, set_facility_override) |
ownerScope | string | من جداول duress_tests_read، مثل brand#b-123؛ وقد يتغير عند تغيّر target (update_schedule, cancel_schedule, set_facility_override) |
scheduleId | string | من جداول duress_tests_read (update_schedule, cancel_schedule, set_facility_override) |
facilityId | string | معرّف المنشأة. اختياري عندما تكون المنشأة المتصلة هي المقصودة. (set_facility_override, cancel_window) |
mode | "follow" | "skip" | "own" | follow أو skip أو own (set_facility_override) |
schedule | object | عند mode own: حقول النسخة (target هو هذه المنشأة دائمًا)؛ الحقول غير المرسلة تؤخذ من الجدول المشترك (set_facility_override) |
startsAtKey | string | نافذة الاختبار (startsAtKey)، من نوافذ duress_tests_read (cancel_window) |
confirm | boolean | اضبطه فقط بعد أن يؤكد المستخدم المعاينة التي أعادها الاستدعاء الأول |
duress_unlock_doorsالاستغاثةيفتح الأبواب لإنذار استغاثة، مثلًا لإدخال الشرطة أو المسعفين: الأبواب المرتبطة بالزر المضغوط، وإلا فأبواب خطة الاستجابة. اترك doorIds لفتحها جميعًا، أو حدد بعضها. يُسجَّل كل فتح في الخط الزمني للحادث وفي سجلات الوصول.
لا يُستخدم أبدًا لإنذارات الاختبار أو الإنذارات المحلولة. يتطلب Door/Gate Access في المنشأة.
أكِّد أولًا. استدعِ الأداة دون confirm لمعرفة الأبواب التي ستُفتح، وأخبر المستخدم، ثم استدعِها مجددًا مع confirm: true بعد موافقته.
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
incidentId* | string | معرّف الحادثة (inc_...)، من duress_incidents_read list أو من مشغّل سير عمل Duress. |
doorIds | array | بعض الأبواب المدرجة عند الاستدعاء دون confirm. اتركه لفتحها جميعًا. |
confirm | boolean | اضبطه فقط بعد أن يؤكد المستخدم المعاينة التي أعادها الاستدعاء الأول |