44 lines
1.1 KiB
Python
44 lines
1.1 KiB
Python
# -*- coding: utf-8 -*-
|
|
from __future__ import absolute_import, unicode_literals
|
|
from wechatpy.client.api.base import BaseWeChatAPI
|
|
from wechatpy.exceptions import WeChatClientException
|
|
|
|
|
|
class WeChatMenu(BaseWeChatAPI):
|
|
|
|
def create(self, agent_id, menu_data):
|
|
return self._post(
|
|
'menu/create',
|
|
params={
|
|
'agentid': agent_id
|
|
},
|
|
data=menu_data
|
|
)
|
|
|
|
def get(self, agent_id):
|
|
try:
|
|
return self._get(
|
|
'menu/get',
|
|
params={
|
|
'agentid': agent_id
|
|
}
|
|
)
|
|
except WeChatClientException as e:
|
|
if e.errcode == 46003:
|
|
# menu not exist
|
|
return None
|
|
else:
|
|
raise e
|
|
|
|
def delete(self, agent_id):
|
|
return self._get(
|
|
'menu/delete',
|
|
params={
|
|
'agentid': agent_id
|
|
}
|
|
)
|
|
|
|
def update(self, agent_id, menu_data):
|
|
self.delete(agent_id)
|
|
return self.create(agent_id, menu_data)
|