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، أعد تشغيل هريهما