The Command class works now with strings and json.
i mentioned this as I changed from String to Command class to be able to update easily while keeping backward compatibility. We should see if we can add the binary option to the class.
On freertos task. There is a "QueuedDelegate" class which executes the code within a freertos task.
Don't know what your "blocking function" is but it might be a possibility.