channels/smartcard: decode and then call