Started refactoring
This commit is contained in:
parent
3aaa21388a
commit
d0705886a1
337
gotipy.py
337
gotipy.py
@ -3,203 +3,236 @@ import json
|
|||||||
import base64
|
import base64
|
||||||
from pprint import pprint
|
from pprint import pprint
|
||||||
|
|
||||||
proxies = {
|
|
||||||
'http': "localhost:8080"
|
|
||||||
}
|
|
||||||
|
|
||||||
class gotipy(object):
|
class gotipy(object):
|
||||||
def __init__(self, token, url):
|
## Application Functions
|
||||||
self.token = token
|
class applications(object):
|
||||||
self.url = url
|
def __init__(self, token, url, proxies = {}):
|
||||||
self.headers = {'X-Gotify-Key' : self.token}
|
self.token = token
|
||||||
|
self.url = url
|
||||||
|
self.headers = {'X-Gotify-Key' : self.token}
|
||||||
|
self.proxies = proxies
|
||||||
|
|
||||||
|
def getApplications(self):
|
||||||
|
self.requrl = self.url + '/application'
|
||||||
|
|
||||||
|
req = requests.get(self.requrl, headers=self.headers, proxies=self.proxies)
|
||||||
|
return req
|
||||||
|
|
||||||
|
def createApplication(self, name, description):
|
||||||
|
self.name = name
|
||||||
|
self.description = description
|
||||||
|
self.requrl = self.url + '/application'
|
||||||
|
|
||||||
|
data = {}
|
||||||
|
data["name"] = self.name
|
||||||
|
data["description"] = self.description
|
||||||
|
|
||||||
|
req = requests.post(self.requrl, headers=self.headers, json=data)
|
||||||
|
pprint(req)
|
||||||
|
return req
|
||||||
|
|
||||||
|
def deleteApplication(self, appid):
|
||||||
|
self.appid = appid
|
||||||
|
self.requrl = self.url + '/application/' + str(self.appid)
|
||||||
|
|
||||||
|
req = requests.delete(self.requrl, headers=self.headers)
|
||||||
|
return req
|
||||||
|
|
||||||
|
def updateApplicationImage(self, appid, imgData):
|
||||||
|
self.id = appid
|
||||||
|
self.imgData = { 'file': imgData}
|
||||||
|
self.requrl = self.url + '/application/' + self.id + '/image'
|
||||||
|
|
||||||
|
req = requests.post(self.requrl, headers=self.headers, files=self.imgData)
|
||||||
|
return req
|
||||||
## Auth Function
|
## Auth Function
|
||||||
def basicAuth(self, user, passwd):
|
|
||||||
self.user = user
|
|
||||||
self.passwd = passwd
|
|
||||||
self.string = self.user + ':' + self.passwd
|
|
||||||
self.encoded = base64.b64encode(self.string.encode("utf-8"))
|
|
||||||
print(self.string.encode('utf-8'))
|
|
||||||
self.headers["authorization"] = "Basic " + base64.b64encode(self.string)
|
|
||||||
print(self.encoded)
|
|
||||||
return self.headers
|
|
||||||
|
|
||||||
## Token Functions
|
|
||||||
def getApplications(self):
|
|
||||||
self.requrl = self.url + '/application'
|
|
||||||
|
|
||||||
req = requests.get(self.requrl, headers=self.headers)
|
## Client Functions
|
||||||
return req
|
class clients(object):
|
||||||
|
def __init__(self, token, url, proxies = {}):
|
||||||
|
self.token = token
|
||||||
|
self.url = url
|
||||||
|
self.headers = {'X-Gotify-Key' : self.token}
|
||||||
|
self.proxies = proxies
|
||||||
|
|
||||||
def createApplication(self, name, description):
|
def getClients(self):
|
||||||
self.name = name
|
self.requrl = self.url + '/client'
|
||||||
self.description = description
|
|
||||||
self.requrl = self.url + '/application'
|
|
||||||
|
|
||||||
data = {}
|
req = requests.get(self.requrl, headers=self.headers)
|
||||||
data["name"] = self.name
|
return req
|
||||||
data["description"] = self.description
|
|
||||||
|
|
||||||
req = requests.post(self.requrl, headers=self.headers, json=data)
|
def addClient(self, name):
|
||||||
pprint(req)
|
self.name = name
|
||||||
return req
|
self.requrl = self.url + '/client'
|
||||||
|
data = {"name": self.name}
|
||||||
|
pprint(data)
|
||||||
|
|
||||||
def deleteApplication(self, appid):
|
req = requests.post(self.requrl, headers=self.headers, json=data)
|
||||||
self.appid = appid
|
return req
|
||||||
self.requrl = self.url + '/application/' + str(self.appid)
|
|
||||||
|
|
||||||
req = requests.delete(self.requrl, headers=self.headers)
|
def deleteClient(self, clientid):
|
||||||
return req
|
self.clientid = clientid
|
||||||
|
self.requrl = self.url + '/client/' + str(self.clientid)
|
||||||
|
|
||||||
def updateApplicationImage(self, appid, imgData):
|
req = requests.delete(self.requrl, headers=self.headers)
|
||||||
self.id = appid
|
return req
|
||||||
self.imgData = { 'file': imgData}
|
|
||||||
self.requrl = self.url + '/application/' + self.id + '/image'
|
|
||||||
|
|
||||||
req = requests.post(self.requrl, headers=self.headers, files=self.imgData)
|
|
||||||
return req
|
|
||||||
|
|
||||||
def getClients(self):
|
|
||||||
self.requrl = self.url + '/client'
|
|
||||||
|
|
||||||
req = requests.get(self.requrl, headers=self.headers)
|
|
||||||
return req
|
|
||||||
|
|
||||||
def addClient(self, name):
|
|
||||||
self.name = name
|
|
||||||
self.requrl = self.url + '/client'
|
|
||||||
data = {"name": self.name}
|
|
||||||
pprint(data)
|
|
||||||
|
|
||||||
req = requests.post(self.requrl, headers=self.headers, json=data)
|
|
||||||
return req
|
|
||||||
|
|
||||||
def deleteClient(self, clientid):
|
|
||||||
self.clientid = clientid
|
|
||||||
self.requrl = self.url + '/client/' + str(self.clientid)
|
|
||||||
|
|
||||||
req = requests.delete(self.requrl, headers=self.headers)
|
|
||||||
return req
|
|
||||||
|
|
||||||
## Message Functions
|
## Message Functions
|
||||||
def getMessagesByApp(self, appid):
|
class msgManager(object):
|
||||||
self.appid = appid
|
def __init__(self, token, url, proxies = {}):
|
||||||
self.requrl = self.url + '/application/' + str(self.appid) + "/message"
|
self.token = token
|
||||||
|
self.url = url
|
||||||
|
self.headers = {'X-Gotify-Key' : self.token}
|
||||||
|
self.proxies = proxies
|
||||||
|
|
||||||
req = requests.get(self.requrl, headers=self.headers)
|
def getMessagesByApp(self, appid):
|
||||||
return req
|
self.appid = appid
|
||||||
|
self.requrl = self.url + '/application/' + str(self.appid) + "/message"
|
||||||
|
|
||||||
def deleteAllMessagesFromApp(self, appid):
|
req = requests.get(self.requrl, headers=self.headers)
|
||||||
self.appid = appid
|
return req
|
||||||
self.requrl = self.url + '/application/' + str(self.appid) + "/message"
|
|
||||||
|
|
||||||
req = requests.delete(self.requrl, headers=self.headers)
|
def deleteAllMessagesFromApp(self, appid):
|
||||||
return req
|
self.appid = appid
|
||||||
|
self.requrl = self.url + '/application/' + str(self.appid) + "/message"
|
||||||
|
|
||||||
def getAllMessages(self):
|
req = requests.delete(self.requrl, headers=self.headers)
|
||||||
self.requrl = self.url + '/message'
|
return req
|
||||||
|
|
||||||
req = requests.get(self.requrl, headers=self.headers)
|
def getAllMessages(self):
|
||||||
return req
|
self.requrl = self.url + '/message'
|
||||||
|
|
||||||
def sendMessage(self, title, message):
|
req = requests.get(self.requrl, headers=self.headers)
|
||||||
self.title = title
|
return req
|
||||||
self.message = message
|
|
||||||
self.requrl = self.url + '/message'
|
|
||||||
|
|
||||||
#define a new dict for the message
|
def deleteAllMessages(self):
|
||||||
data = {}
|
self.requrl = self.url + '/message'
|
||||||
data["message"] = self.message
|
|
||||||
data["title"] = self.title
|
|
||||||
|
|
||||||
req = requests.post(self.requrl, headers=self.headers, json=data)
|
req = requests.delete(self.requrl, headers=self.headers)
|
||||||
return req
|
return req
|
||||||
|
|
||||||
def deleteAllMessages(self):
|
def deleteMessageByID(self, msgid):
|
||||||
self.requrl = self.url + '/message'
|
self.msgid = msgid
|
||||||
|
self.requrl = self.url + '/message/' + str(self.msgid)
|
||||||
|
|
||||||
req = requests.delete(self.requrl, headers=self.headers)
|
req = requests.delete(self.requrl, headers=self.headers)
|
||||||
return req
|
return req
|
||||||
|
|
||||||
def deleteMessageByID(self, msgid):
|
def getStream(self): ## Currently broken, returns 400 error, no idea why
|
||||||
self.msgid = msgid
|
self.requrl = self.url + '/stream'
|
||||||
self.requrl = self.url + '/message/' + str(self.msgid)
|
|
||||||
|
|
||||||
req = requests.delete(self.requrl, headers=self.headers)
|
req = requests.get(self.requrl, headers=self.headers)
|
||||||
return req
|
return req
|
||||||
|
|
||||||
def getStream(self): ## Currently broken, returns 400 error, no idea why
|
class messages(object):
|
||||||
self.requrl = self.url + '/stream'
|
def __init__(self, token, url, proxies = {}):
|
||||||
|
self.token = token
|
||||||
|
self.url = url
|
||||||
|
self.headers = {'X-Gotify-Key' : self.token}
|
||||||
|
self.proxies = proxies
|
||||||
|
|
||||||
req = requests.get(self.requrl, headers=self.headers)
|
def sendMessage(self, title, message):
|
||||||
return req
|
self.title = title
|
||||||
|
self.message = message
|
||||||
|
self.requrl = self.url + '/message'
|
||||||
|
|
||||||
|
#define a new dict for the message
|
||||||
|
data = {}
|
||||||
|
data["message"] = self.message
|
||||||
|
data["title"] = self.title
|
||||||
|
|
||||||
|
req = requests.post(self.requrl, headers=self.headers, json=data)
|
||||||
|
return req
|
||||||
## User Functions
|
## User Functions
|
||||||
|
class users(object):
|
||||||
|
def __init__(self, token, url, proxies = {}):
|
||||||
|
self.token = token
|
||||||
|
self.url = url
|
||||||
|
self.headers = {'X-Gotify-Key' : self.token}
|
||||||
|
self.proxies = proxies
|
||||||
|
|
||||||
def getCurrentUser(self):
|
|
||||||
self.requrl = self.url + '/current/user'
|
|
||||||
|
|
||||||
req = requests.get(self.requrl, headers=self.headers)
|
def getCurrentUser(self):
|
||||||
return req
|
self.requrl = self.url + '/current/user'
|
||||||
|
|
||||||
def changeUserPassword(self, passwd):
|
req = requests.get(self.requrl, headers=self.headers)
|
||||||
self.passwd = str(passwd)
|
return req
|
||||||
self.requrl = self.url + '/current/user/password'
|
|
||||||
|
|
||||||
data = {"pass": self.passwd}
|
def changeUserPassword(self, passwd):
|
||||||
req = requests.post(self.requrl, headers=self.headers, json=data)
|
self.passwd = str(passwd)
|
||||||
return req
|
self.requrl = self.url + '/current/user/password'
|
||||||
|
|
||||||
def getUsers(self):
|
data = {"pass": self.passwd}
|
||||||
self.requrl = self.url + '/user'
|
req = requests.post(self.requrl, headers=self.headers, json=data)
|
||||||
|
return req
|
||||||
|
|
||||||
req = requests.get(self.requrl, headers=self.headers)
|
def getUsers(self):
|
||||||
return req
|
self.requrl = self.url + '/user'
|
||||||
|
|
||||||
def createUser(self, isAdmin, username, password):
|
req = requests.get(self.requrl, headers=self.headers)
|
||||||
self.isAdmin = bool(isAdmin)
|
return req
|
||||||
self.username = str(username)
|
|
||||||
self.password = str(password)
|
|
||||||
self.requrl = self.url + '/user'
|
|
||||||
|
|
||||||
data = {"admin": self.isAdmin,
|
def createUser(self, isAdmin, username, password):
|
||||||
"name": self.username,
|
self.isAdmin = bool(isAdmin)
|
||||||
"pass": self.password}
|
self.username = str(username)
|
||||||
|
self.password = str(password)
|
||||||
|
self.requrl = self.url + '/user'
|
||||||
|
|
||||||
req = requests.post(self.requrl, headers=self.headers, json=data)
|
data = {"admin": self.isAdmin,
|
||||||
return req
|
"name": self.username,
|
||||||
|
"pass": self.password}
|
||||||
|
|
||||||
def getUserByID(self, userID):
|
req = requests.post(self.requrl, headers=self.headers, json=data)
|
||||||
self.userID = str(userID)
|
return req
|
||||||
self.requrl = self.url + '/user/' + self.userID
|
|
||||||
|
|
||||||
req = requests.get(self.requrl, headers=self.headers)
|
def getUserByID(self, userID):
|
||||||
return req
|
self.userID = str(userID)
|
||||||
|
self.requrl = self.url + '/user/' + self.userID
|
||||||
|
|
||||||
def updateUserByID(self, userID, isAdmin, username, password): ## I really do not like this implementation will look into a better way
|
req = requests.get(self.requrl, headers=self.headers)
|
||||||
self.userID = str(userID)
|
return req
|
||||||
self.isAdmin = bool(isAdmin)
|
|
||||||
self.username = str(username)
|
|
||||||
self.password = str(password)
|
|
||||||
self.requrl = self.url + '/user/' + self.userID
|
|
||||||
|
|
||||||
data = {"admin": self.isAdmin,
|
def updateUserByID(self, userID, isAdmin, username, password): ## I really do not like this implementation will look into a better way
|
||||||
"name": self.username,
|
self.userID = str(userID)
|
||||||
"pass": self.password}
|
self.isAdmin = bool(isAdmin)
|
||||||
req = requests.post(self.requrl, headers=self.headers, json=data)
|
self.username = str(username)
|
||||||
return req
|
self.password = str(password)
|
||||||
|
self.requrl = self.url + '/user/' + self.userID
|
||||||
|
|
||||||
def deleteUserByID(self, userID):
|
data = {"admin": self.isAdmin,
|
||||||
self.userID = str(userID)
|
"name": self.username,
|
||||||
self.requrl = self.url + '/user/' + self.userID
|
"pass": self.password}
|
||||||
|
req = requests.post(self.requrl, headers=self.headers, json=data)
|
||||||
|
return req
|
||||||
|
|
||||||
req = requests.delete(self.requrl, headers=self.headers)
|
def deleteUserByID(self, userID):
|
||||||
return req
|
self.userID = str(userID)
|
||||||
|
self.requrl = self.url + '/user/' + self.userID
|
||||||
|
|
||||||
|
req = requests.delete(self.requrl, headers=self.headers)
|
||||||
|
return req
|
||||||
|
|
||||||
## Get version information
|
## Get version information
|
||||||
|
class utils(object):
|
||||||
|
def __init__(self, token, url, proxies = {}):
|
||||||
|
self.token = token
|
||||||
|
self.url = url
|
||||||
|
self.headers = {'X-Gotify-Key' : self.token}
|
||||||
|
self.proxies = proxies
|
||||||
|
|
||||||
def getVersion(self):
|
def getVersion(self):
|
||||||
self.requrl = self.url + '/version'
|
self.requrl = self.url + '/version'
|
||||||
|
|
||||||
req = requests.get(self.requrl)
|
req = requests.get(self.requrl)
|
||||||
return req
|
return req
|
||||||
|
|
||||||
|
def basicAuth(self, user, passwd):
|
||||||
|
self.user = user
|
||||||
|
self.passwd = passwd
|
||||||
|
self.string = self.user + ':' + self.passwd
|
||||||
|
self.encoded = base64.b64encode(self.string.encode("utf-8"))
|
||||||
|
print(self.string.encode('utf-8'))
|
||||||
|
self.headers["authorization"] = "Basic " + base64.b64encode(self.string)
|
||||||
|
print(self.encoded)
|
||||||
|
return self.headers
|
||||||
Loading…
x
Reference in New Issue
Block a user