Skip to main content

FSM storage on dynamo data bases for aiogram 3.10

Project description

FSM-on-dynamodb

MIT-license dynamo-fsm Python dynamo-fsm dynamodb-boto3

Надстройка над aiogram для организации FSM (finite-state-machine) на базе базы данных dynamodb с использованием библиотеки boto3 & botocore. Может быть использована на serverless-решениях AWS и YandexCloud. Установить библиотеку можно с помощью команды:

pip install dynamodb-fsm

В GUI облачной панели управления или с помощью CLI создайте динамическую serverless базу данных и сервисный аккаунт с ключом. Для пользователей YandexCloud можете воспользоваться документацией. Для корректной работы библиотеки boto3 используется dataclass c переменными окружения, поэтому не забудьте внести следующую информацию в файл .env

ENDPOINT='url_endpoint'
REGION_NAME='ru-central1'
AWS_ACCESS_KEY_ID='key_id'
AWS_SECRET_ACCESS_KEY='access_key_db'

В случае использования собственной конфигурации рекомендуется реализовать следующий код:

from dynamodb_fsm import FSMDynamodb

...

@dataclass
class DatabaseConfig:
    endpoint_url: str = 'ENDPOINT'
    region_name: str = 'REGION_NAME'
    aws_access_key_id: str = 'AWS_ACCESS_KEY_ID'
    aws_secret_access_key: str = 'AWS_SECRET_ACCESS_KEY'


config = DatabaseConfig().__dict__
storage = FSMDynamodb(config=config)

Для подключения хранилища состояний к диспетчеру aiogram используйте следующий пример кода:

from dynamodb_fsm import FSMDynamodb

...

storage = FSMDynamodb()
dp = Dispatcher(storage=storage)

Актуальная информация о функциях надстройки есть в репозитории dynamodb-fsm

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dynamodb_fsm-0.0.2.tar.gz (16.9 MB view details)

Uploaded Source

Built Distribution

dynamodb_fsm-0.0.2-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

Details for the file dynamodb_fsm-0.0.2.tar.gz.

File metadata

  • Download URL: dynamodb_fsm-0.0.2.tar.gz
  • Upload date:
  • Size: 16.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.9

File hashes

Hashes for dynamodb_fsm-0.0.2.tar.gz
Algorithm Hash digest
SHA256 84f733e3e67237eb25aa673d606427ab0f537e725a303c45b1bdfe1fa575d7c7
MD5 9baeaa240ffe5c18a53794271ebade06
BLAKE2b-256 cb4d7388a3728ab98edcb366f3468b1a8e545f606de976cb43445dbcfdba281b

See more details on using hashes here.

File details

Details for the file dynamodb_fsm-0.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for dynamodb_fsm-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 52456ca9477cf617cae0e4ec0a9f45680c72e7ac8130c72d2f0a7bf1e7df58b1
MD5 8032de83015ff7f0e994d02f552c7eb5
BLAKE2b-256 3fc82e4158fa2bbbf9f82508e035e3d43c40f9a247f093eea3a95e6239381ace

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page