Module: JPush::Schedule

Extended by:
Helper::ArgumentHelper, Schedule
Included in:
Schedule
Defined in:
lib/jpush/schedule.rb,
lib/jpush/schedule/trigger.rb,
lib/jpush/schedule/schedule_payload.rb

Defined Under Namespace

Classes: SchedulePayload, Trigger

Constant Summary

Constants included from Helper::ArgumentHelper

Helper::ArgumentHelper::MAX_ALIAS_ARRAY_SIZE, Helper::ArgumentHelper::MAX_MSG_IDS_ARRAY_SIZE, Helper::ArgumentHelper::MAX_REGISTRATION_ID_ARRAY_SIZE, Helper::ArgumentHelper::MAX_TAG_ARRAY_MAX_BYTESIZE, Helper::ArgumentHelper::MAX_TAG_ARRAY_SZIE

Constants included from Helper::Argument

Helper::Argument::MAX_ALIAS_BYTESIZE, Helper::Argument::MAX_TAG_BYTESIZE, Helper::Argument::MOBILE_RE

Instance Method Summary collapse

Methods included from Helper::ArgumentHelper

build_alias, build_extras, build_msg_ids, build_platform, build_registration_ids, build_tags, extended

Methods included from Helper::Argument

#check_alias, #check_mobile, #check_platform, #check_registration_id, #check_tag, #ensure_argument_not_blank, #ensure_argument_required, #ensure_not_over_bytesize, #ensure_not_over_size, #ensure_word_valid

Instance Method Details

#create(schedule_payload) ⇒ Object

POST api.jpush.cn/v3/schedules 创建一个新的定时任务



13
14
15
16
17
# File 'lib/jpush/schedule.rb', line 13

def create(schedule_payload)
  schedule_payload = schedule_payload.is_a?(SchedulePayload) ? schedule_payload : nil
  body = schedule_payload.to_hash
  Http::Client.post(base_url, body: body)
end

#delete(schedule_id) ⇒ Object

删除指定的Schedule任务 DELETE api.jpush.cn/v3/schedules/schedule_id



40
41
42
# File 'lib/jpush/schedule.rb', line 40

def delete(schedule_id)
  Http::Client.delete(base_url + schedule_id)
end

#show(schedule_id) ⇒ Object

获取指定的定时任务 GET api.jpush.cn/v3/schedules/schedule_id



27
28
29
# File 'lib/jpush/schedule.rb', line 27

def show(schedule_id)
  Http::Client.get(base_url + schedule_id)
end

#tasks(page = nil) ⇒ Object

GET api.jpush.cn/v3/schedules?page= 获取当前有效(endtime未过期)的 schedule 列表



21
22
23
# File 'lib/jpush/schedule.rb', line 21

def tasks(page = nil)
  Http::Client.get(base_url, params: { page: page })
end

#update(schedule_id, name: nil, enabled: nil, trigger: nil, push: nil) ⇒ Object

修改指定的Schedule PUT api.jpush.cn/v3/schedules/schedule_id



33
34
35
36
# File 'lib/jpush/schedule.rb', line 33

def update(schedule_id, name: nil, enabled: nil, trigger: nil, push: nil)
  body = SchedulePayload.new(name, trigger, push, enabled).to_update_hash
  Http::Client.put(base_url + schedule_id, body: body)
end