From 196878aea0856bac7b5302f377fee862c2e852fe Mon Sep 17 00:00:00 2001 From: Bob Mottram Date: Wed, 10 Mar 2021 13:13:54 +0000 Subject: [PATCH 1/2] Extra newlines --- notifications_client.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/notifications_client.py b/notifications_client.py index 661c1c79d..9d0d54dac 100644 --- a/notifications_client.py +++ b/notifications_client.py @@ -320,6 +320,7 @@ def runNotificationsClient(baseDir: str, proxyType: str, httpPrefix: str, httpPrefix, speakerJson['id'], cachedWebfingers, personCache, True, __version__) + print('') elif keyPress == 'unlike' or keyPress == 'undo like': if nameStr and gender and messageStr: _sayCommand('Undoing like of post by ' + nameStr, @@ -331,7 +332,9 @@ def runNotificationsClient(baseDir: str, proxyType: str, httpPrefix: str, httpPrefix, speakerJson['id'], cachedWebfingers, personCache, True, __version__) - elif keyPress == 'repeat' or keyPress == 'rp': + print('') + elif (keyPress == 'repeat' or keyPress == 'replay' or + keyPress == 'rp'): if nameStr and gender and messageStr: _sayCommand('Repeating ' + nameStr, screenreader, systemLanguage, espeak, From 517e311e4153058e94100133b012ca91c6b75d8e Mon Sep 17 00:00:00 2001 From: Bob Mottram Date: Wed, 10 Mar 2021 13:38:11 +0000 Subject: [PATCH 2/2] Follow and unfollw via notification client --- notifications_client.py | 58 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/notifications_client.py b/notifications_client.py index 9d0d54dac..3f20561cc 100644 --- a/notifications_client.py +++ b/notifications_client.py @@ -11,6 +11,8 @@ import html import time import sys import select +from utils import getNicknameFromActor +from utils import getDomainFromActor from utils import getFullDomain from session import createSession from speaker import getSpeakerFromServer @@ -19,6 +21,8 @@ from speaker import getSpeakerRate from speaker import getSpeakerRange from like import sendLikeViaServer from like import sendUndoLikeViaServer +from follow import sendFollowRequestViaServer +from follow import sendUnfollowRequestViaServer def _waitForKeypress(timeout: int, debug: bool) -> str: @@ -333,6 +337,60 @@ def runNotificationsClient(baseDir: str, proxyType: str, httpPrefix: str, cachedWebfingers, personCache, True, __version__) print('') + elif keyPress.startswith('follow '): + followHandle = keyPress.replace('follow ', '').strip() + if followHandle.startswith('@'): + followHandle = followHandle[1:] + if '@' in followHandle or '://' in followHandle: + followNickname = getNicknameFromActor(followHandle) + followDomain, followPort = \ + getDomainFromActor(followHandle) + if followNickname and followDomain: + _sayCommand('Sending follow request to ' + + followNickname + '@' + followDomain, + screenreader, systemLanguage, espeak) + sendFollowRequestViaServer(baseDir, session, + nickname, password, + domain, port, + followNickname, + followDomain, + followPort, + httpPrefix, + cachedWebfingers, + personCache, + debug, __version__) + else: + _sayCommand(followHandle + ' is not valid', + screenreader, systemLanguage, espeak) + print('') + elif (keyPress.startswith('unfollow ') or + keyPress.startswith('stop following ')): + followHandle = keyPress.replace('unfollow ', '').strip() + followHandle = followHandle.replace('stop following ', '') + if followHandle.startswith('@'): + followHandle = followHandle[1:] + if '@' in followHandle or '://' in followHandle: + followNickname = getNicknameFromActor(followHandle) + followDomain, followPort = \ + getDomainFromActor(followHandle) + if followNickname and followDomain: + _sayCommand('Stop following ' + + followNickname + '@' + followDomain, + screenreader, systemLanguage, espeak) + sendUnfollowRequestViaServer(baseDir, session, + nickname, password, + domain, port, + followNickname, + followDomain, + followPort, + httpPrefix, + cachedWebfingers, + personCache, + debug, __version__) + else: + _sayCommand(followHandle + ' is not valid', + screenreader, systemLanguage, espeak) + print('') elif (keyPress == 'repeat' or keyPress == 'replay' or keyPress == 'rp'): if nameStr and gender and messageStr: