Skip to content

Signal ​

ನಿಮ್ಮ Triggerfish agent ಅನ್ನು Signal ಗೆ ಸಂಪರ್ಕಿಸಿ ಜನರು Signal app ನಿಂದ message ಮಾಡಲು ಅನುಮತಿಸಿ. Adapter ನಿಮ್ಮ linked Signal phone number ಬಳಸಿ JSON-RPC ಮೂಲಕ signal-cli daemon ನೊಂದಿಗೆ ಸಂವಾದಿಸುತ್ತದೆ.

Signal ಹೇಗೆ ಭಿನ್ನ ​

Signal adapter ನಿಮ್ಮ phone number. Telegram ಅಥವಾ Slack ನಲ್ಲಿ ಪ್ರತ್ಯೇಕ bot account ಇರುವಂತೆ ಅಲ್ಲ, Signal messages ಇತರ ಜನರಿಂದ ನಿಮ್ಮ number ಗೆ ಬರುತ್ತವೆ. ಇದರರ್ಥ:

  • ಎಲ್ಲ inbound messages isOwner: false ಹೊಂದಿರುತ್ತವೆ -- ಅವು ಯಾವಾಗಲೂ ಬೇರೆ ಯಾರಿಂದಲೋ
  • Adapter ನಿಮ್ಮ phone number ಮೂಲಕ reply ಮಾಡುತ್ತದೆ
  • ಇತರ channels ತರಹ per-message owner check ಇಲ್ಲ

ಇದು Signal ಅನ್ನು ನಿಮ್ಮ number ಗೆ message ಮಾಡುವ contacts ನಿಂದ messages ಸ್ವೀಕರಿಸಲು ideal ಮಾಡುತ್ತದೆ, agent ನಿಮ್ಮ ಪರವಾಗಿ respond ಮಾಡುತ್ತದೆ.

Default Classification ​

Signal PUBLIC classification ಗೆ default ಆಗುತ್ತದೆ. ಎಲ್ಲ inbound messages external contacts ನಿಂದ ಬರುವ ಕಾರಣ, PUBLIC ಸುರಕ್ಷಿತ default.

Setup ​

Step 1: signal-cli Install ಮಾಡಿ ​

signal-cli Signal ಗಾಗಿ third-party command-line client. Triggerfish TCP ಅಥವಾ Unix socket ಮೂಲಕ ಅದರೊಂದಿಗೆ ಸಂವಾದಿಸುತ್ತದೆ.

Linux (native build -- Java ಅಗತ್ಯವಿಲ್ಲ):

signal-cli releases page ನಿಂದ latest native build download ಮಾಡಿ, ಅಥವಾ setup ಸಮಯದಲ್ಲಿ Triggerfish download ಮಾಡಲಿ.

macOS / ಇತರ platforms (JVM build):

Java 21+ ಅಗತ್ಯ. Java install ಆಗಿಲ್ಲದಿದ್ದರೆ Triggerfish ಸ್ವಯಂಚಾಲಿತವಾಗಿ portable JRE download ಮಾಡಬಹುದು.

ನೀವು guided setup ಕೂಡ ಚಲಿಸಬಹುದು:

bash
triggerfish config add-channel signal

ಇದು signal-cli check ಮಾಡಿ, missing ಆಗಿದ್ದರೆ download ಮಾಡಲು offer ಮಾಡಿ, linking ಮೂಲಕ ನಡೆಯುತ್ತದೆ.

signal-cli ನಿಮ್ಮ ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ Signal account ಗೆ linked ಆಗಬೇಕು (desktop app link ಮಾಡಿದಂತೆ):

bash
signal-cli link -n "Triggerfish"

ಇದು tsdevice: URI print ಮಾಡುತ್ತದೆ. QR code ಅನ್ನು Signal mobile app ನಿಂದ scan ಮಾಡಿ (Settings > Linked Devices > Link New Device).

Step 3: Daemon ಪ್ರಾರಂಭಿಸಿ ​

Triggerfish ಸಂಪರ್ಕಿಸುವ background daemon ಆಗಿ signal-cli ಚಲಿಸುತ್ತದೆ:

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

+14155552671 ಅನ್ನು E.164 format ನಲ್ಲಿ ನಿಮ್ಮ phone number ನೊಂದಿಗೆ replace ಮಾಡಿ.

Step 4: Triggerfish Configure ಮಾಡಿ ​

ನಿಮ್ಮ triggerfish.yaml ಗೆ Signal ಸೇರಿಸಿ:

yaml
channels:
  signal:
    endpoint: "tcp://127.0.0.1:7583"
    account: "+14155552671"
    classification: PUBLIC
OptionTypeRequiredವಿವರಣೆ
endpointstringಹೌದುsignal-cli daemon address (tcp://host:port ಅಥವಾ unix:///path/to/socket)
accountstringಹೌದುನಿಮ್ಮ Signal phone number (E.164 format)
classificationstringಇಲ್ಲClassification ceiling (default: PUBLIC)
defaultGroupModestringಇಲ್ಲGroup message handling: always, mentioned-only, owner-only (default: always)
groupsobjectಇಲ್ಲPer-group configuration overrides

Step 5: Triggerfish ಪ್ರಾರಂಭಿಸಿ ​

bash
triggerfish stop && triggerfish start

Connection confirm ಮಾಡಲು ಬೇರೆ Signal user ನಿಂದ ನಿಮ್ಮ phone number ಗೆ message ಕಳುಹಿಸಿ.

Group Messages ​

Signal group chats ಬೆಂಬಲಿಸುತ್ತದೆ. Group messages ಗೆ agent ಹೇಗೆ respond ಮಾಡುತ್ತದೆ ಎಂದು control ಮಾಡಬಹುದು:

Modeನಡವಳಿಕೆ
alwaysಎಲ್ಲ group messages ಗೆ respond ಮಾಡಿ (default)
mentioned-onlyPhone number ಅಥವಾ @mention ಮೂಲಕ mentioned ಆದಾಗ ಮಾತ್ರ respond
owner-onlyGroups ನಲ್ಲಿ ಎಂದಿಗೂ respond ಮಾಡಬೇಡ

Globally ಅಥವಾ per-group configure ಮಾಡಿ:

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

Group IDs base64-encoded identifiers. ಅವನ್ನು ಕಂಡುಹಿಡಿಯಲು triggerfish signal list-groups ಬಳಸಿ ಅಥವಾ signal-cli documentation ನೋಡಿ.

Message Chunking ​

Signal ಗೆ 4,000-character message limit ಇದೆ. ಇದಕ್ಕಿಂತ ಉದ್ದ responses ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಅನೇಕ messages ಗೆ split ಮಾಡಲ್ಪಡುತ್ತವೆ, ಓದಲು newlines ಅಥವಾ spaces ನಲ್ಲಿ break ಮಾಡಿ.

Typing Indicators ​

Agent request ಸಂಸ್ಕರಿಸುತ್ತಿರುವಾಗ adapter typing indicators ಕಳುಹಿಸುತ್ತದೆ. Reply ಕಳುಹಿಸಿದಾಗ Typing state clear ಆಗುತ್ತದೆ.

Extended Tools ​

Signal adapter ಹೆಚ್ಚುವರಿ tools expose ಮಾಡುತ್ತದೆ:

  • sendTyping / stopTyping -- Manual typing indicator control
  • listGroups -- Account member ಆಗಿರುವ ಎಲ್ಲ Signal groups ಪಟ್ಟಿ
  • listContacts -- ಎಲ್ಲ Signal contacts ಪಟ್ಟಿ

Classification ಬದಲಾಯಿಸಿ ​

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

Valid levels: PUBLIC, INTERNAL, CONFIDENTIAL, RESTRICTED.

ಬದಲಾಯಿಸಿದ ನಂತರ daemon restart ಮಾಡಿ: triggerfish stop && triggerfish start

Reliability ವೈಶಿಷ್ಟ್ಯಗಳು ​

Signal adapter ಹಲವು reliability mechanisms ಒಳಗೊಳ್ಳುತ್ತದೆ:

Auto-Reconnection ​

signal-cli ಗೆ connection drop ಆದರೆ (network interruption, daemon restart), adapter exponential backoff ನೊಂದಿಗೆ ಸ್ವಯಂಚಾಲಿತವಾಗಿ reconnect ಮಾಡುತ್ತದೆ. Manual intervention ಅಗತ್ಯವಿಲ್ಲ.

Health Checking ​

Startup ನಲ್ಲಿ, JSON-RPC ping probe ಬಳಸಿ ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ signal-cli daemon healthy ಎಂದು Triggerfish check ಮಾಡುತ್ತದೆ. Daemon unresponsive ಆಗಿದ್ದರೆ, ಸ್ವಯಂಚಾಲಿತವಾಗಿ kill ಮತ್ತು restart ಮಾಡಲ್ಪಡುತ್ತದೆ.

Version Tracking ​

Triggerfish known-good signal-cli version (ಪ್ರಸ್ತುತ 0.13.0) track ಮಾಡುತ್ತದೆ ಮತ್ತು install ಆದ version ಹಳೆಯದಾಗಿದ್ದರೆ startup ನಲ್ಲಿ warn ಮಾಡುತ್ತದೆ.

Unix Socket Support ​

TCP endpoints ಜೊತೆಗೆ, adapter Unix domain sockets ಬೆಂಬಲಿಸುತ್ತದೆ:

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

Troubleshooting ​

signal-cli daemon reach ಆಗುತ್ತಿಲ್ಲ:

  • Daemon ಚಲಿಸುತ್ತಿದೆ ಎಂದು verify ಮಾಡಿ: process ಗಾಗಿ check ಮಾಡಿ ಅಥವಾ nc -z 127.0.0.1 7583 try ಮಾಡಿ
  • signal-cli IPv4 ಮಾತ್ರ bind ಮಾಡುತ್ತದೆ -- localhost ಅಲ್ಲ, 127.0.0.1 ಬಳಸಿ
  • TCP default port 7583
  • Unhealthy process ಪತ್ತೆ ಮಾಡಿದರೆ Triggerfish daemon auto-restart ಮಾಡುತ್ತದೆ

Messages ಬರುತ್ತಿಲ್ಲ:

  • Device linked ಎಂದು confirm ಮಾಡಿ: Signal mobile app ನ Linked Devices ಅಡಿ check ಮಾಡಿ
  • Linking ನಂತರ signal-cli ಕನಿಷ್ಟ ಒಂದು sync ಸ್ವೀಕರಿಸಿರಬೇಕು
  • Connection errors ಗಾಗಿ logs check ಮಾಡಿ: triggerfish logs --tail

Java errors (JVM build ಮಾತ್ರ):

  • signal-cli JVM build Java 21+ ಅಗತ್ಯ
  • Check ಮಾಡಲು java -version ಚಲಿಸಿ
  • Setup ಸಮಯದಲ್ಲಿ Java ಅಗತ್ಯವಿದ್ದರೆ Triggerfish portable JRE download ಮಾಡಬಹುದು