@omnizap-system/omnizap 2.5.12
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.
- package/.clusterfuzzlite/Dockerfile +10 -0
- package/.env.example +907 -0
- package/.github/codeql/codeql-config.yml +10 -0
- package/.github/dependabot.yml +35 -0
- package/.github/workflows/ci.yml +73 -0
- package/.github/workflows/codeql.yml +106 -0
- package/.github/workflows/db-migration-check.yml +98 -0
- package/.github/workflows/dependency-review.yml +22 -0
- package/.github/workflows/deploy.yml +95 -0
- package/.github/workflows/release.yml +106 -0
- package/.github/workflows/security-attest-provenance.yml +51 -0
- package/.github/workflows/security-gitleaks.yml +34 -0
- package/.github/workflows/security-runner-hardening.yml +31 -0
- package/.github/workflows/security-scorecard.yml +44 -0
- package/.github/workflows/security-zap-baseline.yml +44 -0
- package/.github/workflows/security-zap-full-scan.yml +43 -0
- package/.github/workflows/security-zizmor.yml +36 -0
- package/.github/workflows/wiki-sync.yml +44 -0
- package/.gitleaks.toml +15 -0
- package/.prettierrc +34 -0
- package/CODE_OF_CONDUCT.md +114 -0
- package/LICENSE +56 -0
- package/README.md +110 -0
- package/SECURITY.md +110 -0
- package/app/config/index.js +4 -0
- package/app/configParts/adminIdentity.js +92 -0
- package/app/configParts/baileysConfig.js +1818 -0
- package/app/configParts/groupUtils.js +692 -0
- package/app/configParts/loggerConfig.js +394 -0
- package/app/configParts/messagePersistenceService.js +305 -0
- package/app/connection/baileysCompatibility.test.js +40 -0
- package/app/connection/baileysDbAuthState.js +344 -0
- package/app/connection/socketController.js +2243 -0
- package/app/controllers/messageController.js +7 -0
- package/app/controllers/messagePipeline/commandMiddleware.js +146 -0
- package/app/controllers/messagePipeline/conversationMiddleware.js +183 -0
- package/app/controllers/messagePipeline/messagePipelineMiddlewares.test.js +522 -0
- package/app/controllers/messagePipeline/postProcessingMiddleware.js +41 -0
- package/app/controllers/messagePipeline/preProcessingMiddlewares.js +166 -0
- package/app/controllers/messageProcessingPipeline.js +699 -0
- package/app/modules/adminModule/AGENT.md +4056 -0
- package/app/modules/adminModule/adminAiHelpService.js +56 -0
- package/app/modules/adminModule/adminConfigRuntime.js +177 -0
- package/app/modules/adminModule/commandConfig.json +7122 -0
- package/app/modules/adminModule/groupCommandHandlers.js +1823 -0
- package/app/modules/adminModule/groupCommandHandlers.test.js +350 -0
- package/app/modules/adminModule/groupEventHandlers.js +399 -0
- package/app/modules/aiModule/AGENT.md +547 -0
- package/app/modules/aiModule/aiAiHelpService.js +14 -0
- package/app/modules/aiModule/aiConfigRuntime.js +135 -0
- package/app/modules/aiModule/catCommand.js +967 -0
- package/app/modules/aiModule/commandConfig.json +981 -0
- package/app/modules/analyticsModule/messageAnalysisEventRepository.js +83 -0
- package/app/modules/gameModule/AGENT.md +196 -0
- package/app/modules/gameModule/commandConfig.json +366 -0
- package/app/modules/gameModule/diceCommand.js +42 -0
- package/app/modules/gameModule/gameAiHelpService.js +14 -0
- package/app/modules/gameModule/gameConfigRuntime.js +68 -0
- package/app/modules/menuModule/AGENT.md +205 -0
- package/app/modules/menuModule/commandConfig.json +366 -0
- package/app/modules/menuModule/common.js +316 -0
- package/app/modules/menuModule/menuAiHelpService.js +14 -0
- package/app/modules/menuModule/menuConfigRuntime.js +68 -0
- package/app/modules/menuModule/menus.js +66 -0
- package/app/modules/playModule/AGENT.md +321 -0
- package/app/modules/playModule/commandConfig.json +584 -0
- package/app/modules/playModule/playAiHelpService.js +14 -0
- package/app/modules/playModule/playCommand.js +1417 -0
- package/app/modules/playModule/playConfigRuntime.js +68 -0
- package/app/modules/quoteModule/AGENT.md +199 -0
- package/app/modules/quoteModule/commandConfig.json +366 -0
- package/app/modules/quoteModule/quoteAiHelpService.js +14 -0
- package/app/modules/quoteModule/quoteCommand.js +842 -0
- package/app/modules/quoteModule/quoteConfigRuntime.js +68 -0
- package/app/modules/rpgPokemonModule/AGENT.md +229 -0
- package/app/modules/rpgPokemonModule/commandConfig.json +386 -0
- package/app/modules/rpgPokemonModule/rpgBattleCanvasRenderer.js +795 -0
- package/app/modules/rpgPokemonModule/rpgBattleService.js +2110 -0
- package/app/modules/rpgPokemonModule/rpgBattleService.test.js +770 -0
- package/app/modules/rpgPokemonModule/rpgEvolutionUtils.js +22 -0
- package/app/modules/rpgPokemonModule/rpgPokemonAiHelpService.js +14 -0
- package/app/modules/rpgPokemonModule/rpgPokemonCommand.js +174 -0
- package/app/modules/rpgPokemonModule/rpgPokemonConfigRuntime.js +68 -0
- package/app/modules/rpgPokemonModule/rpgPokemonDomain.js +192 -0
- package/app/modules/rpgPokemonModule/rpgPokemonDomain.test.js +93 -0
- package/app/modules/rpgPokemonModule/rpgPokemonEvolution.test.js +46 -0
- package/app/modules/rpgPokemonModule/rpgPokemonMessages.js +746 -0
- package/app/modules/rpgPokemonModule/rpgPokemonRepository.js +1847 -0
- package/app/modules/rpgPokemonModule/rpgPokemonService.js +6839 -0
- package/app/modules/rpgPokemonModule/rpgProfileCanvasRenderer.js +354 -0
- package/app/modules/statsModule/AGENT.md +320 -0
- package/app/modules/statsModule/commandConfig.json +540 -0
- package/app/modules/statsModule/globalRankingCommand.js +64 -0
- package/app/modules/statsModule/rankingCommand.js +41 -0
- package/app/modules/statsModule/rankingCommon.js +1305 -0
- package/app/modules/statsModule/statsAiHelpService.js +14 -0
- package/app/modules/statsModule/statsConfigRuntime.js +68 -0
- package/app/modules/stickerModule/AGENT.md +692 -0
- package/app/modules/stickerModule/addStickerMetadata.js +239 -0
- package/app/modules/stickerModule/commandConfig.json +1216 -0
- package/app/modules/stickerModule/convertToWebp.js +367 -0
- package/app/modules/stickerModule/stickerAiHelpService.js +14 -0
- package/app/modules/stickerModule/stickerCommand.js +446 -0
- package/app/modules/stickerModule/stickerConfigRuntime.js +68 -0
- package/app/modules/stickerModule/stickerConvertCommand.js +159 -0
- package/app/modules/stickerModule/stickerTextCommand.js +653 -0
- package/app/modules/stickerPackModule/AGENT.md +215 -0
- package/app/modules/stickerPackModule/autoPackCollectorRuntime.js +20 -0
- package/app/modules/stickerPackModule/autoPackCollectorService.js +357 -0
- package/app/modules/stickerPackModule/commandConfig.json +387 -0
- package/app/modules/stickerPackModule/domainEventOutboxRepository.js +227 -0
- package/app/modules/stickerPackModule/domainEvents.js +52 -0
- package/app/modules/stickerPackModule/semanticReclassificationEngine.js +429 -0
- package/app/modules/stickerPackModule/semanticReclassificationEngine.test.js +75 -0
- package/app/modules/stickerPackModule/semanticThemeClusterService.js +544 -0
- package/app/modules/stickerPackModule/stickerAssetClassificationRepository.js +400 -0
- package/app/modules/stickerPackModule/stickerAssetRepository.js +400 -0
- package/app/modules/stickerPackModule/stickerAssetReprocessQueueRepository.js +175 -0
- package/app/modules/stickerPackModule/stickerAutoPackByTagsRuntime.js +3702 -0
- package/app/modules/stickerPackModule/stickerClassificationBackgroundRuntime.js +559 -0
- package/app/modules/stickerPackModule/stickerClassificationService.js +557 -0
- package/app/modules/stickerPackModule/stickerDedicatedTaskWorkerRuntime.js +249 -0
- package/app/modules/stickerPackModule/stickerDomainEventBus.js +65 -0
- package/app/modules/stickerPackModule/stickerDomainEventConsumerRuntime.js +208 -0
- package/app/modules/stickerPackModule/stickerMarketplaceDriftService.js +99 -0
- package/app/modules/stickerPackModule/stickerObjectStorageService.js +285 -0
- package/app/modules/stickerPackModule/stickerPackAiHelpService.js +14 -0
- package/app/modules/stickerPackModule/stickerPackCommandHandlers.js +1148 -0
- package/app/modules/stickerPackModule/stickerPackConfigRuntime.js +68 -0
- package/app/modules/stickerPackModule/stickerPackEngagementRepository.js +152 -0
- package/app/modules/stickerPackModule/stickerPackErrors.js +30 -0
- package/app/modules/stickerPackModule/stickerPackInteractionEventRepository.js +101 -0
- package/app/modules/stickerPackModule/stickerPackItemRepository.js +432 -0
- package/app/modules/stickerPackModule/stickerPackMarketplaceService.js +313 -0
- package/app/modules/stickerPackModule/stickerPackMessageService.js +268 -0
- package/app/modules/stickerPackModule/stickerPackRepository.js +450 -0
- package/app/modules/stickerPackModule/stickerPackScoreSnapshotRepository.js +179 -0
- package/app/modules/stickerPackModule/stickerPackScoreSnapshotRuntime.js +271 -0
- package/app/modules/stickerPackModule/stickerPackService.js +733 -0
- package/app/modules/stickerPackModule/stickerPackServiceRuntime.js +32 -0
- package/app/modules/stickerPackModule/stickerPackUtils.js +107 -0
- package/app/modules/stickerPackModule/stickerStorageService.js +559 -0
- package/app/modules/stickerPackModule/stickerWorkerPipelineRuntime.js +242 -0
- package/app/modules/stickerPackModule/stickerWorkerTaskQueueRepository.js +242 -0
- package/app/modules/systemMetricsModule/AGENT.md +193 -0
- package/app/modules/systemMetricsModule/commandConfig.json +344 -0
- package/app/modules/systemMetricsModule/pingCommand.js +399 -0
- package/app/modules/systemMetricsModule/systemMetricsAiHelpService.js +14 -0
- package/app/modules/systemMetricsModule/systemMetricsConfigRuntime.js +68 -0
- package/app/modules/tiktokModule/AGENT.md +196 -0
- package/app/modules/tiktokModule/commandConfig.json +366 -0
- package/app/modules/tiktokModule/tiktokAiHelpService.js +14 -0
- package/app/modules/tiktokModule/tiktokCommand.js +716 -0
- package/app/modules/tiktokModule/tiktokConfigRuntime.js +68 -0
- package/app/modules/userModule/AGENT.md +200 -0
- package/app/modules/userModule/commandConfig.json +386 -0
- package/app/modules/userModule/userAiHelpService.js +14 -0
- package/app/modules/userModule/userCommand.js +1155 -0
- package/app/modules/userModule/userConfigRuntime.js +68 -0
- package/app/modules/waifuPicsModule/AGENT.md +431 -0
- package/app/modules/waifuPicsModule/commandConfig.json +780 -0
- package/app/modules/waifuPicsModule/waifuPicsAiHelpService.js +14 -0
- package/app/modules/waifuPicsModule/waifuPicsCommand.js +586 -0
- package/app/modules/waifuPicsModule/waifuPicsConfigRuntime.js +68 -0
- package/app/observability/metrics.js +766 -0
- package/app/services/ai/aiHelpResponseCacheRepository.js +280 -0
- package/app/services/ai/aiLearningRepository.js +400 -0
- package/app/services/ai/commandConfigEnrichmentRepository.js +769 -0
- package/app/services/ai/commandConfigEnrichmentService.js +452 -0
- package/app/services/ai/commandConfigValidationService.js +443 -0
- package/app/services/ai/commandToolBuilderService.js +192 -0
- package/app/services/ai/conversationRouterService.js +516 -0
- package/app/services/ai/geminiService.js +115 -0
- package/app/services/ai/geminiService.test.js +87 -0
- package/app/services/ai/globalModuleAiHelpService.js +1412 -0
- package/app/services/ai/globalToolCallingService.js +203 -0
- package/app/services/ai/messageCommandExecutionService.js +391 -0
- package/app/services/ai/moduleAiHelpCoreService.js +1099 -0
- package/app/services/ai/moduleAiHelpWrapperFactory.js +65 -0
- package/app/services/ai/moduleCommandConfigRuntimeService.js +113 -0
- package/app/services/ai/moduleToolExecutorService.js +464 -0
- package/app/services/ai/moduleToolRegistryService.js +178 -0
- package/app/services/ai/toolCandidateSelectorService.js +781 -0
- package/app/services/auth/googleWebLinkService.js +80 -0
- package/app/services/auth/whatsappLoginLinkService.js +230 -0
- package/app/services/external/pokeApiService.js +398 -0
- package/app/services/group/groupMetadataService.js +311 -0
- package/app/services/infra/dbWriteQueue.js +874 -0
- package/app/services/infra/featureFlagService.js +131 -0
- package/app/services/infra/queueUtils.js +55 -0
- package/app/services/messaging/captchaService.js +491 -0
- package/app/services/messaging/messagePersistenceService.js +1 -0
- package/app/services/messaging/newsBroadcastService.js +347 -0
- package/app/services/sticker/stickerFocusService.js +347 -0
- package/app/services/sticker/stickerFocusService.test.js +43 -0
- package/app/store/aiPromptStore.js +38 -0
- package/app/store/conversationSessionStore.js +131 -0
- package/app/store/groupConfigStore.js +58 -0
- package/app/store/premiumUserStore.js +54 -0
- package/app/utils/antiLink/antiLinkModule.js +700 -0
- package/app/utils/http/getImageBufferModule.js +18 -0
- package/app/utils/json/jsonSanitizer.js +113 -0
- package/app/utils/json/jsonSanitizer.test.js +40 -0
- package/app/utils/systemMetrics/systemMetricsModule.js +88 -0
- package/app/workers/aiLearningWorker.js +605 -0
- package/app/workers/commandConfigEnrichmentWorker.js +242 -0
- package/database/index.js +2075 -0
- package/database/init.js +151 -0
- package/database/migrations/.gitkeep +0 -0
- package/database/migrations/20260307_d0_hardening_down.sql +64 -0
- package/database/migrations/20260307_d0_hardening_up.sql +79 -0
- package/database/migrations/20260307_d1_terms_acceptance_down.sql +11 -0
- package/database/migrations/20260307_d1_terms_acceptance_up.sql +37 -0
- package/database/migrations/20260307_d2_auth_hardening_down.sql +75 -0
- package/database/migrations/20260307_d2_auth_hardening_up.sql +100 -0
- package/database/migrations/20260314_d7_canonical_sender_down.sql +53 -0
- package/database/migrations/20260314_d7_canonical_sender_up.sql +114 -0
- package/database/migrations/20260406_d30_security_analytics_down.sql +95 -0
- package/database/migrations/20260406_d30_security_analytics_up.sql +292 -0
- package/database/migrations/20260407_d31_web_google_session_token_hardening_down.sql +2 -0
- package/database/migrations/20260407_d31_web_google_session_token_hardening_up.sql +17 -0
- package/database/migrations/20260408_d32_ai_help_response_cache_down.sql +1 -0
- package/database/migrations/20260408_d32_ai_help_response_cache_up.sql +22 -0
- package/database/migrations/20260409_d33_ai_learning_tables_down.sql +4 -0
- package/database/migrations/20260409_d33_ai_learning_tables_up.sql +52 -0
- package/database/migrations/20260410_d34_command_config_enrichment_down.sql +3 -0
- package/database/migrations/20260410_d34_command_config_enrichment_up.sql +48 -0
- package/database/schema.sql +1186 -0
- package/docker-compose.yml +104 -0
- package/docs/audits/stickerCatalogController-out-of-scope.md +103 -0
- package/docs/audits/stickerCatalogController-symbols.md +58 -0
- package/docs/compliance/acceptable-use-policy-2026-03-07.md +35 -0
- package/docs/compliance/dpa-b2b-standard-2026-03-07.md +80 -0
- package/docs/compliance/monthly-compliance-checklist-2026-03-07.md +88 -0
- package/docs/compliance/notice-and-takedown-policy-2026-03-07.md +34 -0
- package/docs/compliance/privacy-policy-2026-03-07.md +75 -0
- package/docs/compliance/subprocessors-inventory-2026-03-07.md +16 -0
- package/docs/database/production-db-evolution-runbook-2026q1.md +365 -0
- package/docs/security/dsar-lgpd-runbook-2026-03-07.md +86 -0
- package/docs/security/incident-response-lgpd-anpd-runbook-2026-03-07.md +77 -0
- package/docs/security/network-hardening-runbook-2026-03-07.md +137 -0
- package/docs/seo/omnizap-seo-playbook-br-2026-02-28.md +238 -0
- package/docs/seo/satellite-page-template.md +116 -0
- package/docs/seo/satellite-pages-phase1.json +364 -0
- package/docs/wiki/Home.md +120 -0
- package/docs/wiki/pair-extraordinaire-2026-03-08.md +3 -0
- package/docs/wiki/recent-changes-2026-03-08.md +47 -0
- package/ecosystem.prod.config.cjs +135 -0
- package/eslint.config.js +89 -0
- package/index.js +488 -0
- package/ml/clip_classifier/Dockerfile +18 -0
- package/ml/clip_classifier/README.md +118 -0
- package/ml/clip_classifier/adaptive_scoring.py +40 -0
- package/ml/clip_classifier/classifier.py +654 -0
- package/ml/clip_classifier/embedding_store.py +481 -0
- package/ml/clip_classifier/env_loader.py +15 -0
- package/ml/clip_classifier/llm_label_expander.py +144 -0
- package/ml/clip_classifier/main.py +213 -0
- package/ml/clip_classifier/requirements.txt +10 -0
- package/ml/clip_classifier/similarity_engine.py +74 -0
- package/new-logo.png +0 -0
- package/observability/alert-rules.yml +60 -0
- package/observability/grafana/dashboards/omnizap-mysql.json +136 -0
- package/observability/grafana/dashboards/omnizap-overview.json +170 -0
- package/observability/grafana/provisioning/dashboards/dashboards.yml +11 -0
- package/observability/grafana/provisioning/datasources/datasources.yml +15 -0
- package/observability/loki-config.yml +38 -0
- package/observability/mysql-setup.sql +46 -0
- package/observability/prometheus.yml +35 -0
- package/observability/promtail-config.yml +84 -0
- package/observability/sticker-catalog-slo.md +83 -0
- package/observability/sticker-scale-hardening-rollout.md +128 -0
- package/package.json +144 -0
- package/public/apple-touch-icon.png +0 -0
- package/public/assets/css/commands-react.input.css +71 -0
- package/public/assets/css/create-pack-react.input.css +31 -0
- package/public/assets/css/home-react.input.css +106 -0
- package/public/assets/css/login-react.input.css +58 -0
- package/public/assets/css/stickers-react.input.css +18 -0
- package/public/assets/css/terms-react.input.css +115 -0
- package/public/assets/css/user-react.input.css +57 -0
- package/public/assets/images/brand-icon-192.png +0 -0
- package/public/assets/images/brand-logo-128.webp +0 -0
- package/public/assets/images/hero-banner-1280.jpg +0 -0
- package/public/comandos/commands-catalog.json +4517 -0
- package/public/css/api-docs.css +161 -0
- package/public/css/stickers-admin.css +1288 -0
- package/public/css/styles.css +679 -0
- package/public/css/systemadm/admin.css +474 -0
- package/public/css/systemadm/base.css +73 -0
- package/public/css/systemadm/components.css +662 -0
- package/public/css/systemadm/layout.css +229 -0
- package/public/css/systemadm/tokens.css +56 -0
- package/public/favicon-16x16.png +0 -0
- package/public/favicon-32x32.png +0 -0
- package/public/favicon.ico +0 -0
- package/public/js/apps/apiDocsApp.js +235 -0
- package/public/js/apps/commandsReactApp.js +528 -0
- package/public/js/apps/createPackApp.js +1646 -0
- package/public/js/apps/homeReactApp.js +942 -0
- package/public/js/apps/loginReactApp.js +496 -0
- package/public/js/apps/stickersAdminApp.js +1753 -0
- package/public/js/apps/stickersApp.js +3797 -0
- package/public/js/apps/termsReactApp.js +528 -0
- package/public/js/apps/userApp.js +2540 -0
- package/public/js/apps/userProfile/actions.js +66 -0
- package/public/js/apps/userReactApp.js +547 -0
- package/public/js/catalog.js +950 -0
- package/public/pages/api-docs.html +40 -0
- package/public/pages/aup.html +158 -0
- package/public/pages/comandos.html +41 -0
- package/public/pages/dpa.html +227 -0
- package/public/pages/home.html +45 -0
- package/public/pages/licenca.html +182 -0
- package/public/pages/login.html +40 -0
- package/public/pages/notice-and-takedown.html +234 -0
- package/public/pages/politica-de-privacidade.html +251 -0
- package/public/pages/seo-bot-whatsapp-para-grupo.html +350 -0
- package/public/pages/seo-bot-whatsapp-sem-programar.html +350 -0
- package/public/pages/seo-como-automatizar-avisos-no-whatsapp.html +350 -0
- package/public/pages/seo-como-criar-comandos-whatsapp.html +350 -0
- package/public/pages/seo-como-evitar-spam-no-whatsapp.html +350 -0
- package/public/pages/seo-como-moderar-grupo-whatsapp.html +350 -0
- package/public/pages/seo-como-organizar-comunidade-whatsapp.html +350 -0
- package/public/pages/seo-melhor-bot-whatsapp-para-grupos.html +350 -0
- package/public/pages/stickers-admin.html +31 -0
- package/public/pages/stickers-create.html +41 -0
- package/public/pages/stickers.html +45 -0
- package/public/pages/suboperadores.html +237 -0
- package/public/pages/termos-de-uso-texto-integral.html +241 -0
- package/public/pages/termos-de-uso.html +41 -0
- package/public/pages/user-password-reset.html +32 -0
- package/public/pages/user-systemadm.html +508 -0
- package/public/pages/user.html +39 -0
- package/public/robots.txt +9 -0
- package/public/site.webmanifest +24 -0
- package/public/sitemap.xml +98 -0
- package/schemas/command-config.schema.json +582 -0
- package/scripts/baileys-compat-smoke.mjs +12 -0
- package/scripts/cache-bust.mjs +142 -0
- package/scripts/deploy.sh +916 -0
- package/scripts/email-broadcast-terms-update.mjs +170 -0
- package/scripts/enrich-command-discovery-fields.mjs +286 -0
- package/scripts/generate-command-config-schema.mjs +273 -0
- package/scripts/generate-commands-catalog.mjs +308 -0
- package/scripts/generate-module-agents.mjs +631 -0
- package/scripts/generate-seo-satellite-pages.mjs +400 -0
- package/scripts/github-deploy-notify.mjs +174 -0
- package/scripts/github-release-notify.mjs +219 -0
- package/scripts/release.sh +599 -0
- package/scripts/run-codeql-local.sh +116 -0
- package/scripts/run-prettier-all.mjs +25 -0
- package/scripts/security-smoketest.mjs +581 -0
- package/scripts/sticker-catalog-loadtest.mjs +210 -0
- package/scripts/sticker-worker-task.mjs +119 -0
- package/scripts/sync-readme-snapshot.mjs +133 -0
- package/scripts/validate-command-config-schema.mjs +130 -0
- package/scripts/validate-command-configs.mjs +15 -0
- package/scripts/wiki-sync.sh +191 -0
- package/server/auth/googleWebAuth/googleWebAuthRuntime.js +62 -0
- package/server/auth/googleWebAuth/googleWebAuthService.js +807 -0
- package/server/auth/jwt/webJwtService.js +147 -0
- package/server/auth/stickerCatalogAuthContext.js +165 -0
- package/server/auth/termsAcceptance/termsAcceptanceHandler.js +189 -0
- package/server/auth/userPassword/index.js +14 -0
- package/server/auth/userPassword/userPasswordAuthService.js +422 -0
- package/server/auth/userPassword/userPasswordCrypto.js +199 -0
- package/server/auth/userPassword/userPasswordCrypto.test.js +76 -0
- package/server/auth/userPassword/userPasswordRecoveryService.js +728 -0
- package/server/auth/validation/authSchemas.js +236 -0
- package/server/auth/webAccount/webAccountHandlers.js +1434 -0
- package/server/controllers/admin/adminBanService.js +138 -0
- package/server/controllers/admin/adminPanelHandlers.js +2083 -0
- package/server/controllers/admin/stickerCatalogAdminContext.js +17 -0
- package/server/controllers/admin/systemAdminController.js +201 -0
- package/server/controllers/email/emailAutomationController.js +239 -0
- package/server/controllers/metricsController.js +21 -0
- package/server/controllers/seo/stickerCatalogSeoContext.js +514 -0
- package/server/controllers/sticker/nonCatalogHandlers.js +303 -0
- package/server/controllers/sticker/stickerCatalogController.js +4700 -0
- package/server/controllers/system/contactController.js +115 -0
- package/server/controllers/system/githubController.js +137 -0
- package/server/controllers/system/stickerCatalogSystemContext.js +758 -0
- package/server/controllers/system/storageController.js +154 -0
- package/server/controllers/system/systemController.js +135 -0
- package/server/controllers/system/systemMetricsController.js +156 -0
- package/server/controllers/system/visitController.js +90 -0
- package/server/controllers/userController.js +145 -0
- package/server/email/emailAutomationRuntime.js +225 -0
- package/server/email/emailAutomationService.js +125 -0
- package/server/email/emailOutboxRepository.js +282 -0
- package/server/email/emailTemplateService.js +480 -0
- package/server/email/emailTransportService.js +156 -0
- package/server/http/clientIp.js +95 -0
- package/server/http/httpRequestUtils.js +262 -0
- package/server/http/httpRequestUtils.test.js +80 -0
- package/server/http/httpServer.js +180 -0
- package/server/http/requestContext.js +20 -0
- package/server/http/siteRoutingUtils.js +87 -0
- package/server/index.js +1 -0
- package/server/middleware/cachePolicy.js +26 -0
- package/server/middleware/cachePolicyHelpers.js +1 -0
- package/server/middleware/endpointRateLimit.js +181 -0
- package/server/middleware/rateLimit.js +70 -0
- package/server/middleware/requireAdminAuth.js +48 -0
- package/server/middleware/securityHeaders.js +97 -0
- package/server/routes/admin/systemAdminRouter.js +64 -0
- package/server/routes/email/emailAutomationRouter.js +46 -0
- package/server/routes/health/healthRouter.js +41 -0
- package/server/routes/indexRouter.js +234 -0
- package/server/routes/metrics/metricsRouter.js +58 -0
- package/server/routes/static/staticPageRouter.js +134 -0
- package/server/routes/sticker/catalogHandlers/catalogAdminHttp.js +105 -0
- package/server/routes/sticker/catalogHandlers/catalogAuthHttp.js +77 -0
- package/server/routes/sticker/catalogHandlers/catalogPublicHttp.js +120 -0
- package/server/routes/sticker/catalogHandlers/catalogUploadHttp.js +83 -0
- package/server/routes/sticker/catalogRouter.js +77 -0
- package/server/routes/sticker/stickerApiRouter.js +84 -0
- package/server/routes/sticker/stickerDataRouter.js +145 -0
- package/server/routes/sticker/stickerSiteRouter.js +43 -0
- package/server/routes/user/userApiPaths.js +66 -0
- package/server/routes/user/userRouter.js +65 -0
- package/server/utils/safePath.js +26 -0
- package/utils/logger/loggerModule.js +35 -0
- package/vite.config.mjs +38 -0
|
@@ -0,0 +1,692 @@
|
|
|
1
|
+
# StickerModule Agent Guide
|
|
2
|
+
|
|
3
|
+
Este arquivo e destinado a agentes de IA para gerar respostas no contexto dos comandos deste modulo.
|
|
4
|
+
|
|
5
|
+
## Fonte de Verdade
|
|
6
|
+
|
|
7
|
+
- arquivo_base: `app/modules/stickerModule/commandConfig.json`
|
|
8
|
+
- schema_version: `2.0.0`
|
|
9
|
+
- module_enabled: `true`
|
|
10
|
+
- generated_at: `2026-03-11T02:35:17.177Z`
|
|
11
|
+
|
|
12
|
+
## Escopo do Modulo
|
|
13
|
+
|
|
14
|
+
- module: `stickerModule`
|
|
15
|
+
- source_files:
|
|
16
|
+
- stickerCommand.js
|
|
17
|
+
- stickerConvertCommand.js
|
|
18
|
+
- stickerTextCommand.js
|
|
19
|
+
- total_commands: `5`
|
|
20
|
+
- total_enabled_commands: `5`
|
|
21
|
+
|
|
22
|
+
## Defaults Schema v2
|
|
23
|
+
|
|
24
|
+
- inheritance_mode: deep_merge_with_command_overrides
|
|
25
|
+
- compatibility_mode: legacy_and_v2_fields
|
|
26
|
+
- legacy_field_aliases:
|
|
27
|
+
- descricao: description
|
|
28
|
+
- metodos_de_uso: usage
|
|
29
|
+
- permissao_necessaria: permission
|
|
30
|
+
- local_de_uso: contexts
|
|
31
|
+
- informacoes_coletadas: collected_data
|
|
32
|
+
- pre_condicoes: requirements
|
|
33
|
+
- dependencias_externas: dependencies
|
|
34
|
+
- efeitos_colaterais: side_effects
|
|
35
|
+
- observabilidade: observability
|
|
36
|
+
- privacidade: privacy
|
|
37
|
+
- limite_uso_por_plano: plan_limits
|
|
38
|
+
- argumentos: arguments
|
|
39
|
+
- acesso: access
|
|
40
|
+
- defaults.command:
|
|
41
|
+
- enabled: true
|
|
42
|
+
- category: figurinhas
|
|
43
|
+
- version: 1.0.0
|
|
44
|
+
- stability: stable
|
|
45
|
+
- deprecated: false
|
|
46
|
+
- replaced_by: null
|
|
47
|
+
- risk_level: medium
|
|
48
|
+
- defaults.requirements (legacy view):
|
|
49
|
+
- requer_grupo: nao
|
|
50
|
+
- requer_admin: nao
|
|
51
|
+
- requer_admin_principal: nao
|
|
52
|
+
- requer_google_login: sim
|
|
53
|
+
- requer_nsfw: nao
|
|
54
|
+
- requer_midia: sim
|
|
55
|
+
- requer_mensagem_respondida: nao
|
|
56
|
+
|
|
57
|
+
## Protocolo de Resposta para IA
|
|
58
|
+
|
|
59
|
+
- Passo 1: identificar comando pelo token apos o prefixo.
|
|
60
|
+
- Passo 2: resolver alias para nome canonico usando campo `aliases`.
|
|
61
|
+
- Passo 3: validar `enabled`, `pre_condicoes`, permissao e local de uso.
|
|
62
|
+
- Passo 4: se houver erro de uso, responder com `mensagens_uso` (quando existir) ou `metodos_de_uso`.
|
|
63
|
+
- Passo 5: seguir `respostas_padrao` como fallback de texto.
|
|
64
|
+
- Passo 6: considerar `informacoes_coletadas`, `privacidade` e `observabilidade` ao elaborar resposta.
|
|
65
|
+
|
|
66
|
+
## Regras de Seguranca para IA
|
|
67
|
+
|
|
68
|
+
- A IA orienta, mas nao executa acao administrativa automaticamente.
|
|
69
|
+
- Nao inventar comandos, subcomandos ou permissao fora do JSON.
|
|
70
|
+
- Sempre informar onde pode usar (grupo/privado) e quem pode usar.
|
|
71
|
+
- Em duvida de permissao, responder com orientacao conservadora.
|
|
72
|
+
|
|
73
|
+
## Catalogo de Comandos
|
|
74
|
+
|
|
75
|
+
### figurinha
|
|
76
|
+
|
|
77
|
+
- id: sticker.figurinha
|
|
78
|
+
- aliases: s, sticker
|
|
79
|
+
- enabled: true
|
|
80
|
+
- categoria: figurinhas
|
|
81
|
+
- descricao: Converte imagem/video em figurinha.
|
|
82
|
+
- permissao_necessaria: usuario comum
|
|
83
|
+
- version: 1.0.0
|
|
84
|
+
- stability: stable
|
|
85
|
+
- deprecated: nao
|
|
86
|
+
- risk_level: low
|
|
87
|
+
- local_de_uso:
|
|
88
|
+
- privado
|
|
89
|
+
- grupo
|
|
90
|
+
- metodos_de_uso:
|
|
91
|
+
- <prefix>figurinha
|
|
92
|
+
- <prefix>s
|
|
93
|
+
- mensagens_uso (variantes):
|
|
94
|
+
- default:
|
|
95
|
+
- 📌 Use: <prefix>figurinha (ou <prefix>s) respondendo a uma imagem, vÃdeo ou figurinha.
|
|
96
|
+
- subcomandos:
|
|
97
|
+
- (nenhum)
|
|
98
|
+
- argumentos:
|
|
99
|
+
- texto_extra | tipo: string | opcional | validacao: texto livre opcional | default: null | posicao: 0
|
|
100
|
+
- pre_condicoes:
|
|
101
|
+
- requer_grupo: nao
|
|
102
|
+
- requer_admin: nao
|
|
103
|
+
- requer_admin_principal: nao
|
|
104
|
+
- requer_google_login: sim
|
|
105
|
+
- requer_nsfw: nao
|
|
106
|
+
- requer_midia: sim
|
|
107
|
+
- requer_mensagem_respondida: nao
|
|
108
|
+
- rate_limit:
|
|
109
|
+
- max: null
|
|
110
|
+
- janela_ms: null
|
|
111
|
+
- escopo: sem_rate_limit_explicito
|
|
112
|
+
- acesso:
|
|
113
|
+
- somente_premium: nao
|
|
114
|
+
- planos_permitidos: comum, premium
|
|
115
|
+
- limite_uso_por_plano:
|
|
116
|
+
- comum: max=12, janela_ms=300000, escopo=usuario
|
|
117
|
+
- premium: max=45, janela_ms=300000, escopo=usuario
|
|
118
|
+
- informacoes_coletadas:
|
|
119
|
+
- identificador do chat (remoteJid)
|
|
120
|
+
- identificador do remetente (senderJid)
|
|
121
|
+
- texto do comando e argumentos
|
|
122
|
+
- contexto da mensagem (citacao e mencoes, quando existir)
|
|
123
|
+
- metadados de midia (tipo, tamanho e origem da midia)
|
|
124
|
+
- arquivo de midia baixado temporariamente para conversao
|
|
125
|
+
- dependencias_externas:
|
|
126
|
+
- conversão de mÃdia local
|
|
127
|
+
- armazenamento temporário
|
|
128
|
+
- efeitos_colaterais:
|
|
129
|
+
- faz download/conversão temporária de mÃdia
|
|
130
|
+
- envia figurinha
|
|
131
|
+
- respostas_padrao:
|
|
132
|
+
- success: Comando executado com sucesso.
|
|
133
|
+
- usage_error: Formato de uso inválido. Consulte metodos_de_uso.
|
|
134
|
+
- permission_error: Permissão insuficiente para executar este comando.
|
|
135
|
+
- sucesso: Comando executado com sucesso.
|
|
136
|
+
- erro_uso: Formato de uso inválido. Consulte metodos_de_uso.
|
|
137
|
+
- erro_permissao: Permissão insuficiente para executar este comando.
|
|
138
|
+
- mensagens_sistema:
|
|
139
|
+
- (nao informado)
|
|
140
|
+
- limites_operacionais:
|
|
141
|
+
- (nao informado)
|
|
142
|
+
- opcoes:
|
|
143
|
+
- toggle_on_off_status.type: toggle
|
|
144
|
+
- toggle_on_off_status.allowed_actions: on, off, status
|
|
145
|
+
- toggle_on_off_status.action_argument: acao
|
|
146
|
+
- add_remove_list.type: list_management
|
|
147
|
+
- add_remove_list.allowed_actions: add, remove, list
|
|
148
|
+
- add_remove_list.action_argument: acao
|
|
149
|
+
- approve_reject.type: moderation_decision
|
|
150
|
+
- approve_reject.allowed_actions: approve, reject
|
|
151
|
+
- approve_reject.action_argument: acao
|
|
152
|
+
- approve_reject.requires_targets: true
|
|
153
|
+
- set_status_reset.type: configuration_window
|
|
154
|
+
- set_status_reset.allowed_actions: set, status, reset
|
|
155
|
+
- set_status_reset.action_argument: valor
|
|
156
|
+
- observabilidade:
|
|
157
|
+
- event_name: command.executed
|
|
158
|
+
- analytics_event: whatsapp_command_sticker
|
|
159
|
+
- tags_log: whatsapp, command, stickerModule, sticker
|
|
160
|
+
- nivel_log: info
|
|
161
|
+
- privacidade:
|
|
162
|
+
- dados_sensiveis:
|
|
163
|
+
- chat_identifier
|
|
164
|
+
- sender_identifier
|
|
165
|
+
- command_content
|
|
166
|
+
- retencao: standard_app_logs
|
|
167
|
+
- base_legal: service_execution_and_legitimate_interest
|
|
168
|
+
- docs:
|
|
169
|
+
- summary: Converte imagem/video em figurinha.
|
|
170
|
+
- usage_examples: <prefix>figurinha, <prefix>s
|
|
171
|
+
- usage_variants.default: 📌 Use: <prefix>figurinha (ou <prefix>s) respondendo a uma imagem, vÃdeo ou figurinha.
|
|
172
|
+
- behavior:
|
|
173
|
+
- type: argument_driven
|
|
174
|
+
- allowed_actions: (nenhum)
|
|
175
|
+
- limits:
|
|
176
|
+
- usage_description: midia ate 1 MB
|
|
177
|
+
- rate_limit.max: null
|
|
178
|
+
- rate_limit.janela_ms: null
|
|
179
|
+
- rate_limit.escopo: sem_rate_limit_explicito
|
|
180
|
+
- access.somente_premium: false
|
|
181
|
+
- access.planos_permitidos: comum, premium
|
|
182
|
+
- plan_limits.comum.max: 12
|
|
183
|
+
- plan_limits.comum.janela_ms: 300000
|
|
184
|
+
- plan_limits.comum.escopo: usuario
|
|
185
|
+
- plan_limits.premium.max: 45
|
|
186
|
+
- plan_limits.premium.janela_ms: 300000
|
|
187
|
+
- plan_limits.premium.escopo: usuario
|
|
188
|
+
- discovery:
|
|
189
|
+
- keywords: figurinha, s, figurinhas, privado, grupo
|
|
190
|
+
- faq_queries: como usar figurinha, o que faz figurinha, comando figurinha
|
|
191
|
+
- user_phrasings: quero usar figurinha, me ajuda com figurinha, converte imagem/video em figurinha.
|
|
192
|
+
- suggestion_priority: 100
|
|
193
|
+
- handler:
|
|
194
|
+
- file: stickerCommand.js
|
|
195
|
+
- method: processSticker
|
|
196
|
+
- command_case: figurinha
|
|
197
|
+
|
|
198
|
+
### paraimagem
|
|
199
|
+
|
|
200
|
+
- id: sticker.paraimagem
|
|
201
|
+
- aliases: tovideo, tovid, toimg
|
|
202
|
+
- enabled: true
|
|
203
|
+
- categoria: figurinhas
|
|
204
|
+
- descricao: Converte figurinha para imagem ou video quando aplicavel.
|
|
205
|
+
- permissao_necessaria: usuario comum
|
|
206
|
+
- version: 1.0.0
|
|
207
|
+
- stability: stable
|
|
208
|
+
- deprecated: nao
|
|
209
|
+
- risk_level: low
|
|
210
|
+
- local_de_uso:
|
|
211
|
+
- privado
|
|
212
|
+
- grupo
|
|
213
|
+
- metodos_de_uso:
|
|
214
|
+
- <prefix>paraimagem
|
|
215
|
+
- <prefix>tovideo
|
|
216
|
+
- <prefix>tovid
|
|
217
|
+
- mensagens_uso (variantes):
|
|
218
|
+
- default:
|
|
219
|
+
- 📌 Use: <prefix>paraimagem (ou <prefix>tovideo / <prefix>tovid) respondendo a uma figurinha.
|
|
220
|
+
- subcomandos:
|
|
221
|
+
- (nenhum)
|
|
222
|
+
- argumentos:
|
|
223
|
+
- (nenhum)
|
|
224
|
+
- pre_condicoes:
|
|
225
|
+
- requer_grupo: nao
|
|
226
|
+
- requer_admin: nao
|
|
227
|
+
- requer_admin_principal: nao
|
|
228
|
+
- requer_google_login: sim
|
|
229
|
+
- requer_nsfw: nao
|
|
230
|
+
- requer_midia: sim
|
|
231
|
+
- requer_mensagem_respondida: nao
|
|
232
|
+
- rate_limit:
|
|
233
|
+
- max: null
|
|
234
|
+
- janela_ms: null
|
|
235
|
+
- escopo: sem_rate_limit_explicito
|
|
236
|
+
- acesso:
|
|
237
|
+
- somente_premium: nao
|
|
238
|
+
- planos_permitidos: comum, premium
|
|
239
|
+
- limite_uso_por_plano:
|
|
240
|
+
- comum: max=12, janela_ms=300000, escopo=usuario
|
|
241
|
+
- premium: max=45, janela_ms=300000, escopo=usuario
|
|
242
|
+
- informacoes_coletadas:
|
|
243
|
+
- identificador do chat (remoteJid)
|
|
244
|
+
- identificador do remetente (senderJid)
|
|
245
|
+
- texto do comando e argumentos
|
|
246
|
+
- contexto da mensagem (citacao e mencoes, quando existir)
|
|
247
|
+
- metadados da figurinha (incluindo se e animada)
|
|
248
|
+
- arquivo de figurinha baixado temporariamente para conversao
|
|
249
|
+
- dependencias_externas:
|
|
250
|
+
- conversão de mÃdia local
|
|
251
|
+
- armazenamento temporário
|
|
252
|
+
- efeitos_colaterais:
|
|
253
|
+
- faz download/conversão temporária de figurinha
|
|
254
|
+
- envia mÃdia convertida
|
|
255
|
+
- respostas_padrao:
|
|
256
|
+
- success: Comando executado com sucesso.
|
|
257
|
+
- usage_error: Formato de uso inválido. Consulte metodos_de_uso.
|
|
258
|
+
- permission_error: Permissão insuficiente para executar este comando.
|
|
259
|
+
- sucesso: Comando executado com sucesso.
|
|
260
|
+
- erro_uso: Formato de uso inválido. Consulte metodos_de_uso.
|
|
261
|
+
- erro_permissao: Permissão insuficiente para executar este comando.
|
|
262
|
+
- mensagens_sistema:
|
|
263
|
+
- (nao informado)
|
|
264
|
+
- limites_operacionais:
|
|
265
|
+
- (nao informado)
|
|
266
|
+
- opcoes:
|
|
267
|
+
- toggle_on_off_status.type: toggle
|
|
268
|
+
- toggle_on_off_status.allowed_actions: on, off, status
|
|
269
|
+
- toggle_on_off_status.action_argument: acao
|
|
270
|
+
- add_remove_list.type: list_management
|
|
271
|
+
- add_remove_list.allowed_actions: add, remove, list
|
|
272
|
+
- add_remove_list.action_argument: acao
|
|
273
|
+
- approve_reject.type: moderation_decision
|
|
274
|
+
- approve_reject.allowed_actions: approve, reject
|
|
275
|
+
- approve_reject.action_argument: acao
|
|
276
|
+
- approve_reject.requires_targets: true
|
|
277
|
+
- set_status_reset.type: configuration_window
|
|
278
|
+
- set_status_reset.allowed_actions: set, status, reset
|
|
279
|
+
- set_status_reset.action_argument: valor
|
|
280
|
+
- observabilidade:
|
|
281
|
+
- event_name: command.executed
|
|
282
|
+
- analytics_event: whatsapp_command_toimg
|
|
283
|
+
- tags_log: whatsapp, command, stickerModule, toimg
|
|
284
|
+
- nivel_log: info
|
|
285
|
+
- privacidade:
|
|
286
|
+
- dados_sensiveis:
|
|
287
|
+
- chat_identifier
|
|
288
|
+
- sender_identifier
|
|
289
|
+
- command_content
|
|
290
|
+
- retencao: standard_app_logs
|
|
291
|
+
- base_legal: service_execution_and_legitimate_interest
|
|
292
|
+
- docs:
|
|
293
|
+
- summary: Converte figurinha para imagem ou video quando aplicavel.
|
|
294
|
+
- usage_examples: <prefix>paraimagem, <prefix>tovideo, <prefix>tovid
|
|
295
|
+
- usage_variants.default: 📌 Use: <prefix>paraimagem (ou <prefix>tovideo / <prefix>tovid) respondendo a uma figurinha.
|
|
296
|
+
- behavior:
|
|
297
|
+
- type: simple_action
|
|
298
|
+
- allowed_actions: (nenhum)
|
|
299
|
+
- limits:
|
|
300
|
+
- usage_description: figurinha ate 2 MB
|
|
301
|
+
- rate_limit.max: null
|
|
302
|
+
- rate_limit.janela_ms: null
|
|
303
|
+
- rate_limit.escopo: sem_rate_limit_explicito
|
|
304
|
+
- access.somente_premium: false
|
|
305
|
+
- access.planos_permitidos: comum, premium
|
|
306
|
+
- plan_limits.comum.max: 12
|
|
307
|
+
- plan_limits.comum.janela_ms: 300000
|
|
308
|
+
- plan_limits.comum.escopo: usuario
|
|
309
|
+
- plan_limits.premium.max: 45
|
|
310
|
+
- plan_limits.premium.janela_ms: 300000
|
|
311
|
+
- plan_limits.premium.escopo: usuario
|
|
312
|
+
- discovery:
|
|
313
|
+
- keywords: paraimagem, tovideo, tovid, figurinhas, privado, grupo
|
|
314
|
+
- faq_queries: como usar paraimagem, o que faz paraimagem, comando paraimagem
|
|
315
|
+
- user_phrasings: quero usar paraimagem, me ajuda com paraimagem, converte figurinha para imagem
|
|
316
|
+
- suggestion_priority: 100
|
|
317
|
+
- handler:
|
|
318
|
+
- file: stickerConvertCommand.js
|
|
319
|
+
- method: handleStickerConvertCommand
|
|
320
|
+
- command_case: paraimagem
|
|
321
|
+
|
|
322
|
+
### figurinhatexto
|
|
323
|
+
|
|
324
|
+
- id: sticker.figurinhatexto
|
|
325
|
+
- aliases: st, stickertext
|
|
326
|
+
- enabled: true
|
|
327
|
+
- categoria: figurinhas
|
|
328
|
+
- descricao: Gera figurinha com texto (tema escuro).
|
|
329
|
+
- permissao_necessaria: usuario comum
|
|
330
|
+
- version: 1.0.0
|
|
331
|
+
- stability: stable
|
|
332
|
+
- deprecated: nao
|
|
333
|
+
- risk_level: low
|
|
334
|
+
- local_de_uso:
|
|
335
|
+
- privado
|
|
336
|
+
- grupo
|
|
337
|
+
- metodos_de_uso:
|
|
338
|
+
- <prefix>figurinhatexto seu texto
|
|
339
|
+
- <prefix>st seu texto
|
|
340
|
+
- mensagens_uso (variantes):
|
|
341
|
+
- default:
|
|
342
|
+
- 📌 Use: <prefix>figurinhatexto seu texto
|
|
343
|
+
- 💡 Exemplo: <prefix>st bom dia seus lindos
|
|
344
|
+
- subcomandos:
|
|
345
|
+
- (nenhum)
|
|
346
|
+
- argumentos:
|
|
347
|
+
- texto | tipo: string | obrigatorio | validacao: até 80 caracteres, máximo 4 linhas | default: null | posicao: 0
|
|
348
|
+
- pre_condicoes:
|
|
349
|
+
- requer_grupo: nao
|
|
350
|
+
- requer_admin: nao
|
|
351
|
+
- requer_admin_principal: nao
|
|
352
|
+
- requer_google_login: sim
|
|
353
|
+
- requer_nsfw: nao
|
|
354
|
+
- requer_midia: nao
|
|
355
|
+
- requer_mensagem_respondida: nao
|
|
356
|
+
- rate_limit:
|
|
357
|
+
- max: null
|
|
358
|
+
- janela_ms: null
|
|
359
|
+
- escopo: sem_rate_limit_explicito
|
|
360
|
+
- acesso:
|
|
361
|
+
- somente_premium: nao
|
|
362
|
+
- planos_permitidos: comum, premium
|
|
363
|
+
- limite_uso_por_plano:
|
|
364
|
+
- comum: max=12, janela_ms=300000, escopo=usuario
|
|
365
|
+
- premium: max=45, janela_ms=300000, escopo=usuario
|
|
366
|
+
- informacoes_coletadas:
|
|
367
|
+
- identificador do chat (remoteJid)
|
|
368
|
+
- identificador do remetente (senderJid)
|
|
369
|
+
- texto do comando e argumentos
|
|
370
|
+
- contexto da mensagem (citacao e mencoes, quando existir)
|
|
371
|
+
- texto informado para compor a figurinha
|
|
372
|
+
- opcoes de estilo/cor do texto
|
|
373
|
+
- dependencias_externas:
|
|
374
|
+
- conversão de mÃdia local
|
|
375
|
+
- armazenamento temporário
|
|
376
|
+
- efeitos_colaterais:
|
|
377
|
+
- gera mÃdia temporária de figurinha com texto
|
|
378
|
+
- envia figurinha
|
|
379
|
+
- respostas_padrao:
|
|
380
|
+
- success: Comando executado com sucesso.
|
|
381
|
+
- usage_error: Formato de uso inválido. Consulte metodos_de_uso.
|
|
382
|
+
- permission_error: Permissão insuficiente para executar este comando.
|
|
383
|
+
- sucesso: Comando executado com sucesso.
|
|
384
|
+
- erro_uso: Formato de uso inválido. Consulte metodos_de_uso.
|
|
385
|
+
- erro_permissao: Permissão insuficiente para executar este comando.
|
|
386
|
+
- mensagens_sistema:
|
|
387
|
+
- (nao informado)
|
|
388
|
+
- limites_operacionais:
|
|
389
|
+
- (nao informado)
|
|
390
|
+
- opcoes:
|
|
391
|
+
- toggle_on_off_status.type: toggle
|
|
392
|
+
- toggle_on_off_status.allowed_actions: on, off, status
|
|
393
|
+
- toggle_on_off_status.action_argument: acao
|
|
394
|
+
- add_remove_list.type: list_management
|
|
395
|
+
- add_remove_list.allowed_actions: add, remove, list
|
|
396
|
+
- add_remove_list.action_argument: acao
|
|
397
|
+
- approve_reject.type: moderation_decision
|
|
398
|
+
- approve_reject.allowed_actions: approve, reject
|
|
399
|
+
- approve_reject.action_argument: acao
|
|
400
|
+
- approve_reject.requires_targets: true
|
|
401
|
+
- set_status_reset.type: configuration_window
|
|
402
|
+
- set_status_reset.allowed_actions: set, status, reset
|
|
403
|
+
- set_status_reset.action_argument: valor
|
|
404
|
+
- observabilidade:
|
|
405
|
+
- event_name: command.executed
|
|
406
|
+
- analytics_event: whatsapp_command_stickertext
|
|
407
|
+
- tags_log: whatsapp, command, stickerModule, stickertext
|
|
408
|
+
- nivel_log: info
|
|
409
|
+
- privacidade:
|
|
410
|
+
- dados_sensiveis:
|
|
411
|
+
- chat_identifier
|
|
412
|
+
- sender_identifier
|
|
413
|
+
- command_content
|
|
414
|
+
- retencao: standard_app_logs
|
|
415
|
+
- base_legal: service_execution_and_legitimate_interest
|
|
416
|
+
- docs:
|
|
417
|
+
- summary: Gera figurinha com texto (tema escuro).
|
|
418
|
+
- usage_examples: <prefix>figurinhatexto seu texto, <prefix>st seu texto
|
|
419
|
+
- usage_variants.default: 📌 Use: <prefix>figurinhatexto seu texto, 💡 Exemplo: <prefix>st bom dia seus lindos
|
|
420
|
+
- behavior:
|
|
421
|
+
- type: argument_driven
|
|
422
|
+
- allowed_actions: (nenhum)
|
|
423
|
+
- limits:
|
|
424
|
+
- usage_description: ate 80 caracteres e 4 linhas
|
|
425
|
+
- rate_limit.max: null
|
|
426
|
+
- rate_limit.janela_ms: null
|
|
427
|
+
- rate_limit.escopo: sem_rate_limit_explicito
|
|
428
|
+
- access.somente_premium: false
|
|
429
|
+
- access.planos_permitidos: comum, premium
|
|
430
|
+
- plan_limits.comum.max: 12
|
|
431
|
+
- plan_limits.comum.janela_ms: 300000
|
|
432
|
+
- plan_limits.comum.escopo: usuario
|
|
433
|
+
- plan_limits.premium.max: 45
|
|
434
|
+
- plan_limits.premium.janela_ms: 300000
|
|
435
|
+
- plan_limits.premium.escopo: usuario
|
|
436
|
+
- discovery:
|
|
437
|
+
- keywords: figurinhatexto, st, figurinhas, privado, grupo
|
|
438
|
+
- faq_queries: como usar figurinhatexto, o que faz figurinhatexto, comando figurinhatexto
|
|
439
|
+
- user_phrasings: quero usar figurinhatexto, me ajuda com figurinhatexto, gera figurinha com texto
|
|
440
|
+
- suggestion_priority: 100
|
|
441
|
+
- handler:
|
|
442
|
+
- file: stickerTextCommand.js
|
|
443
|
+
- method: processTextSticker
|
|
444
|
+
- command_case: figurinhatexto
|
|
445
|
+
|
|
446
|
+
### figurinhatextobranco
|
|
447
|
+
|
|
448
|
+
- id: sticker.figurinhatextobranco
|
|
449
|
+
- aliases: stw, stickertextwhite
|
|
450
|
+
- enabled: true
|
|
451
|
+
- categoria: figurinhas
|
|
452
|
+
- descricao: Gera figurinha com texto (tema claro).
|
|
453
|
+
- permissao_necessaria: usuario comum
|
|
454
|
+
- version: 1.0.0
|
|
455
|
+
- stability: stable
|
|
456
|
+
- deprecated: nao
|
|
457
|
+
- risk_level: low
|
|
458
|
+
- local_de_uso:
|
|
459
|
+
- privado
|
|
460
|
+
- grupo
|
|
461
|
+
- metodos_de_uso:
|
|
462
|
+
- <prefix>figurinhatextobranco seu texto
|
|
463
|
+
- <prefix>stw seu texto
|
|
464
|
+
- mensagens_uso (variantes):
|
|
465
|
+
- default:
|
|
466
|
+
- 📌 Use: <prefix>figurinhatextobranco seu texto
|
|
467
|
+
- 💡 Exemplo: <prefix>stw bom dia seus lindos
|
|
468
|
+
- subcomandos:
|
|
469
|
+
- (nenhum)
|
|
470
|
+
- argumentos:
|
|
471
|
+
- texto | tipo: string | obrigatorio | validacao: até 80 caracteres, máximo 4 linhas | default: null | posicao: 0
|
|
472
|
+
- pre_condicoes:
|
|
473
|
+
- requer_grupo: nao
|
|
474
|
+
- requer_admin: nao
|
|
475
|
+
- requer_admin_principal: nao
|
|
476
|
+
- requer_google_login: sim
|
|
477
|
+
- requer_nsfw: nao
|
|
478
|
+
- requer_midia: nao
|
|
479
|
+
- requer_mensagem_respondida: nao
|
|
480
|
+
- rate_limit:
|
|
481
|
+
- max: null
|
|
482
|
+
- janela_ms: null
|
|
483
|
+
- escopo: sem_rate_limit_explicito
|
|
484
|
+
- acesso:
|
|
485
|
+
- somente_premium: nao
|
|
486
|
+
- planos_permitidos: comum, premium
|
|
487
|
+
- limite_uso_por_plano:
|
|
488
|
+
- comum: max=12, janela_ms=300000, escopo=usuario
|
|
489
|
+
- premium: max=45, janela_ms=300000, escopo=usuario
|
|
490
|
+
- informacoes_coletadas:
|
|
491
|
+
- identificador do chat (remoteJid)
|
|
492
|
+
- identificador do remetente (senderJid)
|
|
493
|
+
- texto do comando e argumentos
|
|
494
|
+
- contexto da mensagem (citacao e mencoes, quando existir)
|
|
495
|
+
- texto informado para compor a figurinha
|
|
496
|
+
- opcoes de estilo/cor do texto
|
|
497
|
+
- dependencias_externas:
|
|
498
|
+
- conversão de mÃdia local
|
|
499
|
+
- armazenamento temporário
|
|
500
|
+
- efeitos_colaterais:
|
|
501
|
+
- gera mÃdia temporária de figurinha com texto
|
|
502
|
+
- envia figurinha
|
|
503
|
+
- respostas_padrao:
|
|
504
|
+
- success: Comando executado com sucesso.
|
|
505
|
+
- usage_error: Formato de uso inválido. Consulte metodos_de_uso.
|
|
506
|
+
- permission_error: Permissão insuficiente para executar este comando.
|
|
507
|
+
- sucesso: Comando executado com sucesso.
|
|
508
|
+
- erro_uso: Formato de uso inválido. Consulte metodos_de_uso.
|
|
509
|
+
- erro_permissao: Permissão insuficiente para executar este comando.
|
|
510
|
+
- mensagens_sistema:
|
|
511
|
+
- (nao informado)
|
|
512
|
+
- limites_operacionais:
|
|
513
|
+
- (nao informado)
|
|
514
|
+
- opcoes:
|
|
515
|
+
- toggle_on_off_status.type: toggle
|
|
516
|
+
- toggle_on_off_status.allowed_actions: on, off, status
|
|
517
|
+
- toggle_on_off_status.action_argument: acao
|
|
518
|
+
- add_remove_list.type: list_management
|
|
519
|
+
- add_remove_list.allowed_actions: add, remove, list
|
|
520
|
+
- add_remove_list.action_argument: acao
|
|
521
|
+
- approve_reject.type: moderation_decision
|
|
522
|
+
- approve_reject.allowed_actions: approve, reject
|
|
523
|
+
- approve_reject.action_argument: acao
|
|
524
|
+
- approve_reject.requires_targets: true
|
|
525
|
+
- set_status_reset.type: configuration_window
|
|
526
|
+
- set_status_reset.allowed_actions: set, status, reset
|
|
527
|
+
- set_status_reset.action_argument: valor
|
|
528
|
+
- observabilidade:
|
|
529
|
+
- event_name: command.executed
|
|
530
|
+
- analytics_event: whatsapp_command_stickertextwhite
|
|
531
|
+
- tags_log: whatsapp, command, stickerModule, stickertextwhite
|
|
532
|
+
- nivel_log: info
|
|
533
|
+
- privacidade:
|
|
534
|
+
- dados_sensiveis:
|
|
535
|
+
- chat_identifier
|
|
536
|
+
- sender_identifier
|
|
537
|
+
- command_content
|
|
538
|
+
- retencao: standard_app_logs
|
|
539
|
+
- base_legal: service_execution_and_legitimate_interest
|
|
540
|
+
- docs:
|
|
541
|
+
- summary: Gera figurinha com texto (tema claro).
|
|
542
|
+
- usage_examples: <prefix>figurinhatextobranco seu texto, <prefix>stw seu texto
|
|
543
|
+
- usage_variants.default: 📌 Use: <prefix>figurinhatextobranco seu texto, 💡 Exemplo: <prefix>stw bom dia seus lindos
|
|
544
|
+
- behavior:
|
|
545
|
+
- type: argument_driven
|
|
546
|
+
- allowed_actions: (nenhum)
|
|
547
|
+
- limits:
|
|
548
|
+
- usage_description: ate 80 caracteres e 4 linhas
|
|
549
|
+
- rate_limit.max: null
|
|
550
|
+
- rate_limit.janela_ms: null
|
|
551
|
+
- rate_limit.escopo: sem_rate_limit_explicito
|
|
552
|
+
- access.somente_premium: false
|
|
553
|
+
- access.planos_permitidos: comum, premium
|
|
554
|
+
- plan_limits.comum.max: 12
|
|
555
|
+
- plan_limits.comum.janela_ms: 300000
|
|
556
|
+
- plan_limits.comum.escopo: usuario
|
|
557
|
+
- plan_limits.premium.max: 45
|
|
558
|
+
- plan_limits.premium.janela_ms: 300000
|
|
559
|
+
- plan_limits.premium.escopo: usuario
|
|
560
|
+
- discovery:
|
|
561
|
+
- keywords: figurinhatextobranco, stw, figurinhas, privado, grupo
|
|
562
|
+
- faq_queries: como usar figurinhatextobranco, o que faz figurinhatextobranco, comando figurinhatextobranco
|
|
563
|
+
- user_phrasings: quero usar figurinhatextobranco, me ajuda com figurinhatextobranco, gera figurinha com texto
|
|
564
|
+
- suggestion_priority: 100
|
|
565
|
+
- handler:
|
|
566
|
+
- file: stickerTextCommand.js
|
|
567
|
+
- method: processTextSticker
|
|
568
|
+
- command_case: figurinhatextobranco
|
|
569
|
+
|
|
570
|
+
### figurinhatextopisca
|
|
571
|
+
|
|
572
|
+
- id: sticker.figurinhatextopisca
|
|
573
|
+
- aliases: stb, stickertextblink
|
|
574
|
+
- enabled: true
|
|
575
|
+
- categoria: figurinhas
|
|
576
|
+
- descricao: Gera figurinha animada de texto piscante.
|
|
577
|
+
- permissao_necessaria: usuario comum
|
|
578
|
+
- version: 1.0.0
|
|
579
|
+
- stability: stable
|
|
580
|
+
- deprecated: nao
|
|
581
|
+
- risk_level: low
|
|
582
|
+
- local_de_uso:
|
|
583
|
+
- privado
|
|
584
|
+
- grupo
|
|
585
|
+
- metodos_de_uso:
|
|
586
|
+
- <prefix>figurinhatextopisca seu texto
|
|
587
|
+
- <prefix>stb seu texto
|
|
588
|
+
- mensagens_uso (variantes):
|
|
589
|
+
- default:
|
|
590
|
+
- 📌 Use: <prefix>figurinhatextopisca seu texto
|
|
591
|
+
- 💡 Exemplo: <prefix>stb bom dia seus lindos -verde
|
|
592
|
+
- subcomandos:
|
|
593
|
+
- (nenhum)
|
|
594
|
+
- argumentos:
|
|
595
|
+
- texto | tipo: string | obrigatorio | validacao: até 80 caracteres, máximo 4 linhas | default: null | posicao: 0
|
|
596
|
+
- pre_condicoes:
|
|
597
|
+
- requer_grupo: nao
|
|
598
|
+
- requer_admin: nao
|
|
599
|
+
- requer_admin_principal: nao
|
|
600
|
+
- requer_google_login: sim
|
|
601
|
+
- requer_nsfw: nao
|
|
602
|
+
- requer_midia: nao
|
|
603
|
+
- requer_mensagem_respondida: nao
|
|
604
|
+
- rate_limit:
|
|
605
|
+
- max: null
|
|
606
|
+
- janela_ms: null
|
|
607
|
+
- escopo: sem_rate_limit_explicito
|
|
608
|
+
- acesso:
|
|
609
|
+
- somente_premium: nao
|
|
610
|
+
- planos_permitidos: comum, premium
|
|
611
|
+
- limite_uso_por_plano:
|
|
612
|
+
- comum: max=12, janela_ms=300000, escopo=usuario
|
|
613
|
+
- premium: max=45, janela_ms=300000, escopo=usuario
|
|
614
|
+
- informacoes_coletadas:
|
|
615
|
+
- identificador do chat (remoteJid)
|
|
616
|
+
- identificador do remetente (senderJid)
|
|
617
|
+
- texto do comando e argumentos
|
|
618
|
+
- contexto da mensagem (citacao e mencoes, quando existir)
|
|
619
|
+
- texto informado para compor a figurinha
|
|
620
|
+
- parametros de animacao piscante
|
|
621
|
+
- dependencias_externas:
|
|
622
|
+
- conversão de mÃdia local
|
|
623
|
+
- armazenamento temporário
|
|
624
|
+
- efeitos_colaterais:
|
|
625
|
+
- gera mÃdia temporária animada
|
|
626
|
+
- envia figurinha
|
|
627
|
+
- respostas_padrao:
|
|
628
|
+
- success: Comando executado com sucesso.
|
|
629
|
+
- usage_error: Formato de uso inválido. Consulte metodos_de_uso.
|
|
630
|
+
- permission_error: Permissão insuficiente para executar este comando.
|
|
631
|
+
- sucesso: Comando executado com sucesso.
|
|
632
|
+
- erro_uso: Formato de uso inválido. Consulte metodos_de_uso.
|
|
633
|
+
- erro_permissao: Permissão insuficiente para executar este comando.
|
|
634
|
+
- mensagens_sistema:
|
|
635
|
+
- (nao informado)
|
|
636
|
+
- limites_operacionais:
|
|
637
|
+
- (nao informado)
|
|
638
|
+
- opcoes:
|
|
639
|
+
- toggle_on_off_status.type: toggle
|
|
640
|
+
- toggle_on_off_status.allowed_actions: on, off, status
|
|
641
|
+
- toggle_on_off_status.action_argument: acao
|
|
642
|
+
- add_remove_list.type: list_management
|
|
643
|
+
- add_remove_list.allowed_actions: add, remove, list
|
|
644
|
+
- add_remove_list.action_argument: acao
|
|
645
|
+
- approve_reject.type: moderation_decision
|
|
646
|
+
- approve_reject.allowed_actions: approve, reject
|
|
647
|
+
- approve_reject.action_argument: acao
|
|
648
|
+
- approve_reject.requires_targets: true
|
|
649
|
+
- set_status_reset.type: configuration_window
|
|
650
|
+
- set_status_reset.allowed_actions: set, status, reset
|
|
651
|
+
- set_status_reset.action_argument: valor
|
|
652
|
+
- observabilidade:
|
|
653
|
+
- event_name: command.executed
|
|
654
|
+
- analytics_event: whatsapp_command_stickertextblink
|
|
655
|
+
- tags_log: whatsapp, command, stickerModule, stickertextblink
|
|
656
|
+
- nivel_log: info
|
|
657
|
+
- privacidade:
|
|
658
|
+
- dados_sensiveis:
|
|
659
|
+
- chat_identifier
|
|
660
|
+
- sender_identifier
|
|
661
|
+
- command_content
|
|
662
|
+
- retencao: standard_app_logs
|
|
663
|
+
- base_legal: service_execution_and_legitimate_interest
|
|
664
|
+
- docs:
|
|
665
|
+
- summary: Gera figurinha animada de texto piscante.
|
|
666
|
+
- usage_examples: <prefix>figurinhatextopisca seu texto, <prefix>stb seu texto
|
|
667
|
+
- usage_variants.default: 📌 Use: <prefix>figurinhatextopisca seu texto, 💡 Exemplo: <prefix>stb bom dia seus lindos -verde
|
|
668
|
+
- behavior:
|
|
669
|
+
- type: argument_driven
|
|
670
|
+
- allowed_actions: (nenhum)
|
|
671
|
+
- limits:
|
|
672
|
+
- usage_description: ate 80 caracteres e 4 linhas
|
|
673
|
+
- rate_limit.max: null
|
|
674
|
+
- rate_limit.janela_ms: null
|
|
675
|
+
- rate_limit.escopo: sem_rate_limit_explicito
|
|
676
|
+
- access.somente_premium: false
|
|
677
|
+
- access.planos_permitidos: comum, premium
|
|
678
|
+
- plan_limits.comum.max: 12
|
|
679
|
+
- plan_limits.comum.janela_ms: 300000
|
|
680
|
+
- plan_limits.comum.escopo: usuario
|
|
681
|
+
- plan_limits.premium.max: 45
|
|
682
|
+
- plan_limits.premium.janela_ms: 300000
|
|
683
|
+
- plan_limits.premium.escopo: usuario
|
|
684
|
+
- discovery:
|
|
685
|
+
- keywords: figurinhatextopisca, stb, figurinhas, privado, grupo
|
|
686
|
+
- faq_queries: como usar figurinhatextopisca, o que faz figurinhatextopisca, comando figurinhatextopisca
|
|
687
|
+
- user_phrasings: quero usar figurinhatextopisca, me ajuda com figurinhatextopisca, gera figurinha animada de
|
|
688
|
+
- suggestion_priority: 100
|
|
689
|
+
- handler:
|
|
690
|
+
- file: stickerTextCommand.js
|
|
691
|
+
- method: processBlinkingTextSticker
|
|
692
|
+
- command_case: figurinhatextopisca
|