راهنمای آناما
دسته‌ها

ساخت قانون و پایش اجرای اتوماسیون

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

استودیوی اتوماسیون در ماژول /panel/erp/automation برای ساخت قانونی است که پس از رخداد مشخصی اجرا می‌شود، داده را با شرط‌ها می‌سنجد و یک یا چند اقدام را پشت‌سرهم انجام می‌دهد. مدل سادهٔ آن «رویداد → شرط → اقدام» است. برای نمونه، وقتی پیام ورودی اینستاگرام به سیستم می‌رسد، می‌توانید فقط اگر با قاعدهٔ موردنظر سازگار بود سرنخ فروش بسازید و به کارشناس اعلان بفرستید. قانون خودکار جای بررسی انسانی برای تخفیف، پاسخ حساس یا تغییر مالی را نمی‌گیرد؛ دامنهٔ عمل را کوچک و قابل ردیابی انتخاب کنید.

این ماژول Beta است. استودیو رویدادهای آغاز، منابع و فیلدهای قابل استفاده، اقدام‌های پشتیبانی‌شده، نسخه‌های قانون، اجراها و صف رویدادها را از سامانه دریافت می‌کند. فهرست قابل انتخاب را معیار قابلیت واقعی همین حساب قرار دهید؛ از روی نام یک ماژول فرض نکنید رویداد یا اقدام آن برای همهٔ فروشگاه‌ها فعال است.

پیش از ساخت قانون

از بخش اتوماسیون ERP استودیو را باز و زبانهٔ «قانون‌ساز» را انتخاب کنید. نام ماژول مرتبط را مشخص کنید و فهرست «رویداد شروع» را بخوانید. هر رویداد یک نام و کلید داده‌های قابل استفاده دارد؛ این کلیدها تعیین می‌کنند در شرط یا قالب پیام چه اطلاعاتی در دسترس است. اگر رویداد موردنظر وجود ندارد، قانون مشابه با trigger دیگری نسازید؛ ابتدا در فهرست رویدادهای فعال و دسترسی ماژول بررسی کنید.

پیش از انتشار، این چهار مورد را روشن کنید: چه اتفاقی قانون را شروع می‌کند؟ چه رکوردهایی باید از آن عبور کنند؟ اقدام دقیقاً چه تغییری ایجاد می‌کند؟ اگر قانون دوبار برای یک رویداد اجرا شود، پیام، کد تخفیف یا تغییر منبع چه پیامدی دارد؟ اقدام‌هایی که به مشتری پیام می‌فرستند یا فیلد رکورد را تغییر می‌دهند اثر مستقیم دارند؛ آن‌ها را ابتدا روی دادهٔ کم‌خطر و مخاطب داخلی بررسی کنید.

ساخت قانون در زبانهٔ «قانون‌ساز»

  1. نام قانون: نامی مثل «ثبت سرنخ پیام جدید» انتخاب کنید که رویداد و نتیجه را روشن کند. نام‌های «قانون ۱» یا «جدید» در گزارش اجراها قابل تشخیص نیستند.
  2. ماژول: بخشی را انتخاب کنید که رویداد و اقدام به آن مربوط است. منابع و گزینه‌های شرط با ماژول انتخاب‌شده ارتباط دارند.
  3. رویداد شروع: یک trigger از فهرست موجود انتخاب کنید. پس از انتخاب، کلیدهایی که payload آن رویداد می‌دهد نمایش داده می‌شوند؛ نام این کلیدها را برای شرط‌ها دقیق نگه دارید.
  4. شرط‌ها: با «شرط» ردیف اضافه کنید. کلید داده، عملگر و مقدار را وارد کنید. عملگرهای قابل نمایش در این سازنده شامل برابر/نابرابر، بزرگ‌تر یا کوچک‌تر مساوی، عضو/غیرعضو مجموعه، شامل، شامل با نادیده‌گرفتن حروف، شروع‌شونده و پایان‌یابنده با متن و الگوی منظم است. برای in و not_in چند مقدار را با ویرگول جدا کنید. مقدارهای true و false و اعداد به شکل بولی و عددی تفسیر می‌شوند؛ متن را دقیق با payload رویداد هماهنگ کنید.
  5. اقدام‌ها: دست‌کم یک اقدام اضافه کنید. هر اقدام پیکربندی خودش را دارد و ترتیب قرارگرفتن کارت‌ها همان ترتیب اجرا را مشخص می‌کند.
  6. ذخیره یا انتشار: ذخیرهٔ پیش‌نویس برای ادامهٔ ویرایش است؛ «انتشار نسخهٔ جدید» نسخه‌ای قابل اجرا می‌سازد. قبل از انتشار، نام، trigger، شرط و اقدام‌ها را یک دور از ابتدا بخوانید.

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

اقدام‌هایی که استودیو در حال حاضر می‌شناسد

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

  • اعلان به کاربر: گیرنده، عنوان، متن، نوع و نشانی مقصد را تعیین کنید. گیرنده می‌تواند کاربر انتخاب‌شده یا کاربر رویداد باشد. متن اعلان را به‌گونه‌ای بنویسید که حساسیت یا اطلاعات خصوصی بیش از نیاز را نشان ندهد.
  • ساخت فعالیت CRM: مسئول، عنوان فعالیت، نوع و توضیح را وارد کنید. از این اقدام برای ساخت پیگیری استفاده کنید؛ مطمئن شوید رویداد به مشتری یا فرصت درست قابل پیوند است.
  • ساخت سرنخ کانال: منبع، امتیاز و یادداشت را تنظیم کنید. امتیاز پیش‌فرض ۲۵ است؛ این امتیاز را احتمال خرید قطعی تلقی نکنید و آن را با معیار تیم فروش هماهنگ کنید.
  • صدور کد تخفیف: نوع و مقدار تخفیف، مدت اعتبار، پیشوند کد و در صورت نیاز سقف تخفیف یا حداقل مبلغ سفارش را تعیین کنید. پیش از انتشار اثر صدور خودکار روی بودجه و انباشت کدها را بررسی کنید؛ قانونِ بدون شرط ممکن است تعداد زیادی کد بسازد.
  • پاسخ یا پیام اینستاگرام: پاسخ عمومی، پاسخ خصوصی یا پیام را با متن مشخص می‌کنید. پیش از انتشار، اتصال حساب و محدودیت‌های پیام‌رسانی را بررسی کنید و متن خودکار را برای سؤال‌های حساس یا درخواست لغو سفارش مناسب ندانید.
  • پاسخ هوش مصنوعی اینستاگرام: هدف پاسخ، ارائه‌دهنده و دستورالعمل را انتخاب کنید. خروجی می‌تواند نیازمند بازبینی باشد؛ ادعاهای مربوط به قیمت، موجودی، سیاست بازگشت یا پرداخت را بدون منبع معتبر و کنترل انسانی خودکار منتشر نکنید.
  • به‌روزرسانی فیلد منبع: منبع، رکورد و فیلد هدف را انتخاب و مقدار ثابت یا مقدار برداشته‌شده از رویداد را تعیین کنید. فقط فیلدی را تغییر دهید که در این رویداد و نقش اتوماسیون مجاز است؛ اصلاح دادهٔ نامرتبط می‌تواند گزارش و گردش بعدی را عوض کند.
  • قرار دادن کار اتصال در صف: نگاشت و مقصد بیرونی را انتخاب کنید تا job اتصال پردازش شود. این اقدام به معنی موفق‌شدن سرویس بیرونی نیست؛ نتیجه را در وضعیت کار و گزارش رویداد بررسی کنید.

نام گزینه‌ها و پیکربندی ممکن است به اتصال‌ها یا مجوزهای فعال فروشگاه وابسته باشد. اگر action انتخابی در UI ظاهر نمی‌شود، به‌جای ساخت آن به شکل JSON دلخواه، اتصال و فهرست node_types/اقدام‌های در دسترس را با مسئول سامانه بررسی کنید.

تست، انتشار و نسخه‌ها

در زبانهٔ «قوانین»، فهرست نام، ماژول، رویداد، وضعیت، شمار اجرا، آخرین زمان و خطای آخر را می‌بینید. پیش از فعال‌کردن قانون، اگر گزینهٔ «آزمایش» وجود دارد از آن برای بررسی تطبیق استفاده کنید و نتیجه را در اجرای ثبت‌شده بخوانید. تست قواعد trigger و شرط را بررسی می‌کند؛ الزاماً اثر واقعی همهٔ actionها را روی سرویس خارجی ثابت نمی‌کند.

«انتشار نسخهٔ جدید» نسخه‌ای جدا و قابل بازگردانی می‌سازد. نسخهٔ منتشرشده را مستقیم مانند پیش‌نویس ویرایش نکنید؛ در صورت تغییر، نسخهٔ تازه منتشر کنید تا تاریخچهٔ checksum و زمان انتشار باقی بماند. قانون منتشرشده را می‌توان فعال یا متوقف کرد. توقف اجراهای آینده را متوقف می‌کند، اما نتیجهٔ اجراهای گذشته یا صف رویداد موجود را حذف نمی‌کند. اگر یک نسخه مشکل دارد، نسخهٔ سالم قبلی را از سابقه بازگردانید و وضعیت فعال را پس از بارگذاری دوباره کنترل کنید.

خواندن اجراها و صف رویداد

زبانهٔ «اجراها» برای هر مورد قانون، کلید رویداد، وضعیت، زمان شروع/پایان، اینکه شرط‌ها match شده‌اند یا رد شده‌اند و متن خطا را نشان می‌دهد. matched یعنی اجرای قانون با شرط‌ها منطبق شده؛ skipped می‌تواند به معنی ردشدن شرط باشد، نه لزوماً نقص سامانه. برای اجرای ناموفق، trigger، کلید رویداد و متن خطا را نگه دارید و ببینید خطا در کدام action رخ داده است.

در بخش رویدادهای ارسال، تعداد تلاش، زمان تلاش بعدی و خطای آخر دیده می‌شود. برای رویداد ناموفق، ابتدا علت را اصلاح کنید؛ سپس «تلاش مجدد» را بزنید. اگر رویداد دیگر نباید پردازش شود، «صرف‌نظر/حذف از صف» را فقط با دلیل عملیاتی انتخاب کنید. retry ممکن است actionهای غیرایده‌مپوتنت را دوباره انجام دهد؛ پیش از آن بررسی کنید پیام، کد تخفیف یا فعالیت قبلاً ساخته نشده باشد.

اگر اجرای قانون نیازمند تصمیم انسانی باشد، مورد تأیید با نام قانون، دستورالعمل، مسئول، مهلت و وضعیت در همان زبانه نمایش داده می‌شود. تأیید یا رد را بعد از خواندن زمینهٔ رویداد ثبت کنید؛ این تصمیم با موفقیت اجرای همهٔ اقدام‌های بعدی یکی نیست.

یک مثال واقعی: پیام اینستاگرام تا ساخت سرنخ

فرض کنید می‌خواهید پیام‌های واجد شرایط یک حساب فروش را برای پیگیری تیم ثبت کنید. ابتدا رویداد شروع پیام ورودی را از فهرست trigger انتخاب می‌کنید و payload قابل استفاده را مرور می‌کنید. شرط می‌گذارید فقط پیام‌هایی که واژه یا نوع مشخصی دارند عبور کنند، مشروط بر اینکه همان فیلد واقعاً در رویداد موجود باشد. اقدام نخست یک سرنخ با منبع اینستاگرام و یادداشت کوتاه می‌سازد؛ اقدام دوم به مسئول فروش اعلان می‌فرستد. قانون را با پیام آزمایشی بررسی می‌کنید، نتیجهٔ اجرا و رکورد سرنخ را باز می‌کنید و مطمئن می‌شوید شرط برای پیام نامرتبط match نشده است. سپس نسخه را منتشر و فعال می‌کنید و در روز اول صف خطا و رکوردهای تکراری را کنترل می‌کنید. پاسخ خودکار به مشتری را جداگانه و فقط با متن تأییدشده اضافه کنید.

عیب‌یابی بدون ایجاد اجرای تکراری

  • قانون اجرا نمی‌شود: وضعیت فعال قانون، trigger انتخاب‌شده و وقوع همان رویداد در گزارش را بررسی کنید.
  • اجرا skipped است: کلیدها و مقدارهای شرط را با payload رویداد مقایسه کنید؛ تفاوت حروف، نوع عدد/متن یا کلید اشتباه باعث عدم تطبیق می‌شود.
  • اقدام خطا می‌دهد: مشخص کنید کدام اقدام خطا دارد، سپس اتصال، مجوز یا فیلد ضروری همان اقدام را بررسی کنید.
  • رویداد دوباره در صف است: شمار تلاش، next_attempt_at و خطای آخر را بخوانید. پیش از retry اثر قبلی را در CRM یا اینستاگرام کنترل کنید.
  • تغییر منتشرشده اثر ندارد: مطمئن شوید نسخه فعال است و از آن پس رویداد تازه‌ای رخ داده؛ تغییر نسخه گذشته را از نو اجرا نمی‌کند.
  • مقدار اشتباهی روی رکورد نوشته شد: فوراً قانون را متوقف کنید، منبع و شناسه رکوردهای تحت‌تأثیر را پیدا کنید و اصلاح را با سابقه در خود منبع انجام دهید. قانون را بدون تحلیل علت دوباره فعال نکنید.

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

این راهنما مفید بود؟بازخورد شما به بهترشدن راهنما کمک می‌کند.
ارسال بازخورد