django-cfg 1.4.62__py3-none-any.whl → 1.4.64__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of django-cfg might be problematic. Click here for more details.
- django_cfg/__init__.py +1 -1
- django_cfg/apps/accounts/services/otp_service.py +3 -14
- django_cfg/apps/centrifugo/__init__.py +57 -0
- django_cfg/apps/centrifugo/admin/__init__.py +13 -0
- django_cfg/apps/centrifugo/admin/centrifugo_log.py +249 -0
- django_cfg/apps/centrifugo/admin/config.py +82 -0
- django_cfg/apps/centrifugo/apps.py +31 -0
- django_cfg/apps/centrifugo/codegen/IMPLEMENTATION_SUMMARY.md +475 -0
- django_cfg/apps/centrifugo/codegen/README.md +242 -0
- django_cfg/apps/centrifugo/codegen/USAGE.md +616 -0
- django_cfg/apps/centrifugo/codegen/__init__.py +19 -0
- django_cfg/apps/centrifugo/codegen/discovery.py +246 -0
- django_cfg/apps/centrifugo/codegen/generators/go_thin/__init__.py +5 -0
- django_cfg/apps/centrifugo/codegen/generators/go_thin/generator.py +174 -0
- django_cfg/apps/centrifugo/codegen/generators/go_thin/templates/README.md.j2 +182 -0
- django_cfg/apps/centrifugo/codegen/generators/go_thin/templates/client.go.j2 +64 -0
- django_cfg/apps/centrifugo/codegen/generators/go_thin/templates/go.mod.j2 +10 -0
- django_cfg/apps/centrifugo/codegen/generators/go_thin/templates/rpc_client.go.j2 +300 -0
- django_cfg/apps/centrifugo/codegen/generators/go_thin/templates/rpc_client.go.j2.old +267 -0
- django_cfg/apps/centrifugo/codegen/generators/go_thin/templates/types.go.j2 +16 -0
- django_cfg/apps/centrifugo/codegen/generators/python_thin/__init__.py +7 -0
- django_cfg/apps/centrifugo/codegen/generators/python_thin/generator.py +241 -0
- django_cfg/apps/centrifugo/codegen/generators/python_thin/templates/README.md.j2 +128 -0
- django_cfg/apps/centrifugo/codegen/generators/python_thin/templates/__init__.py.j2 +22 -0
- django_cfg/apps/centrifugo/codegen/generators/python_thin/templates/client.py.j2 +73 -0
- django_cfg/apps/centrifugo/codegen/generators/python_thin/templates/models.py.j2 +19 -0
- django_cfg/apps/centrifugo/codegen/generators/python_thin/templates/requirements.txt.j2 +8 -0
- django_cfg/apps/centrifugo/codegen/generators/python_thin/templates/rpc_client.py.j2 +193 -0
- django_cfg/apps/centrifugo/codegen/generators/typescript_thin/__init__.py +5 -0
- django_cfg/apps/centrifugo/codegen/generators/typescript_thin/generator.py +124 -0
- django_cfg/apps/centrifugo/codegen/generators/typescript_thin/templates/README.md.j2 +38 -0
- django_cfg/apps/centrifugo/codegen/generators/typescript_thin/templates/client.ts.j2 +25 -0
- django_cfg/apps/centrifugo/codegen/generators/typescript_thin/templates/index.ts.j2 +12 -0
- django_cfg/apps/centrifugo/codegen/generators/typescript_thin/templates/package.json.j2 +13 -0
- django_cfg/apps/centrifugo/codegen/generators/typescript_thin/templates/rpc-client.ts.j2 +137 -0
- django_cfg/apps/centrifugo/codegen/generators/typescript_thin/templates/tsconfig.json.j2 +14 -0
- django_cfg/apps/centrifugo/codegen/generators/typescript_thin/templates/types.ts.j2 +9 -0
- django_cfg/apps/centrifugo/codegen/utils/__init__.py +37 -0
- django_cfg/apps/centrifugo/codegen/utils/naming.py +155 -0
- django_cfg/apps/centrifugo/codegen/utils/type_converter.py +349 -0
- django_cfg/apps/centrifugo/decorators.py +137 -0
- django_cfg/apps/centrifugo/management/__init__.py +1 -0
- django_cfg/apps/centrifugo/management/commands/__init__.py +1 -0
- django_cfg/apps/centrifugo/management/commands/generate_centrifugo_clients.py +254 -0
- django_cfg/apps/centrifugo/managers/__init__.py +12 -0
- django_cfg/apps/centrifugo/managers/centrifugo_log.py +264 -0
- django_cfg/apps/centrifugo/migrations/0001_initial.py +164 -0
- django_cfg/apps/centrifugo/migrations/__init__.py +3 -0
- django_cfg/apps/centrifugo/models/__init__.py +11 -0
- django_cfg/apps/centrifugo/models/centrifugo_log.py +210 -0
- django_cfg/apps/centrifugo/registry.py +106 -0
- django_cfg/apps/centrifugo/router.py +125 -0
- django_cfg/apps/centrifugo/serializers/__init__.py +40 -0
- django_cfg/apps/centrifugo/serializers/admin_api.py +264 -0
- django_cfg/apps/centrifugo/serializers/channels.py +26 -0
- django_cfg/apps/centrifugo/serializers/health.py +17 -0
- django_cfg/apps/centrifugo/serializers/publishes.py +16 -0
- django_cfg/apps/centrifugo/serializers/stats.py +21 -0
- django_cfg/apps/centrifugo/services/__init__.py +12 -0
- django_cfg/apps/centrifugo/services/client/__init__.py +29 -0
- django_cfg/apps/centrifugo/services/client/client.py +582 -0
- django_cfg/apps/centrifugo/services/client/config.py +236 -0
- django_cfg/apps/centrifugo/services/client/exceptions.py +212 -0
- django_cfg/apps/centrifugo/services/config_helper.py +63 -0
- django_cfg/apps/centrifugo/services/dashboard_notifier.py +157 -0
- django_cfg/apps/centrifugo/services/logging.py +677 -0
- django_cfg/apps/centrifugo/static/django_cfg_centrifugo/css/dashboard.css +260 -0
- django_cfg/apps/centrifugo/static/django_cfg_centrifugo/js/dashboard/live_channels.mjs +313 -0
- django_cfg/apps/centrifugo/static/django_cfg_centrifugo/js/dashboard/live_testing.mjs +803 -0
- django_cfg/apps/centrifugo/static/django_cfg_centrifugo/js/dashboard/main.mjs +333 -0
- django_cfg/apps/centrifugo/static/django_cfg_centrifugo/js/dashboard/overview.mjs +432 -0
- django_cfg/apps/centrifugo/static/django_cfg_centrifugo/js/dashboard/testing.mjs +33 -0
- django_cfg/apps/centrifugo/static/django_cfg_centrifugo/js/dashboard/websocket.mjs +210 -0
- django_cfg/apps/centrifugo/templates/django_cfg_centrifugo/components/channels_content.html +46 -0
- django_cfg/apps/centrifugo/templates/django_cfg_centrifugo/components/live_channels_content.html +123 -0
- django_cfg/apps/centrifugo/templates/django_cfg_centrifugo/components/overview_content.html +45 -0
- django_cfg/apps/centrifugo/templates/django_cfg_centrifugo/components/publishes_content.html +84 -0
- django_cfg/apps/{ipc/templates/django_cfg_ipc → centrifugo/templates/django_cfg_centrifugo}/components/stat_cards.html +23 -20
- django_cfg/apps/centrifugo/templates/django_cfg_centrifugo/components/system_status.html +91 -0
- django_cfg/apps/{ipc/templates/django_cfg_ipc → centrifugo/templates/django_cfg_centrifugo}/components/tab_navigation.html +15 -15
- django_cfg/apps/centrifugo/templates/django_cfg_centrifugo/components/testing_tools.html +415 -0
- django_cfg/apps/centrifugo/templates/django_cfg_centrifugo/layout/base.html +61 -0
- django_cfg/apps/centrifugo/templates/django_cfg_centrifugo/pages/dashboard.html +58 -0
- django_cfg/apps/centrifugo/templates/django_cfg_centrifugo/tags/connection_script.html +48 -0
- django_cfg/apps/centrifugo/templatetags/__init__.py +1 -0
- django_cfg/apps/centrifugo/templatetags/centrifugo_tags.py +81 -0
- django_cfg/apps/centrifugo/urls.py +31 -0
- django_cfg/apps/{ipc → centrifugo}/urls_admin.py +4 -4
- django_cfg/apps/centrifugo/views/__init__.py +15 -0
- django_cfg/apps/centrifugo/views/admin_api.py +380 -0
- django_cfg/apps/centrifugo/views/dashboard.py +15 -0
- django_cfg/apps/centrifugo/views/monitoring.py +286 -0
- django_cfg/apps/centrifugo/views/testing_api.py +422 -0
- django_cfg/apps/support/utils/support_email_service.py +5 -18
- django_cfg/apps/tasks/templates/tasks/layout/base.html +0 -2
- django_cfg/apps/urls.py +5 -5
- django_cfg/core/base/config_model.py +4 -44
- django_cfg/core/builders/apps_builder.py +2 -2
- django_cfg/core/generation/integration_generators/third_party.py +8 -8
- django_cfg/core/utils/__init__.py +5 -0
- django_cfg/core/utils/url_helpers.py +73 -0
- django_cfg/modules/base.py +7 -7
- django_cfg/modules/django_client/core/__init__.py +2 -1
- django_cfg/modules/django_client/core/config/config.py +8 -0
- django_cfg/modules/django_client/core/generator/__init__.py +42 -2
- django_cfg/modules/django_client/core/generator/go/__init__.py +14 -0
- django_cfg/modules/django_client/core/generator/go/client_generator.py +124 -0
- django_cfg/modules/django_client/core/generator/go/files_generator.py +133 -0
- django_cfg/modules/django_client/core/generator/go/generator.py +203 -0
- django_cfg/modules/django_client/core/generator/go/models_generator.py +304 -0
- django_cfg/modules/django_client/core/generator/go/naming.py +193 -0
- django_cfg/modules/django_client/core/generator/go/operations_generator.py +134 -0
- django_cfg/modules/django_client/core/generator/go/templates/Makefile.j2 +38 -0
- django_cfg/modules/django_client/core/generator/go/templates/README.md.j2 +55 -0
- django_cfg/modules/django_client/core/generator/go/templates/client.go.j2 +122 -0
- django_cfg/modules/django_client/core/generator/go/templates/enums.go.j2 +49 -0
- django_cfg/modules/django_client/core/generator/go/templates/errors.go.j2 +182 -0
- django_cfg/modules/django_client/core/generator/go/templates/go.mod.j2 +6 -0
- django_cfg/modules/django_client/core/generator/go/templates/main_client.go.j2 +60 -0
- django_cfg/modules/django_client/core/generator/go/templates/middleware.go.j2 +388 -0
- django_cfg/modules/django_client/core/generator/go/templates/models.go.j2 +28 -0
- django_cfg/modules/django_client/core/generator/go/templates/operations_client.go.j2 +142 -0
- django_cfg/modules/django_client/core/generator/go/templates/validation.go.j2 +217 -0
- django_cfg/modules/django_client/core/generator/go/type_mapper.py +380 -0
- django_cfg/modules/django_client/management/commands/generate_client.py +53 -3
- django_cfg/modules/django_client/system/generate_mjs_clients.py +3 -1
- django_cfg/modules/django_client/system/schema_parser.py +5 -1
- django_cfg/modules/django_tailwind/templates/django_tailwind/base.html +1 -0
- django_cfg/modules/django_twilio/sendgrid_service.py +7 -4
- django_cfg/modules/django_unfold/dashboard.py +25 -19
- django_cfg/pyproject.toml +1 -1
- django_cfg/registry/core.py +2 -0
- django_cfg/registry/modules.py +2 -2
- django_cfg/static/js/api/centrifugo/client.mjs +164 -0
- django_cfg/static/js/api/centrifugo/index.mjs +13 -0
- django_cfg/static/js/api/index.mjs +5 -5
- django_cfg/static/js/api/types.mjs +89 -26
- {django_cfg-1.4.62.dist-info → django_cfg-1.4.64.dist-info}/METADATA +1 -1
- {django_cfg-1.4.62.dist-info → django_cfg-1.4.64.dist-info}/RECORD +142 -70
- django_cfg/apps/ipc/README.md +0 -346
- django_cfg/apps/ipc/RPC_LOGGING.md +0 -321
- django_cfg/apps/ipc/TESTING.md +0 -539
- django_cfg/apps/ipc/__init__.py +0 -60
- django_cfg/apps/ipc/admin.py +0 -232
- django_cfg/apps/ipc/apps.py +0 -98
- django_cfg/apps/ipc/migrations/0001_initial.py +0 -137
- django_cfg/apps/ipc/migrations/0002_rpclog_is_event.py +0 -23
- django_cfg/apps/ipc/migrations/__init__.py +0 -0
- django_cfg/apps/ipc/models.py +0 -229
- django_cfg/apps/ipc/serializers/__init__.py +0 -29
- django_cfg/apps/ipc/serializers/serializers.py +0 -343
- django_cfg/apps/ipc/services/__init__.py +0 -7
- django_cfg/apps/ipc/services/client/__init__.py +0 -23
- django_cfg/apps/ipc/services/client/client.py +0 -621
- django_cfg/apps/ipc/services/client/config.py +0 -214
- django_cfg/apps/ipc/services/client/exceptions.py +0 -201
- django_cfg/apps/ipc/services/logging.py +0 -239
- django_cfg/apps/ipc/services/monitor.py +0 -466
- django_cfg/apps/ipc/services/rpc_log_consumer.py +0 -330
- django_cfg/apps/ipc/static/django_cfg_ipc/js/dashboard/main.mjs +0 -269
- django_cfg/apps/ipc/static/django_cfg_ipc/js/dashboard/overview.mjs +0 -259
- django_cfg/apps/ipc/static/django_cfg_ipc/js/dashboard/testing.mjs +0 -375
- django_cfg/apps/ipc/static/django_cfg_ipc/js/dashboard.mjs.old +0 -441
- django_cfg/apps/ipc/templates/django_cfg_ipc/components/methods_content.html +0 -22
- django_cfg/apps/ipc/templates/django_cfg_ipc/components/notifications_content.html +0 -9
- django_cfg/apps/ipc/templates/django_cfg_ipc/components/overview_content.html +0 -9
- django_cfg/apps/ipc/templates/django_cfg_ipc/components/requests_content.html +0 -23
- django_cfg/apps/ipc/templates/django_cfg_ipc/components/system_status.html +0 -47
- django_cfg/apps/ipc/templates/django_cfg_ipc/components/testing_tools.html +0 -184
- django_cfg/apps/ipc/templates/django_cfg_ipc/layout/base.html +0 -71
- django_cfg/apps/ipc/templates/django_cfg_ipc/pages/dashboard.html +0 -56
- django_cfg/apps/ipc/urls.py +0 -23
- django_cfg/apps/ipc/views/__init__.py +0 -13
- django_cfg/apps/ipc/views/dashboard.py +0 -15
- django_cfg/apps/ipc/views/monitoring.py +0 -251
- django_cfg/apps/ipc/views/testing.py +0 -285
- django_cfg/static/js/api/ipc/client.mjs +0 -114
- django_cfg/static/js/api/ipc/index.mjs +0 -13
- {django_cfg-1.4.62.dist-info → django_cfg-1.4.64.dist-info}/WHEEL +0 -0
- {django_cfg-1.4.62.dist-info → django_cfg-1.4.64.dist-info}/entry_points.txt +0 -0
- {django_cfg-1.4.62.dist-info → django_cfg-1.4.64.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
import { BaseAPIClient } from '../base.mjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Centrifugo API Client
|
|
5
|
+
* Auto-generated from OpenAPI schema
|
|
6
|
+
* @module centrifugo
|
|
7
|
+
* @extends BaseAPIClient
|
|
8
|
+
*/
|
|
9
|
+
export class CentrifugoAPI extends BaseAPIClient {
|
|
10
|
+
/**
|
|
11
|
+
* Initialize centrifugo API client
|
|
12
|
+
* @param {string} [baseURL] - Optional base URL
|
|
13
|
+
*/
|
|
14
|
+
constructor(baseURL) {
|
|
15
|
+
super(baseURL);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Get channel statistics * Returns statistics grouped by channel. * @param {Object} [params={}] - Query parameters * @param {number} [params.hours] - Statistics period in hours (default: 24) * @returns {Promise<ChannelList>} Response data
|
|
20
|
+
*/
|
|
21
|
+
async centrifugoAdminApiMonitorChannelsRetrieve(params = {}) {
|
|
22
|
+
const path = `/cfg/centrifugo/admin/api/monitor/channels/`; return this.get(path, params); }
|
|
23
|
+
/**
|
|
24
|
+
* Get Centrifugo health status * Returns the current health status of the Centrifugo client. * @returns {Promise<HealthCheck>} Response data
|
|
25
|
+
*/
|
|
26
|
+
async centrifugoAdminApiMonitorHealthRetrieve() {
|
|
27
|
+
const path = `/cfg/centrifugo/admin/api/monitor/health/`; return this.get(path); }
|
|
28
|
+
/**
|
|
29
|
+
* Get overview statistics * Returns overview statistics for Centrifugo publishes. * @param {Object} [params={}] - Query parameters * @param {number} [params.hours] - Statistics period in hours (default: 24) * @returns {Promise<OverviewStats>} Response data
|
|
30
|
+
*/
|
|
31
|
+
async centrifugoAdminApiMonitorOverviewRetrieve(params = {}) {
|
|
32
|
+
const path = `/cfg/centrifugo/admin/api/monitor/overview/`; return this.get(path, params); }
|
|
33
|
+
/**
|
|
34
|
+
* Get recent publishes * Returns a list of recent Centrifugo publishes with their details. * @param {Object} [params={}] - Query parameters * @param {string} [params.channel] - Filter by channel name * @param {number} [params.count] - Number of publishes to return (default: 50, max: 200) * @returns {Promise<RecentPublishes>} Response data
|
|
35
|
+
*/
|
|
36
|
+
async centrifugoAdminApiMonitorPublishesRetrieve(params = {}) {
|
|
37
|
+
const path = `/cfg/centrifugo/admin/api/monitor/publishes/`; return this.get(path, params); }
|
|
38
|
+
/**
|
|
39
|
+
* Get connection token for dashboard * Returns JWT token and config for WebSocket connection to Centrifugo. * @returns {Promise<Object>} Response data
|
|
40
|
+
*/
|
|
41
|
+
async centrifugoAdminApiServerAuthTokenCreate() {
|
|
42
|
+
const path = `/cfg/centrifugo/admin/api/server/auth/token/`; return this.post(path, {}); }
|
|
43
|
+
/**
|
|
44
|
+
* List active channels * Returns list of active channels with optional pattern filter. * @param {CentrifugoChannelsRequestRequest} data - Request body * @returns {Promise<CentrifugoChannelsResponse>} Response data
|
|
45
|
+
*/
|
|
46
|
+
async centrifugoAdminApiServerChannelsCreate(data) {
|
|
47
|
+
const path = `/cfg/centrifugo/admin/api/server/channels/`; return this.post(path, data); }
|
|
48
|
+
/**
|
|
49
|
+
* Get channel history * Returns message history for a channel. * @param {CentrifugoHistoryRequestRequest} data - Request body * @returns {Promise<CentrifugoHistoryResponse>} Response data
|
|
50
|
+
*/
|
|
51
|
+
async centrifugoAdminApiServerHistoryCreate(data) {
|
|
52
|
+
const path = `/cfg/centrifugo/admin/api/server/history/`; return this.post(path, data); }
|
|
53
|
+
/**
|
|
54
|
+
* Get Centrifugo server info * Returns server information including node count, version, and uptime. * @returns {Promise<CentrifugoInfoResponse>} Response data
|
|
55
|
+
*/
|
|
56
|
+
async centrifugoAdminApiServerInfoCreate() {
|
|
57
|
+
const path = `/cfg/centrifugo/admin/api/server/info/`; return this.post(path, {}); }
|
|
58
|
+
/**
|
|
59
|
+
* Get channel presence * Returns list of clients currently subscribed to a channel. * @param {CentrifugoPresenceRequestRequest} data - Request body * @returns {Promise<CentrifugoPresenceResponse>} Response data
|
|
60
|
+
*/
|
|
61
|
+
async centrifugoAdminApiServerPresenceCreate(data) {
|
|
62
|
+
const path = `/cfg/centrifugo/admin/api/server/presence/`; return this.post(path, data); }
|
|
63
|
+
/**
|
|
64
|
+
* Get channel presence statistics * Returns quick statistics about channel presence (num_clients, num_users). * @param {CentrifugoPresenceStatsRequestRequest} data - Request body * @returns {Promise<CentrifugoPresenceStatsResponse>} Response data
|
|
65
|
+
*/
|
|
66
|
+
async centrifugoAdminApiServerPresenceStatsCreate(data) {
|
|
67
|
+
const path = `/cfg/centrifugo/admin/api/server/presence-stats/`; return this.post(path, data); }
|
|
68
|
+
/**
|
|
69
|
+
* Generate connection token * Generate JWT token for WebSocket connection to Centrifugo. * @param {ConnectionTokenRequestRequest} data - Request body * @returns {Promise<ConnectionTokenResponse>} Response data
|
|
70
|
+
*/
|
|
71
|
+
async centrifugoAdminApiTestingConnectionTokenCreate(data) {
|
|
72
|
+
const path = `/cfg/centrifugo/admin/api/testing/connection-token/`; return this.post(path, data); }
|
|
73
|
+
/**
|
|
74
|
+
* Publish test message * Publish test message to Centrifugo via wrapper with optional ACK tracking. * @param {PublishTestRequestRequest} data - Request body * @returns {Promise<PublishTestResponse>} Response data
|
|
75
|
+
*/
|
|
76
|
+
async centrifugoAdminApiTestingPublishTestCreate(data) {
|
|
77
|
+
const path = `/cfg/centrifugo/admin/api/testing/publish-test/`; return this.post(path, data); }
|
|
78
|
+
/**
|
|
79
|
+
* Publish with database logging * Publish message using CentrifugoClient with database logging. This will create CentrifugoLog records. * @param {PublishTestRequestRequest} data - Request body * @returns {Promise<PublishTestResponse>} Response data
|
|
80
|
+
*/
|
|
81
|
+
async centrifugoAdminApiTestingPublishWithLoggingCreate(data) {
|
|
82
|
+
const path = `/cfg/centrifugo/admin/api/testing/publish-with-logging/`; return this.post(path, data); }
|
|
83
|
+
/**
|
|
84
|
+
* Send manual ACK * Manually send ACK for a message to the wrapper. Pass message_id in request body. * @param {ManualAckRequestRequest} data - Request body * @returns {Promise<ManualAckResponse>} Response data
|
|
85
|
+
*/
|
|
86
|
+
async centrifugoAdminApiTestingSendAckCreate(data) {
|
|
87
|
+
const path = `/cfg/centrifugo/admin/api/testing/send-ack/`; return this.post(path, data); }
|
|
88
|
+
/**
|
|
89
|
+
* Get channel statistics * Returns statistics grouped by channel. * @param {Object} [params={}] - Query parameters * @param {number} [params.hours] - Statistics period in hours (default: 24) * @returns {Promise<ChannelList>} Response data
|
|
90
|
+
*/
|
|
91
|
+
async centrifugoMonitorChannelsRetrieve(params = {}) {
|
|
92
|
+
const path = `/cfg/centrifugo/monitor/channels/`; return this.get(path, params); }
|
|
93
|
+
/**
|
|
94
|
+
* Get Centrifugo health status * Returns the current health status of the Centrifugo client. * @returns {Promise<HealthCheck>} Response data
|
|
95
|
+
*/
|
|
96
|
+
async centrifugoMonitorHealthRetrieve() {
|
|
97
|
+
const path = `/cfg/centrifugo/monitor/health/`; return this.get(path); }
|
|
98
|
+
/**
|
|
99
|
+
* Get overview statistics * Returns overview statistics for Centrifugo publishes. * @param {Object} [params={}] - Query parameters * @param {number} [params.hours] - Statistics period in hours (default: 24) * @returns {Promise<OverviewStats>} Response data
|
|
100
|
+
*/
|
|
101
|
+
async centrifugoMonitorOverviewRetrieve(params = {}) {
|
|
102
|
+
const path = `/cfg/centrifugo/monitor/overview/`; return this.get(path, params); }
|
|
103
|
+
/**
|
|
104
|
+
* Get recent publishes * Returns a list of recent Centrifugo publishes with their details. * @param {Object} [params={}] - Query parameters * @param {string} [params.channel] - Filter by channel name * @param {number} [params.count] - Number of publishes to return (default: 50, max: 200) * @returns {Promise<RecentPublishes>} Response data
|
|
105
|
+
*/
|
|
106
|
+
async centrifugoMonitorPublishesRetrieve(params = {}) {
|
|
107
|
+
const path = `/cfg/centrifugo/monitor/publishes/`; return this.get(path, params); }
|
|
108
|
+
/**
|
|
109
|
+
* Get connection token for dashboard * Returns JWT token and config for WebSocket connection to Centrifugo. * @returns {Promise<Object>} Response data
|
|
110
|
+
*/
|
|
111
|
+
async centrifugoServerAuthTokenCreate() {
|
|
112
|
+
const path = `/cfg/centrifugo/server/auth/token/`; return this.post(path, {}); }
|
|
113
|
+
/**
|
|
114
|
+
* List active channels * Returns list of active channels with optional pattern filter. * @param {CentrifugoChannelsRequestRequest} data - Request body * @returns {Promise<CentrifugoChannelsResponse>} Response data
|
|
115
|
+
*/
|
|
116
|
+
async centrifugoServerChannelsCreate(data) {
|
|
117
|
+
const path = `/cfg/centrifugo/server/channels/`; return this.post(path, data); }
|
|
118
|
+
/**
|
|
119
|
+
* Get channel history * Returns message history for a channel. * @param {CentrifugoHistoryRequestRequest} data - Request body * @returns {Promise<CentrifugoHistoryResponse>} Response data
|
|
120
|
+
*/
|
|
121
|
+
async centrifugoServerHistoryCreate(data) {
|
|
122
|
+
const path = `/cfg/centrifugo/server/history/`; return this.post(path, data); }
|
|
123
|
+
/**
|
|
124
|
+
* Get Centrifugo server info * Returns server information including node count, version, and uptime. * @returns {Promise<CentrifugoInfoResponse>} Response data
|
|
125
|
+
*/
|
|
126
|
+
async centrifugoServerInfoCreate() {
|
|
127
|
+
const path = `/cfg/centrifugo/server/info/`; return this.post(path, {}); }
|
|
128
|
+
/**
|
|
129
|
+
* Get channel presence * Returns list of clients currently subscribed to a channel. * @param {CentrifugoPresenceRequestRequest} data - Request body * @returns {Promise<CentrifugoPresenceResponse>} Response data
|
|
130
|
+
*/
|
|
131
|
+
async centrifugoServerPresenceCreate(data) {
|
|
132
|
+
const path = `/cfg/centrifugo/server/presence/`; return this.post(path, data); }
|
|
133
|
+
/**
|
|
134
|
+
* Get channel presence statistics * Returns quick statistics about channel presence (num_clients, num_users). * @param {CentrifugoPresenceStatsRequestRequest} data - Request body * @returns {Promise<CentrifugoPresenceStatsResponse>} Response data
|
|
135
|
+
*/
|
|
136
|
+
async centrifugoServerPresenceStatsCreate(data) {
|
|
137
|
+
const path = `/cfg/centrifugo/server/presence-stats/`; return this.post(path, data); }
|
|
138
|
+
/**
|
|
139
|
+
* Generate connection token * Generate JWT token for WebSocket connection to Centrifugo. * @param {ConnectionTokenRequestRequest} data - Request body * @returns {Promise<ConnectionTokenResponse>} Response data
|
|
140
|
+
*/
|
|
141
|
+
async centrifugoTestingConnectionTokenCreate(data) {
|
|
142
|
+
const path = `/cfg/centrifugo/testing/connection-token/`; return this.post(path, data); }
|
|
143
|
+
/**
|
|
144
|
+
* Publish test message * Publish test message to Centrifugo via wrapper with optional ACK tracking. * @param {PublishTestRequestRequest} data - Request body * @returns {Promise<PublishTestResponse>} Response data
|
|
145
|
+
*/
|
|
146
|
+
async centrifugoTestingPublishTestCreate(data) {
|
|
147
|
+
const path = `/cfg/centrifugo/testing/publish-test/`; return this.post(path, data); }
|
|
148
|
+
/**
|
|
149
|
+
* Publish with database logging * Publish message using CentrifugoClient with database logging. This will create CentrifugoLog records. * @param {PublishTestRequestRequest} data - Request body * @returns {Promise<PublishTestResponse>} Response data
|
|
150
|
+
*/
|
|
151
|
+
async centrifugoTestingPublishWithLoggingCreate(data) {
|
|
152
|
+
const path = `/cfg/centrifugo/testing/publish-with-logging/`; return this.post(path, data); }
|
|
153
|
+
/**
|
|
154
|
+
* Send manual ACK * Manually send ACK for a message to the wrapper. Pass message_id in request body. * @param {ManualAckRequestRequest} data - Request body * @returns {Promise<ManualAckResponse>} Response data
|
|
155
|
+
*/
|
|
156
|
+
async centrifugoTestingSendAckCreate(data) {
|
|
157
|
+
const path = `/cfg/centrifugo/testing/send-ack/`; return this.post(path, data); }
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
// Default instance for convenience
|
|
161
|
+
export const centrifugoAPI = new CentrifugoAPI();
|
|
162
|
+
|
|
163
|
+
// Default export
|
|
164
|
+
export default CentrifugoAPI;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Centrifugo API Module
|
|
3
|
+
* Re-exports the API client for convenient importing
|
|
4
|
+
* @module centrifugo
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { CentrifugoAPI, centrifugoAPI } from './client.mjs';
|
|
8
|
+
|
|
9
|
+
// Re-export the class and instance
|
|
10
|
+
export { CentrifugoAPI, centrifugoAPI };
|
|
11
|
+
|
|
12
|
+
// Default export is the instance for convenience
|
|
13
|
+
export default centrifugoAPI;
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
|
|
23
23
|
import { BaseAPIClient } from './base.mjs';
|
|
24
24
|
import { AccountsAPI, accountsAPI } from './accounts/index.mjs';
|
|
25
|
-
import {
|
|
25
|
+
import { CentrifugoAPI, centrifugoAPI } from './centrifugo/index.mjs';
|
|
26
26
|
import { KnowbaseAPI, knowbaseAPI } from './knowbase/index.mjs';
|
|
27
27
|
import { LeadsAPI, leadsAPI } from './leads/index.mjs';
|
|
28
28
|
import { NewsletterAPI, newsletterAPI } from './newsletter/index.mjs';
|
|
@@ -37,7 +37,7 @@ import { TasksAPI, tasksAPI } from './tasks/index.mjs';
|
|
|
37
37
|
export {
|
|
38
38
|
BaseAPIClient,
|
|
39
39
|
AccountsAPI,
|
|
40
|
-
|
|
40
|
+
CentrifugoAPI,
|
|
41
41
|
KnowbaseAPI,
|
|
42
42
|
LeadsAPI,
|
|
43
43
|
NewsletterAPI,
|
|
@@ -53,7 +53,7 @@ export {
|
|
|
53
53
|
*/
|
|
54
54
|
export {
|
|
55
55
|
accountsAPI,
|
|
56
|
-
|
|
56
|
+
centrifugoAPI,
|
|
57
57
|
knowbaseAPI,
|
|
58
58
|
leadsAPI,
|
|
59
59
|
newsletterAPI,
|
|
@@ -69,7 +69,7 @@ export {
|
|
|
69
69
|
*/
|
|
70
70
|
export const apis = {
|
|
71
71
|
accounts: accountsAPI,
|
|
72
|
-
|
|
72
|
+
centrifugo: centrifugoAPI,
|
|
73
73
|
knowbase: knowbaseAPI,
|
|
74
74
|
leads: leadsAPI,
|
|
75
75
|
newsletter: newsletterAPI,
|
|
@@ -95,7 +95,7 @@ export function getAPI(appName) {
|
|
|
95
95
|
*/
|
|
96
96
|
export const availableApps = [
|
|
97
97
|
'accounts',
|
|
98
|
-
'
|
|
98
|
+
'centrifugo',
|
|
99
99
|
'knowbase',
|
|
100
100
|
'leads',
|
|
101
101
|
'newsletter',
|
|
@@ -87,6 +87,78 @@
|
|
|
87
87
|
/**
|
|
88
88
|
* @typedef {Object} BulkEmailResponse * @description Response for bulk email sending. * @property {boolean} success * @property {number} sent_count * @property {number} failed_count * @property {number} total_recipients * @property {string} [error] */
|
|
89
89
|
|
|
90
|
+
/**
|
|
91
|
+
* @typedef {Object} CentrifugoChannelInfo * @description Information about a single channel. * @property {number} num_clients - Number of connected clients in channel */
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* @typedef {Object} CentrifugoChannelsRequestRequest * @description Request to list active channels. * @property {any} [pattern] - Pattern to filter channels (e.g., 'user:*') */
|
|
95
|
+
|
|
96
|
+
/**
|
|
97
|
+
* @typedef {Object} CentrifugoChannelsResponse * @description List of active channels response. * @property {any} [error] - Error if any * @property {any} [result] - Result data */
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* @typedef {Object} CentrifugoChannelsResult * @description Channels result wrapper. * @property {Record<string, CentrifugoChannelInfo>} channels - Map of channel names to channel info */
|
|
101
|
+
|
|
102
|
+
/**
|
|
103
|
+
* @typedef {Object} CentrifugoClientInfo * @description Information about connected client. * @property {string} user - User ID * @property {string} client - Client UUID * @property {any} [conn_info] - Connection metadata * @property {any} [chan_info] - Channel-specific metadata */
|
|
104
|
+
|
|
105
|
+
/**
|
|
106
|
+
* @typedef {Object} CentrifugoError * @description Centrifugo API error structure. * @property {number} [code] - Error code (0 = no error) * @property {string} [message] - Error message */
|
|
107
|
+
|
|
108
|
+
/**
|
|
109
|
+
* @typedef {Object} CentrifugoHistoryRequestRequest * @description Request to get channel history. * @property {string} channel - Channel name * @property {any} [limit] - Maximum number of messages to return * @property {any} [since] - Stream position to get messages since * @property {any} [reverse] - Reverse message order (newest first) */
|
|
110
|
+
|
|
111
|
+
/**
|
|
112
|
+
* @typedef {Object} CentrifugoHistoryResponse * @description Channel history response. * @property {any} [error] - Error if any * @property {any} [result] - Result data */
|
|
113
|
+
|
|
114
|
+
/**
|
|
115
|
+
* @typedef {Object} CentrifugoHistoryResult * @description History result wrapper. * @property {CentrifugoPublication[]} publications - List of publications * @property {string} epoch - Current stream epoch * @property {number} offset - Latest stream offset */
|
|
116
|
+
|
|
117
|
+
/**
|
|
118
|
+
* @typedef {Object} CentrifugoInfoResponse * @description Server info response. * @property {any} [error] - Error if any * @property {any} [result] - Result data */
|
|
119
|
+
|
|
120
|
+
/**
|
|
121
|
+
* @typedef {Object} CentrifugoInfoResult * @description Info result wrapper. * @property {CentrifugoNodeInfo[]} nodes - List of Centrifugo nodes */
|
|
122
|
+
|
|
123
|
+
/**
|
|
124
|
+
* @typedef {Object} CentrifugoMetrics * @description Server metrics. * @property {number} interval - Metrics collection interval * @property {Record<string, number>} items - Metric name to value mapping */
|
|
125
|
+
|
|
126
|
+
/**
|
|
127
|
+
* @typedef {Object} CentrifugoNodeInfo * @description Information about a single Centrifugo node. * @property {string} uid - Unique node identifier * @property {string} name - Node name * @property {string} version - Centrifugo version * @property {number} num_clients - Number of connected clients * @property {number} num_users - Number of unique users * @property {number} num_channels - Number of active channels * @property {number} uptime - Node uptime in seconds * @property {number} num_subs - Total number of subscriptions * @property {any} [metrics] - Server metrics * @property {any} [process] - Process information */
|
|
128
|
+
|
|
129
|
+
/**
|
|
130
|
+
* @typedef {Object} CentrifugoPresenceRequestRequest * @description Request to get channel presence. * @property {string} channel - Channel name */
|
|
131
|
+
|
|
132
|
+
/**
|
|
133
|
+
* @typedef {Object} CentrifugoPresenceResponse * @description Channel presence response. * @property {any} [error] - Error if any * @property {any} [result] - Result data */
|
|
134
|
+
|
|
135
|
+
/**
|
|
136
|
+
* @typedef {Object} CentrifugoPresenceResult * @description Presence result wrapper. * @property {Record<string, CentrifugoClientInfo>} presence - Map of client IDs to client info */
|
|
137
|
+
|
|
138
|
+
/**
|
|
139
|
+
* @typedef {Object} CentrifugoPresenceStatsRequestRequest * @description Request to get channel presence statistics. * @property {string} channel - Channel name */
|
|
140
|
+
|
|
141
|
+
/**
|
|
142
|
+
* @typedef {Object} CentrifugoPresenceStatsResponse * @description Channel presence stats response. * @property {any} [error] - Error if any * @property {any} [result] - Result data */
|
|
143
|
+
|
|
144
|
+
/**
|
|
145
|
+
* @typedef {Object} CentrifugoPresenceStatsResult * @description Presence stats result. * @property {number} num_clients - Number of connected clients * @property {number} num_users - Number of unique users */
|
|
146
|
+
|
|
147
|
+
/**
|
|
148
|
+
* @typedef {Object} CentrifugoProcess * @description Process information. * @property {number} cpu - CPU usage percentage * @property {number} rss - Resident set size in bytes */
|
|
149
|
+
|
|
150
|
+
/**
|
|
151
|
+
* @typedef {Object} CentrifugoPublication * @description Single publication (message) in channel history. * @property {Record<string, any>} data - Message payload * @property {any} [info] - Publisher client info * @property {number} offset - Message offset in channel stream * @property {any} [tags] - Optional message tags */
|
|
152
|
+
|
|
153
|
+
/**
|
|
154
|
+
* @typedef {Object} CentrifugoStreamPosition * @description Stream position for pagination. * @property {number} offset - Stream offset * @property {string} epoch - Stream epoch */
|
|
155
|
+
|
|
156
|
+
/**
|
|
157
|
+
* @typedef {Object} ChannelList * @description List of channel statistics. * @property {ChannelStatsSerializer[]} channels - Channel statistics * @property {number} total_channels - Total number of channels */
|
|
158
|
+
|
|
159
|
+
/**
|
|
160
|
+
* @typedef {Object} ChannelStatsSerializer * @description Statistics per channel. * @property {string} channel - Channel name * @property {number} total - Total publishes to this channel * @property {number} successful - Successful publishes * @property {number} failed - Failed publishes * @property {number} avg_duration_ms - Average duration * @property {number} avg_acks - Average ACKs received */
|
|
161
|
+
|
|
90
162
|
/**
|
|
91
163
|
* @typedef {Object} ChatHistory * @description Chat history response serializer. * @property {string} session_id * @property {ChatMessage[]} messages * @property {number} total_messages */
|
|
92
164
|
|
|
@@ -124,6 +196,12 @@
|
|
|
124
196
|
/**
|
|
125
197
|
* @typedef {Object} ChunkRevectorizationRequestRequest * @description Chunk re-vectorization request serializer. * @property {string[]} chunk_ids - List of chunk IDs to re-vectorize * @property {boolean} [force] - Force re-vectorization even if already vectorized */
|
|
126
198
|
|
|
199
|
+
/**
|
|
200
|
+
* @typedef {Object} ConnectionTokenRequestRequest * @description Request model for connection token generation. * @property {string} user_id - User ID for the connection * @property {string[]} [channels] - List of channels to authorize */
|
|
201
|
+
|
|
202
|
+
/**
|
|
203
|
+
* @typedef {Object} ConnectionTokenResponse * @description Response model for connection token. * @property {string} token - JWT token for WebSocket connection * @property {string} centrifugo_url - Centrifugo WebSocket URL * @property {string} expires_at - Token expiration time (ISO 8601) */
|
|
204
|
+
|
|
127
205
|
/**
|
|
128
206
|
* @typedef {Object} Currency * @description Currency list serializer. * @property {string} code - Currency code from provider (e.g., USDTTRC20, BTC, ETH) * @property {string} name - Full currency name (e.g., USDT (TRC20), Bitcoin) * @property {string} token - Token symbol (e.g., USDT, BTC, ETH) * @property {string} network - Network name (e.g., TRC20, ERC20, Bitcoin) * @property {string} display_name * @property {string} symbol - Currency symbol (e.g., ₮, ₿, Ξ) * @property {number} decimal_places - Number of decimal places for this currency * @property {boolean} is_active - Whether this currency is available for payments * @property {string} min_amount_usd - Minimum payment amount in USD * @property {number} sort_order - Sort order for currency list (lower = higher priority) */
|
|
129
207
|
|
|
@@ -202,7 +280,7 @@
|
|
|
202
280
|
* @typedef {Object} ErrorResponse * @description Generic error response. * @property {boolean} [success] * @property {string} message */
|
|
203
281
|
|
|
204
282
|
/**
|
|
205
|
-
* @typedef {Object} HealthCheck * @description
|
|
283
|
+
* @typedef {Object} HealthCheck * @description Health check response. * @property {string} status - Health status: healthy or unhealthy * @property {string} wrapper_url - Configured wrapper URL * @property {boolean} has_api_key - Whether API key is configured * @property {string} timestamp - Current timestamp */
|
|
206
284
|
|
|
207
285
|
/**
|
|
208
286
|
* @typedef {Object} LeadSubmission * @description Serializer for lead form submission from frontend. * @property {string} name * @property {string} email * @property {string} [company] * @property {string} [company_site] * @property {"email" | "whatsapp" | "telegram" | "phone" | "other"} [contact_type] - * `email` - Email
|
|
@@ -225,13 +303,10 @@
|
|
|
225
303
|
* @typedef {Object} LeadSubmissionResponse * @description Response serializer for successful lead submission. * @property {boolean} success * @property {string} message * @property {number} lead_id */
|
|
226
304
|
|
|
227
305
|
/**
|
|
228
|
-
* @typedef {Object}
|
|
306
|
+
* @typedef {Object} ManualAckRequestRequest * @description Request model for manual ACK sending. * @property {string} message_id - Message ID to acknowledge * @property {string} client_id - Client ID sending the ACK */
|
|
229
307
|
|
|
230
308
|
/**
|
|
231
|
-
* @typedef {Object}
|
|
232
|
-
|
|
233
|
-
/**
|
|
234
|
-
* @typedef {Object} LoadTestStatus * @description Serializer for load test status. * @property {string} test_id - Unique test ID * @property {boolean} running - Whether test is currently running * @property {number} progress - Number of completed requests * @property {number} total - Total number of requests * @property {number} success_count - Number of successful requests * @property {number} failed_count - Number of failed requests * @property {number} avg_duration_ms - Average duration in milliseconds * @property {number} elapsed_time - Total elapsed time in seconds * @property {number} rps - Requests per second */
|
|
309
|
+
* @typedef {Object} ManualAckResponse * @description Response model for manual ACK. * @property {boolean} success - Whether ACK was sent successfully * @property {string} message_id - Message ID that was acknowledged * @property {any} [error] - Error message if failed */
|
|
235
310
|
|
|
236
311
|
/**
|
|
237
312
|
* @typedef {Object} Message * @property {string} uuid * @property {string} ticket * @property {any} sender * @property {boolean} is_from_author - Check if this message is from the ticket author. * @property {string} text * @property {string} created_at */
|
|
@@ -245,12 +320,6 @@
|
|
|
245
320
|
/**
|
|
246
321
|
* @typedef {Object} MessageRequest * @property {string} text */
|
|
247
322
|
|
|
248
|
-
/**
|
|
249
|
-
* @typedef {Object} MethodStat * @description Serializer for individual method statistics. * @property {string} method - RPC method name * @property {number} count - Number of calls * @property {number} percentage - Percentage of total calls * @property {number} [avg_time_ms] - Average execution time in milliseconds * @property {number} [avg_time] - Average execution time (alternative field) * @property {number} [success_rate] - Success rate percentage * @property {string} [last_called] - ISO timestamp of last call */
|
|
250
|
-
|
|
251
|
-
/**
|
|
252
|
-
* @typedef {Object} MethodStats * @description Serializer for method statistics response. * @property {MethodStat[]} methods - List of method statistics * @property {number} count - Total number of methods * @property {number} total_calls - Total calls across all methods */
|
|
253
|
-
|
|
254
323
|
/**
|
|
255
324
|
* @typedef {Object} Newsletter * @description Serializer for Newsletter model. * @property {number} id * @property {string} title * @property {string} [description] * @property {boolean} [is_active] * @property {boolean} [auto_subscribe] - Automatically subscribe new users to this newsletter * @property {string} created_at * @property {string} updated_at * @property {number} subscribers_count */
|
|
256
325
|
|
|
@@ -266,9 +335,6 @@
|
|
|
266
335
|
/**
|
|
267
336
|
* @typedef {Object} NewsletterSubscription * @description Serializer for NewsletterSubscription model. * @property {number} id * @property {number} newsletter * @property {string} newsletter_title * @property {number} [user] * @property {string} user_email * @property {string} email * @property {boolean} [is_active] * @property {string} subscribed_at * @property {string} unsubscribed_at */
|
|
268
337
|
|
|
269
|
-
/**
|
|
270
|
-
* @typedef {Object} NotificationStats * @description Serializer for notification statistics. * @property {number} total_sent - Total notifications sent * @property {number} delivery_rate - Delivery success rate percentage * @property {Record<string, any>} [by_type] - Breakdown by notification type * @property {any[]} [recent] - Recent notifications * @property {string} [last_sent] - ISO timestamp of last notification * @property {string} [timestamp] - ISO timestamp of the stats * @property {string} [error] - Error message if any */
|
|
271
|
-
|
|
272
338
|
/**
|
|
273
339
|
* @typedef {Object} OTPErrorResponse * @description Error response for OTP operations. * @property {string} error - Error message */
|
|
274
340
|
|
|
@@ -291,7 +357,7 @@
|
|
|
291
357
|
* @typedef {Object} OTPVerifyResponse * @description OTP verification response. * @property {string} refresh - JWT refresh token * @property {string} access - JWT access token * @property {any} user - User information */
|
|
292
358
|
|
|
293
359
|
/**
|
|
294
|
-
* @typedef {Object} OverviewStats * @description
|
|
360
|
+
* @typedef {Object} OverviewStats * @description Overview statistics for Centrifugo publishes. * @property {number} total - Total publishes in period * @property {number} successful - Successful publishes * @property {number} failed - Failed publishes * @property {number} timeout - Timeout publishes * @property {number} success_rate - Success rate percentage * @property {number} avg_duration_ms - Average duration in milliseconds * @property {number} avg_acks_received - Average ACKs received * @property {number} period_hours - Statistics period in hours */
|
|
295
361
|
|
|
296
362
|
/**
|
|
297
363
|
* @typedef {Object} PaginatedArchiveItemChunkList * @property {number} count - Total number of items across all pages * @property {number} page - Current page number (1-based) * @property {number} pages - Total number of pages * @property {number} page_size - Number of items per page * @property {boolean} has_next - Whether there is a next page * @property {boolean} has_previous - Whether there is a previous page * @property {number} [next_page] - Next page number (null if no next page) * @property {number} [previous_page] - Previous page number (null if no previous page) * @property {ArchiveItemChunk[]} results - Array of items for current page */
|
|
@@ -428,6 +494,12 @@
|
|
|
428
494
|
/**
|
|
429
495
|
* @typedef {Object} PublicDocumentList * @description Public document list serializer - minimal fields for listing. * @property {string} id * @property {string} title - Document title * @property {any} category * @property {string} created_at * @property {string} updated_at */
|
|
430
496
|
|
|
497
|
+
/**
|
|
498
|
+
* @typedef {Object} PublishTestRequestRequest * @description Request model for test message publishing. * @property {string} channel - Target channel name * @property {Record<string, any>} data - Message data (any JSON object) * @property {boolean} [wait_for_ack] - Wait for client acknowledgment * @property {number} [ack_timeout] - ACK timeout in seconds */
|
|
499
|
+
|
|
500
|
+
/**
|
|
501
|
+
* @typedef {Object} PublishTestResponse * @description Response model for test message publishing. * @property {boolean} success - Whether publish succeeded * @property {string} message_id - Unique message ID * @property {string} channel - Target channel * @property {number} [acks_received] - Number of ACKs received * @property {boolean} [delivered] - Whether message was delivered * @property {any} [error] - Error message if failed */
|
|
502
|
+
|
|
431
503
|
/**
|
|
432
504
|
* @typedef {Object} QueueAction * @description Serializer for queue management actions. * @property {"clear" | "clear_all" | "purge" | "purge_failed" | "flush"} action - Action to perform on queues
|
|
433
505
|
|
|
@@ -453,10 +525,7 @@
|
|
|
453
525
|
* @typedef {Object} QuickHealth * @description Serializer for quick health check response. * @property {string} status - Quick health status: ok or error * @property {string} timestamp - Timestamp of the health check * @property {string} [error] - Error message if health check failed */
|
|
454
526
|
|
|
455
527
|
/**
|
|
456
|
-
* @typedef {Object}
|
|
457
|
-
|
|
458
|
-
/**
|
|
459
|
-
* @typedef {Object} RecentRequests * @description Serializer for recent requests response. * @property {RPCRequest[]} requests - List of recent RPC requests * @property {number} count - Number of requests returned * @property {number} total_available - Total number of requests available */
|
|
528
|
+
* @typedef {Object} RecentPublishes * @description Recent publishes list. * @property {Record<string, any>[]} publishes - List of recent publishes * @property {number} count - Number of publishes returned * @property {number} total_available - Total publishes available */
|
|
460
529
|
|
|
461
530
|
/**
|
|
462
531
|
* @typedef {Object} SendCampaignRequest * @description Simple serializer for sending campaign. * @property {number} campaign_id */
|
|
@@ -482,12 +551,6 @@
|
|
|
482
551
|
/**
|
|
483
552
|
* @typedef {Object} TestEmailRequest * @description Simple serializer for test email. * @property {string} email * @property {string} [subject] * @property {string} [message] */
|
|
484
553
|
|
|
485
|
-
/**
|
|
486
|
-
* @typedef {Object} TestRPCRequestRequest * @description Serializer for test RPC request input. * @property {string} method - RPC method to call * @property {any} params - Parameters for the RPC call * @property {number} [timeout] - Timeout in seconds */
|
|
487
|
-
|
|
488
|
-
/**
|
|
489
|
-
* @typedef {Object} TestRPCResponse * @description Serializer for test RPC response. * @property {boolean} success - Whether the call was successful * @property {number} duration_ms - Call duration in milliseconds * @property {any} [response] - Response data from RPC call * @property {string} [error] - Error message if failed * @property {string} correlation_id - Correlation ID for tracking */
|
|
490
|
-
|
|
491
554
|
/**
|
|
492
555
|
* @typedef {Object} Ticket * @property {string} uuid * @property {number} user * @property {string} subject * @property {"open" | "waiting_for_user" | "waiting_for_admin" | "resolved" | "closed"} [status] - * `open` - Open
|
|
493
556
|
* `waiting_for_user` - Waiting for User
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: django-cfg
|
|
3
|
-
Version: 1.4.
|
|
3
|
+
Version: 1.4.64
|
|
4
4
|
Summary: Django AI framework with built-in agents, type-safe Pydantic v2 configuration, and 8 enterprise apps. Replace settings.py, validate at startup, 90% less code. Production-ready AI workflows for Django.
|
|
5
5
|
Project-URL: Homepage, https://djangocfg.com
|
|
6
6
|
Project-URL: Documentation, https://djangocfg.com
|