* mobilizon_bots: query: Add create_publisher.
* Move PublicationStatus to models.publication.
* Move NotificationStatus to models.notification.
* storage: query: Add events_with_status.
* storage: query: Add get_unpublished_events.
* storage: query: Add create_unpublished events.
This function takes care of looking into the database
to store only the events whose is not
already present.
* event: event: Support multiple publications.
This patch changes the public interface of `MobilizonEvent` to
support multiple publications. This mainly entails two changes:
- When instancing a `MobilizonEvent` from an `Event` model
the `publication_status` will be computed by looking at
the statuses of all the related publications.
- Now the `publication_time` is a `dict[str, Arrow]`. This
enables tracking multiple social platforms publication time.
* Update main.
* Minor fixes
* Better definition of MobilizonEvent.publication_status.
Co-authored-by: Giacomo Leidi <goodoldpaul@autistici.org>
* Fixed typo
* Added proper exceptions for publishers
* Updated publishers logics: using messengers to allow publications without events
* Added new exception 'InvalidSettings'
* Updated notifiers and publishers: retrieve credentials and destination from config, use only message/event in constructors, lesser refactoring
* Updated publishers' tests
* Updated notifiers and publishers config for Telegram service, updated settings.toml file
* Updated 'post()' method and removed useless config checks for Telegram bot
* Added jinja2 template management for message formatting methods
* Manage message validation in publishers' run() method
* Better config management for notifiers and publishers
* Lesser update to logging and error-raising management (#23)
* added get events stub
* added event parsing
* removed datetime
* added config and tests
* fixed response format in test
* more tests
* added error handling for request
* improved dummy data
* added get_unpublished_events
* added test
* removed last_accessed
* mobilizon_url moved to fixture
* added config comments
* moved mobilizon group to config
* mobilizon_bots/cli.py: New file.
* mobilizon_bots/config.py: Minor tweaks.
* mobilizon_bots/settings.toml: Downcase variables, drop jinja2
templating in favor of format, add logging configuration.