البدء
Integration overview
خلفية واحدة، لكل منصة — ادمجها مرة واحدة، وتبقى محدّثة دائمًا.
AskAIs Customer Service هو خلفية واحدة مع العديد من حِزم تطوير العميل (SDK). تُعدّ مساحة العمل الخاصة بك مرة واحدة، ثم تدمج الدردشة في أي مكان — موقع ويب، أو تطبيق جوّال، أو أي خدمة خلفية. كل عميل يتواصل مع نفس صندوق الوارد، ووكيل الذكاء الاصطناعي، وقاعدة المعرفة.
خلفية واحدة، لكل منصة
مهما كانت المنصة التي تستخدمها، فإن التثبيت قصير، كما أن المحادثة وجهة الاتصال وردود الذكاء الاصطناعي والإعدادات كلها مشتركة. إليك كيفية تثبيت كل منصة — والأهم — كيف تحصل على التحديثات المستقبلية:
المنصات في لمحة
| المنصة | التثبيت | كيف تُحدَّث |
|---|---|---|
| موقع ويب | <script src="…/widget.js"> | تلقائيًا — كل تحميل للصفحة يجلب أحدث إصدار |
| iOS (Swift) | Swift Package / CocoaPods | ارفع إصدار الـ SDK، وأصدر نسخة جديدة من التطبيق |
| Android (Kotlin) | Gradle | ارفع إصدار الـ SDK، وأصدر نسخة جديدة من التطبيق |
| Flutter | pub | ارفع إصدار الـ SDK، وأصدر نسخة جديدة من التطبيق |
| React Native | npm | ارفع إصدار الـ SDK، وأصدر نسخة جديدة من التطبيق |
| أي خلفية | REST API / OpenAPI | خدمتك الخاصة — متى ما نشرتها |
هل جميع حِزم الـ SDK متوافقة؟
نعم. إنها أبواب أمامية مختلفة لنفس مساحة عمل AskAIs Customer Service، لذا فهي متوافقة تمامًا فيما بينها:
- نفس الخلفية، نفس الـ app-id: كل عميل يتصل بنفس صندوق الوارد في مساحة عملك.
- زائر واحد عبر الأجهزة: عرّفه بنفس externalId لتستكمل دردشة بدأت على الويب داخل تطبيقك.
- إعدادات مشتركة: يُضبَط وكيل الذكاء الاصطناعي وقاعدة المعرفة وساعات العمل وردود الكلمات المفتاحية والأسئلة الشائعة مرة واحدة وتنطبق على كل قناة.
الويب — التضمين الرسمي (موصى به)
أضف هذا السطر الواحد قبل </body>. هذا هو التثبيت بأكمله. الـ app-id عام وآمن للنشر؛ انسخه من Settings → Inboxes.
<script src="https://cs.askais.com/widget.js"
data-app-id="YOUR_APP_ID"
data-base-url="https://cs.askais.com"
async></script>⚠️ لا تنزّل widget.js أو تستضِفه بنفسك
حمّل الأداة دائمًا من https://cs.askais.com/widget.js. إذا نزّلت الملف واستضفته بنفسك، أو دمجته في حزمتك الخاصة، فإنك تجمّده عند إصدار واحد — ولن تصلك أبدًا تحديثات النمط المستقبلية وإصلاحات الأخطاء والميزات الجديدة. عند تحميلها من cs.askais.com، تُحدّث الأداة نفسها تلقائيًا؛ ولا تغيّر أنت أي شيء.
تحكّم بها من صفحتك (اختياري)
بعد تحميل السكربت، يصبح كائن عام window.SingChat متاحًا:
// Open / close the widget
window.SingChat.open();
window.SingChat.close();
// Identify a logged-in user (so chats follow them across devices)
window.SingChat.identify({ externalId: "user_123", name: "Ada", email: "ada@acme.com" });تطبيقات الجوّال (iOS / Android / Flutter / React Native)
تُدمَج حِزم الـ SDK الأصلية داخل تطبيقك، لذا فهي لا تُحدَّث تلقائيًا مثل أداة الويب. للحصول على إصدار جديد، ارفع إصدار الـ SDK في مدير الحزم لديك وأصدر نسخة جديدة من التطبيق. فكرة التهيئة واحدة في كل مكان — وجّهها إلى https://cs.askais.com وعرّف باستخدام الـ app-id الخاص بك:
// Swift Package Manager
.package(url: "https://github.com/singlink/singlink-ios", from: "0.1.0")
let client = SingChatClient(baseURL: "https://cs.askais.com")
try await client.identify(.deviceAnonymous(appId: "YOUR_APP_ID"))أي خلفية أو لغة
لا حاجة إلى SDK — استدعِ الـ REST API مباشرة لتعريف جهة اتصال وإرسال الرسائل واستقبالها. كما ننشر حِزم SDK مُولّدة من مواصفة OpenAPI الخاصة بنا لأكثر من 30+ لغة.
# Any backend / language — talk to the REST API directly
curl -X POST https://cs.askais.com/api/v1/auth/identify \
-H 'Content-Type: application/json' \
-d '{"appId":"YOUR_APP_ID","externalId":"user_123"}'