Here is the traceback
Traceback (most recent call last):
File "/home/frappe/frappe-io-bench/apps/frappe/frappe/app.py", line 66, in application
response = frappe.api.handle()
File "/home/frappe/frappe-io-bench/apps/frappe/frappe/api.py", line 54, in handle
return frappe.handler.handle()
File "/home/frappe/frappe-io-bench/apps/frappe/frappe/handler.py", line 29, in handle
data = execute_cmd(cmd)
File "/home/frappe/frappe-io-bench/apps/frappe/frappe/handler.py", line 65, in execute_cmd
return frappe.call(method, *frappe.form_dict)
File "/home/frappe/frappe-io-bench/apps/frappe/frappe/init.py", line 1174, in call
return fn(args, **newargs)
File "/home/frappe/frappe-io-bench/apps/twilio_integration/twilio_integration/twilio_integration/api.py", line 31, in generate_access_token
'token': token.decode('utf-8')
AttributeError: 'str' object has no attribute 'decode'
Use safe_decode while decoding the JWT token.
Here is the traceback Traceback (most recent call last): File "/home/frappe/frappe-io-bench/apps/frappe/frappe/app.py", line 66, in application response = frappe.api.handle() File "/home/frappe/frappe-io-bench/apps/frappe/frappe/api.py", line 54, in handle return frappe.handler.handle() File "/home/frappe/frappe-io-bench/apps/frappe/frappe/handler.py", line 29, in handle data = execute_cmd(cmd) File "/home/frappe/frappe-io-bench/apps/frappe/frappe/handler.py", line 65, in execute_cmd return frappe.call(method, *frappe.form_dict) File "/home/frappe/frappe-io-bench/apps/frappe/frappe/init.py", line 1174, in call return fn(args, **newargs) File "/home/frappe/frappe-io-bench/apps/twilio_integration/twilio_integration/twilio_integration/api.py", line 31, in generate_access_token 'token': token.decode('utf-8') AttributeError: 'str' object has no attribute 'decode'