Skip to content
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

Initial implementation of EiOpt service (issue #128 & #70 & #48) #164

Closed
wants to merge 16 commits into from
Closed

Initial implementation of EiOpt service (issue #128 & #70 & #48) #164

wants to merge 16 commits into from

Conversation

bjohnson75f
Copy link

EiOpt service is required for OpenADR 2.0b certification. We are currently going through the certification process and the certification vendor InterTek requires EiOpt support in order to be certified.

There are 3 issues referring to this particular service: #128 & #70 & #48

This is my first attempt at a basic implementation of this service.

stan-janssen and others added 16 commits February 12, 2024 15:38
This makes the verification of TLS signatures optional in the VTN, which
is useful if the VEN is using client-side TLS but no message signatures.

Signed-off-by: Bill Johnson <[email protected]>
Signed-off-by: Bill Johnson <[email protected]>
Signed-off-by: Bill Johnson <[email protected]>
Signed-off-by: Bill Johnson <[email protected]>
Signed-off-by: Bill Johnson <[email protected]>
Signed-off-by: Bill Johnson <[email protected]>
Signed-off-by: Bill Johnson <[email protected]>
Signed-off-by: Bill Johnson <[email protected]>
@bjohnson75f
Copy link
Author

This PR misses the device assets, so I'm closing it for now.

@alexcarnero97
Copy link
Contributor

Hi, I am also interested in passing the OpenADR 2.0b certification for which the EiOpt service needs to be supported. The work and contribution of @bjohnson75f on the library is appreciated but I have some questions: Does the whole implementation work correctly? Does it work to pass the OpenADR 2.0b certification using the EiOpt service? Why did you stop the implementation? Is it intended to merge these changes into the main OpenLEADR branch? Thanks in advance.

@bjohnson75f
Copy link
Author

bjohnson75f commented Feb 20, 2024

Hey @alexcarnero97, I do intend to contribute my work back to this project, however at the time of this PR I realized that I had missed a few pieces in the EiOpt implementation and I am currently struggling with a fairly tight work schedule. Once I get through the weeds on that effort, I'll circle back to this project and get a PR up that also complies with the contributor guidelines.

As to your other questions, for the pieces that are implemented in OpenLEADR, I believe that they are OpenADR 2.0B compliant, however there is a difference between compliancy and certification. We have engaged a certification vendor (Intertek) and should actually be beginning that process today or tomorrow, so we'll learn shortly where we fall in that realm. The EiOpt functionality IS REQUIRED for certification, so while this framework is compliant, it is NOT certifiable as is. There are other "silly" requirements for certification such as a VEN UI that allows the certification vendor to have a way to cause the VEN to do things such as submit an EiOpt schedule with it's various metadatas, restart the VEN, clear existing event data, and so forth. Even if you do not intend to take advantage of EiOpt, it is still required to be implemented and needs a mechanism for the VEN to initiate it since it is an out of band VEN to VTN call.

If you are serious about certification then your first step is to become an OpenADR member. That will open up the certification package which provides quite a bit of information as to the certification requirements and test cases. It is not cheap, but it is necessary in order to become certified. My next recommendation, or at least consideration, is to pursue obtaining the QualityLogic test harness, which does come with a pretty sizable price tag, but should ease the certification process. We did not do this, but if I had it to do over again I would.

I will report back with our findings after we make a little more progress down the road to certification.

@alexcarnero97
Copy link
Contributor

All right, thank you very much for everything. I look forward to your results with the certification provider and see what they have to say about the EiOpt service and the other "silly" requirements you mentioned (which I certainly had no idea about). Luckily we are already members of the OpenADR alliance and have the QualityLogic test harness.

@bjohnson75f
Copy link
Author

Hey @alexcarnero97, what do you think about the QualityLogic test harness? Have you put it to use and has it been helpful? Can you tell me what type of platform it runs on and what type of app it is? e.g. It's a vtn service that runs in a docker container...sort of thing. Thanks in advance.

@alexcarnero97
Copy link
Contributor

alexcarnero97 commented Feb 24, 2024

Hi @bjohnson75f, yes I have already used it as I am trying to pass the tests to get certified in the future. The test harness is fine, but I am finding that the OpenLEADR library is not quite ready to pass all the tests. It provides basic functionality to implement the OpenADR protocol in Python but it is incomplete as you know. The tool consists of a Java project structured in several modules that define different types of services to test, which are compiled and launched.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants