flake8 format

main
Bob Mottram 2020-04-04 12:35:55 +01:00
parent b7fc2b948d
commit 05d2d3d983
1 changed files with 85 additions and 72 deletions

View File

@ -6,9 +6,7 @@ __maintainer__="Bob Mottram"
__email__ = "bob@freedombone.net" __email__ = "bob@freedombone.net"
__status__ = "Production" __status__ = "Production"
import json
import os import os
import time
from webfinger import webfingerHandle from webfinger import webfingerHandle
from auth import createBasicAuthHeader from auth import createBasicAuthHeader
from posts import getPersonBox from posts import getPersonBox
@ -18,7 +16,8 @@ from utils import getDomainFromActor
from utils import loadJson from utils import loadJson
from utils import saveJson from utils import saveJson
def setSkillLevel(baseDir: str,nickname: str,domain: str, \
def setSkillLevel(baseDir: str, nickname: str, domain: str,
skill: str, skillLevelPercent: int) -> bool: skill: str, skillLevelPercent: int) -> bool:
"""Set a skill level for a person """Set a skill level for a person
Setting skill level to zero removes it Setting skill level to zero removes it
@ -40,6 +39,7 @@ def setSkillLevel(baseDir: str,nickname: str,domain: str, \
saveJson(actorJson, actorFilename) saveJson(actorJson, actorFilename)
return True return True
def setSkills(baseDir: str, nickname: str, domain: str, skills: {}) -> None: def setSkills(baseDir: str, nickname: str, domain: str, skills: {}) -> None:
actorFilename = baseDir + '/accounts/' + nickname + '@' + domain + '.json' actorFilename = baseDir + '/accounts/' + nickname + '@' + domain + '.json'
if not os.path.isfile(actorFilename): if not os.path.isfile(actorFilename):
@ -50,6 +50,7 @@ def setSkills(baseDir: str,nickname: str,domain: str,skills: {}) -> None:
actorJson['skills'] = skills actorJson['skills'] = skills
saveJson(actorJson, actorFilename) saveJson(actorJson, actorFilename)
def getSkills(baseDir: str, nickname: str, domain: str) -> []: def getSkills(baseDir: str, nickname: str, domain: str) -> []:
"""Returns the skills for a given person """Returns the skills for a given person
""" """
@ -64,7 +65,9 @@ def getSkills(baseDir: str,nickname: str,domain: str) -> []:
return actorJson['skills'] return actorJson['skills']
return None return None
def outboxSkills(baseDir: str,nickname: str,messageJson: {},debug: bool) -> bool:
def outboxSkills(baseDir: str, nickname: str, messageJson: {},
debug: bool) -> bool:
"""Handles receiving a skills update """Handles receiving a skills update
""" """
if not messageJson.get('type'): if not messageJson.get('type'):
@ -83,19 +86,21 @@ def outboxSkills(baseDir: str,nickname: str,messageJson: {},debug: bool) -> bool
return False return False
domain, port = getDomainFromActor(messageJson['actor']) domain, port = getDomainFromActor(messageJson['actor'])
skill = messageJson['object'].replace('"', '').split(';')[0].strip() skill = messageJson['object'].replace('"', '').split(';')[0].strip()
skillLevelPercentStr=messageJson['object'].replace('"','').split(';')[1].strip() skillLevelPercentStr = \
messageJson['object'].replace('"', '').split(';')[1].strip()
skillLevelPercent = 50 skillLevelPercent = 50
if skillLevelPercentStr.isdigit(): if skillLevelPercentStr.isdigit():
skillLevelPercent = int(skillLevelPercentStr) skillLevelPercent = int(skillLevelPercentStr)
return setSkillLevel(baseDir,nickname,domain, \ return setSkillLevel(baseDir, nickname, domain,
skill, skillLevelPercent) skill, skillLevelPercent)
def sendSkillViaServer(baseDir: str, session, nickname: str, password: str, def sendSkillViaServer(baseDir: str, session, nickname: str, password: str,
domain: str,port: int, \ domain: str, port: int,
httpPrefix: str, \ httpPrefix: str,
skill: str,skillLevelPercent: int, \ skill: str, skillLevelPercent: int,
cachedWebfingers: {},personCache: {}, \ cachedWebfingers: {}, personCache: {},
debug: bool, projectVersion: str) -> {}: debug: bool, projectVersion: str) -> {}:
"""Sets a skill for a person via c2s """Sets a skill for a person via c2s
""" """
@ -109,16 +114,18 @@ def sendSkillViaServer(baseDir: str,session,nickname: str,password: str,
if ':' not in domain: if ':' not in domain:
domainFull = domain + ':' + str(port) domainFull = domain + ':' + str(port)
toUrl=httpPrefix+'://'+domainFull+'/users/'+nickname actor = httpPrefix + '://' + domainFull + '/users/' + nickname
ccUrl=httpPrefix+'://'+domainFull+'/users/'+nickname+'/followers' toUrl = actor
ccUrl = actor + '/followers'
if skillLevelPercent: if skillLevelPercent:
skillStr = skill + ';' + str(skillLevelPercent) skillStr = skill + ';' + str(skillLevelPercent)
else: else:
skillStr = skill + ';0' skillStr = skill + ';0'
newSkillJson = { newSkillJson = {
'type': 'Skill', 'type': 'Skill',
'actor': httpPrefix+'://'+domainFull+'/users/'+nickname, 'actor': actor,
'object': '"'+skillStr+'"', 'object': '"'+skillStr+'"',
'to': [toUrl], 'to': [toUrl],
'cc': [ccUrl] 'cc': [ccUrl]
@ -127,7 +134,9 @@ def sendSkillViaServer(baseDir: str,session,nickname: str,password: str,
handle = httpPrefix + '://' + domainFull + '/@' + nickname handle = httpPrefix + '://' + domainFull + '/@' + nickname
# lookup the inbox for the To handle # lookup the inbox for the To handle
wfRequest=webfingerHandle(session,handle,httpPrefix,cachedWebfingers, \ wfRequest = \
webfingerHandle(session, handle, httpPrefix,
cachedWebfingers,
domain, projectVersion) domain, projectVersion)
if not wfRequest: if not wfRequest:
if debug: if debug:
@ -137,9 +146,13 @@ def sendSkillViaServer(baseDir: str,session,nickname: str,password: str,
postToBox = 'outbox' postToBox = 'outbox'
# get the actor inbox for the To handle # get the actor inbox for the To handle
inboxUrl,pubKeyId,pubKey,fromPersonId,sharedInbox,capabilityAcquisition,avatarUrl,displayName= \ (inboxUrl, pubKeyId, pubKey,
getPersonBox(baseDir,session,wfRequest,personCache, \ fromPersonId, sharedInbox,
projectVersion,httpPrefix,nickname,domain,postToBox) capabilityAcquisition,
avatarUrl, displayName) = getPersonBox(baseDir, session, wfRequest,
personCache, projectVersion,
httpPrefix, nickname, domain,
postToBox)
if not inboxUrl: if not inboxUrl:
if debug: if debug:
@ -150,18 +163,18 @@ def sendSkillViaServer(baseDir: str,session,nickname: str,password: str,
print('DEBUG: No actor was found for ' + handle) print('DEBUG: No actor was found for ' + handle)
return 4 return 4
authHeader=createBasicAuthHeader(Nickname,password) authHeader = createBasicAuthHeader(nickname, password)
headers = { headers = {
'host': domain, \ 'host': domain,
'Content-type': 'application/json', \ 'Content-type': 'application/json',
'Authorization': authHeader 'Authorization': authHeader
} }
postResult = \ postResult = \
postJson(session, newSkillJson, [], inboxUrl, headers, "inbox:write") postJson(session, newSkillJson, [], inboxUrl, headers, "inbox:write")
#if not postResult: if not postResult:
# if debug: if debug:
# print('DEBUG: POST announce failed for c2s to '+inboxUrl) print('DEBUG: POST announce failed for c2s to ' + inboxUrl)
# return 5 # return 5
if debug: if debug: