Skip to content

Signal

قم بتوصيل عامل Triggerfish الخاص بك بـ Signal حتى انجام می‌شودكن الأشخاص از مراسلته از تطبيق Signal. يتواصل المحوّل با خادم signal-cli از طریق JSON-RPC، باستخدام رقم هاتف Signal المرتبط الخاص بك.

چگونه يختلف Signal

محوّل Signal هو رقم هاتفك. بخخیرف Telegram یا Slack حيث يوجد حساب بوت ازفصل، تأتي پیام‌ها Signal از أشخاص آخرين به رقمك. این يعني:

  • تمام الپیام‌ها الواردة لها isOwner: false -- هي همیشه از شخص آخر
  • يرد المحوّل كرقم هاتفك
  • خیر يوجد فحص مالك لهر پیام كکانال‌ها الأخرى

این يجعل Signal مثالياً خیرستقبال الپیام‌ها از جهات اخیرتصال التي تراسل رقمك، با رد عامل نيابة عنك.

طبقه‌بندی پیش‌فرض

انجام می‌شود طبقه‌بندی Signal به‌صورت پیش‌فرض كـ PUBLIC. بما أن تمام الپیام‌ها الواردة تأتي از جهات اتصال خارجية، PUBLIC هو پیش‌فرض الآاز.

راه‌اندازی

الخطوة 1: تثبيت signal-cli

signal-cli هو عميل سطر یاامر تابع لجهة خارجية لـ Signal. يتواصل Triggerfish باه از طریق مقبس TCP یا Unix.

Linux (بناء أصلي -- خیر حاجة لـ Java):

حمّل أحدث بناء أصلي از صفحة إصدارات signal-cli، یا دع Triggerfish يحمّله لك أثناء راه‌اندازی.

macOS / ازصات أخرى (بناء JVM):

يتدرخواست Java 21+. يمكن لـ Triggerfish تحميل JRE محمول به‌صورت خودکار إذا لم يكن Java مثبتاً.

می‌توانید همچنین تشغيل راه‌اندازی الموجّه:

bash
triggerfish config add-channel signal

این يتحقق از signal-cli، ويعرض تحميله إذا كان مفقوداً، ويرشدك خخیرل الربط.

الخطوة 2: ربط جهازك

باید ربط signal-cli بحساب Signal الموجود (مثل ربط تطبيق سطح المكتب):

bash
signal-cli link -n "Triggerfish"

يطبع این URI tsdevice:. امسح رمز QR بتطبيق Signal روی الهاتف (راه‌اندازیات > الأجهزة المرتبطة > ربط جهاز جديد).

الخطوة 3: تشغيل الخادم

کار می‌کند signal-cli كخادم خلدرة يتصل به Triggerfish:

bash
signal-cli -a +14155552671 daemon --tcp localhost:7583

استبدل +14155552671 برقم هاتفك بتنسيق E.164.

الخطوة 4: تكوين Triggerfish

أضف Signal به triggerfish.yaml:

yaml
channels:
  signal:
    endpoint: "tcp://127.0.0.1:7583"
    account: "+14155552671"
    classification: PUBLIC
الخيارالنوعالزامیالوصف
endpointstringبلهعنوان خادم signal-cli (tcp://host:port یا unix:///path/to/socket)
accountstringبلهرقم هاتف Signal الخاص بك (تنسيق E.164)
classificationstringخیرسقف طبقه‌بندی (پیش‌فرض: PUBLIC)
defaultGroupModestringخیرباالجة پیام‌ها المجموعات: always، mentioned-only، owner-only (پیش‌فرض: always)
groupsobjectخیرتجاوزات تكوين لهر مجموعة
ownerPhonestringخیرمحجوز لخیرستخدام المستقبلي
pairingbooleanخیرتمكين وضع الإقران أثناء راه‌اندازی

الخطوة 5: تشغيل Triggerfish

bash
triggerfish stop && triggerfish start

أرسل پیام به رقم هاتفك از مستخدم Signal آخر لتأكيد اخیرتصال.

پیام‌ها المجموعات

پشتیبانی می‌کند Signal دردشات المجموعات. می‌توانید التحكم در نحوه رد عامل روی پیام‌ها المجموعات:

الوضعالسلوك
alwaysالرد روی تمام پیام‌ها المجموعة (پیش‌فرض)
mentioned-onlyالرد فقط عند الإشارة برقم الهاتف یا @mention
owner-onlyعدم الرد هرگز در المجموعات

كوّن عالمياً یا لهر مجموعة:

yaml
channels:
  signal:
    endpoint: "tcp://127.0.0.1:7583"
    account: "+14155552671"
    defaultGroupMode: mentioned-only
    groups:
      "your-group-id":
        mode: always
        classification: INTERNAL

بارّفات المجموعات هي بارّفات مشفرة بـ base64. استخدم triggerfish signal list-groups یا مراجعه کنید وثائق signal-cli للعثور عليها.

تقسيم الپیام‌ها

لدى Signal حد 4,000 حرف للپیام. الردود الأطول از این تُقسّم به‌صورت خودکار به پیام‌ها متعددة، با الفصل عند أسطر جديدة یا مسافات لسهولة القراءة.

مؤشرات الكتابة

يرسل المحوّل مؤشرات كتابة أثناء باالجة عامل لدرخواست. تختدر حالة الكتابة عند إرسال الرد.

ابزارها إضادرة

يكشف محوّل Signal ابزارها إضادرة:

  • sendTyping / stopTyping -- تحكم دستی بمؤشر الكتابة
  • listGroups -- عرض تمام مجموعات Signal التي ينتمي إليها الحساب
  • listContacts -- عرض تمام جهات اتصال Signal

تغيير طبقه‌بندی

yaml
channels:
  signal:
    endpoint: "tcp://127.0.0.1:7583"
    account: "+14155552671"
    classification: INTERNAL

المستويات الصالحة: PUBLIC، INTERNAL، CONFIDENTIAL، RESTRICTED.

أعد تشغيل الخادم بعد التغيير: triggerfish stop && triggerfish start

ميزات الموثوقية

شامل می‌شود محوّل Signal عدة آليات موثوقية:

إعادة اخیرتصال الخودکار

إذا انقطع اخیرتصال بـ signal-cli (انقطاع شبكة، إعادة تشغيل الخادم)، يعيد المحوّل اخیرتصال به‌صورت خودکار با تمراجعه کنید أسي. خیر حاجة لتدخل دستی.

فحص الصحة

عند بدء التشغيل، يتحقق Triggerfish مما إذا كان خادم signal-cli الموجود سليماً باستخدام اختبار JSON-RPC ping. إذا كان الخادم غير مستجيب، يُقتل ويُعاد تشغيله به‌صورت خودکار.

تتبع الإصدار

يتتبع Triggerfish إصدار signal-cli الباروف بأنه جيد (در حال حاضر 0.13.0) ويحذر عند بدء التشغيل إذا كان إصدارك المثبت أقدم. يُسجّل إصدار signal-cli عند هر اتصال ناجح.

دعم مقبس Unix

بالplugin به نقاط نهاية TCP، پشتیبانی می‌کند المحوّل مقابس نطاق Unix:

yaml
channels:
  signal:
    endpoint: "unix:///run/signal-cli/socket"
    account: "+14155552671"

عیب‌یابی

خادم signal-cli غير قابل للوصول:

  • تحقق از أن الخادم کار می‌کند: ابحث عن العملية یا جرب nc -z 127.0.0.1 7583
  • signal-cli يربط IPv4 فقط -- استخدم 127.0.0.1، وليس localhost
  • الازفذ پیش‌فرض لـ TCP هو 7583
  • سيعيد Triggerfish تشغيل الخادم به‌صورت خودکار إذا اكتشف عملية غير سليمة

الپیام‌ها خیر تصل:

  • تأكد از ربط الجهاز: تحقق از تطبيق Signal روی الهاتف تحت الأجهزة المرتبطة
  • باید أن يكون signal-cli قد استقبل مزاازة واحدة روی الأقل بعد الربط
  • تحقق از السجخیرت بحثاً عن أخطاء اخیرتصال: triggerfish logs --tail

أخطاء Java (بناء JVM فقط):

  • يتدرخواست بناء JVM لـ signal-cli إصدار Java 21+
  • شغّل java -version للتحقق
  • يمكن لـ Triggerfish تحميل JRE محمول أثناء راه‌اندازی إذا لزم الأمر

حلقات إعادة اخیرتصال:

  • إذا رهرت محاوخیرت إعادة اتصال متكررة در السجخیرت، قد يكون خادم signal-cli يتعطل
  • تحقق از مخرجات stderr الخاصة بـ signal-cli بحثاً عن أخطاء
  • جرب إعادة التشغيل بخادم جديد: یاقف Triggerfish، اقتل signal-cli، أعد تشغيل هريهما