This commit is contained in:
parent
84a44f6d8c
commit
ac099cbb6c
|
@ -0,0 +1,22 @@
|
||||||
|
import requests
|
||||||
|
|
||||||
|
|
||||||
|
class Http(object):
|
||||||
|
BASE_URL = 'http://114.215.169.94:7035'
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def get_new_user_msg(cls, corpid, userid, external_userid):
|
||||||
|
url = f'{cls.BASE_URL}/api/newusermsg/getnewusermsg'
|
||||||
|
params = {
|
||||||
|
'corpId': corpid,
|
||||||
|
'userId': userid,
|
||||||
|
'externalUserId': external_userid
|
||||||
|
}
|
||||||
|
res = requests.get(url, params=params)
|
||||||
|
if res.status_code == 200:
|
||||||
|
return True, res.json().get('data')
|
||||||
|
return False, None
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
Http.get_new_user_msg('ww056d00fac4950f54', 'QingFeng', 'wmy1VmQgAAWxMDKJdWrY1mY_Gl8HAHwQ')
|
|
@ -78,7 +78,7 @@ def save_add_contact_by_channel(data, corpinfo, *args, **kwargs):
|
||||||
# 修复客户关系
|
# 修复客户关系
|
||||||
edit_add_contact(data, corpinfo, *args, **kwargs)
|
edit_add_contact(data, corpinfo, *args, **kwargs)
|
||||||
# 转化外部用户Id
|
# 转化外部用户Id
|
||||||
WS.transfer_external_userid_to_vid(f'{corpid}_{userid}', externaluserid)
|
WS.transfer_external_userid_to_vid(corpid, userid, externaluserid)
|
||||||
|
|
||||||
|
|
||||||
@shared_task(name='edit_add_contact', queue='contact')
|
@shared_task(name='edit_add_contact', queue='contact')
|
||||||
|
|
|
@ -2,7 +2,9 @@ import logging
|
||||||
|
|
||||||
from apps.jqr.choices import JqrSendGroupMsgIsOpenChoices, JqrSendGroupMsgSendUserTypeChoices, \
|
from apps.jqr.choices import JqrSendGroupMsgIsOpenChoices, JqrSendGroupMsgSendUserTypeChoices, \
|
||||||
JqrSendGroupMsgSendTagTypeChoices
|
JqrSendGroupMsgSendTagTypeChoices
|
||||||
|
from apps.jqr.ksy_http import Http
|
||||||
from apps.jqr.models import JqrExternalUser, JqrHookUser, JqrNewUserSendGroupMsg, JqrExternalFollowUser
|
from apps.jqr.models import JqrExternalUser, JqrHookUser, JqrNewUserSendGroupMsg, JqrExternalFollowUser
|
||||||
|
from apps.jqr.ws import WS
|
||||||
from apps.qc.models import QcCorpinfo
|
from apps.qc.models import QcCorpinfo
|
||||||
|
|
||||||
logger = logging.getLogger('apps')
|
logger = logging.getLogger('apps')
|
||||||
|
@ -79,3 +81,17 @@ def get_jqr_new_send_msg_info(corpid, userid, external_userid):
|
||||||
tagids = [t.get('id') for t in tag.get('tags')]
|
tagids = [t.get('id') for t in tag.get('tags')]
|
||||||
if not tagids:
|
if not tagids:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
def send_new_user_msg(corpid, userid, external_userid):
|
||||||
|
# 发送新客欢迎
|
||||||
|
try:
|
||||||
|
success, data = Http.get_new_user_msg(corpid, userid, external_userid)
|
||||||
|
if not success:
|
||||||
|
logger.error(f'corpid: {corpid}, userid: {userid}, external_userid: {external_userid}, 发送新客欢迎失败')
|
||||||
|
return
|
||||||
|
status_code = WS.send_wx_work_msg(data)
|
||||||
|
return status_code == 200
|
||||||
|
except Exception as e:
|
||||||
|
logger.error(f'corpid: {corpid}, userid: {userid}, external_userid: {external_userid}, 发送新客欢迎失败: {e}')
|
||||||
|
pass
|
||||||
|
|
|
@ -5,23 +5,31 @@ class WS:
|
||||||
BASE_URL = f'http://ws.xbtool.cn'
|
BASE_URL = f'http://ws.xbtool.cn'
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def transfer_external_userid_to_vid(cls, client_id, external_user_ids):
|
def transfer_external_userid_to_vid(cls, corpid, userid, external_user_ids, is_sync=True):
|
||||||
payload = {
|
payload = {
|
||||||
"clientId": client_id,
|
"corpId": corpid,
|
||||||
|
"userId": userid,
|
||||||
|
"isSync": is_sync,
|
||||||
"externalUserIds": external_user_ids
|
"externalUserIds": external_user_ids
|
||||||
}
|
}
|
||||||
url = f'{cls.BASE_URL}/api/hook/websocket/transferexternaluseridtovid'
|
url = f'{cls.BASE_URL}/api/hook/websocket/transferexternaluseridtovid'
|
||||||
response = requests.post(url, json=payload)
|
response = requests.post(url, json=payload)
|
||||||
|
return response.status_code
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def transfer_groupid_to_roomid(cls, client_id, group_ids):
|
def transfer_groupid_to_roomid(cls, corpid, userid, group_ids, is_sync=True):
|
||||||
payload = {
|
payload = {
|
||||||
"clientId": client_id,
|
"corpId": corpid,
|
||||||
|
"userId": userid,
|
||||||
|
"isSync": is_sync,
|
||||||
"groupIds": group_ids
|
"groupIds": group_ids
|
||||||
}
|
}
|
||||||
url = f'{cls.BASE_URL}/api/hook/websocket/transferexternaluseridtovid'
|
url = f'{cls.BASE_URL}/api/hook/websocket/transferexternaluseridtovid'
|
||||||
response = requests.post(url, json=payload)
|
response = requests.post(url, json=payload)
|
||||||
|
return response.status_code
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def send_wx_work_msg(cls):
|
def send_wx_work_msg(cls, data):
|
||||||
url = f'{cls.BASE_URL}/api/hook/websocket/sendwxworkmsg'
|
url = f'{cls.BASE_URL}/api/hook/websocket/sendwxworkmsg'
|
||||||
|
response = requests.post(url, json=data)
|
||||||
|
return response.status_code
|
||||||
|
|
Loading…
Reference in New Issue