واجهة برمجة تطبيقات جافا سكريبت

مرحبًا بك في مستندات واجهة برمجة تطبيقات جافا سكريبتtawk.to .

توفر واجهة برمجة التطبيقات مجموعة مرنة من الأساليب التي يمكن استخدامها في مشاريع الويب الخاص بك. لاستدعاء إحدى الطرق أدناه ، يرجى التأكد من تعيين الطريقة بعد رمز التضمين في صفحتك.

استخدم JavaScript API لمعالجة واجهة الدردشة المعروضة على موقع الويب الخاص بك.

حالات الاستخدام الشائعة :

يسعدنا دائمًا معرفة كيفية استخدامك لواجهة برمجة التطبيقات ، لذلك لا تتردد في مشاركة إبداعاتك معنا!

عند التحميل

تم استدعاء وظيفة رد الاتصال مباشرة بعد عرض الواجهة. إن رد الاتصال هذا غير مدعوم في نافذة الدردشة المنبثقة.

Tawk_API = Tawk_API || {};
Tawk_API.onLoad = function(){
    //place your code here
};

تغيير الحالة

يتم استدعاء وظيفة رد الاتصال عندما تتغير حالة الصفحة. وستتلقى الوظيفة الحالة التي تم تغييرها والتي ستكون إما متصلًا أو بعيدًا أو غير متصل. إن رد الاتصال هذا غير مدعوم في نافذة الدردشة المنبثقة

Tawk_API = Tawk_API || {};
Tawk_API.onStatusChange = function(status){
    //place your code here
};

قبل التحميل

يتم استدعاء وظيفة رد الاتصال عندما يكون Tawk_API جاهزاً للاستخدام وقبل عرض الواجهة. إن رد الاتصال هذا غير مدعوم في نافذة الدردشة المنبثقة.

Tawk_API = Tawk_API || {};
Tawk_API.onBeforeLoad = function(){
    //place your code here
};

تكبير واجهة الدردشة

يتم استدعاء وظيفة رد الاتصال عند تكبير الواجهة. إن رد الاتصال هذا غير مدعوم في نافذة الدردشة المنبثقة.

Tawk_API = Tawk_API || {};
Tawk_API.onChatMaximized = function(){
    //place your code here
};

تصغير واجهة الدردشة

يتم استدعاء وظيفة رد الاتصال عند تصغير الواجهة. إن رد الاتصال هذا غير مدعوم في نافذة الدردشة المنبثقة.

Tawk_API = Tawk_API || {};
Tawk_API.onChatMinimized = function(){
    //place your code here
};

الدردشة المخفية

يتم استدعاء وظيفة رد الاتصال عندما تكون الواجهة مخفية. إن رد الاتصال هذا غير مدعوم في نافذة الدردشة المنبثقة.

Tawk_API = Tawk_API || {};
Tawk_API.onChatHidden = function(){
    //place your code here
};

بدء الدردشة

يتم استدعاء وظيفة رد الاتصال عند بدء تشغيل الواجهة.

Tawk_API = Tawk_API || {};
Tawk_API.onChatStarted = function(){
    //place your code here
};

إنتهاء الدردشة

يتم استدعاء وظيفة رد الاتصال عند إنتهاء الواجهة. إن رد الاتصال هذا غير مدعوم في نافذة الدردشة المنبثقة.

Tawk_API = Tawk_API || {};
Tawk_API.onChatEnded = function(){
    //place your code here
};

إرسال النموذج المسبق

يتم استدعاء وظيفة رد الاتصال عند إرسال النموذج المسبق. يتم تمرير بيانات النموذج المرسلة إلى الوظيفة. رد الاتصال هذا غير مدعوم في نافذة الدردشة المنبثقة.

Tawk_API = Tawk_API || {};
Tawk_API.onPrechatSubmit = function(data){
    //place your code here
};

 إرسال النموذج غير المتصل

يتم استدعاء وظيفة رد الاتصال عند إرسال النموذج غير المتصل. يتم تمرير بيانات النموذج المرسلة إلى رد الاتصال. ستحتوي بيانات النموذج على {الاسم، البريد الإلكتروني ، الرسالة، الأسئلة. رد الاتصال هذا غير مدعوم في نافذة الدردشة المنبثقة.

Tawk_API = Tawk_API || {};
Tawk_API.onOfflineSubmit = function(data){
    //place your code here
};

الزائر{};

هذه الواجهة تستخدم لتعيين اسم الزائر والبريد الإلكتروني.

لا تضع هذه الأداة في الوظيفة لأن القيم يجب أن تكون متاحة قبل تنزيل البرنامج النصي للواجهة.

لن يؤدي تعيين القيم أو تغييرها بعد تنزيل البرنامج النصي للوظيفة إلى إرسال القيم إلى لوحة التحكم.

إذا لم يكن الاسم والبريد الإلكتروني متاحين في وقت التحميل (على سبيل المثال ، تطبيق الصفحة الواحدة ، تسجيل الدخول إلى ajax) ، فاستخدم وظيفة setAttributes بدلاً من ذلك.

Tawk_API = Tawk_API || {};
Tawk_API.visitor = {
    name  : 'Name',
    email : 'email@email.com'
};

تكبير();

لتكبير واجهة الدردشة.

Tawk_API.maximize();

//Example

Tawk_API.onLoad = function(){
    Tawk_API.maximize();
};

تصغير();

لتصغير واجهة الدردشة.

Tawk_API.minimize();

//Example

Tawk_API.onLoad = function(){
    Tawk_API.minimize();
};

تبديل();

تصغير أو تكبير واجهة الدردشة بناءً على الحالة الحالية.

Tawk_API.toggle();

//Example

Tawk_API.onLoad = function(){
    Tawk_API.toggle();
};

انبثاق ();

تفتح أواجهة الدردشة كنافذة منبثقة.

Tawk_API.popup();

//Example

Tawk_API.onLoad = function(){
    Tawk_API.popup();
};

الحصول على نوع النافذة ();

لعرض نوع الواجهة الحالي سواء كان مضمناً أو موضعي.

Tawk_API.getWindowType();

//Example

Tawk_API.onLoad = function(){
    if(Tawk_API.getWindowType() === 'inline'){
        // do something if it's inline
    }else{
        // do something if it's embed
    }
};

عرض الواجهة();

يعرض واجهة الدردشة.

Tawk_API.showWidget();

//Example

Tawk_API.onLoad = function(){
    Tawk_API.showWidget();
};

إخفاء الواجهة();

يخفي واجهة الدردشة.

Tawk_API.hideWidget();

//Example

Tawk_API.onLoad = function(){
    Tawk_API.hideWidget();
};

تبديل الرؤية();

إخفاء أو إظهار واجهة الدردشة بناءً على حالة الرؤية الحالية.

Tawk_API.toggleVisibility();

//Example

Tawk_API.onLoad = function(){
    Tawk_API.toggleVisibility();
};

احصل على الحالة();

لعرض حالة الصفحة الحالية (متصل أو بعيد أو غير متصل).

Tawk_API.getStatus();

//Example

Tawk_API.onLoad = function(){
    var pageStatus = Tawk_API.getStatus();

    if(pageStatus === 'online'){
        // do something for online
    }else if(pageStatus === 'away'){
        //do something for away
    }else{
        // do something for offline
    }
};

تم تكبير الدردشة();

لعرض قيمة منطقية (صواب أو خطأ) سواء تم تكبير واجهة الدردشة أم لا..

Tawk_API.isChatMaximized();


//Example

Tawk_API.onLoad = function(){
    if(Tawk_API.isChatMaximized()){
        //do something if it's maximized
    }
};

تم تصغير الدردشة();

لعرض قيمة منطقية (صواب أو خطأ) سواء تم تصغير واجهة الدردشة.

Tawk_API.isChatMinimized();

//Example

Tawk_API.onLoad = function(){
    if(Tawk_API.isChatMinimized()){
        // do something if it's minimized
    }
};

تم اخفاء الدردشة();

لعرض قيمة منطقية (صواب أو خطأ) سواء كانت واجهة الدردشة مخفية

Tawk_API.isChatHidden();

//Example

Tawk_API.onLoad = function(){
    if(Tawk_API.isChatHidden()){
        // do something if chat widget is hidden
    }
};

في حال وجود دردشة جارية();

لعرض قيمة منطقية (صواب أو خطأ) سواء كانت هناك محادثة جارية حاليًا.

Tawk_API.isChatOngoing();

//Example

Tawk_API.onLoad = function(){
    if(Tawk_API.isChatOngoing()){
        //do something if there's ongoing chat
    }
};

وجود زائر متفاعل();

ترجع قيمة منطقية (صواب أو خطأ) سواء كان الزائر يدردش في الوقت الحالي أو قد طلب دردشة.

Tawk_API.isVisitorEngaged();

//Example

Tawk_API.onLoad = function(){
    if(Tawk_API.isVisitorEngaged()){
        // do something if visitor is engaged in chat
    }
};

نهاية الدردشة();

إنهاء الدردشة الجارية الحالية.

Tawk_API.endChat();

//Example

Tawk_API.onLoad = function(){
    Tawk_API.endChat();
};

setAttributes();

قم بتعيين بيانات وصفية مخصصة للدردشة / الزائر.

تأخذ هذه الوظيفة قيمتين ؛ السمة والرد.

قيمة السمة هي نوع بيانات الواجهة و الذي يعتبر زوج المفاتيح ذات قيمة.

المفتاح هو من نوع بيانات السلسلة ويمكن أن يحتوي فقط على أحرف أبجدية رقمية و “-” (خط فاصل)

يمكنك أيضًا استخدام هذه الوظيفة لتعيين اسم الزائر والبريد الإلكتروني ، ولكنك ستحتاج إلى تمكين الوضع الآمن أولاً وتوفير قيمة التجزئة المحسوبة في هذه الوظيفة أيضاً.

راجع قسم الوضع الآمن حول كيفية القيام بذلك.

السبب في أنه يجب أن يكون في الوضع الآمن هو ضمان تكامل البيانات. للتأكد من أن القيمة المرسلة من الأداة إلى لوحة المعلومات هي الحقيقة ولم يتم العبث بها.

سيتم استدعاء رد الاتصال الذي هو وظيفة للتنبيه ما إذا كانت عملية الحفظ قد فشلت.

تم ارجاع رسائل الأخطاء:

INVALID_ATTRIBUTES: لم يتم إرسال سمات

SESSION_EXPIRED: انتهت صلاحية جلسة الزائر الحالية

SERVER_ERROR: خطأ داخلي في الخادم

ACCESS_ERROR: خطأ في الوصول إلى الصفحة

ATTRIBUTE_LIMIT_EXCEEDED: إجمالي السمات المخصصة (باستثناء الاسم والبريد الإلكتروني والتجزئة) هو 50

CONTAINS_INVALID_KEY: المفتاح المخصص ليس أبجديًا رقميًا أو خط فاصل (سيتم كتابة المفاتيح بأحرف صغيرة)

CONTAINS_INVALID_VALUE: القيمة المخصصة فارغة أو أن الطول الإجمالي يزيد عن 255 حرفًا)

 

Tawk_API.setAttributes(attributes, callback);

//Example

Tawk_API.onLoad = function(){
    Tawk_API.setAttributes({
        'id'    : 'A1234',
        'store' : 'Midvalley'
    }, function(error){});
};


//Example for setting name and email

Tawk_API.onLoad = function(){
    Tawk_API.setAttributes({
        'name'  : 'Name',
        'email' : 'email@email.com',
        'hash'  : 'hash value'
    }, function(error){});
}

قم بتعيين حدث();

قم بتعيين حدث مخصص للدردشة.

تأخذ هذه الوظيفة 3 قيم ؛ اسم الحدث ، وبيانات وصفية اختيارية ووظيفة رد الاتصال.

 اسم الحدث من نوع بيانات السلسلة ويمكن أن يحتوي فقط على أحرف أبجدية رقمية و “-” (خط فاصل)

سيتم استدعاء رد الاتصال الذي هو وظيفة للتنبيه ما إذا كان الحفظ قد فشل.


INVALID_EVENT_NAME, INVALID_ATTRIBUTES, ATTRIBUTE_LIMIT_EXCEEDED, CONTAINS_INVALID_KEY, CONTAINS_INVALID_VALUE, SESSION_EXPIRED, SERVER_ERROR

Tawk_API.addEvent(eventName, metadata, callback);

//Example

Tawk_API.onLoad = function(){
    Tawk_API.addEvent('requested-quotation', function(error){});

    Tawk_API.addEvent('product-add-to-cart', {
        'sku'    : 'A0012',
        'name'  : 'Jeans',
        'price' :'50'
    }, function(error){});
};

اضف علامات();

أضف علامات إلى الدردشة

تأخذ هذه الوظيفة قيمتين ؛ العلامات والرد

هذا من نوع بيانات صفيف.

يجب أن يكون محتوى العلامات من نوع البيانات String.

العدد الإجمالي للعلامات هو 10.

سيتم استدعاء رد الاتصال الذي هو وظيفة للتنبيه ما إذا كان الحفظ قد فشل

INVALID_TAGS, TAG_LIMIT_EXCEEDED, VERSION_CONFLICT, SESSION_EXPIRED, SERVER_ERROR

Tawk_API.addTags(tags, callback);

//Example

Tawk_API.onLoad = function(){
    Tawk_API.addTags(['hello', 'world'], function(error){});
};

إزالة العلامات ();

إزالة العلامات من الدردشة

تأخذ هذه الوظيفة قيمتين ؛ العلامات والرد

هذا من نوع بيانات صفيف.

يجب أن يكون محتوى العلامات من نوع البيانات المتسلسلة.

سيتم استدعاء رد الاتصال الذي هو وظيفة للتنبيه ما إذا كان الحفظ قد فشل.


INVALID_TAGS, TAG_LIMIT_EXCEEDED, SESSION_EXPIRED, SERVER_ERROR

Tawk_API.removeTags(tags, callback);

//Example

Tawk_API.onLoad = function(){
    Tawk_API.removeTags(['hello', 'world'], function(error){});
};

وضع آمن

الطريقة الآمنة هي التأكد من أن البيانات التي ترسلها هي في الواقع منك.

 

لتمكين الوضع الآمن ، قم بتضمين التعليمات البرمجية التالية على صفحتك.

 

التجزئة عبارة عن HMAC تم إنشاؤه من جانب الخادم ، باستخدام SHA256 ،و باستخدام البريد الإلكتروني ومفتاح واجهة برمجة التطبيقات لموقعك.

 

يمكنك الحصول على مفتاح API الخاص بك من المشرف-> إعدادات الموقع.

Tawk_API = Tawk_API || {};
Tawk_API.visitor = {
    name  : 'Name',
    email : 'email@email.com',
    hash  : '<calculate-hash>'
};

// Here is an example showing how you could do it using PHP

Tawk_API = Tawk_API || {};
Tawk_API.visitor = {
    name  : '<?php echo $user->name; ?>',
    email : '<?php echo $user->email; ?>',
    hash  : '<?php echo hash_hmac("sha256", $user->email, "<API-KEY>"); ?>'
};