[RESOLVIDO] Api google - composer

Estou tentando implementar a Cloud Vision API do google no SC mas me deparei com alguns erros alguém consegue me ajudar?

1º Realizei o download da Biblioteca com o composer e depois fiz o upload para a biblioteca externa do meu projeto.
Tutorial da Camila Moreira “Composer: Como utilizar dentro do Scriptcase ?”

2º Criei uma blank e coloquei o código para utilizar a minha biblioteca:

    <?php
       require sc_url_library("prj", "googleVision", "vendor/autoload.php");

      use Google\Cloud\Vision\VisionClient;
      $vision = new VisionClient(['keyFile' => json_decode(file_get_contents("key.json"), true)]);

      $familyPhotoResource = fopen("image.jpg", 'r');

      $image = $vision->image($familyPhotoResource, ['FACE_DETECTION', 'WEB_DETECTION']);
      $result = $vision->annotate($image);
      var_dump($result);

 ?>

Aqui eu tive um erro com a tag “USE”, Parse error: syntax error, unexpected ‘use’ (T_USE) in,
consultei no fórum e achei esse tópico: [RESOLVIDO] - NFePHP com Composer

Tentei a Solução do Everaldo :
Use desta forma:

Substitua
use NFePHP\NFe\ToolsNFe;
$nfe = new ToolsNFe(’…/…/config/config.json’);
Por
$nfe = new NFePHP\NFe\ToolsNFe(’…/…/config/config.json’);
em vez de usar o USE

No meu caso fiz:
use Google\Cloud\Vision\VisionClient;
$vision = new VisionClient([‘keyFile’ => json_decode(file_get_contents(“key.json”), true)]);

passando a ser:  $vision = new Google\Cloud\Vision\VisionClient(['keyFile' => json_decode(file_get_contents("key.json"), true)]);

Mas não identifica a Classe: Fatal error: Uncaught Error: Class ‘Google\Cloud\Vision\VisionClient\VisionClient’ not found

também tentei a solução do Felipe:

Ex da index.php:

    <?php
    require 'vendor/autoload.php';
    use Google\Cloud\Vision\VisionClient;
    ?>

Como ficou na blank:

sc_include_library("prj", "googleVision", "index.php", true, true);

$vision = new VisionClient(['keyFile' => json_decode(file_get_contents("key.json"), true)]);

Mas também da erro que não encontra a Classe VisionClient

Então resolvi deixar todo o código na biblioteca externa e chamar apenas o arquivo na blank, mas o file_get_contents não funcionou no arquivo que está dentro da biblioteca externa, então passei o conteúdo do key.json para uma variável e consegui fazer a autenticação da api, mas o $familyPhotoResource = fopen(“image.jpg”, ‘r’); deu erro no fopen:
“fopen no such file or directory scriptcase”

alguém sabe como posso corrigir, ou implementar de uma maneira melhor?

não teria que colocar o nome da lib ?

Revi o código, coloquei essa sua opção e não funcionou então voltei para o que tava antes e executei novamente e foi:

require sc_url_library("prj", "googleVision", "vendor/autoload.php");

$vision = new Google\Cloud\Vision\VisionClient([‘keyFile’ => json_decode($contents = file_get_contents(sc_url_library(“prj”, “googleVision”, “key.json”)), true)]);

$familyPhotoResource = fopen(sc_url_library(“prj”, “googleVision”, “image.jpg”), ‘r’);

$image = $vision->image($familyPhotoResource, [‘FACE_DETECTION’, ‘WEB_DETECTION’]);
$result = $vision->annotate($image);

var_dump($result);

1 Curtida