Các API của Jami

OpenDHT

Tài liệu liên quan đến API của OpenDHT là [đây]https://github.com/savoirfairelinux/opendht/wiki/API-Overview) và sẽ không được chi tiết trong phần sau.

Daemon

Các nhà quản lý

API của daemon được phân hủy giữa 5 Manager + 1 File Instance:

  • Các giao diện CallManager được sử dụng để quản lý các hành động liên quan đến cuộc gọi và hội nghị. Vì daemon Jami hỗ trợ nhiều cuộc gọi đến / ra ngoài, bất kỳ hành động liên quan đến một cuộc gọi cụ thể phải giải quyết phương pháp bằng cách sử dụng một callID độc đáo. Daemon Jami sẽ tạo ra một callID độc đáo cho các cuộc gọi ra ngoài và vào.

  • ConfigurationManager được sử dụng để xử lý các thứ cấu hình: cài đặt tài khoản, sở thích của người dùng,...

  • PresenceManager được sử dụng để theo dõi sự hiện diện của các liên lạc

  • VideoManager được sử dụng để quản lý các thiết bị và trình chiếu video

  • Instance được sử dụng để đếm số lượng khách hàng thực sự đăng ký vào lõi. Khi khởi tạo khách hàng của bạn, bạn cần đăng ký nó chống lại lõi bằng cách sử dụng giao diện này.

DBUS

Tất cả các tài liệu và mã cho API dbus được đặt trong jami-daemon/bin/dbus.

Nếu bạn sử dụng linux, bạn có thể sử dụng d-feet khi daemon đang chạy để thao túng API (hoặc với bất kỳ công cụ nào khác).

Dự án LRC sử dụng API này (và sử dụng libwrap trên Windows và macOS).

JNI

Tất cả các tài liệu và mã cho API JNI được đặt trong jami-daemon/bin/jni.

js node

Tất cả các tài liệu và mã cho Node JS API nằm trong jami-daemon/bin/nodejs. API này không được sử dụng trong bất kỳ dự án nào được biết đến và có thể không cập nhật.

REST

Tất cả các tài liệu và mã cho REST API được đặt trong jami-daemon/bin/restcpp. API này không được sử dụng trong bất kỳ dự án nào được biết đến và có thể không cập nhật.

Lớp lưng Python

Một gói Python có sẵn bằng jami-daemon/tools/jamictrl.

Plugins

Plugins are a good way to customize Jami if you want to interact with streams (Audio, Video or chat). Several plugins are already available through the Plugin Store (in the settings of your Jami application).