From 84fcecb2b3754310688984f78cbebcc9deaafa05 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Odd=20Str=C3=A5b=C3=B8?= <oddstr13@openshell.no>
Date: Wed, 9 Dec 2020 23:29:52 +0100
Subject: [PATCH] Pass hexlify bytes in helper.utils.event Fixes #441

---
 jellyfin_kodi/helper/utils.py | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/jellyfin_kodi/helper/utils.py b/jellyfin_kodi/helper/utils.py
index 835cbf1b..5c7d8b89 100644
--- a/jellyfin_kodi/helper/utils.py
+++ b/jellyfin_kodi/helper/utils.py
@@ -13,7 +13,7 @@ from uuid import uuid4
 from distutils.version import LooseVersion
 
 from dateutil import tz, parser
-from six import text_type, string_types, iteritems
+from six import text_type, string_types, iteritems, ensure_text, ensure_binary
 from six.moves.urllib.parse import quote_plus
 
 from kodi_six import xbmc, xbmcaddon, xbmcgui, xbmcvfs
@@ -137,12 +137,13 @@ def event(method, data=None, sender=None, hexlify=False):
     sender = sender or "plugin.video.jellyfin"
 
     if hexlify:
-        data = '\\"[\\"{0}\\"]\\"'.format(binascii.hexlify(json.dumps(data)))
-    else:
-        data = '"[%s]"' % json.dumps(data).replace('"', '\\"')
+        data = ensure_text(binascii.hexlify(ensure_binary(json.dumps(data))))
+
+    data = '"[%s]"' % json.dumps(data).replace('"', '\\"')
+
+    LOG.debug("---[ event: %s/%s ] %s", sender, method, data)
 
     xbmc.executebuiltin('NotifyAll(%s, %s, %s)' % (sender, method, data))
-    LOG.debug("---[ event: %s/%s ] %s", sender, method, data)
 
 
 def dialog(dialog_type, *args, **kwargs):