تقنية

كيف يمكن للشركات التحقق من الحالة الصحية للموظفين باستخدام Aarogya Setu


قدمت حكومة الهند مؤخرًا “واجهة برمجة تطبيقات مفتوحة” لتطبيق Aarogya Setu، وهو تطبيق تتبع جهات الاتصال الأكثر شيوعًا في العالم والذي يضم أكثر من 110 مليون مستخدم عبر نظامي Android وiOS. ستساعد واجهة Aarogya Setu API، باللغة الإنجليزية البسيطة، المؤسسات على التحقق تلقائيًا من الحالة الصحية لموظفيها.

حاليًا، عندما يدخل الموظف مكتبه، يُطلب منه إظهار تطبيق Aarogya Setu الخاص به في مكتب الاستقبال ولا يُسمح له بالدخول إلا إذا كانت الحالة خضراء مما يعني أنه لم يكن على مقربة من شخص مصاب. مع وجود واجهة برمجة التطبيقات (API) في بعض الأماكن، يمكن للشركات أن تعرف تلقائيًا مستوى المخاطر الذي يتعرض له موظفوها.

يمكن أن يوفر هذا بعض الجهد نظرًا لأن قسم الموارد البشرية يمكنه إنشاء ورقة Google تحتوي على أرقام هواتف جميع الموظفين ويمكن لبرنامج Google Script الحصول تلقائيًا على الحالة الصحية لكل رقم في تلك القائمة. يمكن للبرنامج النصي بعد ذلك إرسال قائمة الموظفين المعرضين لخطر متوسط ​​أو مرتفع عبر البريد الإلكتروني لاتخاذ مزيد من الإجراءات.

انظر أيضًا: متتبع Covid-19 الهند

كيفية استخدام واجهة برمجة تطبيقات Aarogya Setu

يمكنك الاشتراك في واجهة برمجة التطبيقات (API) على openapi.arogyasetu.gov.in. هذه ليست عملية واضحة – يجب عليك إرسال بريد إلكتروني ولا يتم منح الموافقة إلا إذا كان عملك يضم أكثر من 50 موظفًا. بافتراض أنه تم منح نشاطك التجاري إمكانية الوصول إلى واجهة برمجة التطبيقات (API)، فإليك كيفية استخدامها مع جداول بيانات Google والنصوص البرمجية من Google.

class AaryogyaSetu {
  constructor({ apiKey, userName, password }) {
    this.apiKey = apiKey;
    this.userName = userName;
    this.password = password;
    this.api = 'https://api.aarogyasetu.gov.in';
    this.token = null;
  }

  /* Get the authorization token for the header
     The token is valid for 1 hour */
  getToken() {
    if (this.token === null) {
      const { token } = this.fetch('/token', {
        username: this.userName,
        password: this.password
      });
      this.token = token;
    }
    return this.token;
  }

  /* Request Aarogya Setu status of a
     user using phone number of the user */
  getUserStatus(phone_number) {
    const { request_id, request_status } = this.fetch('/userstatus', {
      phone_number
    });
    return request_status !== 'Approved';
  }

  fetch(endpoint, payload) {
    const mimeType = 'application/json';
    const headers = {
      Accept: mimeType,
      'Content-Type': mimeType,
      'x-api-key': this.apiKey
    };
    if (endpoint !== '/token') {
      headers['Authorization'] = this.getToken();
    }
    const options = {
      method: 'POST',
      contentType: mimeType,
      headers: headers,
      payload: JSON.stringify(payload)
    };
    const url = `${this.api}${endpoint}`;
    const response = UrlFetchApp.fetch(url, options);
    return JSON.parse(response.getContentText());
  }
}

/* The API key can be found in your Aarogya Setu dashboard */
const main = () => {
  const aarogyasetu = new AaryogyaSetu({
    apiKey: 'xyz1234',
    username: 'amit@labnol.org',
    password: 'India1234'
  });

  const phoneNumber = '9760008500';
  const userStatus = aarogyasetu.getUserStatus(phoneNumber);
  if (!userStatus) {
    console.log(`The Aarogya Setu status of ${phoneNumber} was denied`);
  }
};

عندما تقدم طلبًا إلى Aarogya Setu API تطلب فيه حالة الخطر الخاصة بموظف تم تحديده من خلال رقم هاتفه، يتم إرسال إشعار إلى مستخدم Aarogya Setu. إذا وافقوا على الحالة (أو إذا وافقوا مسبقًا على الطلب مسبقًا)، فسيتم إجراء طلب POST إلى عنوان URL لرد الاتصال الخاص بك مع حالة المساعدة الخاصة بالمستخدم.

يمكن نشر Google Script كتطبيق ويب باستخدام ملحق doPost الطريقة والتي يمكن استخدامها كعنوان URL لرد الاتصال لـ Open API.



Source link

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

زر الذهاب إلى الأعلى