https://d226lax1qjow5r.cloudfront.net/blog/blogposts/announcing-v1-0-0-nexmo-php-client-dr/nexmo-php-release.png

Anunciamos la versión 1.0.0 de la librería cliente PHP de Nexmo.

Publicado el May 14, 2021

Tiempo de lectura: 2 minutos

Tras un esfuerzo heroico de Tim y algo de trabajo de Michael para conseguirlo, estamos orgullosos de anunciar que acabamos de etiquetar la versión 1.0 de la librería cliente PHP de Nexmo - ¡está a sólo una composer require ¡de distancia!

composer require nexmo/client

Tecnología

Construido sobre Zend Diactoros y Guzzle, es un cliente HTTP compatible con PSR-7 para la API de Nexmo. Inicialmente, es compatible con nuestros servicios principales, tales como SMS, llamadas de Voz, Verify y provisión de números virtuales y trabajaremos para añadir cobertura para el resto de productos durante el próximo mes.

Tanto si eres un desarrollador al que le encantan las entidades y las sugerencias de tipo, como si prefieres pasarlo todo como un array, la biblioteca tiene algo para ti. Cada una de nuestras entidades implementa ArrayAccess para leer datos y acepta arrays como parámetros al crear y actualizar 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'];

Ejemplos

Interactuar con la API Nexmo es especialmente fácil cuando se utiliza nuestra biblioteca de cliente PHP. Puede enviar un SMS, realizar una llamada de voz y utilizar Verify para validar el número de un usuario, ¡todo ello en menos de diez líneas de código cada una!

Cómo enviar un 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'
]);

Cómo hacer una llamada de Voice

$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'],
]);

Cómo utilizar 2FA para verificar la identidad de un usuario

$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']);

Puntos extra

Si eres usuario de Laravel, tenemos un regalo especial para ti. Además de nuestra biblioteca independiente, tenemos nexmo/laravel que es un proveedor de servicios Laravel para el cliente Nexmo PHP. Si está ejecutando Laravel 5.5 o superior, la biblioteca se registrará automáticamente como un proveedor, lo que le permite utilizar la fachada de inmediato.

Una vez que haya instalado nexmo/laravel y configurado su clave y secreto API a través de .envenviar un SMS es tan sencillo como esto:

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

Participe

Ya sea que haya utilizado Nexmo a través de notificaciones por SMS en Laravel (sí, nosotros los impulsamos!), Usted ha construido un enorme sistema de logística o cualquier cosa en el medio, nos encantaría oír hablar de ello. Aún mejor si es de código abierto y podemos apuntar a ella como un ejemplo de cómo aprovechar el poder de Nexmo para hacer el trabajo.

Si estás interesado en participar en el desarrollo de la biblioteca cliente, es tan fácil como encontrar un caso de uso que tengas y que aún no admitamos y abrir una incidencia. Podemos trabajar juntos para especificar y construir el soporte en el cliente (¡incluso te ayudaremos a escribir las pruebas!).

Compartir:

https://a.storyblok.com/f/270183/384x384/1c8825919c/mheap.png
Michael HeapAntiguos alumnos de Vonage

Michael es un ingeniero de software políglota, empeñado en reducir la complejidad de los sistemas y hacerlos más predecibles. Trabaja con una gran variedad de lenguajes y herramientas, y comparte sus conocimientos técnicos con audiencias de todo el mundo en grupos de usuarios y conferencias. En el día a día, Michael es un antiguo defensor de los desarrolladores en Vonage, donde pasaba su tiempo aprendiendo, enseñando y escribiendo sobre todo tipo de tecnología.