module Wechat::Concern::Common

Public Instance Methods

addvoicetorecofortext(voice_id, file, file_format = 'mp3', lang = 'zh_CN') click to toggle source
# File lib/wechat/concern/common.rb, line 224
def addvoicetorecofortext(voice_id, file, file_format = 'mp3', lang = 'zh_CN')
  post_file 'media/voice/addvoicetorecofortext', file, params: { format: file_format, voice_id: voice_id, lang: lang }
end
custom_message_send(message) click to toggle source
# File lib/wechat/concern/common.rb, line 180
def custom_message_send(message)
  post 'message/custom/send', message.is_a?(Wechat::Message) ? message.to_json : JSON.generate(message), content_type: :json
end
customservice_getonlinekflist() click to toggle source
# File lib/wechat/concern/common.rb, line 184
def customservice_getonlinekflist
  get 'customservice/getonlinekflist'
end
get_material(media_id) click to toggle source
# File lib/wechat/concern/common.rb, line 153
def get_material(media_id)
  post 'material/get_material', JSON.generate(media_id: media_id), as: :file
end
getusercumulate(begin_date, end_date) click to toggle source
# File lib/wechat/concern/common.rb, line 220
def getusercumulate(begin_date, end_date)
  post 'getusercumulate', JSON.generate(begin_date: begin_date, end_date: end_date), base: Wechat::Api::DATACUBE_BASE
end
getusersummary(begin_date, end_date) click to toggle source
# File lib/wechat/concern/common.rb, line 216
def getusersummary(begin_date, end_date)
  post 'getusersummary', JSON.generate(begin_date: begin_date, end_date: end_date), base: Wechat::Api::DATACUBE_BASE
end
group_create(group_name) click to toggle source
# File lib/wechat/concern/common.rb, line 10
def group_create(group_name)
  post 'groups/create', JSON.generate(group: { name: group_name })
end
group_delete(groupid) click to toggle source
# File lib/wechat/concern/common.rb, line 18
def group_delete(groupid)
  post 'groups/delete', JSON.generate(group: { id: groupid })
end
group_update(groupid, new_group_name) click to toggle source
# File lib/wechat/concern/common.rb, line 14
def group_update(groupid, new_group_name)
  post 'groups/update', JSON.generate(group: { id: groupid, name: new_group_name })
end
groups() click to toggle source
# File lib/wechat/concern/common.rb, line 6
def groups
  get 'groups/get'
end
material(media_id) click to toggle source
# File lib/wechat/concern/common.rb, line 147
def material(media_id)
  ActiveSupport::Deprecation.new.warn('material is deprecated. use get_material instead.')

  post 'material/get_material', JSON.generate(media_id: media_id), as: :file
end
material_add(type, file, opts = {}) click to toggle source
# File lib/wechat/concern/common.rb, line 165
def material_add(type, file, opts = {})
  params = { type: type }
  params.merge!(description: opts.slice(:title, :introduction).to_json) if type == 'video'

  post_file 'material/add_material', file, params: params
end
material_add_news(mpnews_message) click to toggle source
# File lib/wechat/concern/common.rb, line 172
def material_add_news(mpnews_message)
  post 'material/add_news', mpnews_message.to_json
end
material_count() click to toggle source
# File lib/wechat/concern/common.rb, line 157
def material_count
  get 'material/get_materialcount'
end
material_delete(media_id) click to toggle source
# File lib/wechat/concern/common.rb, line 176
def material_delete(media_id)
  post 'material/del_material', JSON.generate(media_id: media_id)
end
material_list(type, offset, count) click to toggle source
# File lib/wechat/concern/common.rb, line 161
def material_list(type, offset, count)
  post 'material/batchget_material', JSON.generate(type: type, offset: offset, count: count)
end
menu() click to toggle source
menu_addconditional(menu) click to toggle source
menu_create(menu) click to toggle source
menu_delconditional(menuid) click to toggle source
menu_delete() click to toggle source
menu_trymatch(user_id) click to toggle source
message_mass_delete(msg_id) click to toggle source
# File lib/wechat/concern/common.rb, line 79
def message_mass_delete(msg_id)
  post 'message/mass/delete', JSON.generate(msg_id: msg_id)
end
message_mass_get(msg_id) click to toggle source
# File lib/wechat/concern/common.rb, line 87
def message_mass_get(msg_id)
  post 'message/mass/get', JSON.generate(msg_id: msg_id)
end
message_mass_preview(message) click to toggle source
# File lib/wechat/concern/common.rb, line 83
def message_mass_preview(message)
  post 'message/mass/preview', message.to_json
end
message_mass_sendall(message) click to toggle source
# File lib/wechat/concern/common.rb, line 75
def message_mass_sendall(message)
  post 'message/mass/sendall', message.to_json
end
qrcode_create_limit_scene(scene_id_or_str) click to toggle source
# File lib/wechat/concern/common.rb, line 60
def qrcode_create_limit_scene(scene_id_or_str)
  case scene_id_or_str
  when 0.class
    post 'qrcode/create', JSON.generate(action_name: 'QR_LIMIT_SCENE',
                                        action_info: { scene: { scene_id: scene_id_or_str } })
  else
    post 'qrcode/create', JSON.generate(action_name: 'QR_LIMIT_STR_SCENE',
                                        action_info: { scene: { scene_str: scene_id_or_str } })
  end
end
qrcode_create_scene(scene_id_or_str, expire_seconds = 604800) click to toggle source
# File lib/wechat/concern/common.rb, line 47
def qrcode_create_scene(scene_id_or_str, expire_seconds = 604800)
  case scene_id_or_str
  when 0.class
    post 'qrcode/create', JSON.generate(expire_seconds: expire_seconds,
                                        action_name: 'QR_SCENE',
                                        action_info: { scene: { scene_id: scene_id_or_str } })
  else
    post 'qrcode/create', JSON.generate(expire_seconds: expire_seconds,
                                        action_name: 'QR_STR_SCENE',
                                        action_info: { scene: { scene_str: scene_id_or_str } })
  end
end
queryrecoresultfortext(voice_id, lang = 'zh_CN') click to toggle source
# File lib/wechat/concern/common.rb, line 228
def queryrecoresultfortext(voice_id, lang = 'zh_CN')
  post 'media/voice/queryrecoresultfortext', nil, params: { voice_id: voice_id, lang: lang }
end
shorturl(long_url) click to toggle source
# File lib/wechat/concern/common.rb, line 71
def shorturl(long_url)
  post 'shorturl', JSON.generate(action: 'long2short', long_url: long_url)
end
tag(tagid, next_openid = '') click to toggle source
# File lib/wechat/concern/common.rb, line 212
def tag(tagid, next_openid = '')
  post 'user/tag/get', JSON.generate(tagid: tagid, next_openid: next_openid)
end
tag_add_user(tagid, openids) click to toggle source
# File lib/wechat/concern/common.rb, line 204
def tag_add_user(tagid, openids)
  post 'tags/members/batchtagging', JSON.generate(openid_list: openids, tagid: tagid)
end
tag_create(tag_name) click to toggle source
# File lib/wechat/concern/common.rb, line 192
def tag_create(tag_name)
  post 'tags/create', JSON.generate(tag: { name: tag_name })
end
tag_del_user(tagid, openids) click to toggle source
# File lib/wechat/concern/common.rb, line 208
def tag_del_user(tagid, openids)
  post 'tags/members/batchuntagging', JSON.generate(openid_list: openids, tagid: tagid)
end
tag_delete(tagid) click to toggle source
# File lib/wechat/concern/common.rb, line 200
def tag_delete(tagid)
  post 'tags/delete', JSON.generate(tag: { id: tagid })
end
tag_update(tagid, new_tag_name) click to toggle source
# File lib/wechat/concern/common.rb, line 196
def tag_update(tagid, new_tag_name)
  post 'tags/update', JSON.generate(tag: { id: tagid, name: new_tag_name })
end
tags() click to toggle source
# File lib/wechat/concern/common.rb, line 188
def tags
  get 'tags/get'
end
translatecontent(from_content, lfrom = 'zh_CN', lto = 'en_US') click to toggle source
# File lib/wechat/concern/common.rb, line 232
def translatecontent(from_content, lfrom = 'zh_CN', lto = 'en_US')
  post 'media/voice/translatecontent', from_content, params: { lfrom: lfrom, lto: lto }
end
user(openid) click to toggle source
# File lib/wechat/concern/common.rb, line 27
def user(openid)
  get 'user/info', params: { openid: openid }
end
user_batchget(openids, lang = 'zh-CN') click to toggle source
# File lib/wechat/concern/common.rb, line 31
def user_batchget(openids, lang = 'zh-CN')
  post 'user/info/batchget', JSON.generate(user_list: openids.collect { |v| { openid: v, lang: lang } })
end
user_change_group(openid, to_groupid) click to toggle source
# File lib/wechat/concern/common.rb, line 39
def user_change_group(openid, to_groupid)
  post 'groups/members/update', JSON.generate(openid: openid, to_groupid: to_groupid)
end
user_group(openid) click to toggle source
# File lib/wechat/concern/common.rb, line 35
def user_group(openid)
  post 'groups/getid', JSON.generate(openid: openid)
end
user_update_remark(openid, remark) click to toggle source
# File lib/wechat/concern/common.rb, line 43
def user_update_remark(openid, remark)
  post 'user/info/updateremark', JSON.generate(openid: openid, remark: remark)
end
users(nextid = nil) click to toggle source
# File lib/wechat/concern/common.rb, line 22
def users(nextid = nil)
  params = { params: { next_openid: nextid } } if nextid.present?
  get('user/get', params || {})
end
web_access_token(code) click to toggle source
# File lib/wechat/concern/common.rb, line 236
def web_access_token(code)
  params = {
    appid: access_token.appid,
    secret: access_token.secret,
    code: code,
    grant_type: 'authorization_code'
  }
  client.get 'oauth2/access_token', params: params, base: Wechat::Api::OAUTH2_BASE
end
web_auth_access_token(web_access_token, openid) click to toggle source
# File lib/wechat/concern/common.rb, line 246
def web_auth_access_token(web_access_token, openid)
  client.get 'auth', params: { access_token: web_access_token, openid: openid }, base: Wechat::Api::OAUTH2_BASE
end
web_refresh_access_token(user_refresh_token) click to toggle source
# File lib/wechat/concern/common.rb, line 250
def web_refresh_access_token(user_refresh_token)
  params = {
    appid: access_token.appid,
    grant_type: 'refresh_token',
    refresh_token: user_refresh_token
  }
  client.get 'oauth2/refresh_token', params: params, base: Wechat::Api::OAUTH2_BASE
end
web_userinfo(web_access_token, openid, lang = 'zh_CN') click to toggle source
# File lib/wechat/concern/common.rb, line 259
def web_userinfo(web_access_token, openid, lang = 'zh_CN')
  client.get 'userinfo', params: { access_token: web_access_token, openid: openid, lang: lang }, base: Wechat::Api::OAUTH2_BASE
end
wxa_create_qrcode(path, width = 430) click to toggle source
# File lib/wechat/concern/common.rb, line 104
def wxa_create_qrcode(path, width = 430)
  post 'wxaapp/createwxaqrcode', JSON.generate(path: path, width: width)
end
wxa_get_user_phone_number(code) click to toggle source
# File lib/wechat/concern/common.rb, line 91
def wxa_get_user_phone_number(code)
  # https://developers.weixin.qq.com/miniprogram/dev/OpenApiDoc/user-info/phone-number/getPhoneNumber.html
  post 'business/getuserphonenumber', JSON.generate(code: code), base: Wechat::Api::WXA_BASE
end
wxa_get_wxacode(path, width = 430) click to toggle source
# File lib/wechat/concern/common.rb, line 96
def wxa_get_wxacode(path, width = 430)
  post 'getwxacode', JSON.generate(path: path, width: width), base: Wechat::Api::WXA_BASE
end
wxa_get_wxacode_unlimit(scene, page = nil, width = 430) click to toggle source
# File lib/wechat/concern/common.rb, line 100
def wxa_get_wxacode_unlimit(scene, page = nil, width = 430)
  post 'getwxacodeunlimit', JSON.generate(scene: scene, page: page, width: width), base: Wechat::Api::WXA_BASE
end
wxa_msg_sec_check(content) click to toggle source
# File lib/wechat/concern/common.rb, line 108
def wxa_msg_sec_check(content)
  post 'msg_sec_check', JSON.generate(content: content), base: Wechat::Api::WXA_BASE
end