Solved

Can we get access to the live usage API?



Show first post

204 replies

Btw, I can confirm there is no risk of insecure as you will see from the command line the details are on your machine and provided to directly access ovo, the exe has been made by best practice .net core code and is a standalone on pc only exe.


Is the program open or closed source?

If I add my username and password into the settings json file I get

 

OvoData.exe -f 01/01/2020 -t 04/02/2020 -o .\OvoData.csv
Unable to login - 401 - Unauthorized
   at OvoData.OvoLiveRepository.OvoConnect.GetLoginCookieAsync(String userName, String password)
   at OvoData.OvoOrchestrator.ExportData()
   at OvoData.Program.EntryPoint.Run()

Oh! Erm, please just use commandline then  no idea why that didnt work! (You kept the "" right?)

Yep, I kept the quotes to make sure it’s still valid json string.

@Tim_OVO Given that some of Ovo’s customers have been asking for this and more for many years, I think @Jequinlan deserves a big round of applause for sharing his code. I agree that without the backing of Ovo, it should be used with a degree of caution. It could just stop working one day, when Ovo next change their api? interface, as happened in the Hive community recently. 

Yes, if the api changes it could stop, but also the apis are soft coded in the config file so if a trivial change the config will just need updating. The risk of any 3rd party integration exists if any 1st party changes an apinin any situation.

 

If ovo want to see the code , then i am happy to discuss.

Warning: This only protects the user if the API end-point changes, not when the format of data it fetches changes.

Hi All,

I have just written a PowerShell script to fetch all of my readings from January 2017 to present-day a month at a time.

You can find it on GitHub at

https://github.com/MikeWilliams-UK/Bulk-Fetch-Ovo-Readings

Have fun

@Tim_OVO @Transparent @TerryE @andsee @SianiAnni

Here is it: The API exe I promised that takes all that HH data and nicely formats it into a consumable Sheet

https://drive.google.com/drive/folders/1A7XRov0579O53T8OsIGe3wXCk09jul0F?usp=sharing

Download all the files, and read the Readme! (oh, and Enjoy) - now I can start work on ther TOU comparison tool!! 

If anyone is willing to send me their export please do!  - It will help me build the tooling.

John (at) QuinlanServices (dot) Com 

 

Examining the downloaded csv file

  1. The following columns are always empty
    MeterPointIdentifier, CostCurrencyUnit
  2. YearColumn is always same as MonthOfYear column
  3. CostAmmount is always zero
  4. IntervalStart and IntervalEnd columns do not require fractions of a second
    2018-12-01T04:30:00.0000000 → 2018-12-01T04:30:00 please.

Not sure if these are your columns, but the output could do with tidying up.

As a programmer I can help with this.

Userlevel 7
Badge +2

Btw, I can confirm there is no risk of insecure as you will see from the command line the details are on your machine and provided to directly access ovo, the exe has been made by best practice .net core code and is a standalone on pc only exe.


Is the program open or closed source?

At the moment I am discussing if I should open source it or if OVO themselves may be interested to make it or a basis of it integrated as a supported offering.

Btw, I can confirm there is no risk of insecure as you will see from the command line the details are on your machine and provided to directly access ovo, the exe has been made by best practice .net core code and is a standalone on pc only exe.


Is the program open or closed source?

At the moment I am discussing if I should open source it or if OVO themselves may be interested to make it or a basis of it integrated as a supported offering.


Would be good if it were made open source, then the community could help to fix any issues.

Userlevel 7
Badge +5

There’s another issue to consider if OVO were to take this on. I believe that their new Billing System is being developed such that it can be licensed to 3rd parties. Such an arrangement means that they would need to secure some rights over any externally-sourced code within the suite and be able to provide rapid support if an element of that code were to fail or require upgrading.

That’s a legal minefield.

And let’s remember that it was the failure of a 3rd party software provider to resolve issues with parts of their billing system which caused OVO to embark on creating their own in the first place. It didn’t help that Ofgem clobbered them with a hefty fine for the failed usage-estimation provisions in that software.

You will understand that there would be a significant level of reluctance for OVO to become embroiled in such a scenario again.

Userlevel 7

Sorry for another spamming comment but I’m keen to hear if others have checked out this work done by @Jequinlan this week? 

 

@Gary @GarethMarlow @rgphilpott @atilagiant @Deanohol @Peter_Mat @didge05 @sam_cat @jmontalvo @adec @Pramsbottom @ryck @CeeJayCee @alexbaulch @Random @maccordingley @sfgreenwood @johnk @jadam @Fordy @Steveo67 @Siggy0 @CerebralDigits @deanjames @ChrisB @jadam @DaveJenYearsley @ErTnEc @Marshcroft @jordanharper @Simonfea @obiwanzamora @AdamJ @dorinho @Ross2411 @Chrherms  @blakedrayson @TerryE @VibroAxe @jdenver @maurorappa @adec @100903609 @Riscy @r3m0dul8 @MyZoe.Uk @Ajk @AlanN51 @CloudCircus @r3m0dul8 @technogeoff @resoai @Fuzzysteve @mattc @andsee @uvarvu  @g-de 

Userlevel 7
Badge +2

On a side note, a v2 with fixed year field coming next week.

Userlevel 1

Sorry for another spamming comment but I’m keen to hear if others have checked out this work done by @Jequinlan this week? 

 

In the same boat without an account now,

So not unless it’s open-sourced, especially when they managed to make it almost 100mb in size. I’d say no to running that
 

Gave up when I saw the file extension, was hoping for something written that I could run on my Pi.   I tried to decompile it using Visual Studio but didn’t get far.

Userlevel 1

Gave up when I saw the file extension, was hoping for something written that I could run on my Pi.   I tried to decompile it using Visual Studio but didn’t get far.

Looks like C++ I’m guessing it’s using a large library for the http requests and that’s taking up the size, but haven’t had too deep a look myself

Userlevel 3

Tim, I haven’t had any WinX devices for over 10 years so Poweshell is useless to me.  My Python script continues to work fine for me. Thanks.

After looking at the data I can see that my half hourly readings for gas have stopped from August 20th 2020.

I am sure that it’s NOT a fault of the utility as I see the same in the web portal.

Userlevel 7
Badge +5

There’s another very active discussion about missing data on Online Graphs which you should have a look at, @MikeWilliams .

Userlevel 7
Badge +2

Yes its c# in .net core 3. I spoke to my friend who said i can compile a linux version. So will try that soon too!

Sorry for another spamming comment but I’m keen to hear if others have checked out this work done by @Jequinlan this week? 

 

@Gary @GarethMarlow @rgphilpott @atilagiant @Deanohol @Peter_Mat @didge05 @sam_cat @jmontalvo @adec @Pramsbottom @ryck @CeeJayCee @alexbaulch @Random @maccordingley @sfgreenwood @johnk @jadam @Fordy @Steveo67 @Siggy0 @CerebralDigits @deanjames @ChrisB @jadam @DaveJenYearsley @ErTnEc @Marshcroft @jordanharper @Simonfea @obiwanzamora @AdamJ @dorinho @Ross2411 @Chrherms  @blakedrayson @TerryE @VibroAxe @jdenver @maurorappa @adec @100903609 @Riscy @r3m0dul8 @MyZoe.Uk @Ajk @AlanN51 @CloudCircus @r3m0dul8 @technogeoff @resoai @Fuzzysteve @mattc @andsee @uvarvu  @g-de 

 

 

No longer with Ovo, but as a sysadmin I wouldn't trust a compiled exe distributed via gdrive.

That in itself is very bad practice.

Source needs publishing through something like github, and you should host the exe under the releases section of some of that. 

Without it, no one can trust the security of it, especially when you have to put account information in it. 

Yes its c# in .net core 3. I spoke to my friend who said i can compile a linux version. So will try that soon too!

At work we write our code as .net core 3 assemblies, then run them with the command line

dotnet assembly.dll

As far as I know we use the same command line and the same assembly running on our windows Dev machine or in our Linux docker containers

/Mike

@Tim_OVO 

You'd be much better allowing users to pair their own CAD to the system so that they could use the local API off that, rather than it having a dependency on an internet connection (portal scraping etc).

If ovo are still fitting SMETS1 meters, something like the Hildebrand glow would work if it could be paired. https://shop.glowmarkt.com/products/glow-stick

 

Other providers such as octopus (who I moved to) allow this.

@Tim_OVO

You'd be much better allowing users to pair their own CAD to the system so that they could use the local API off that, rather than it having a dependency on an internet connection (portal scraping etc).

If ovo are still fitting SMETS1 meters, something like the Hildebrand glow would work if it could be paired. https://shop.glowmarkt.com/products/glow-stick

 

Other providers such as octopus (who I moved to) allow this.

That's fine for the more technical users, who don't mind paying for extra gadgets.

However, I am sure that there are loads more who just want to use what they already have. I.e. web connection and either Excel or any other free spread sheet software from the likes of open office or libre office etc.

/Mike

That's fair, though I'd have thought that 

"Download this exe, add credentials to config json, look at data in spreadsheet format"

Doesn't quite hit the "live usage API" goal of this topic, and would appear more complicated and daunting to a general user.

Being able to buy a third party device that just needs pairing with your account, and then browsing your usage from anywhere using the companion Bright app, while also providing a local API, would. 

Unless Ovo change the devices they use in their installations that's the only solution I can think of that would hit the target of this topic. 

1. Oops, you are 100% right that download exe etc does not fit with the post title. It's easy to loose sight of this after 8 pages of replies.

2. Yes there is a lot of faffing around to get at your data. Editing the JSON file to add your credentials does not work (yet??) so not worth doing. It is still considered less of a security risk by some.

I would have written this as an azure web app which could be called directly from the browser and generate a choice of xlsx or CSV file directly as a download. This would satisfy the non Windows users.

Userlevel 7

@Jequinlan as the creator of this latest work, can you help me judge if we need a new ‘best answer’? The current one relates to @g-de’s post...

Userlevel 7

@Tim_OVO @Transparent @TerryE @andsee @SianiAnni 

 

Here is it: The API exe I promised that takes all that HH data and nicely formats it into a consumable Sheet

 

https://drive.google.com/drive/folders/1A7XRov0579O53T8OsIGe3wXCk09jul0F?usp=sharing

 

Download all the files, and read the Readme! (oh, and Enjoy) - now I can start work on ther TOU comparison tool!! 

 

If anyone is willing to send me their export please do!  - It will help me build the tooling.

John (at) QuinlanServices (dot) Com 

 

@Jequinlan and others, should I add this comment (above) to the best answer by @g-de ? Is a combination of these two the best customer created workaround for a lack of API we currently have? Let me know please :blush:

Reply