Gateway
Gateway Triggerfish ನ ಕೇಂದ್ರ ನಿಯಂತ್ರಣ ಸಮತಲ -- ಒಂದೇ WebSocket endpoint ಮೂಲಕ sessions, channels, tools, events ಮತ್ತು agent processes ಸಮನ್ವಯ ಮಾಡುವ ದೀರ್ಘ-ಚಾಲನೆಯ ಸ್ಥಳೀಯ ಸೇವೆ. Triggerfish ನಲ್ಲಿ ನಡೆಯುವ ಎಲ್ಲವೂ Gateway ಮೂಲಕ ಹಾದುಹೋಗುತ್ತದೆ.
ಆರ್ಕಿಟೆಕ್ಚರ್
Gateway ಕಾನ್ಫಿಗರ್ ಮಾಡಬಹುದಾದ port ನಲ್ಲಿ (ಡಿಫಾಲ್ಟ್ 18789) ಕೇಳುತ್ತದೆ ಮತ್ತು channel adapters, CLI commands, companion apps ಮತ್ತು ಆಂತರಿಕ ಸೇವೆಗಳಿಂದ ಸಂಪರ್ಕಗಳನ್ನು ಸ್ವೀಕರಿಸುತ್ತದೆ.
Gateway ಸೇವೆಗಳು
| ಸೇವೆ | ವಿವರಣೆ | ಭದ್ರತಾ ಏಕೀಕರಣ |
|---|---|---|
| Sessions | ರಚಿಸಿ, ಪಟ್ಟಿ ಮಾಡಿ, ಇತಿಹಾಸ ಮರಳಿಸಿ, sessions ನಡುವೆ ಕಳುಹಿಸಿ | Session taint ಪ್ರತಿ-session ಟ್ರ್ಯಾಕ್ ಮಾಡಲಾಗಿದೆ |
| Channels | ಸಂದೇಶಗಳನ್ನು ರೂಟ್ ಮಾಡಿ, ಸಂಪರ್ಕ ನಿರ್ವಹಿಸಿ, ವಿಫಲ ವಿತರಣೆಗಳನ್ನು ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ | ಎಲ್ಲ ಔಟ್ಪುಟ್ನಲ್ಲಿ ವರ್ಗೀಕರಣ ಪರಿಶೀಲನೆ |
| Cron | ಆವರ್ತಕ ಕೆಲಸಗಳನ್ನು ನಿಗದಿಪಡಿಸಿ ಮತ್ತು TRIGGER.md ಎಚ್ಚರಗಳನ್ನು ಪ್ರಚೋದಿಸಿ | Cron ಕ್ರಿಯೆಗಳು ನೀತಿ hooks ಮೂಲಕ ಹಾದುಹೋಗುತ್ತವೆ |
| Webhooks | POST /webhooks/:sourceId ಮೂಲಕ ಬಾಹ್ಯ ಸೇವೆಗಳಿಂದ ಒಳಬರುವ events ಸ್ವೀಕರಿಸಿ | ಒಳಬರುವ ಡೇಟಾ ingestion ನಲ್ಲಿ ವರ್ಗೀಕರಿಸಲಾಗಿದೆ |
| Ripple | ಚಾನೆಲ್ಗಳಾದ್ಯಂತ ಆನ್ಲೈನ್ ಸ್ಥಿತಿ ಮತ್ತು typing indicators ಟ್ರ್ಯಾಕ್ ಮಾಡಿ | ಯಾವುದೇ ಸೂಕ್ಷ್ಮ ಡೇಟಾ ಬಹಿರಂಗವಾಗುವುದಿಲ್ಲ |
| Notifications | ಆದ್ಯತಾ ರೂಟಿಂಗ್ನೊಂದಿಗೆ cross-channel ಅಧಿಸೂಚನೆ ವಿತರಣೆ | ವರ್ಗೀಕರಣ ನಿಯಮಗಳು ಅನ್ವಯಿಸುತ್ತವೆ |
WebSocket JSON-RPC ಪ್ರೋಟೋಕಾಲ್
ಕ್ಲೈಂಟ್ಗಳು WebSocket ಮೂಲಕ Gateway ಸಂಪರ್ಕಿಸುತ್ತಾರೆ ಮತ್ತು JSON-RPC 2.0 ಸಂದೇಶಗಳನ್ನು ವಿನಿಮಯ ಮಾಡಿಕೊಳ್ಳುತ್ತಾರೆ.
typescript
// ಕ್ಲೈಂಟ್ ಕಳುಹಿಸುತ್ತದೆ:
{
"jsonrpc": "2.0",
"id": 1,
"method": "sessions.list",
"params": { "filter": "active" }
}
// Gateway ಉತ್ತರಿಸುತ್ತದೆ:
{
"jsonrpc": "2.0",
"id": 1,
"result": [
{ "id": "sess_abc", "taint": "CONFIDENTIAL", "channel": "telegram" },
{ "id": "sess_def", "taint": "PUBLIC", "channel": "cli" }
]
}ದೃಢೀಕರಣ
Gateway ಸಂಪರ್ಕಗಳು token ನಿಂದ ದೃಢೀಕರಿಸಲ್ಪಡುತ್ತವೆ. Token ಸೆಟಪ್ ಸಮಯದಲ್ಲಿ ಉತ್ಪಾದಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ಸ್ಥಳೀಯವಾಗಿ ಸಂಗ್ರಹಿಸಲಾಗುತ್ತದೆ.
SECURITY Gateway ಡಿಫಾಲ್ಟ್ ಆಗಿ 127.0.0.1 ಗೆ bind ಆಗುತ್ತದೆ ಮತ್ತು
network ಗೆ ತೆರೆದಿಲ್ಲ. ದೂರ ಪ್ರವೇಶಕ್ಕೆ ಸ್ಪಷ್ಟ tunnel ಕಾನ್ಫಿಗರೇಶನ್ ಅಗತ್ಯ. Gateway WebSocket ಅನ್ನು ಯಾವಾಗಲೂ ದೃಢೀಕರಣ ಇಲ್ಲದೆ ಸಾರ್ವಜನಿಕ internet ಗೆ ಒಡ್ಡಬೇಡಿ. :::
Session ನಿರ್ವಹಣೆ
| Session ಪ್ರಕಾರ | ಕೀ ಮಾದರಿ | ವಿವರಣೆ |
|---|---|---|
| Main | main | ಮಾಲೀಕರೊಂದಿಗೆ ಪ್ರಾಥಮಿಕ ನೇರ ಸಂಭಾಷಣೆ. ಮರುಪ್ರಾರಂಭಗಳಾದ್ಯಂತ ಉಳಿಯುತ್ತದೆ. |
| Channel | channel:<type>:<id> | ಪ್ರತಿ ಸಂಪರ್ಕಿತ ಚಾನೆಲ್ಗೆ ಒಂದು. ಪ್ರತಿ ಚಾನೆಲ್ಗೆ ಪ್ರತ್ಯೇಕ taint. |
| Background | bg:<task_id> | Cron ಕೆಲಸಗಳಿಗೆ ಉತ್ಪಾದಿಸಲಾಗಿದೆ. PUBLIC taint ನಲ್ಲಿ ಪ್ರಾರಂಭ. |
| Agent | agent:<agent_id> | ಬಹು-ಏಜೆಂಟ್ ರೂಟಿಂಗ್ಗಾಗಿ ಪ್ರತಿ-ಏಜೆಂಟ್ sessions. |
sessions_send ಮೂಲಕ inter-session ಸಂವಹನ ಇತರ ಯಾವುದೇ ಔಟ್ಪುಟ್ನಂತೆಯೇ
ಒಂದೇ write-down ನಿಯಮಗಳಿಗೆ ಒಳಪಟ್ಟಿದೆ. :::
ಅಧಿಸೂಚನೆ ಸೇವೆ
Gateway ಮೊದಲ-ದರ್ಜೆ ಅಧಿಸೂಚನೆ ಸೇವೆ ಏಕೀಕರಿಸುತ್ತದೆ. ಎಲ್ಲ ಅಧಿಸೂಚನೆಗಳು ಒಂದೇ NotificationService ಮೂಲಕ ಹರಿಯುತ್ತವೆ.
ಆದ್ಯತಾ ರೂಟಿಂಗ್
| ಆದ್ಯತೆ | ನಡವಳಿಕೆ |
|---|---|
CRITICAL | ಶಾಂತ ಗಂಟೆಗಳನ್ನು ಬೈಪಾಸ್ ಮಾಡಿ, ಎಲ್ಲ ಸಂಪರ್ಕಿತ ಚಾನೆಲ್ಗಳಿಗೆ ತಕ್ಷಣ ವಿತರಿಸಿ |
HIGH | ಆದ್ಯ ಚಾನೆಲ್ಗೆ ತಕ್ಷಣ ವಿತರಿಸಿ, offline ಆದರೆ queue ನಲ್ಲಿ |
NORMAL | ಸಕ್ರಿಯ session ಗೆ ವಿತರಿಸಿ, ಅಥವಾ ಮುಂದಿನ session ಪ್ರಾರಂಭಕ್ಕೆ queue |
LOW | Queue ಮಾಡಿ, ಸಕ್ರಿಯ sessions ಸಮಯದಲ್ಲಿ batch ನಲ್ಲಿ ವಿತರಿಸಿ |
ಆರೋಗ್ಯ ಮತ್ತು ರೋಗನಿರ್ಣಯ
triggerfish patrol ಆಜ್ಞೆ Gateway ಗೆ ಸಂಪರ್ಕಿಸುತ್ತದೆ ಮತ್ತು ರೋಗನಿರ್ಣಯ ಆರೋಗ್ಯ ಪರಿಶೀಲನೆಗಳು ಚಲಾಯಿಸುತ್ತದೆ, ಪರಿಶೀಲಿಸುತ್ತದೆ:
- Gateway ಚಾಲೂ ಮತ್ತು ಪ್ರತಿಕ್ರಿಯಾಶೀಲ
- ಎಲ್ಲ ಕಾನ್ಫಿಗರ್ ಮಾಡಲಾದ ಚಾನೆಲ್ಗಳು ಸಂಪರ್ಕಿತ
- Storage ಪ್ರವೇಶಯೋಗ್ಯ
- ನಿಗದಿತ ಕೆಲಸಗಳು ಸಮಯಕ್ಕೆ ಚಲಾಯಿಸಲ್ಪಡುತ್ತಿವೆ
