Module: Wework::Api::Methods::Service

Included in:
Suite
Defined in:
lib/wework/api/methods/service.rb

Instance Method Summary collapse

Instance Method Details

#authorize_url(redirect_uri, scope = "snsapi_base", state = "wxwork") ⇒ Object



34
35
36
37
# File 'lib/wework/api/methods/service.rb', line 34

def authorize_url(redirect_uri, scope="snsapi_base", state="wxwork")
  uri = ERB::Util.url_encode(redirect_uri)
  "#{AUTHORIZE_ENDPOINT}?appid=#{suite_id}&redirect_uri=#{uri}&response_type=code&scope=#{scope}&state=#{state}#wechat_redirect"
end

#corp_authorize_url(redirect_uri, state = "corp_authorize") ⇒ Object



5
6
7
# File 'lib/wework/api/methods/service.rb', line 5

def corp_authorize_url(redirect_uri, state="corp_authorize")
  "#{APP_AUTHORIZE_ENDPOINT}?suite_id=#{suite_id}&pre_auth_code=#{get_pre_auth_code}&redirect_uri=#{redirect_uri}&state=#{state}"
end

#get_admin_list(auth_corpid, agentid) ⇒ Object



30
31
32
# File 'lib/wework/api/methods/service.rb', line 30

def get_admin_list auth_corpid, agentid
  post 'service/get_admin_list', {auth_corpid: auth_corpid, agentid: agentid}
end

#get_auth_info(auth_corpid, permanent_code) ⇒ Object



22
23
24
# File 'lib/wework/api/methods/service.rb', line 22

def get_auth_info auth_corpid, permanent_code
  post 'service/get_auth_info', {auth_corpid: auth_corpid, permanent_code: permanent_code}
end

#get_corp_token(auth_corpid, permanent_code) ⇒ Object



26
27
28
# File 'lib/wework/api/methods/service.rb', line 26

def get_corp_token auth_corpid, permanent_code
  post 'service/get_corp_token', {suite_id: suite_id, auth_corpid: auth_corpid, permanent_code: permanent_code}
end

#get_oauth_userinfo(code) ⇒ Object



39
40
41
# File 'lib/wework/api/methods/service.rb', line 39

def get_oauth_userinfo(code)
  get 'service/getuserinfo3rd', params: {access_token: access_token, code: code}
end

#get_permanent_code(auth_code) ⇒ Object



18
19
20
# File 'lib/wework/api/methods/service.rb', line 18

def get_permanent_code auth_code
  post 'service/get_permanent_code', {auth_code: auth_code}
end

#get_pre_auth_codeObject



9
10
11
12
# File 'lib/wework/api/methods/service.rb', line 9

def get_pre_auth_code
  result = get 'service/get_pre_auth_code'
  return result.pre_auth_code if result.success?
end

#get_session_with_jscode(js_code, grant_type = 'authorization_code') ⇒ Object



47
48
49
# File 'lib/wework/api/methods/service.rb', line 47

def get_session_with_jscode(js_code, grant_type='authorization_code')
  post 'service/miniprogram/jscode2session', {}, params: {js_code: js_code, grant_type: grant_type}
end

#get_user_detail(user_ticket) ⇒ Object



43
44
45
# File 'lib/wework/api/methods/service.rb', line 43

def get_user_detail(user_ticket)
  post "service/getuserdetail3rd?access_token=#{access_token}", {user_ticket: user_ticket}
end

#set_session_info(pre_auth_code, session_info = {}) ⇒ Object



14
15
16
# File 'lib/wework/api/methods/service.rb', line 14

def set_session_info pre_auth_code, session_info={}
  post 'service/set_session_info', {pre_auth_code: pre_auth_code, session_info: session_info}
end