Created
November 14, 2024 21:48
-
-
Save MustafaJafar/d89a350abd3c564237998ec143acc624 to your computer and use it in GitHub Desktop.
AYON addon endpoint to serve coffee!
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from typing import Type | |
from ayon_server.api.dependencies import CurrentUser | |
from ayon_server.addons import BaseServerAddon | |
from ayon_server.settings import BaseSettingsModel | |
# I've installed `art` module locally to my addon server code to a relative direcory called Lib | |
# pip install art --target=E:\Ynput\addons-test\my_addon\server\Libs | |
# Then, I've just created a package regulary and it included the Libs directory. | |
from .Libs.art import art | |
# Settings | |
class MySettings(BaseSettingsModel): | |
"""My Settings. """ | |
pass | |
# Default settings values | |
DEFAULT_VALUES = {} | |
class MyAddonSettings(BaseServerAddon): | |
# Set settings | |
settings_model: Type[MySettings] = MySettings | |
# Set default settings values | |
async def get_default_settings(self): | |
settings_model_cls = self.get_settings_model() | |
return settings_model_cls(**DEFAULT_VALUES) | |
def initialize(self): | |
self.add_endpoint( | |
"get-coffee", | |
self.get_coffee, | |
method="GET", | |
) | |
# Example REST endpoint | |
async def get_coffee( | |
self, | |
user: CurrentUser | |
): | |
"""Return some coffee.""" | |
coffee = art("coffee", number=2, space=3) | |
return ( | |
f"Hello {user.name}, " | |
f"Here you are some {coffee} coffee!" | |
) | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment