BossBey File Manager
PHP:
8.2.30
OS:
Linux
User:
imagivibe
Root
/
.
/
app.imagivibe.com
/
vendor
/
google
/
cloud-text-to-speech
/
src
/
V1
/
Client
📤 Upload
📝 New File
📁 New Folder
Close
Editing: TextToSpeechClient.php
<?php /* * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * https://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ /* * GENERATED CODE WARNING * Generated by gapic-generator-php from the file * https://github.com/googleapis/googleapis/blob/master/google/cloud/texttospeech/v1/cloud_tts.proto * Updates to the above are reflected here through a refresh process. */ namespace Google\Cloud\TextToSpeech\V1\Client; use Google\ApiCore\ApiException; use Google\ApiCore\BidiStream; use Google\ApiCore\CredentialsWrapper; use Google\ApiCore\GapicClientTrait; use Google\ApiCore\ResourceHelperTrait; use Google\ApiCore\RetrySettings; use Google\ApiCore\Transport\TransportInterface; use Google\ApiCore\ValidationException; use Google\Auth\FetchAuthTokenInterface; use Google\Cloud\TextToSpeech\V1\ListVoicesRequest; use Google\Cloud\TextToSpeech\V1\ListVoicesResponse; use Google\Cloud\TextToSpeech\V1\SynthesizeSpeechRequest; use Google\Cloud\TextToSpeech\V1\SynthesizeSpeechResponse; use GuzzleHttp\Promise\PromiseInterface; use Psr\Log\LoggerInterface; /** * Service Description: Service that implements Google Cloud Text-to-Speech API. * * This class provides the ability to make remote calls to the backing service through method * calls that map to API methods. * * Many parameters require resource names to be formatted in a particular way. To * assist with these names, this class includes a format method for each type of * name, and additionally a parseName method to extract the individual identifiers * contained within formatted names that are returned by the API. * * @method PromiseInterface<ListVoicesResponse> listVoicesAsync(ListVoicesRequest $request, array $optionalArgs = []) * @method PromiseInterface<SynthesizeSpeechResponse> synthesizeSpeechAsync(SynthesizeSpeechRequest $request, array $optionalArgs = []) */ final class TextToSpeechClient { use GapicClientTrait; use ResourceHelperTrait; /** The name of the service. */ private const SERVICE_NAME = 'google.cloud.texttospeech.v1.TextToSpeech'; /** * The default address of the service. * * @deprecated SERVICE_ADDRESS_TEMPLATE should be used instead. */ private const SERVICE_ADDRESS = 'texttospeech.googleapis.com'; /** The address template of the service. */ private const SERVICE_ADDRESS_TEMPLATE = 'texttospeech.UNIVERSE_DOMAIN'; /** The default port of the service. */ private const DEFAULT_SERVICE_PORT = 443; /** The name of the code generator, to be included in the agent header. */ private const CODEGEN_NAME = 'gapic'; /** The default scopes required by the service. */ public static $serviceScopes = [ 'https://www.googleapis.com/auth/cloud-platform', ]; private static function getClientDefaults() { return [ 'serviceName' => self::SERVICE_NAME, 'apiEndpoint' => self::SERVICE_ADDRESS . ':' . self::DEFAULT_SERVICE_PORT, 'clientConfig' => __DIR__ . '/../resources/text_to_speech_client_config.json', 'descriptorsConfigPath' => __DIR__ . '/../resources/text_to_speech_descriptor_config.php', 'gcpApiConfigPath' => __DIR__ . '/../resources/text_to_speech_grpc_config.json', 'credentialsConfig' => [ 'defaultScopes' => self::$serviceScopes, ], 'transportConfig' => [ 'rest' => [ 'restClientConfigPath' => __DIR__ . '/../resources/text_to_speech_rest_client_config.php', ], ], ]; } /** * Formats a string containing the fully-qualified path to represent a model * resource. * * @param string $project * @param string $location * @param string $model * * @return string The formatted model resource. */ public static function modelName(string $project, string $location, string $model): string { return self::getPathTemplate('model')->render([ 'project' => $project, 'location' => $location, 'model' => $model, ]); } /** * Parses a formatted name string and returns an associative array of the components in the name. * The following name formats are supported: * Template: Pattern * - model: projects/{project}/locations/{location}/models/{model} * * The optional $template argument can be supplied to specify a particular pattern, * and must match one of the templates listed above. If no $template argument is * provided, or if the $template argument does not match one of the templates * listed, then parseName will check each of the supported templates, and return * the first match. * * @param string $formattedName The formatted name string * @param ?string $template Optional name of template to match * * @return array An associative array from name component IDs to component values. * * @throws ValidationException If $formattedName could not be matched. */ public static function parseName(string $formattedName, ?string $template = null): array { return self::parseFormattedName($formattedName, $template); } /** * Constructor. * * @param array $options { * Optional. Options for configuring the service API wrapper. * * @type string $apiEndpoint * The address of the API remote host. May optionally include the port, formatted * as "<uri>:<port>". Default 'texttospeech.googleapis.com:443'. * @type string|array|FetchAuthTokenInterface|CredentialsWrapper $credentials * The credentials to be used by the client to authorize API calls. This option * accepts either a path to a credentials file, or a decoded credentials file as a * PHP array. * *Advanced usage*: In addition, this option can also accept a pre-constructed * {@see \Google\Auth\FetchAuthTokenInterface} object or * {@see \Google\ApiCore\CredentialsWrapper} object. Note that when one of these * objects are provided, any settings in $credentialsConfig will be ignored. * @type array $credentialsConfig * Options used to configure credentials, including auth token caching, for the * client. For a full list of supporting configuration options, see * {@see \Google\ApiCore\CredentialsWrapper::build()} . * @type bool $disableRetries * Determines whether or not retries defined by the client configuration should be * disabled. Defaults to `false`. * @type string|array $clientConfig * Client method configuration, including retry settings. This option can be either * a path to a JSON file, or a PHP array containing the decoded JSON data. By * default this settings points to the default client config file, which is * provided in the resources folder. * @type string|TransportInterface $transport * The transport used for executing network requests. May be either the string * `rest` or `grpc`. Defaults to `grpc` if gRPC support is detected on the system. * *Advanced usage*: Additionally, it is possible to pass in an already * instantiated {@see \Google\ApiCore\Transport\TransportInterface} object. Note * that when this object is provided, any settings in $transportConfig, and any * $apiEndpoint setting, will be ignored. * @type array $transportConfig * Configuration options that will be used to construct the transport. Options for * each supported transport type should be passed in a key for that transport. For * example: * $transportConfig = [ * 'grpc' => [...], * 'rest' => [...], * ]; * See the {@see \Google\ApiCore\Transport\GrpcTransport::build()} and * {@see \Google\ApiCore\Transport\RestTransport::build()} methods for the * supported options. * @type callable $clientCertSource * A callable which returns the client cert as a string. This can be used to * provide a certificate and private key to the transport layer for mTLS. * @type false|LoggerInterface $logger * A PSR-3 compliant logger. If set to false, logging is disabled, ignoring the * 'GOOGLE_SDK_PHP_LOGGING' environment flag * } * * @throws ValidationException */ public function __construct(array $options = []) { $clientOptions = $this->buildClientOptions($options); $this->setClientOptions($clientOptions); } /** Handles execution of the async variants for each documented method. */ public function __call($method, $args) { if (substr($method, -5) !== 'Async') { trigger_error('Call to undefined method ' . __CLASS__ . "::$method()", E_USER_ERROR); } array_unshift($args, substr($method, 0, -5)); return call_user_func_array([$this, 'startAsyncCall'], $args); } /** * Returns a list of Voice supported for synthesis. * * The async variant is {@see TextToSpeechClient::listVoicesAsync()} . * * @example samples/V1/TextToSpeechClient/list_voices.php * * @param ListVoicesRequest $request A request to house fields associated with the call. * @param array $callOptions { * Optional. * * @type RetrySettings|array $retrySettings * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an * associative array of retry settings parameters. See the documentation on * {@see RetrySettings} for example usage. * } * * @return ListVoicesResponse * * @throws ApiException Thrown if the API call fails. */ public function listVoices(ListVoicesRequest $request, array $callOptions = []): ListVoicesResponse { return $this->startApiCall('ListVoices', $request, $callOptions)->wait(); } /** * Performs bidirectional streaming speech synthesis: receive audio while * sending text. * * @example samples/V1/TextToSpeechClient/streaming_synthesize.php * * @param array $callOptions { * Optional. * * @type int $timeoutMillis * Timeout to use for this call. * } * * @return BidiStream * * @throws ApiException Thrown if the API call fails. */ public function streamingSynthesize(array $callOptions = []): BidiStream { return $this->startApiCall('StreamingSynthesize', null, $callOptions); } /** * Synthesizes speech synchronously: receive results after all text input * has been processed. * * The async variant is {@see TextToSpeechClient::synthesizeSpeechAsync()} . * * @example samples/V1/TextToSpeechClient/synthesize_speech.php * * @param SynthesizeSpeechRequest $request A request to house fields associated with the call. * @param array $callOptions { * Optional. * * @type RetrySettings|array $retrySettings * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an * associative array of retry settings parameters. See the documentation on * {@see RetrySettings} for example usage. * } * * @return SynthesizeSpeechResponse * * @throws ApiException Thrown if the API call fails. */ public function synthesizeSpeech(SynthesizeSpeechRequest $request, array $callOptions = []): SynthesizeSpeechResponse { return $this->startApiCall('SynthesizeSpeech', $request, $callOptions)->wait(); } }
Save
Cancel