From fb604b1a4146852bef44f0a75d0b08c29f7491d7 Mon Sep 17 00:00:00 2001
From: holgern <holgernahrstaedt@gmx.de>
Date: Sun, 22 Sep 2019 12:41:46 +0200
Subject: [PATCH] Switch to next node when follow api is not enabled

---
 beemapi/exceptions.py   | 4 ++++
 beemapi/steemnoderpc.py | 6 ++++++
 2 files changed, 10 insertions(+)

diff --git a/beemapi/exceptions.py b/beemapi/exceptions.py
index d734578e..d72962fd 100644
--- a/beemapi/exceptions.py
+++ b/beemapi/exceptions.py
@@ -76,6 +76,10 @@ class NoApiWithName(RPCError):
     pass
 
 
+class FollowApiNotEnabled(RPCError):
+    pass
+
+
 class ApiNotSupported(RPCError):
     pass
 
diff --git a/beemapi/steemnoderpc.py b/beemapi/steemnoderpc.py
index 6d6705c4..597acecc 100644
--- a/beemapi/steemnoderpc.py
+++ b/beemapi/steemnoderpc.py
@@ -125,6 +125,12 @@ class SteemNodeRPC(GrapheneRPC):
                     raise exceptions.ApiNotSupported(msg)
             else:
                 raise exceptions.NoApiWithName(msg)
+        elif re.search("follow_api_plugin not enabled", msg):
+            if self.nodes.working_nodes_count > 1 and self.nodes.num_retries > -1:
+                self._switch_to_next_node(str(e))
+                doRetry = True
+            else:
+                raise exceptions.FollowApiNotEnabled(msg)
         elif re.search("irrelevant signature included", msg):
             raise exceptions.UnnecessarySignatureDetected(msg)
         elif re.search("WinError", msg):
-- 
GitLab