AEMO Gem

Makes working with AEMO data more pleasant.

Gem Version Build Status Maintainability Test Coverage Coverage Status Known Vulnerabilities Help Contribute to Open Source

Documentation

http://www.rubydoc.info/gems/aemo

Installation

Ruby Versions Supported

  • ruby-head (failures allowed)
  • 2.6 (.0, .1, .2, .3)
  • 2.5 (.0, .1, .2, .3, .4, .5)
  • 2.4 (.0, .1, .2, .3, .4, .5)
  • 2.3 (.0, .1, .2, .3, .4, .5, .6, .7, .8)

Deprecated

  • 2.2 (.5, .6, .7, .8, .9, .10)

Manually from RubyGems.org

% gem install aemo

Or if you are using Bundler

# frozen_string_literal: true

# Gemfile
source 'https://rubygems.org' do
  gem 'aemo'
end

Maintenance

Updating loss factors

  1. Connect to AEMO via VPN (tip: be a market participant in order to unlock this step)
  2. Log in to MSATS
  3. Navigate to Reports and Alerts » CATS » C1 - Data Replication Resynchronisation Report - Data Replication Resynchronisation Report (C1)
  4. Export both the CATS_DLF_CODES and CATS_TNI_CODES tables (from 1-Jan-1970 to the current date, both with 30,000 max rows)
  5. Wait...
  6. Wait some more...
  7. Navigate to Participant Outbox (you have new messages link)
  8. Get the file!
  9. Run the following: ruby cd lib/data && ruby xml_to_json.rb
  10. Add tests for your new FY to spec/lib/aemo/nmi_spec.rb
  11. rspec - note that AEMO can retroactively change factors so if there is an old failing test double check the json to make sure it's not AEMO's fault.
  12. Commit, push & create a pull request