lib/cita/contract.rb
def send_func(tx:, private_key:, method:, params: []) # rubocop:disable Naming/UncommunicativeMethodParamName
      data, _output_types = function_data_with_ot(method, *params)
      transaction = if tx.is_a?(Hash)
                      Transaction.from_hash(tx)
                    else
                      tx
                    end
      transaction.data = data
      resp = @rpc.send_transaction(transaction, private_key)

      resp&.dig("result")
    end
def send_func(tx:, private_key:, method:, params: []) # rubocop:disable Naming/UncommunicativeMethodParamName
      data, _output_types = function_data_with_ot(method, *params)
      transaction = if tx.is_a?(Hash)
                      Transaction.from_hash(tx)
                    else
                      tx
                    end
      transaction.data = data
      resp = @rpc.send_transaction(transaction, private_key)

      resp&.dig("result")
    end
call contract functions by sendRawTransaction

 @param tx [Hash | CITA::Transaction]
 @param private_key [String] hex string
 @param method [Symbol | String] method name you call
 @param *params [Array] your params

 @return [nil | Hash] {hash: "", status: ""}, sendRawTransactionResult