پرش به مطلب اصلی

توابع

در MonoChat، قابلیت مدیریت توابع به کاربران امکان می‌دهد توابع سفارشی بسازند و مدیریت کنند و آن‌ها را در جریان‌های مختلف به‌کار ببرند. این توابع می‌توانند منطق کسب‌وکار مشخصی را اجرا کنند، با سرویس‌های خارجی تعامل داشته باشند و حتی نماها یا مجموعه‌های سفارشی ایجاد کنند. این قابلیت قدرتمند به کسب‌وکارها اجازه می‌دهد گردش‌کارهای اتوماسیون و تعامل خود را متناسب با نیازهای منحصربه‌فردشان تنظیم کنند.

اطلاع

تعریف، به‌روزرسانی و ایجاد توابع فقط توسط کاربرانی با مجوزهای ویژه در فضای کاری شما انجام می‌شود.
اگر مجوز لازم را نداشته باشید، نمی‌توانید این عملیات را ببینید یا تغییر دهید.

اگر به قابلیت‌های مدیریت توابع نیاز دارید، برای درخواست یا به‌روزرسانی مجوزهایتان با پشتیبانی تماس بگیرید.


پردازش رویدادهای پیچیده​

قابلیت جریان در MonoChat بر پایه اصول پیشرفته پردازش رویدادهای پیچیده (CEP) ساخته شده است. CEP به سامانه اجازه می‌دهد الگوهای رویداد را به‌صورت لحظه‌ای تحلیل کند و به آن‌ها واکنش نشان دهد و به این ترتیب امکان خودکارسازی فرایندهای پیچیده کسب‌وکار فراهم می‌شود. با MonoChat، کسب‌وکارها می‌توانند از CEP برای ساخت جریان‌های پیشرفته‌ای استفاده کنند که به رویدادهای مختلف پاسخ می‌دهند، اقدام‌ها را فعال می‌کنند و به‌طور یکپارچه با سامانه‌های خارجی کار می‌کنند.

رابط مدیریت توابع​

رابط مدیریت توابع در MonoChat محیطی کاربرپسند برای ایجاد، به‌روزرسانی و مدیریت توابع سفارشی فراهم می‌کند. اجزای کلیدی و کارکرد آن‌ها این‌هاست:

توابع در تنظیمات

ایجاد تابع​

  1. نام: نام تابع را وارد کنید.
  2. خروجی‌ها: خروجی‌های تابع را تعریف کنید.
  3. انتخابگر تابع: یک تابع موجود را انتخاب کنید یا تابع جدیدی بسازید.
  4. نوع تابع: نوع تابع را از گزینه‌های موجود انتخاب کنید، مانند Cron Job، API Endpoint، راه‌اندازی برنامه سفارشی یا گره فلو سفارشی.

انواع تابع​

  1. گره فلو سفارشی:
    گره فلو سفارشی یک بلوک سازنده در سامانه اتوماسیون یا گردش‌کار است که به شما امکان می‌دهد اقدام‌ها یا مراحل شخصی‌سازی‌شده بسازید. به‌جای استفاده از گره‌های از پیش تعریف‌شده، گره خودتان را می‌سازید تا منطق مشخصی را اجرا کند، با سامانه‌های دیگر یکپارچه شود یا عملیات منحصربه‌فردی را داخل یک جریان انجام دهد.

  2. متد سمت سرور:
    متد سمت سرور تابع یا روالی است که روی سرور اجرا می‌شود، نه روی دستگاه کاربر (سمت کلاینت). فرایندهای پشتیبان مانند کوئری‌های پایگاه داده، منطق کسب‌وکار یا یکپارچه‌سازی با سرویس‌های دیگر را انجام می‌دهد و عملیاتی امن و کارآمد را تضمین می‌کند.

  3. نمای سفارشی:
    نمای سفارشی یک رابط یا صفحه نمایش متناسب است که برای نمایش داده یا اطلاعات به شکلی که با نیازهای مشخص کاربر سازگار باشد طراحی می‌شود. امکان سفارشی‌سازی چیدمان، فیلدها و اجزا را می‌دهد تا تجربه کاربری متمرکزی متفاوت از نماهای پیش‌فرض ارائه شود.

  4. ابزار AI:
    ابزار AI یک مؤلفه یا قابلیت نرم‌افزاری است که از هوش مصنوعی برای انجام کارهایی مانند تحلیل داده، پردازش زبان طبیعی، تشخیص تصویر یا اتوماسیون استفاده می‌کند. با افزودن قابلیت‌های هوشمند مانند پیش‌بینی، توصیه یا اتوماسیون، گردش‌کارها را بهبود می‌دهد.

  5. Cron Job: Cron Job یک کار زمان‌بندی‌شده است که به‌طور خودکار در فواصل یا زمان‌های مشخص روی سرور اجرا می‌شود. اغلب برای کارهای تکراری مانند ارسال ایمیل، پاک‌سازی پایگاه داده، تولید گزارش یا همگام‌سازی داده بدون دخالت دستی استفاده می‌شود.

  6. راه‌اندازی برنامه سفارشی:
    راه‌اندازی برنامه سفارشی به فرایند پیکربندی و استقرار یک برنامه شخصی‌سازی‌شده متناسب با نیازهای مشخص کسب‌وکار اشاره دارد. این شامل تنظیم اجزای برنامه، مجوزها، یکپارچه‌سازی‌ها و رابط‌های کاربری برای ایجاد یک راه‌حل منحصربه‌فرد داخل یک پلتفرم است.

به‌روزرسانی تابع​

صفحه به‌روزرسانی تابع به شما اجازه می‌دهد توابع موجود را تغییر دهید. می‌توانید کد را به‌روزرسانی کنید، نوع را تغییر دهید و تنظیمات دیگر را در صورت نیاز تنظیم کنید.

نماهای سفارشی و مجموعه‌ها​

MonoChat از نماهای سفارشی و مجموعه‌های سفارشی پشتیبانی می‌کند و به کسب‌وکارها اجازه می‌دهد رابط‌های متناسب بسازند و پایگاه‌های داده خودشان را مدیریت کنند.

  • نمای سفارشی: این نوع تابع امکان ایجاد صفحه‌های ویژه داخل MonoChat را فراهم می‌کند. این صفحه‌ها می‌توانند داده‌های سرویس‌های خارجی یا مجموعه‌های سفارشی را نمایش دهند و رابطی منحصربه‌فرد برای نیازهای مشخص کسب‌وکار ارائه کنند.
  • مجموعه‌های سفارشی: این‌ها به کسب‌وکارها اجازه می‌دهند ساختارهای داده خودشان را تعریف کنند و داده‌های سفارشی را در MonoChat ذخیره کنند. این قابلیت به‌ویژه برای کسب‌وکارهایی مفید است که باید اطلاعات تخصصی‌ای را مدیریت کنند که در قابلیت‌های پیش‌فرض MonoChat پوشش داده نشده است.

تنظیمات و خروجی‌ها برای توابع گره فلو سفارشی​

یک تابع گره فلو سفارشی می‌تواند تنظیماتی را که هر گره استفاده‌کننده از آن می‌گیرد و خروجی‌هایی را که می‌تواند روی آن‌ها ادامه یابد توصیف کند. سپس نویسنده جریان به‌جای ویرایش کد، فرمی را روی گره پر می‌کند و یک تابع را می‌توان در گره‌های بسیار با تنظیمات متفاوت دوباره استفاده کرد.

وقتی نوع تابع گره فلو سفارشی باشد، کشوهای ایجاد و به‌روزرسانی یک ویرایشگر JSON نشان می‌دهند به نام تنظیمات و خروجی‌های گره (JSON):

{
"description": "Routes the conversation to a team based on the selected department.",
"descriptions": { "tr-TR": "Seçilen departmana göre konuşmayı bir ekibe yönlendirir." },
"parameters": [
{ "name": "department", "type": "select", "label": "Department", "labels": { "tr-TR": "Departman" }, "required": true,
"options": [ { "value": "sales", "label": "Sales" }, { "value": "support", "label": "Support" } ] },
{ "name": "maxWaitMinutes", "type": "number", "label": "Max wait (minutes)", "default": 10 },
{ "name": "notifyManager", "type": "boolean", "label": "Notify the manager" }
],
"outputs": [
{ "key": "assigned", "label": "Assigned", "labels": { "tr-TR": "Atandı" } },
{ "key": "noAgent", "label": "No agent available" }
]
}
کلیدتوضیحات
description / descriptionsمتنی که بالای کشوی گره نمایش داده می‌شود. descriptions ترجمه‌ها را بر اساس locale نگه می‌دارد (مثلاً en-US، tr-TR)؛ description مقدار جایگزین است.
parametersتنظیمات گره. هر کدام یک name (کلیدی که کد شما می‌خواند)، یک type (text، textarea، url، number، boolean یا select)، یک label / labels، یک description / descriptions اختیاری (به‌صورت placeholder فیلد نمایش داده می‌شود)، required، default و برای select مقدار options (value و label / labels) دارند.
outputsکلیدهای خروجی که تابع می‌تواند برگرداند، هر کدام با یک label / labels.

در طراح جریان، وقتی گره گره فلو سفارشی را (زیر گره‌های تابع) اضافه می‌کنید و در تابع این تابع را انتخاب می‌کنید، کشو توضیحات، یک فیلد برای هر پارامتر (پر شده با مقدار پیش‌فرض) را نشان می‌دهد و خروجی‌ها را با کلیدها و برچسب‌های تعریف‌شده پر می‌کند. مقادیر روی گره ذخیره می‌شوند.

در تابع، مقادیر به‌صورت payload.nodeParameters و خروجی‌های گره به‌صورت payload.nodeOutputs (key و label هر کدام) می‌رسند. با یک کلید خروجی resolve کنید تا روی آن خروجی ادامه یابد:

CustomFunction(async function ({ sdk, payload }, reject, resolve) {
const { department, maxWaitMinutes, notifyManager } = payload.nodeParameters

// ... your logic ...

resolve('assigned')
})

اگر تابع با کلیدی resolve شود که گره خروجی‌ای برای آن ندارد، جریان روی در سایر خروجی‌ها ادامه می‌یابد؛ اگر خطا پرتاب کند، روی در صورت شکست.

نکته

برنامه‌هایی که از فروشگاه نصب می‌کنید هنگام به‌روزرسانی شناسه توابع خود را حفظ می‌کنند، بنابراین گره‌های تابع و ابزارهای AI که روی توابع یک برنامه ساخته‌اید پس از به‌روزرسانی همچنان کار می‌کنند.

ساختار پوشه‌های تو در تو​

مدیریت توابع در MonoChat از ساختار پوشه‌های تو در تو پشتیبانی می‌کند که استفاده از آن ساده است. کاربران می‌توانند میان پوشه‌ها و زیرپوشه‌های مختلف حرکت کنند تا توابع خود را به‌طور سیستماتیک سازمان‌دهی کنند. این ساختار مدیریت بهتر و دسترسی آسان به توابع مشخص را در پوشه موردنظر ممکن می‌کند.

موارد استفاده​

منطق کسب‌وکار​

  • منطق سفارشی: قوانین مشخص کسب‌وکار و منطق تخصصی را برای فرایندهای منحصربه‌فرد پیاده‌سازی کنید، مانند محاسبه تخفیف، پردازش سفارش‌ها، اعتبارسنجی یا محاسبات سفارشی. این کار به کسب‌وکارها اجازه می‌دهد گردش‌کارها و اتوماسیون را با نیازهای خاص خود تطبیق دهند.

یکپارچه‌سازی با سرویس‌های خارجی​

  • یکپارچه‌سازی API: endpointهای API ایجاد کنید تا برنامه‌های خارجی بتوانند به داده‌های MonoChat دسترسی داشته باشند و آن‌ها را بازیابی کنند. این کار یکپارچه‌سازی روان با سرویس‌های شخص ثالث مانند سامانه‌های CRM، درگاه‌های پرداخت یا پلتفرم‌های تحلیل داده را ممکن می‌کند و جریان داده و تعامل‌پذیری را تضمین می‌کند.
  • همگام‌سازی داده: همگام‌سازی داده میان MonoChat و سامانه‌های دیگر را خودکار کنید تا سازگاری و دقت حفظ شود و همه پلتفرم‌ها به‌روز و هم‌راستا باشند.

رابط‌های سفارشی​

  • رابط‌های سفارشی: داشبوردها یا فرم‌های ورود داده متناسب با نیازهای مشخص کسب‌وکار بسازید. این کار رابطی شخصی‌سازی‌شده برای کارشناسان و کارکنان فراهم می‌کند و قابلیت استفاده و کارایی را بالا می‌برد.

مدیریت داده​

  • مدیریت داده: مجموعه‌های سفارشی تعریف کنید تا داده‌های منحصربه‌فرد کسب‌وکار را ذخیره و مدیریت کنید. این کار به سازمان‌دهی و نگهداری اطلاعات مهم کمک می‌کند و دسترسی و گزارش‌گیری آسان را ممکن می‌سازد.

اتوماسیون زمان‌بندی‌شده​

  • اتوماسیون زمان‌بندی‌شده: از cron jobها برای خودکارسازی کارهای روتین مانند تولید گزارش یا به‌روزرسانی‌های منظم سامانه استفاده کنید. این کار تضمین می‌کند کارهای ضروری بدون دخالت دستی به‌موقع انجام شوند و کارایی عملیاتی بهبود یابد.

ابزارهای AI​

  • ابزارهای AI: از قابلیت‌های هوش مصنوعی مانند پردازش زبان طبیعی، تحلیل پیش‌بینی‌کننده یا اتوماسیون برای بهبود تصمیم‌گیری و ساده‌سازی گردش‌کارها استفاده کنید. ابزارهای AI به کسب‌وکارها کمک می‌کنند کارهای پیچیده را خودکار کنند، از داده‌ها بینش بگیرند و تجربه‌های کاربری هوشمندتری ارائه دهند.

قابلیت مدیریت توابع در MonoChat ابزاری همه‌کاره است که به کسب‌وکارها امکان می‌دهد گردش‌کارهای اتوماسیون خود را به‌طور گسترده سفارشی کنند. با استفاده از توابع، نماها و مجموعه‌های سفارشی، کسب‌وکارها می‌توانند مطمئن شوند محیط MonoChat آن‌ها کاملاً با نیازهای عملیاتی‌شان هم‌خوان است.

اطلاع

برای جزئیات بیشتر درباره نحوه ایجاد رویدادهای سفارشی، صفحه مستندات SDK را ببینید!