https://a.storyblok.com/f/270183/145118/d3e2899fb4/nexmo-php-release.png

Anunciamos a versão 1.0.0 da biblioteca cliente Nexmo para PHP!

Publicado em May 14, 2021

Tempo de leitura: 3 minutos

Após um esforço heróico de Tim e um pouco de ajuda de Michael para dar o toque final, temos o orgulho de anunciar que acabamos de lançar a versão 1.0 da biblioteca cliente Nexmo para PHP — falta só mais um composer require a menos!

composer require nexmo/client

A Tecnologia

Desenvolvido com base no Zend Diactoros e no Guzzle, é um cliente HTTP compatível com PSR-7 para a API da Nexmo. Inicialmente, ele oferece suporte aos nossos principais serviços, tais como SMS, chamadas de voz, Verify e fornecimento de números virtuais e trabalharemos para adicionar cobertura para os demais produtos ao longo do próximo mês.

Seja você um desenvolvedor que adora entidades e dicas de tipo, ou se prefere passar tudo como um array, a biblioteca tem algo para você. Cada uma de nossas entidades implementa a interface ArrayAccess para ler dados e aceita arrays como parâmetros ao criar e atualizar entidades.

$client = new \Nexmo\Client(new Nexmo\Client\Credentials\Basic('API_KEY', 'API_SECRET'));

$message = $client->message()->search('MESSAGE_ID');

// Read the message ID using a getter or using `ArrayAccess`
echo $message->getNetwork().PHP_EOL;
echo $message['network'];

Exemplos

Interagir com a API da Nexmo é especialmente fácil ao usar nossa biblioteca cliente para PHP. Você pode enviar um SMS, fazer uma chamada de voz e usar o Verify para validar o número de um usuário, tudo isso em menos de dez linhas de código cada!

Como enviar um SMS

$client = new \Nexmo\Client(new Nexmo\Client\Credentials\Basic('API_KEY', 'API_SECRET'));

$client->message()->send([
'from' => '14155550101',
'to' => '14155550100',
'text' => 'A text message sent using the Nexmo SMS API'
]);

Como fazer uma chamada de voz

$keypair = new \Nexmo\Client\Credentials\Keypair(file_get_contents(PRIVATE_KEY), APPLICATION_ID);

$client = new \Nexmo\Client($keypair);

$client->calls()->create([
'to' => [['type' => 'phone', 'number' =>'14155550100']],
'from' => ['type' => 'phone', 'number' =>'14155550101'],
'answer_url' => ['https://nexmo-community.github.io/ncco-examples/first_call_talk.json'],
]);

Como usar a autenticação de dois fatores (2FA) para verificar a identidade de um usuário

$client = new Nexmo\Client(new Nexmo\Client\Credentials\Basic(API_KEY, API_SECRET));

$verification = $client->verify()->start([
'number' => '14155550100',
'brand' => 'My App'
]);

// The user submits a form via POST that contains the
// code they received in the `verification_code` input
$client->verify()->check($verification, $_POST['verification_code']);

Pontos bônus

Se você é usuário do Laravel, temos uma surpresa bem especial para você. Além da nossa biblioteca independente, temos nexmo/laravel , que é um provedor de serviços do Laravel para o cliente PHP da Nexmo. Se você estiver usando o Laravel 5.5 ou superior, a biblioteca se registrará automaticamente como um provedor, permitindo que você use a fachada imediatamente.

Depois de instalar nexmo/laravel e configurar sua chave e seu segredo da API por meio de .env, enviar um SMS é tão simples quanto isso:

Nexmo::message()->send([
'to' => '14155550100',
'from' => '14155550101',
'text' => 'Using the facade to send a message.'
]);

Participe!

Se você já usou o Nexmo por meio de notificações por SMS no Laravel (sim, somos nós que fornecemos essa funcionalidade!), construiu um enorme sistema de logística ou qualquer outro projeto nesse meio-termo, adoraríamos saber mais sobre isso. Melhor ainda se for um projeto de código aberto e pudermos citá-lo como exemplo de como aproveitar o poder do Nexmo para realizar o trabalho.

Se você tiver interesse em participar do desenvolvimento da biblioteca do cliente, basta identificar um caso de uso que você tenha e que ainda não seja compatível conosco e abrir uma solicitação. Podemos trabalhar juntos para definir as especificações e incorporar essa compatibilidade à biblioteca do cliente (vamos até te ajudar a escrever os testes!)

Compartilhar:

https://a.storyblok.com/f/270183/384x384/1c8825919c/mheap.png
Michael HeapEx-funcionários da Vonage

Michael é um engenheiro de software poliglota, empenhado em reduzir a complexidade dos sistemas e torná-los mais previsíveis. Trabalhando com diversas linguagens e ferramentas, ele compartilha seus conhecimentos técnicos com públicos de todo o mundo em grupos de usuários e conferências. No dia a dia, Michael é ex-representante de desenvolvedores da Vonage, onde dedicava seu tempo a aprender, ensinar e escrever sobre todos os tipos de tecnologia.