-
Notifications
You must be signed in to change notification settings - Fork 35
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Using custom scheduling algorithms #9
Comments
Below is the current signature of
And here are the first few lines:
That is basically what it does. This job gets enqueued. The function |
The SOC parameters could be in the way, if something else than batteries are involved. E.g. a heat pump. This requires a re-design of the endpoint anyways, and is not a blocker for this issue. |
Just for scoping this issue, I started thinking about this from an extreme perspective: what if a plugin could register a function with completely custom parameters, and FlexMeasures would read the function signature and dynamically create API fields for known types (such as datetime and Sensor, which would become Basically, that would provide a way for plugins to set up an API service for executing a custom algorithm, without the necessity to use the predescribed API fields for our scheduling trigger API endpoint. However, while it seems like a very flexible solution for developers, it would not standardize the use of scheduling algorithms from the perspective of users. I prefer a trade-off between both perspectives. Taking a step away from that extreme perspective, I like your suggestion to use our current API endpoint fields, and to let a plugin register alternative functions to |
Wow, crazy ideas. Let's not provide API endpoints we don't even know about, supporting that looks like it's going to be too hard. Glad you like my approach :) I didn't mean to let them choose alternative functions to The idea to choose the scheduling implementation via the API we could do later. But I want to think about the real need for that. Which situations might require people using sometimes one implementation, then another? |
I see, so you mean an alternative to the
From the top of my head:
|
Yes. |
We deliver some scheduling algorithms out-of-the-box, with the core FlexMeasures code. Currently, this includes batteries and EV charging stations.
But certainly some algorithms will be more elaborate, more specific or private.
We need an interface to connect algorithms (as a file) to a FlexMeasures instance, so that FlexMeasures picks it up. This should happen from within a plugin.
The text was updated successfully, but these errors were encountered: