Sha256: 8f6fae4dafec4e3375f005f9543db854f7a9a512d72d46460a322dfbe1ebf74c

Contents?: true

Size: 1.49 KB

Versions: 3

Compression:

Stored size: 1.49 KB

Contents

##
# Device Daily Report 是 iBeacon 设备每日统计报表的封装类。

class Wechat::ShakeAround::DeviceDailyReport

  extend Wechat::Core::Common
  extend Wechat::ShakeAround::Common

  ##
  # 以设备为维度的数据统计接口
  # http://mp.weixin.qq.com/wiki/0/8a24bcacad40fe7ee98d1573cb8a6764.html#.E4.BB.A5.E8.AE.BE.E5.A4.87.E4.B8.BA.E7.BB.B4.E5.BA.A6.E7.9A.84.E6.95.B0.E6.8D.AE.E7.BB.9F.E8.AE.A1.E6.8E.A5.E5.8F.A3
  #
  # Return hash format if success:
  # {
  #   data:
  #   [
  #     {
  #       click_pv: <CLICK_PAGE_VIEW>,
  #       click_uv: <CLICK_USER_VIEW>,
  #       ftime:    <DATE>,            // 当天0点对应的时间戳
  #       shake_pv: <SHAKE_PAGE_VIEW>,
  #       shake_uv: <SHAKE_USER_VIEW>
  #     },
  #     ...
  #   ],
  #   errcode: 0,
  #   errmsg:  'success.'
  # }
  #
  # device_id is an integer or a hash like { uuid: <UUID>, major: <MAJOR>, minor: <MINOR> }.
  # date_range is a string range like 'yyyy-mm-dd'..'yyyy-mm-dd'.
  def self.index(access_token, device_id, date_range)

    assert_present! :access_token, access_token
    assert_present! :device_id,    device_id
    assert_present! :date_range,   date_range

    device_identifier = normalize_device_id device_id

    post_json "https://api.weixin.qq.com/shakearound/statistics/device?access_token=#{access_token}", body:
      {
        device_identifier: device_identifier,
        begin_date:        normalize_date(date_range.min),
        end_date:          normalize_date(date_range.max)
      }
  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
wechat-shake_around-1.1 lib/wechat/shake_around/device_daily_report.rb
wechat-shake_around-1.0 lib/wechat/shake_around/device_daily_report.rb
wechat-shake_around-0.9.2 lib/wechat/shake_around/device_daily_report.rb