Class: Wechat::ShakeAround::DeviceGroupRelation

Inherits:
Object
  • Object
show all
Extended by:
Core::Common, Common
Defined in:
lib/wechat/shake_around/device_group_relation.rb

Overview

Device Group Relation 是管理 iBeacon 设备与设备分组关系的封装类。

Constant Summary

Constants included from Common

Common::ERROR_CODES

Class Method Summary collapse

Methods included from Common

normalize_date, normalize_device_id, normalize_page_ids

Class Method Details

.create(access_token, device_id, group_id) ⇒ Object

添加设备到分组 mp.weixin.qq.com/wiki/10/9f6b498b6aa0eb5ef6b9ab5a70cc8fba.html#.E6.B7.BB.E5.8A.A0.E8.AE.BE.E5.A4.87.E5.88.B0.E5.88.86.E7.BB.84

Return hash format if success:

data:    {,
errcode: 0,
errmsg:  'success.'

}

device_id is an integer or a hash like { uuid: <UUID>, major: <MAJOR>, minor: <MINOR> }. 每个分组能够持有的设备上限为10000,并且每次添加操作的添加上限为1000。



48
49
50
51
52
53
54
55
56
57
58
59
60
# File 'lib/wechat/shake_around/device_group_relation.rb', line 48

def self.create(access_token, device_id, group_id)

  assert_present! :access_token, access_token
  assert_present! :device_id,    device_id
  assert_present! :group_id,     group_id

  device_identifier = normalize_device_id device_id
  post_json "https://api.weixin.qq.com/shakearound/device/group/adddevice?access_token=#{access_token}", body:
    {
      group_id:           group_id.to_i,
      device_identifiers: [ device_identifier ]
    }
end

.destroy(access_token, device_id, group_id) ⇒ Object

从分组中移除设备 mp.weixin.qq.com/wiki/10/9f6b498b6aa0eb5ef6b9ab5a70cc8fba.html#.E4.BB.8E.E5.88.86.E7.BB.84.E4.B8.AD.E7.A7.BB.E9.99.A4.E8.AE.BE.E5.A4.87

Return hash format if success:

data:    {,
errcode: 0,
errmsg:  'success.'

}

device_id is an integer or a hash like { uuid: <UUID>, major: <MAJOR>, minor: <MINOR> }.



21
22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/wechat/shake_around/device_group_relation.rb', line 21

def self.destroy(access_token, device_id, group_id)

  assert_present! :access_token, access_token
  assert_present! :device_id,    device_id
  assert_present! :group_id,     group_id

  device_identifier = normalize_device_id device_id
  post_json "https://api.weixin.qq.com/shakearound/device/group/deletedevice?access_token=#{access_token}", body:
    {
      group_id:           group_id.to_i,
      device_identifiers: [ device_identifier ]
    }
end