TinaTiel / obs-chatbot

GNU General Public License v3.0
3 stars 0 forks source link

Core: Web Layer / Controllers #77

Open TinaTiel opened 3 years ago

TinaTiel commented 3 years ago

Implement the web api layer:

TinaTiel commented 3 years ago

So far completed all the settings endpoints, have sketched out the API design as it is now with some ideas for the future:

/command GET
    /{id} GET, PUT, DELETE
/group GET
    /{id} GET, PUT, DELETE
/user GET
    /{id} GET, PUT, DELETE
/user-assignment PUT, DELETE

/system
    /status GET (list all status messages)
    /settings GET, PUT
/obs
    /status GET (list status messages), PUT (start, stop, etc.)
    /settings GET, PUT
/twitch
    /status GET (list status messages), PUT (start, stop, etc.)
    /settings GET, PUT
    /auth 
        /status GET (check if authenticated)
        /settings GET, PUT

/execute
    /command PUT (execute a specific command definition, with an user context)
        /{name} PUT (execute a command by name, with an user context)
    /twitch*
        /cheer PUT (simulate a twitch cheer, with an user)
        /subscribe PUT (simulate a twitch subscribe, with an user)
        /follow PUT (simulate a twitch follow, with an user)
        /... PUT
    /obs*
        /request PUT (send a request directly)

*Ideas Only, NOT part of this issue
TinaTiel commented 3 years ago

I've clarified "local testing" will be executing a command by name and not via an arbitrary definition via DTO. That feature has been pushed into #79