76 lines
3.0 KiB
Python
76 lines
3.0 KiB
Python
###调用服务器API
|
|
###By Liang-work(NRFF&nanci)
|
|
###Version 1.0
|
|
###License: MIT
|
|
from ProjectCfg import DOMAIN
|
|
from .CallServer import _make_request
|
|
import httpx
|
|
|
|
|
|
def OPITIONS(self,path,params):
|
|
response = httpx.options(f"{self.url}{path}",params=params,headers=self.headers)
|
|
if response:
|
|
return {"status": response.status_code, "data": response.json()}
|
|
else:
|
|
return {"status": response.status_code, "data": {}}
|
|
|
|
###=========================活动API=================================
|
|
|
|
def ActivityAPIs(cursor: str = '', filter: str = '', take: int = 20, debuginclude: str = '', Authorization: str = '') -> dict:
|
|
"""获取首页内容"""
|
|
url = f"{DOMAIN}/activities"
|
|
headers = {'accept': 'application/json', 'Authorization': Authorization}
|
|
params = {"cursor": cursor, "filter": filter, "take": take, "debuginclude": debuginclude}
|
|
return _make_request('GET', url, headers, params=params)
|
|
|
|
|
|
###==========================领域的发现==========================
|
|
def GetDiscover(query: str = '', take: int = 20, offset: int = 0, Authorization: str = '') -> dict:
|
|
"""获取发现"""
|
|
url = f"{DOMAIN}/discovery/realms"
|
|
headers = {'accept': 'application/json', 'Authorization': Authorization}
|
|
params = {'query': query, 'take': take, 'offset': offset}
|
|
return _make_request('GET', url, headers, params=params)
|
|
|
|
###==========================领域聊天==========================
|
|
def RealmChat(Authorization: str,slug:str ) -> dict:
|
|
"""获取领域聊天"""
|
|
url = f"{DOMAIN}/realms/{slug}/chat"
|
|
headers = {'accept': 'application/json', 'Authorization': Authorization}
|
|
return _make_request('GET', url, headers)
|
|
|
|
###==========================尊贵的Solar Network 恒星计划订阅用户专属翻译功能======= :(呜呜呜,没钱订阅
|
|
|
|
def TranslationText(Authorization: str,text:str ,Tolang:str,FromLang:str) -> dict:
|
|
"""翻译文本"""
|
|
url = f"{DOMAIN}/translation"
|
|
headers = {'accept': 'application/json', 'Authorization': Authorization}
|
|
params = {"to":Tolang,"from":FromLang}
|
|
return _make_request('POST', url, headers, params=params,request_body=text)
|
|
|
|
###==========================服务器版本==========================
|
|
|
|
def GetServerVersion() -> dict:
|
|
"""获取服务器版本"""
|
|
url = f"{DOMAIN}/version"
|
|
headers = {'accept': 'application/json'}
|
|
return _make_request('GET', url, headers)
|
|
|
|
###==========================签到==========================
|
|
def SignIn(Authorization: str) -> dict:
|
|
"""
|
|
签到
|
|
:return:
|
|
"""
|
|
return OPITIONS("/id/accounts/me/check-in",{})
|
|
|
|
###==========================获取通知==========================
|
|
|
|
def GetNotifications(Authorization: str,offset: int = 0, take: int = 20) -> dict:
|
|
"""
|
|
获取通知
|
|
:param offset:
|
|
:param take:
|
|
:return:
|
|
"""
|
|
return _make_request("GET","/pusher/notification",{"offset":offset,"take":take}) |