kakaxi 0.0.0 → 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3949b5b3fd256bbe28e3f5571c07b102ffbc7aa4
4
- data.tar.gz: fd1b0a05bb45303d5cf7e9b78e591b70ee08d3ee
3
+ metadata.gz: 844a58de9539c31247f4f3ad2ceda2f657f4fc55
4
+ data.tar.gz: 8a78c188e44af475a1b7f94e2fcaafc71044bf84
5
5
  SHA512:
6
- metadata.gz: c3505fb7ebd3e3abb895b747898de81e767c0e46e3e8cbab99f083810ddfadb1d908160371119ab76a792a9085b876fcaf7e0696f189d7601d0b348338b07c4a
7
- data.tar.gz: 9094d96cbd5a17ace27cc2678f4d7d8d19b32d9431ac072f6c557f8e34685386e8ec1b06aa2205b30cf208b0010c2751447858f6f79e5156d55bae247803ebab
6
+ metadata.gz: 9c00c101409d6a2bbf30c6dc0bc8efb582ee8b55ea3d36608807dbec7b7eb7f00313840c205e6aec8a5e1a0a20ee335e1a5273ec9bb6eeda279ebd4ad2a7c54f
7
+ data.tar.gz: 0de36360b1529eed5f1a6aff393844d60f3625733bc3037a3ed264f6a53c63f7663b9db2db5051c6df143f103f2d439f3688bcc6160135ad4dddb3e200923a89
data/Gemfile ADDED
@@ -0,0 +1,3 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec
@@ -0,0 +1,17 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ kakaxi (0.0.0)
5
+
6
+ GEM
7
+ remote: https://rubygems.org/
8
+ specs:
9
+
10
+ PLATFORMS
11
+ ruby
12
+
13
+ DEPENDENCIES
14
+ kakaxi!
15
+
16
+ BUNDLED WITH
17
+ 1.15.3
Binary file
@@ -0,0 +1,16 @@
1
+ lib = File.expand_path('../lib', __FILE__)
2
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
+
4
+ Gem::Specification.new do |s|
5
+ s.name = 'kakaxi'
6
+ s.version = '0.0.1'
7
+ s.date = '2017-09-10'
8
+ s.summary = 'Library for calling kakaxi api by ruby'
9
+ s.description = 'Make it easy to use Kakaxi API by ruby'
10
+ s.authors = ['Naggi Goishi']
11
+ s.email = 'naggi@kakaxi.jp'
12
+ s.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features|pkg)/}) }
13
+ s.homepage = 'https://kakaxi-data.me/doc#v1-get'
14
+ s.license = 'MIT'
15
+ end
16
+
@@ -3,4 +3,5 @@ require 'kakaxi/farm'
3
3
  require 'kakaxi/device'
4
4
  require 'kakaxi/data/data'
5
5
  require 'kakaxi/client'
6
+ require 'kakaxi/interval_photo'
6
7
 
@@ -7,7 +7,9 @@ module Kakaxi
7
7
  class Client
8
8
  COMMON_HEADER = { 'Content-Type' => 'application/json' }
9
9
  BASE_URL = 'https://kakaxi-data.me/api/v1/'
10
- attr_reader :current_device, :temps, :temp_data, :token, :farm, :devices, :humidities, :timelapses, :solar_radiations, :rainfalls
10
+ attr_reader :current_device, :temps, :temp_data, :token,
11
+ :farm, :devices, :humidities, :timelapses, :solar_radiations,
12
+ :rainfalls, :interval_photos, :interval_photo_data
11
13
 
12
14
  def initialize(email, password)
13
15
  @email = email
@@ -90,6 +92,22 @@ module Kakaxi
90
92
  @timelapse_data = Struct::TimelapseMetaData.new(@timelapses.length, @current_device.id)
91
93
  end
92
94
 
95
+ def load_interval_photos(pagination: false, start_date: Date.today, end_date: Date.today + 7)
96
+ uri = URI.parse(BASE_URL + "kakaxi_devices/#{@current_device.id}/interval_photos")
97
+ params = { pagination: false, start_date: start_date, end_date: end_date }
98
+ uri.query = URI.encode_www_form(params)
99
+ interval_photos = get(uri)
100
+ Struct.new('IntervalPhotoMetaData', :size, :pagination, :start_date, :end_date)
101
+ @interval_photos = interval_photos.map do |photo|
102
+ Kakaxi::IntervalPhoto.new(
103
+ id: photo['id'],
104
+ url: photo['url'],
105
+ taken_at: photo['takenAt']
106
+ )
107
+ end
108
+ @interval_photo_data = Struct::IntervalPhotoMetaData.new(@interval_photos.size, pagination, start_date, end_date)
109
+ end
110
+
93
111
  private
94
112
  def get_token
95
113
  uri = URI.parse(BASE_URL + 'oauth/token')
@@ -0,0 +1,11 @@
1
+ module Kakaxi
2
+ class Temperature
3
+ attr_reader :id, :url, :taken_at
4
+
5
+ def initialize(id: nil, url: nil, taken_at: nil)
6
+ @id = id
7
+ @url = url
8
+ @taken_at = DateTime.strptime(taken_at, '%Y-%m-%dT%H:%M:%SZ')
9
+ end
10
+ end
11
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kakaxi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.0
4
+ version: 0.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Naggi Goishi
@@ -16,6 +16,10 @@ executables: []
16
16
  extensions: []
17
17
  extra_rdoc_files: []
18
18
  files:
19
+ - Gemfile
20
+ - Gemfile.lock
21
+ - kakaxi-0.0.0.gem
22
+ - kakaxi.gemspec
19
23
  - lib/exception/invalid_credentials.rb
20
24
  - lib/kakaxi.rb
21
25
  - lib/kakaxi/client.rb
@@ -28,6 +32,7 @@ files:
28
32
  - lib/kakaxi/data/timelapse.rb
29
33
  - lib/kakaxi/device.rb
30
34
  - lib/kakaxi/farm.rb
35
+ - lib/kakaxi/interval_photo.rb
31
36
  homepage: https://kakaxi-data.me/doc#v1-get
32
37
  licenses:
33
38
  - MIT