Chat trigger لا يمرر الرسالة إلى العقدة التالية

المشكلة:
عقدة chat trigger لا تُرسل الرسالة إلى العقدة التالية
لكن عندما أُرسل رسالة مباشرة إلى سلسلة Q&A، تُسترجع الإجابة
أستخدم أحدث إصدار من n8n مُستضاف ذاتياً على railway.app عبر صورة docker

الكود:
{
“nodes”: [
{
“parameters”: {
“authentication”: “chromaCloudApi”,
“chromaCollection”: {
“__rl”: true,
“value”: “diabetes_care_2026_pdf”,
“mode”: “list”,
“cachedResultName”: “diabetes_care_2026_pdf”
},
“options”: {}
},
“type”: “@n8n/n8n-nodes-langchain.vectorStoreChromaDB”,
“typeVersion”: 1.3,
“position”: [
640,
-96
],
“id”: “6bcbcabb-1628-4705-acc1-ec69e9cdd2ea”,
“name”: “Chroma Vector Store”,
“notesInFlow”: true,
“credentials”: {
“chromaCloudApi”: {
“id”: “GJVxnKM6boNKGDcQ”,
“name”: “ChromaDB Cloud”
}
}
},
{
“parameters”: {
“options”: {}
},
“type”: “@n8n/n8n-nodes-langchain.embeddingsOpenAi”,
“typeVersion”: 1.2,
“position”: [
512,
-32
],
“id”: “53369344-d75a-4e1b-8cbe-7e330ada84e7”,
“name”: “Embeddings OpenAI”,
“credentials”: {
“openAiApi”: {
“id”: “U8c47VlPDVe4QvHM”,
“name”: “OpenAI account”
}
}
},
{
“parameters”: {
“model”: {
“__rl”: true,
“value”: “gpt-4o-mini”,
“mode”: “list”,
“cachedResultName”: “gpt-4o-mini”
},
“builtInTools”: {},
“options”: {
“textFormat”: {
“textOptions”: {
“type”: “text”
}
}
}
},
“type”: “@n8n/n8n-nodes-langchain.lmChatOpenAi”,
“typeVersion”: 1.3,
“position”: [
368,
-144
],
“id”: “85a2a69d-b7f5-43a0-9761-94f58981658e”,
“name”: “OpenAI Chat Model”,
“credentials”: {
“openAiApi”: {
“id”: “U8c47VlPDVe4QvHM”,
“name”: “OpenAI account”
}
}
},
{
“parameters”: {
“options”: {
“responseMode”: “lastNode”
}
},
“type”: “@n8n/n8n-nodes-langchain.chatTrigger”,
“typeVersion”: 1.4,
“position”: [
176,
-384
],
“id”: “2a23a459-2e0a-41e2-b42f-3f7dc8e457ce”,
“name”: “When chat message received”,
“webhookId”: “fb089fe6-d959-4530-8e15-b76291e07d0f”,
“alwaysOutputData”: false
},
{
“parameters”: {},
“type”: “@n8n/n8n-nodes-langchain.retrieverVectorStore”,
“typeVersion”: 1,
“position”: [
560,
-256
],
“id”: “8f040c30-62c4-4655-aec0-dd8db30f5575”,
“name”: “Vector Store Retriever”
},
{
“parameters”: {
“options”: {}
},
“type”: “@n8n/n8n-nodes-langchain.chainRetrievalQa”,
“typeVersion”: 1.7,
“position”: [
400,
-384
],
“id”: “5abff650-028a-4dae-8859-00b3fc45f1ea”,
“name”: “Question and Answer Chain”
}
],
“connections”: {
“Chroma Vector Store”: {
“ai_tool”: [

],
“ai_vectorStore”: [
[
{
“node”: “Vector Store Retriever”,
“type”: “ai_vectorStore”,
“index”: 0
}
]
]
},
“Embeddings OpenAI”: {
“ai_embedding”: [
[
{
“node”: “Chroma Vector Store”,
“type”: “ai_embedding”,
“index”: 0
}
]
]
},
“OpenAI Chat Model”: {
“ai_languageModel”: [
[
{
“node”: “Question and Answer Chain”,
“type”: “ai_languageModel”,
“index”: 0
}
]
]
},
“When chat message received”: {
“main”: [
[
{
“node”: “Question and Answer Chain”,
“type”: “main”,
“index”: 0
}
]
]
},
“Vector Store Retriever”: {
“ai_retriever”: [
[
{
“node”: “Question and Answer Chain”,
“type”: “ai_retriever”,
“index”: 0
}
]
]
},
“Question and Answer Chain”: {
“main”: [

]
}
},
“pinData”: {},
“meta”: {
“templateCredsSetupCompleted”: true,
“instanceId”: “e80c933fa7f4d5967cc2a038c97a89862a2e4ccb4b18372a6ce2a883e1398a68”
}
}

الانقسام الأول هو ما إذا كان Chat Trigger ينتج اسم حقل مختلف عما يتوقعه سلسلة Q&A. افتح تنفيذًا واحدًا من مسار Chat Trigger وانظر إلى العنصر قبل عقدة Q&A/agent مباشرة: هل نص المستخدم تحت chatInput أو message أو في مكان آخر؟

انشر فقط شكل العنصر المحرر وعقدة الأول بعد Chat Trigger. إذا كان Q&A المباشر يعمل لكن مسار Chat Trigger فارغ، فالفحص المفيد هو التعيين بين حقل نص المشغل والحقل الذي تقرأه السلسلة، وليس Chroma.

مشغل الدردشة لا يعمل حتى مع الوكيل
هل هذا خطأ في البرنامج؟
حدث “عند استقبال رسالة دردشة” متصل بأي عقدة يعطي نفس الرسالة “فشل في استقبال الرد”
لماذا لا تنتقل أي بيانات إلى العقدة الأخرى؟

لا يكفي لتسميته خطأ بعد. Failed to receive response هي صفحة الدردشة تقول أنها لم تستقبل استجابة سير العمل؛ وهذا لا يثبت أن مخرجات Chat Trigger فارغة.

تحقق من Response Mode في Chat Trigger قبل تغيير الوكيل. إذا كانت Using Response Nodes، يجب أن يصل التدفق إلى عقدة Chat أو عقدة Respond to Webhook. إذا كانت When Last Node Finishes، يجب أن تنشئ رسالة دردشة واحدة تنفيذاً ويجب أن تنتهي العقدة الأخيرة بإخراج. انشر فقط Response Mode وإصدار n8n وما إذا كان تنفيذ جديد يظهر عند إرسال رسالة دردشة واحدة.

بدون مشغل الدردشة :
فإنه يعطي الاستجابة

لكن مع مشغل الدردشة :
مشغل الدردشة لا يمرر المدخلات إلى العقدة التالية كيف يمكن تصحيح الأخطاء أو تتبعها؟

قم بتصحيح الأخطاء من التنفيذ، وليس من لوحة الدردشة. أرسل رسالة دردشة واحدة، ثم افتح التنفيذ الجديد وانقر على عقدة Chat Trigger أولاً. إذا كان مخرجاتها تحتوي على النص ضمن chatInput، فإن المُشغِّل قام بدوره والعقدة التالية تقرأ الحقل الخاطئ؛ قم بربط {{$json.chatInput}} في الحقل الذي تقرأه عقدة الوكيل/ضمان الجودة.

إذا لم يظهر أي تنفيذ، أو لم يحتوِ مخرج Chat Trigger على أي نص على الإطلاق، فهذا هو الدليل المفيد. أرسل فقط وضع الاستجابة، إصدار n8n، ومخرج Chat Trigger المُخفاة من ذلك التنفيذ.

شيء آخر تحقق منه أثناء تصحيح الأخطاء: لوحة السجل «لا شيء لعرضه حتى الآن» تعني عدم تسجيل أي تنفيذ على الإطلاق، وهذا عادة ما يشير إلى أن سير العمل غير نشط. أداة الدردشة المدمجة تعمل فقط مع سير عمل مفعّل - تأكد من تفعيل سير العمل (مفتاح التشغيل في أعلى يمين المحرر). في وضع الاختبار، يتم تشغيل المُشغّل مرة واحدة فقط في كل تشغيل اختبار يدوي، لذا لن تبقى أداة الدردشة المدمجة متصلة به.

مرحبا @Hassan_Zakria

Chat Trigger يعتمد على webhook. إذا لم يعرف n8n عنوان URL الخارجي الخاص به، فلن تتمكن نافذة الدردشة من “العثور على” سير العمل الخاص بك لإرسال الرسالة.

  • المشكلة: إذا لم يتم تعيين WEBHOOK_URL في متغيرات بيئة Railway، فإن n8n يستخدم localhost، لكن واجهة الدردشة تحاول الوصول إلى نطاق railway.app الخاص بك.
  • الحل:
    1. انتقل إلى إعدادات مشروع Railwayالمتغيرات.
    2. أضف متغيراً جديداً: WEBHOOK_URL.
    3. عيّن القيمة إلى عنوان URL الكامل لمثيل n8n الخاص بك (على سبيل المثال، https://n8n-production-xxxx.up.railway.app/). تأكد من تضمين https:// والانتهاء بشرطة مائلة /.
    4. أعد النشر/أعد تشغيل الخدمة.

أيضاً، في إعدادات Chat Trigger، لديك Response Mode معينة على "When Last Node Finishes".

  • المشكلة: إذا واجهت Q&A Chain أي تأخير داخلي أو إذا لم يكن تنسيق الإخراج بالضبط ما يتوقعه Chat Trigger، فستنتهي مهلة الاتصال، مما يؤدي إلى خطأ “Failed to receive response”.
  • الحل:
    1. حاول تغيير Response Mode إلى “When Clicked” أو “Immediately” فقط لترى ما إذا كان التفعيل يعمل.
    2. إذا كان يعمل مع “Immediately”، فهذا يعني أن Q&A Chain تستغرق وقتاً طويلاً أو فشلت في إرجاع كائن استجابة صحيح إلى التفعيل.

شكراً جزيلاً :blush: