alexbraga/Oitoo_Cielo parou de funcionar com a atualização

68 views
Skip to first unread message

cleiton trentin

unread,
Jul 21, 2018, 12:26:32 AM7/21/18
to Cielo Magento
Boa noite pessoal estou a três dias procurando uma solução eu uso o modulo do Oitoo_cielo, segue: 

public function enviarParaCielo($ambiente, $corpo){
        $debug = Mage::getStoreConfig('payment/apelidocielo/debug');
        if($debug):
            $this->setLog("==================== ENVIANDO XML PARA CIELO ====================\n$corpo");
        endif;
        $curl = curl_init();
        if ( is_resource( $curl ) ){
            curl_setopt( $curl , CURLOPT_HEADER , 0 );
            curl_setopt( $curl , CURLOPT_RETURNTRANSFER , 1 );
            curl_setopt( $curl , CURLOPT_FOLLOWLOCATION , 1 );
            curl_setopt( $curl , CURLOPT_URL , $ambiente );
            curl_setopt( $curl , CURLOPT_POST , 1 );
            curl_setopt( $curl , CURLOPT_SSL_VERIFYPEER , false);
            curl_setopt( $curl , CURLOPT_SSLVERSION, 6); //O ambiente de teste estava apresentando erro quando usado o valor 3. O problema está relacionado a um bug do curl
            curl_setopt( $curl , CURLOPT_POSTFIELDS , http_build_query( array( 'mensagem' => $corpo ) ) );
            $xml = curl_exec($curl);
            $ern = curl_errno( $curl ); //numero do erro
            $err = curl_error( $curl ); //mensagem do erro
            curl_close( $curl );
            if ( (bool) $ern ){
                if($debug):
                    $this->setLog("Ocorreu um erro de comunicação com os servidores da cielo - $err");
                endif;
                $resposta = new stdClass();
                $resposta->codigo = '999'; //CODIGO 999 SIGNIFICA ERRO DE COMUNICAÇÃO
                $resposta->mensagem = 'Ocorreu um erro de comunicação entre nossa loja e a operadora do cartão. Por favor entre em contato. ';
                return $resposta;
            } else {
                if($debug):
                    $this->setLog("==================== XML RETORNADO PELA CIELO  ====================\n$xml");
                endif;
                return simplexml_load_string($xml);
            }
        } else {
            if($debug):
                $this->setLog("Ocorreu um erro ao tentar instanciar o módulo curl do php");
            endif;
            $resposta = new stdClass();
            $resposta->codigo = '0000'; //CODIGO 0000 SIGNIFICA ERRO DE CURL
            $resposta->mensagem = 'Ocorreu um erro inesperado no servidor. Por favor tente novamente.';
            return $resposta;
        }
    }

tem essa função que envia para a cielo porém está dando erro de comunicação.
Se alguem puder me ajudar pf.
Reply all
Reply to author
Forward
0 new messages