feat(backend): adding idle and polling mechanism to imap#1196
feat(backend): adding idle and polling mechanism to imap#1196Shadow243 wants to merge 23 commits intocypht-org:masterfrom
Conversation
4f60d8d to
af8cda5
Compare
b84879e to
4434dc0
Compare
console
Outdated
|
|
||
|
|
||
| // Load the application dependencies and bootstrap the application | ||
| require_once __DIR__ . '/index.php'; |
There was a problem hiding this comment.
Load the dependencies here and don't include index.php. Treat console as a separate entry point in the application. index.php will be for web requests and this one for cli.
composer.json
Outdated
| "bacon/bacon-qr-code": "^1.0.3 || ^2.0.0", | ||
| "christian-riesen/base32": "^1.3.2", | ||
| "composer": "^2.0.0", | ||
| "cypht/cli-service": "*", |
There was a problem hiding this comment.
Why do we define another package? It doesn't seem to be runnable without main cypht repo, so better stay as just a subdirecrory in this repo. No need for composer dependencies here.
|
Please ping me when you add the ratchet lib and polling, so I can review again. |
b170a37 to
39e5ea3
Compare
85adaff to
1b03512
Compare
93beb70 to
62f5a63
Compare
…ack,twilio,nexmo,broadcast
62f5a63 to
11d0850
Compare
|
We will soon release Cypht 2.5.0 so this MR is too big/risky to be part of it. But after, we must decide if this is suitable for Cypht 2.6.x or rather 3.0.x |
I share that opinion. |



Summary
This PR introduces a backend service that includes:
Key Features
Event Class: Implements an event dispatching system where events can be defined and dispatched across the system. This allows for decoupled execution of processes in response to events.
Scheduler: Manages task scheduling with cron-like expressions, mutex handling to prevent task overlapping, and timezone support.
Commands: Defines and executes registered commands with dependency injection support.
Notifications: Notification system with extensible drivers for various channels (e.g., Telegram, SMS, Slack). It allows sending notifications based on event triggers such as new emails.
Listeners: Allows the system to react to dispatched events by triggering actions such as notifications or logging.
Example Usage Command using database queue driver
Example Usage Command using sqs queue driver