UXC phiên bản v0.12.1 đã được phát hành, hỗ trợ đăng ký nhận tin nhắn và nhắn tin tức thời (IM).
UXC là một lớp gọi giao thức thống nhất, ban đầu giải quyết vấn đề gọi thống nhất các giao diện như OpenAPI, GraphQL và MCP. Trong phiên bản này, tôi muốn bổ sung thêm một loại khả năng khác: đăng ký (subscribe).
Khi phát triển một tác nhân hướng sự kiện, tôi nhanh chóng gặp phải một vấn đề: trong nhiều trường hợp, việc chỉ gọi API rồi kết thúc không phải là tất cả; các sự kiện liên tục xuất hiện, và tác nhân phải quyết định cách xử lý chúng.
Ở giai đoạn này, chỉ có yêu cầu/phản hồi là chưa đủ; bạn cũng cần một môi trường thực thi đăng ký thống nhất.
Nhưng vấn đề không chỉ nằm ở việc "liệu các sự kiện có thể được tiếp nhận hay không". Nếu tất cả các sự kiện được chuyển trực tiếp đến tác nhân, chi phí sẽ rất cao, và trong nhiều trường hợp, nó sẽ không thể xử lý được. Luồng sự kiện sẽ làm quá tải ngữ cảnh, và việc lập lịch sẽ trở nên rất khó khăn.
Một cách tiếp cận phù hợp hơn là trước tiên lưu trữ các sự kiện đã đăng ký vào một tệp cục bộ hoặc trạng thái có thể truy cập được khác, sau đó xử lý chúng định kỳ theo một chiến lược. Bằng cách này, tác nhân sẽ thấy đầu vào đã được lắng đọng và xử lý, thay vì một luồng sự kiện thô đến cùng một lúc.
IM là trường hợp rõ ràng nhất trong vấn đề này.
Vì nhắn tin tức thời (IM) vốn dĩ là một chuỗi sự kiện liên tục: nhận tin nhắn, gửi tin nhắn, nhận sự kiện, và sau đó tích hợp chúng vào một quy trình tự động dài hơn. Do đó, phiên bản này trước tiên bổ sung thành phần IM.
Các ứng dụng nhắn tin tức thời đã được tích hợp cho đến nay bao gồm Telegram, Slack, Matrix, Discord, Feishu/Lark, và cũng hỗ trợ LINE, WhatsApp và DingTalk.
Ngoài IM, môi trường chạy đăng ký này giờ đây cũng có thể xử lý một cách có hệ thống các nguồn sự kiện như đăng ký GraphQL (Bitquery), WebSocket (sự kiện giá Binance/OKX) và đăng ký JSON-RPC (Ethereum/ Sui).
Chúng tôi hoan nghênh mọi người dùng thử và đóng góp ý kiến phản hồi.
Kho lưu trữ: