Mobilizon reshare è una suite per condividere gli eventi Mobilizon su un'ampia selezione di piattaforme e permettere ad un'organizzazione di automatizzare la propria strategia di social media sugli eventi e la loro promozione. https://mobilizon.it
Go to file
magowiz 45802ecbdd
Feature/optimizing download (#118)
* add column last_update_time

* save last_update_time in event db record

* use id + updatedAt for comparison instead of mobilizon_id, this will treat updated events like new ones

* rework event selection/comparison to include unpublished with updates to ones need to be saved

* added update for unpublished events

* tests: test_update: Add create_unpublished_events tests.

* Move `MobilizonEvent.to_model` to `storage.query`

* Move `MobilizonEvent.from_model` to `storage.query`

* Move `MobilizonEvent.compute_status` to `storage.query`

* Move `publishers.exception.EventNotFound` to `storage.query.exceptions`
2022-02-09 00:54:56 +01:00
.github/workflows Python scheduler docker image (#134) 2022-02-05 18:46:02 +01:00
doc Python scheduler docker image (#134) 2022-02-05 18:46:02 +01:00
docker Python scheduler docker image (#134) 2022-02-05 18:46:02 +01:00
mobilizon_reshare Feature/optimizing download (#118) 2022-02-09 00:54:56 +01:00
scripts Python scheduler docker image (#134) 2022-02-05 18:46:02 +01:00
tests Feature/optimizing download (#118) 2022-02-09 00:54:56 +01:00
.coveragerc add pytest coverage configuration 2021-11-27 18:47:43 +01:00
.envrc Use test script everywhere in the pipeline. (#130) 2022-01-24 22:34:52 +01:00
.gitignore Revert "ignore pylintrc" 2021-12-14 22:47:51 +01:00
.pre-commit-config.yaml updated to python 3.9 2021-05-02 18:33:13 +02:00
.pre-commit-hooks.yaml added .gitignore and pre-commit 2021-04-25 11:10:47 +02:00
LICENSE publishers: Add Zulip publisher. (#62) 2021-09-26 20:12:06 +02:00
README.md Update README.md 2022-02-06 22:29:39 +01:00
README.rst added README for pre-commit 2021-04-25 11:13:59 +02:00
channels-lock.scm Python scheduler docker image (#134) 2022-02-05 18:46:02 +01:00
docker-compose.yml Python scheduler docker image (#134) 2022-02-05 18:46:02 +01:00
guix.scm Docker image (#84) 2021-10-31 01:55:25 +02:00
manifest.scm Python scheduler docker image (#134) 2022-02-05 18:46:02 +01:00
poetry.lock Python scheduler docker image (#134) 2022-02-05 18:46:02 +01:00
pyproject.toml added timezone_sensitive marker (#129) 2022-01-20 11:30:11 +01:00
setup.cfg reworked validation 2021-05-02 10:37:46 +02:00

README.md

CI

The goal of mobilizon_reshare is to provide a suite to reshare Mobilizon events on a broad selection of platforms. This tool enables an organization to automate their social media strategy in regards to events and their promotion.

Platforms

mobilizon-reshare currently supports the following social platforms:

  • Facebook
  • Mastodon
  • Twitter
  • Telegram
  • Zulip

Usage

Scheduling and temporal logic

The tool is designed to work in combination with a scheduler that executes it at regular intervals. mobilizon_reshare allows fine-grained control over the logic to decide when to publish an event, with the minimization of human effort as its first priority.

Installation

mobilizon_reshare is distributed through Pypi and DockerHub. Use

$ pip install mobilizon-reshare

to install the tool in your system or virtualenv.

This should install the command mobilizon-reshare in your system. Use it to access the CLI and discover the available commands and their description.

Guix package

If you run the Guix System you can install mobilizon_reshare by running:

$ guix install -L . mobilizon-reshare.git

To use the same dependencies used in CI env:

$ guix time-machine -C channels-lock.scm -- install -L . mobilizon-reshare.git

Run on your local system

Once you have installed mobilizon_reshare you can schedule the refresh from Mobilizon with your system's cron:

$ sudo crontab -l
*/15 * * * * mobilizon-reshare start

Deploying through Docker Compose

To run mobilizon_reshare in a production environment you can use the image published to DockerHub. We also provide an example docker-compose.yml.

Contributing

We welcome contributions from anybody. Currently our process is not structured but feel free to open or take issues through Github in case you want to help us. We have setup some instructions to setup a development environment here.