نسبة تداخل ساعات العمل
يوم عمل من 9 إلى 17 عند UTC−5 وآخر من 9 إلى 17 عند UTC+0 لا يشتركان إلا في 3 ساعات، من 14:00 إلى 17:00 UTC، أي 37.5% من اليوم الأقصر. أدخلوا فرق التوقيت وساعات كل فريق، بما فيها الورديات الليلية. مجانًا في متصفحكم.
- مجاني
- يعمل في متصفحك
- دون تسجيل
- بياناتك لا تغادر جهازك
شغّل الأداة مجانًا
مثال محلول
- الإزاحة A
- -5
- بداية A
- 9
- End a
- 17
- الإزاحة B
- 0
- بداية B
- 9
- End b
- 17
- تسمية إزاحة A
- UTC−5
- تسمية إزاحة B
- UTC+0
- ساعات الفريق A
- 8
- ساعات الفريق B
- 8
تطرح الفرق الموزعة سؤالًا يبدو بسيطًا: إذا عملت مجموعة من التاسعة إلى الخامسة في نيويورك وأخرى من التاسعة إلى الخامسة في لندن، فكم من هاتين الوردتين متزامن فعلًا؟ تجيب حاسبة نسبة تداخل ساعات العمل بإزاحات UTC ثابتة وبساعات بداية ونهاية محليتين، لا بأسماء مدن ولا بقاعدة للتوقيت الصيفي. الورديات الليلية تلفّ منتصف الليل. تبقى الإزاحات داخل زائد أو ناقص أربع عشرة ساعة.
ما معنى تداخل ساعات العمل
تطرح الفرق الموزعة سؤالًا يبدو بسيطًا: إذا عمل فريق من التاسعة إلى الخامسة في نيويورك وآخر بالساعات نفسها في لندن، فكم من يومي العمل يجري في الوقت ذاته فعلًا؟ تجيب الحاسبة باستخدام فروق ثابتة عن التوقيت العالمي المنسق وساعات البدء والانتهاء المحلية، لا بأسماء المدن ولا بقاعدة بيانات للتوقيت الصيفي. فيُنقل كل يوم عمل إلى دائرة يومية بتوقيت UTC، فيصبح يوم 9 إلى 17 عند UTC−5 من 14:00 إلى 22:00 UTC.
طريقة الحساب والأخطاء الشائعة
الجزء المشترك مع يوم 09:00 إلى 17:00 UTC هو من 14:00 إلى 17:00، أي 3 ساعات، وتقسم النسبة الرئيسية هذا الوقت على اليوم الأقصر: 3 من 8 ساعات تساوي 37.5%. وإذا انتهى اليوم قبل بدايته عُدّ وردية ليلية تعبر منتصف الليل. ومن الأخطاء الشائعة جعل البداية تساوي النهاية، فهذا يُرفض بوصفه يومًا بلا طول بدل تخمين 24 ساعة؛ وليوم كامل أدخلوا من 0 إلى 24.
كيف يصبح يومَا عمل نسبة تداخل
يوم العمل هنا فترة محلية نصف مفتوحة من ساعة البداية إلى ساعة النهاية على ساعة أربع وعشرين ساعة، مضافًا إليها إزاحة ثابتة عن التوقيت العالمي المنسق. الفريق A في UTC ناقص خمسة الذي يعمل من التاسعة إلى السابعة عشرة يشغل 14:00 إلى 22:00 UTC. والفريق B في UTC زائد صفر الذي يعمل من التاسعة إلى السابعة عشرة يشغل 09:00 إلى 17:00 UTC.
تشترك الفترتان في 14:00 إلى 17:00 UTC، أي ثلاث ساعات. إذا سبقت النهاية البداية فالشباك المحلي وردية ليلية تلفّ منتصف الليل قبل التحويل إلى UTC؛ وكثيرًا ما تلتقي صباح طوكيو وبعد ظهر سان فرانسيسكو كشريحة ساعتين بعد ذلك الالتفاف. اليوم المدني الكامل بداية صفر ونهاية أربع وعشرين، فيغطي دائرة UTC كلها ويتداخل مع الفريق الآخر طوال مدته.
تُرفض بداية مساوية للنهاية بوصفها يومًا صفري الطول بدل تخمينها أربعًا وعشرين ساعة، لأن القراءتين ملتبستان في الجداول. تُقرَّب الساعات الكسرية مثل تسعة فاصلة خمسة والإزاحات مثل خمسة فاصلة خمسة (5.5) إلى أقرب دقيقة كي يبقى التوقيت القياسي للهند وبداية التاسعة والنصف دقيقين من دون كائن Date للمضيف.
حالات الاستخدام
توظيف الدعم بالتناوب مع الشمس
قيسوا الدقائق المتزامنة بين مكتبي دعم حتى لا تعامل أدوات الجداول صباحات بلا تداخل كوردية مشتركة.
الأسئلة الشائعة
هل تعمل الورديات الليلية والتفاف منتصف الليل؟
نعم. إذا سبقت النهاية البداية عُومل الشباك وردية ليلية تلفّ منتصف الليل محليًا ثم حُوّل إلى UTC قبل التقاطع. اليوم الكامل هو start 0 وend 24.
لماذا تداخل نيويورك 9–17 ولندن 9–17 هو 37.5 في المئة فقط؟
UTC−5 09:00–17:00 هي 14:00–22:00 UTC؛ وUTC+0 09:00–17:00 هي 09:00–17:00 UTC.
هل تُستخدم مناطق IANA أو التوقيت الصيفي؟
لا. تقدّمون إزاحات UTC ثابتة (ساعات، بما فيها قيم كسرية مثل 5.5). المناطق المسماة وانتقالات DST خارج النطاق ليبقى الناتج هوية خالصة بلا Date.
كيف تُحسب نسبة التداخل؟
هي الوقت المشترك مقسومًا على أقصر يومي العمل، مضروبًا في 100. فيوما عمل مدة كل منهما 8 ساعات يلتقيان من 14:00 إلى 17:00 UTC يشتركان في 3 ساعات، فتكون النسبة 37.5%. وتظهر حصة كل فريق أيضًا.
ماذا لو وقع يوم عمل فريق بالكامل داخل يوم الفريق الآخر؟
عندها تكون النسبة الرئيسية 100%، لأن كل دقيقة من اليوم الأقصر متزامنة. وتختلف نسب الفريقين: فالمناوبة القصيرة مشتركة بالكامل، بينما قد لا يُشارك اليوم الأطول إلا في نصفه.
أدوات ذات صلة
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/biz/work-hours-overlap-percent \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"offset_a":-5,"start_a":9,"end_a":17,"offset_b":0,"start_b":9,"end_b":17}'const res = await fetch("https://api.kit.forhosting.com/biz/work-hours-overlap-percent", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"offset_a": -5,
"start_a": 9,
"end_a": 17,
"offset_b": 0,
"start_b": 9,
"end_b": 17
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/biz/work-hours-overlap-percent",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"offset_a": -5,
"start_a": 9,
"end_a": 17,
"offset_b": 0,
"start_b": 9,
"end_b": 17
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/biz/work-hours-overlap-percent", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"offset_a":-5,"start_a":9,"end_a":17,"offset_b":0,"start_b":9,"end_b":17}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"offset_a":-5,"start_a":9,"end_a":17,"offset_b":0,"start_b":9,"end_b":17}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/biz/work-hours-overlap-percent", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"offset_a": -5,
"start_a": 9,
"end_a": 17,
"offset_b": 0,
"start_b": 9,
"end_b": 17
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "biz.work_hours_overlap_percent",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |
ملاحظات تقنية
ترسلون ستة أعداد — الإزاحة والبداية والنهاية للفريق A ونظائرها الثلاثة للفريق B — فيُسقط الحالّ النافذتين على دائرة UTC لأربع وعشرين ساعة ويتقاطعهما ويعيد دقائق التداخل وساعات التداخل وحصة يوم كل فريق المشتركة حيًّا وoverlap_percent بارزًا يساوي مئة ضعف التقاطع على اليوم الأقصر. الحساب الخالص نفسه يغذي الأداة المجانية في المتصفح وواجهة API المدفوعة مسبقًا، فلا تختلف نماذج التوظيف ولا سياسات الاجتماعات ولا ملاحظات التناوب مع الشمس على مقدار اليوم المشترَك حقًا.
كيف يصبح يومَا عمل نسبة تداخل
يدوم اليومان ثماني ساعات، فاليوم الأقصر ثماني ساعات وoverlap_percent يساوي مئة ضعف ثلاثة على ثمانية، أي سبعة وثلاثين فاصلة خمسة في المئة (37.5). تظهر الهوية نفسها في كل استجابة ناجحة: utc يساوي المحلي ناقص الإزاحة بمقاس أربع وعشرين ساعة؛ والتداخل تقاطع فترتي UTC على يوم دائري؛ وoverlap_percent يساوي مئة ضعف overlap_minutes مقسومًا على أصغر team_a_minutes وteam_b_minutes. يستعمل الحقلان الخاصان بالفريق overlap_percent_a وoverlap_percent_b مدة كل فريق مقامًا، فيبلغ مكتب أربع ساعات داخل مكتب ثماني ساعات مئة في المئة للفريق القصير وخمسين للطويل، بينما تبقى الرقم البارزة مئة لأن كل دقيقة من اليوم الأقصر متزامنة.
عقد الإدخال وحقول الاستجابة وقواعد التحقق
يجوز أن تكون الساعات كسرية. أرسلوا بـ POST كائن JSON بستة أعداد منتهية إلزامية. offset_a وoffset_b إزاحتا UTC ثابتتان بالساعات، كل منهما بين ناقص أربع عشرة وزائد أربع عشرة شمولًا؛ وتشمل الأسماء البديلة utc_a وteam_a_offset وa_offset ونظائر الفريق B. وstart_a وend_a وstart_b وend_b ساعات ساعة محلية من صفر إلى أربع وعشرين شمولًا؛ وتشمل الأسماء البديلة team_a_start وa_start وteam_a_end وa_end ونظائر B. إذا سبق end_a قيمة start_a لفّ شباك A منتصف الليل؛ والحكم نفسه لـ B. عند النجاح يعيد الجسم المدخلات الست المقرَّبة وتسميات إزاحة مثل UTC−5، ويبلّغ team_a_hours وteam_b_hours وteam_a_minutes وteam_b_minutes، وينشر كل شباك في UTC باسم team_a_utc_start وteam_a_utc_end وteam_b_utc_start وteam_b_utc_end مع المنطقيين team_a_wraps وteam_b_wraps، ويعطي overlap_minutes وoverlap_hours وoverlap_percent وoverlap_percent_a وoverlap_percent_b وoverlap_windows كمصفوفة ساعات UTC للبداية والنهاية، وsame_window عندما تتطابق فترتا UTC، ورسالة سطر واحد، وسلسلة formula. مثال: offset_a ناقص خمسة وstart_a تسعة وend_a سبعة عشر وoffset_b صفر وstart_b تسعة وend_b سبعة عشر يعطي ثلاث ساعات تداخل وسبعة وثلاثين فاصلة خمسة في المئة (37.5) وشباك UTC واحدًا من 14:00 إلى 17:00. فشل التحقق — حقول ناقصة أو قيم غير منتهية أو إزاحة يتجاوز مطلقها أربع عشرة أو بداية أو نهاية خارج صفر إلى أربع وعشرين أو يوم صفري الطول — يعيد invalid_input مسمّيًا الحقل ولا يُفوتر أبدًا. تكلف الاستدعاءات الناجحة السعر الأساسي المنشور $0.002 بوحدة item.
أين تثبت نسبة تداخل ساعات العمل جدواها
تستخدم فرق عمليات الأفراد حاسبة نسبة تداخل ساعات العمل عند صياغة ساعات التعاون المشتركة لشركة منقسمة على مركزين: إذا لم تشترك نيويورك ولندن إلا في ثلاث ساعات من ثمانٍ، فسياسة تطالب بأربع ساعات حية غير قابلة للتطبيق دون تمديد أحد الجانبين. لا تستهلك الإزاحات الباطلة والأيام صفرية الطول الرصيد. أبقوا الإزاحات أعداد UTC± المطبوعة أصلًا على التذاكر وإعدادات الخوادم؛ لا تحل هذه الأداة أسماء IANA مثل America/New_York ولا تطبق انتقالات التوقيت الصيفي. إذا غيّرت منطقة إزاحتها في آذار/مارس فأرسلوا رقم الشتاء أو رقم الصيف الذي تقصدونه فعلًا. تحوّل نماذج التوظيف overlap_hours إلى مقاعد متزامنة حتى لا يزعم جدول دعم يتناوب مع الشمس أن صباح طوكيو وصباح كاليفورنيا وردية واحدة. تضع مؤسسات المبيعات ونجاح العملاء المكالمات المتكررة في التقاطع المنشور overlap_windows بدل التخمين من ساعة عالمية. ولغة التعاقد التي تعد بيوم مشترك أدنى تستطيع تثبيت overlap_percent في اختبار لا في لقطة شاشة. وتستفيد مواقع المحتوى التي تنافس على حاسبة نسبة تداخل ساعات العمل من أداة حية يطابق مسار متصفحها المجاني مسار API المدفوعة مسبقًا بايتًا ببايت على الوحدة الخالصة نفسها. ولأن التنفيذ parse من المستوى A، تكلف كل استدعاء ناجح $0.002 المنشور بلا رموز نموذج وبلا شبكة صادرة. زاوجوا الأمثلة عند التعليم: إزاحات وساعات متطابقة تعيد مئة في المئة وsame_window true؛ نيويورك مقابل لندن من التاسعة إلى الخامسة تعيد سبعة وثلاثين فاصلة خمسة في المئة (37.5)؛ طوكيو من التاسعة إلى الثامنة عشرة مقابل سان فرانسيسكو من التاسعة إلى الثامنة عشرة تعيد شريحة قصيرة واعية بالالتفاف؛ وإزاحة خمسة عشر تُظهر مسار invalid_input الصارم. ثبّتوا overlap_percent وoverlap_minutes في الاختبارات فتحصلون على حساب تزامن قابل لإعادة الإنتاج للأدلة وصفحات SEO والعاملين الطرفيّين دون إقامة قاعدة مناطق زمنية خاصة بكم.
حالات التكامل
ساعات التعاون المشتركة لمركزين
حوّلوا بداية كل مكتب ونهايته المحليتين مع إزاحة UTC إلى overlap_percent وoverlap_windows قبل نشر ساعات التعاون الحي الإلزامية.
فترات اجتماعات متكررة عبر الإزاحات
ضعوا المكالمات الثابتة داخل تقاطع UTC المعاد overlap_windows بدل التخمين من لقطة ساعة عالمية.
أسئلة تقنية
كيف تُحسب نسبة تداخل ساعات العمل؟
تُزاح بداية كل فريق ونهايته المحليتان إلى UTC بطرح الإزاحة الثابتة، ثم تتقاطع الفترتان على دائرة 24 ساعة. overlap_percent يساوي 100 × overlap_minutes / min(team_a_minutes, team_b_minutes).
كم تكلفة حاسبة تداخل ساعات العمل؟
أداة المتصفح مجانية. تستخدم طلبات API رصيد KIT المدفوع مسبقًا بسعر $0.002 لكل استدعاء ناجح؛ ولا تُفوتر الإدخالات الباطلة.