Files
SNAPI/OtherAPI.py
2025-09-15 11:26:56 +00:00

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})