---
url: https://docs.ogmabox.com/fa/app/workflows.md
description: >-
  گردش‌های کار قابل استفادهٔ مجدد Ogma برای پردازش پسیو، اقدامات فعال و تبدیل
  داده بسازید.
---

# گردش‌های کار {#workflows}

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

## انواع گردش کار {#workflow-types}

| نوع | عامل اجرا | کاربرد رایج |
|------|-------------|------------|
| پسیو | ترافیک جدید ثبت‌شده | علامت‌گذاری الگوهای جالب، برچسب‌گذاری درخواست‌ها، ایجاد خودکار یافته‌ها. |
| فعال | اجرای دستی | ارسال درخواست پیگیری، زنجیره‌کردن اقدامات، اجرای آزمون چندمرحله‌ای. |
| تبدیل | ورودی آزمون، اقدامات تبدیل یا تطبیق و جایگزینی | تبدیل متن یا بایت، مانند قالب‌بندی JavaScript یا یکدست‌کردن JSON. |

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

## بوم گردش کار {#the-workflow-canvas}

**گردش‌های کار** را باز کنید و گردش کاری انتخاب کنید تا بوم آن باز شود.

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

## انواع گره {#node-types}

| گره | توضیحات |
|------|-------------|
| شروع / پایان | گره‌های ورود و خروج مناسب نوع پسیو، فعال یا تبدیل گردش کار. |
| شرایط | اگر / وگرنه، اگر / وگرنه JS، تطبیق HTTPQL، تطبیق محدوده، شامل‌رشته و تطبیق عبارت منظم. |
| کدگذاری | کدگذاری و کدگشایی Base64، URL، هگز و HTML. |
| قالب‌بندی و هش | کوچک‌سازی یا قالب‌بندی JSON، MD5، SHA-1 و SHA-256. |
| عملیات متن | حذف فاصله‌های کناری، پیوند، تقسیم، تطبیق و جایگزینی، تبدیل JQ و استخراج Grep. |
| JavaScript | منطق سفارشی با SDK گردش کار؛ می‌تواند ترافیک بخواند، روی فایل‌ها کار کند و یافته بسازد. |
| یکپارچه‌سازی | گزارش، Webhook، فراخوانی گردش کار، ارسال درخواست و قاعدهٔ تطبیق و جایگزینی. |

برای درگاه‌ها و پیکربندی واقعی از پنل گره‌ها استفاده کنید. برای کار با پیوند روی اتصال کلیک کنید، نه اینکه برای اتصال دوبارهٔ گراف، گره را حذف کنید. با **ذخیره** یا **Ctrl+S** ذخیره کنید؛ در macOS از Command+S استفاده کنید.

## اشتراک‌گذاری و محدوده {#sharing-and-scope}

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

## آزمون پیش از استفادهٔ زنده {#testing-before-live-use}

گردش‌های کار پسیو و فعال بخش **آزمون HTTP** با داده‌های نمونهٔ URL، درخواست خام و پاسخ خام دارند. گردش کار را فعال کنید، فیلدها را پر کنید و روی **آزمودن گردش کار** کلیک کنید. آزمون پیش از اجرا تغییرات را ذخیره می‌کند. هنگام رفتن از صفحه و بازگشت، مقادیر نمونه برای هر گردش کار نگه داشته می‌شوند.

گردش کار تبدیل در عوض **ورودی آزمون** و خروجی دارد. با یک نمونهٔ ورودی کوچک و متناسب با کاربرد شروع کنید و سپس منبعی با اندازهٔ واقعی را آزمایش کنید. دادهٔ نمونه، JavaScript دلخواه یا گره ارسال درخواست را بی‌خطر نمی‌کند: کد گردش کار همچنان می‌تواند اقدامات پیکربندی‌شدهٔ خود را انجام دهد.

### JavaScript و فایل‌ها {#javascript-and-files}

JavaScript گردش کار از SDKِ Ogma و واردکردن‌های سازگار `fs`/`path` پشتیبانی می‌کند. برای عملیات فایل از `sdk.fs.readFile`، `writeFile`، `appendFile`، `exists`، `readDir`، `mkdir` و `unlink` و برای مسیرهای سازگار با پلتفرم از `sdk.path` استفاده کنید. این‌ها کمک‌ابزارهای Ogma هستند، نه تمام کتابخانهٔ استاندارد Node.js.

برای ذخیرهٔ یک منبع در فایل، `response.getBody().toText()` را بخوانید، با `sdk.path.join` مقصد انتخاب کنید، پوشهٔ والدش را بسازید و اگر نمی‌خواهید فایل موجود بازنویسی شود، `sdk.fs.exists` را بررسی کنید. مسیرهای فایل را پیش از اجرا بررسی کنید: کمک‌ابزارهای فایل گردش کار روی میزبان Ogma اجرا می‌شوند، برخلاف `sdk.fs` افزونه که در پوشهٔ خصوصی آن کار می‌کند. برای آن محیط اجرای متفاوت، [SDK افزونه](../plugins/README.md#sdk-fs) را ببینید.

## ورود گردش کار {#importing-a-workflow}

1. در نوار ابزار گردش‌های کار روی **وارد کردن** کلیک کنید.
2. فایل JSON گردش کار را انتخاب کنید.
3. گردش کار در بوم باز می‌شود. پیش از فعال‌کردن، پیکربندی گره‌ها را بررسی کنید.
4. گردش کار را ذخیره کنید.

فایل‌های JSON صادرشدهٔ گردش کار را می‌توان بین نصب‌های Ogma به اشتراک گذاشت یا در کنترل نسخه ذخیره کرد.

## اجرای گردش کار روی تاریخچهٔ ثبت‌شده {#running-a-workflow-on-captured-history}

گردش‌های کار فعال را می‌توان دوباره روی درخواست‌های قبلاً ثبت‌شده اجرا کرد.

1. گردش کار را باز کنید.
2. روی **اجرا روی تاریخچه** کلیک کنید.
3. در پنجرهٔ اسکن تاریخچه، فیلتر اختیاری HTTPQL وارد کنید تا درخواست‌های پردازش‌شده محدود شوند.
4. روی **اجرا** کلیک کنید.

تعداد موارد منطبق را بررسی و کار را شروع کنید. پیشرفت و خطاها در کار اسکن و، در صورت فعال‌بودن ثبت گزارش، در تاریخچهٔ اجرا ظاهر می‌شوند. گردش‌های کار پسیو **اسکن تاریخچه** و **اجرای مجدد روی درخواست** را برای پردازش گذشته ارائه می‌کنند.

برای چند دارایی جالب، یک یا چند ردیف تاریخچهٔ HTTP انتخاب کنید، راست‌کلیک کنید، **ارسال به گردش کار** را انتخاب کنید و گردش کار فعال و فعال‌شده‌ای برگزینید. این کار ورودی‌های انتخاب‌شده را بدون تغییر تعریف یا پردازش کل تاریخچه به آن می‌دهد.

دکمهٔ **هوش مصنوعی** کنار ورودی فیلتر اسکن تاریخچه از توضیح زبان طبیعی عبارت HTTPQL تولید می‌کند.

## اجراها و نتایج گردش کار {#workflow-runs-and-results}

وقتی به جزئیات اجرا نیاز دارید، **فعال کردن ثبت گزارش** را در پیکربندی گردش کار فعال کنید. این گزینه برای گردش‌های کار پسیو، فعال و تبدیل، شامل تبدیل‌های تطبیق و جایگزینی، اعمال می‌شود. وقتی غیرفعال باشد، پردازش همچنان اجرا می‌شود اما گزارش اجرا یا مرحله اضافه نمی‌شود؛ برای عیب‌یابی مشکل دوباره فعالش کنید و آزمون را تکرار کنید.

* روی اجرا کلیک کنید تا خروجی مرحلهٔ هر گره را ببینید.
* گره‌هایی که خطا تولید کرده‌اند برجسته می‌شوند.
* یافته‌های ایجادشده هنگام اجرا در نمای [یافته‌ها](./findings.md) ظاهر می‌شوند.
* متغیرهای استخراج‌شده هنگام اجرا در پنل جزئیات مرحله دیده می‌شوند.

**پاک کردن همه** تاریخچهٔ ذخیره‌شدهٔ اجرای گردش کار انتخاب‌شده را حذف می‌کند. اگر به شواهد عیب‌یابی نیاز دارید، پیش از پاک‌کردن گزارش‌ها را دانلود کنید. ثبت گزارش می‌تواند خروجی‌های بزرگی مانند بدنهٔ کامل اسکریپت ذخیره کند؛ بنابراین برای تبدیل‌های پرحجم خاموش نگه دارید مگر اینکه لازم باشد.

## فعال‌کردن گردش کار پسیو {#enabling-a-passive-workflow}

1. گردش کار را باز کنید.
2. مطمئن شوید پیکربندی بوم کامل است و درگاه الزامی قطع‌شده ندارد.
3. کلید **فعال‌سازی** را در نوار ابزار تغییر دهید.

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

## صفحه‌های مرتبط {#related-pages}

* [یافته‌ها](./findings.md)
* [محیط](./environment.md)
* [HTTPQL و StreamQL](../reference/httpql.md)
