This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

Docs API

Documentazione delle chiamate API

La chiamata delle API è molto semplice, occorre effettuare una chiamata POST
all’URL della API e passare nel BODY una struttura DATA in cui sono stati caricati i parametri necessari. Ci sono diverse API a seconda dello scopo, consultare la tabella.

Scope: Invio messaggio testuale e/o multimediale
API Call: https://api.wazone.app/send
Body structure:
$data = [
‘receiver’ => NUMERO_DEL_DESTINATARIO,
‘msgtext’ => TESTO DEL MESSAGGIO DA INVIARE,
‘sender’ => DeviceID,
’token’ => TokenID,
‘mediaurl’ => $mediaurl, // Url del file da allegare
// se non ci sono allegati togliere il campo o lasciare vuoto
];

Return:
un struttura json con la variabile success impostata a true/false

Scope: Controlla sei il numero è un numero attivo in WA
API Call: https://api.wazone.app/isonwa
Body structure:
$data = [
‘receiver’ => NUMERO_DA_CONTROLLARE,
‘sender’ => DeviceID,
’token’ => TokenID,
];

Return:
un struttura json con la variabile success impostata a true/false

Il passaggio dei parametri per la chiamata delle API richiedono:

  • DeviceID (numero di telefono del dispositivo)
  • TokenID (token del dispositivo)
    Il token del dispositivo si trova nel pannello della app WAZone nelle proprietà del dispositivo.

Nel capitolo successivo potete trovare diversi esempi in vari linguaggi di programmazione.

Forniamo un servizio di analisi e integrazione del vostro sistema informatico, acquistabile sul sito wazone, in cui viene studiata l’integrazione al vostro ambiente, sito internet, software windows, portale web, etc…

1 - Esempi API

Esempi di chiamate API in diversi linguaggi

Qui potete trovare diversi esempi di utilizzo delle API con diversi linguaggi di programmazione:

  • PHP
  • NodeJS
  • Python
  • Bash
  • PowerShell
  • Batch

Se vi occorre uno studio di integrazione di WAZone con un vostro ambiente, sul nostro sito forniamo un servizio di analisi e integrazione del vostro sistema informatico, acquistabile sul sito wazone, in cui viene studiata l’integrazione al vostro ambiente, sito internet, software windows, portale web, etc.

1.1 - PHP

Esempio di invio messaggio con PHP.

Semplice esempio di invio messaggio con PHP usando la libreria univerale curl tuttavia, potete trovare su GitHub la nostra libreria PHP per gestire l’invio di messaggi testuali o documenti multimediali come PDF in modo molto semplice. Qui è disponibile la documentazione completa.

<?php
##
## Esempio di invio messaggio WA in PHP
##
## @Una realizzazione (C) 2023/2024 Verbasoft
## @Sviluppato da Daniele Piselli <daniele@verbasoft.net>
##

## wa_device e wa_token sono il numero di telefono e il token del vostro cellulare
## si trovano nel pannello di gestione del servizio nelle proprietà del dispositivo
## registrarsi su https://wazone.app per avere un account di prova per 30gg
$wa_device='IL_TUO_NUMERO';
$wa_token='IL_TUO_TOKEN';

## numero di telefono del destinatario, ATTENZIONE: 
## i numeri di telefono devono essere nel formato 393123456789 
## (preceduti dal prefisso internazionale, '39' x l'italia)
$wa_dest='DESTINATARIO';

## Messaggio
$wa_text='Prova invio da PHP!';

## Url api e allegato
$nodeurl = 'https://api.wazone.app/send';
$mediaurl = 'https://github.com/verbasoft/WAZone/blob/main/docs/wazone.pdf';

## Parametri in entrata alla API
$data = [
    'receiver'  => $wa_dest,        // numero del destinatario
    'msgtext'   => $wa_text,        // messaggio da inviare
    'sender'    => $wa_device,      // numero del mittente
    'token'     => $wa_device,      // token del mittente
    'mediaurl'  => $mediaurl,       // url dell'allegato, togliere se non si vuole allegati
];

$ch = curl_init();
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/x-www-form-urlencoded']);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
curl_setopt($ch, CURLOPT_URL, $nodeurl);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
$response = curl_exec($ch);
curl_close($ch);
 
echo $response;

?>

1.2 - NodeJS

Esempio di invio messaggio con NodeJS.

Nell’esempio è stato usato il modulo axios, installarlo con npm install axios

//
// Esempio di invio messaggio WA in NodeJS
//
// @Una realizzazione (C) 2023/2024 Verbasoft
// @Sviluppato da Daniele Piselli <daniele@verbasoft.net>
//

// Modulo per invio API usa axios
// se non installato usare: npm install axios
const axios = require('axios');

// wa_device e wa_token sono il numero di telefono e il token del vostro cellulare
// si trovano nel pannello di gestione del servizio nelle proprietà del dispositivo
// registrarsi su https://wazone.app per avere un account di prova per 30gg
wa_device='IL_TUO_NUMERO';
wa_token='IL_TUO_TOKEN';

// numero di telefono del destinatario, ATTENZIONE: 
// i numeri di telefono devono essere nel formato 393123456789 
// (preceduti dal prefisso internazionale, '39' x l'italia)
wa_dest='DESTINATARIO';

// Messaggio
wa_text='Prova invio da NodeJS!';

// chiamata API POST
axios.post("https://api.wazone.app/send", {
  receiver: wa_dest,
  msgtext: wa_text,
  sender: wa_device,
  token: wa_token
})
.then((response) => console.log(response.data))
.catch((err) => console.log(err));

1.3 - Python

Esempio di invio messaggio con Python.

##
## Esempio di invio messaggio WA in Python
##
## @Una realizzazione (C) 2023/2024 Verbasoft
## @Sviluppato da Daniele Piselli <daniele@verbasoft.net>
##
##
## installare il modulo 'requests' digitando #>pip3 install requests
##

## wa_device e wa_token sono il numero di telefono e il token del vostro cellulare
## si trovano nel pannello di gestione del servizio nelle proprietà del dispositivo
## registrarsi su https://wazone.app per avere un account di prova per 30gg
wa_device = 'IL_TUO_NUMERO'
wa_token = 'IL_TUO_TOKEN'

## numero di telefono del destinatario, ATTENZIONE:
## i numeri di telefono devono essere nel formato 393123456789
## (preceduti dal prefisso internazionale, '39' x l'italia)
wa_dest='DESTINATARIO'

## Messaggio
wa_text = 'Invio messaggio da Python!'


# importing the requests library
import requests

## preparazione parametri POST
data = {'receiver': wa_dest,
        'msgtext': wa_text,
        'sender': wa_device,
        'token': wa_token}

# chiamata RestAPI POST
ret = requests.post(url='https://api.wazone.app/send', data=data)

# extracting response text
#val = ret.text
#print("%s" %val)

1.4 - Bash

Esempio di invio messaggio con Bash.

Ecco un esempio usando la Shell di Linux, facendo uso della libreria curl.
La libreria curl è disponibile pre-compliata per molti ambienti..

#!/bin/bash
##
## Esempio di invio messaggio WA in Batch
##
## @Una realizzazione (C) 2023/2024 Verbasoft
## @Sviluppato da Daniele Piselli <daniele@verbasoft.net>
##

## wa_device e wa_token sono il numero di telefono e il token del vostro cellulare
## si trovano nel pannello di gestione del servizio nelle proprietà del dispositivo
## registrarsi su https://wazone.app per avere un account di prova per 30gg
wa_device='IL_TUO_NUMERO'
wa_token='IL_TUO_TOKEN'

## numero di telefono del destinatario, ATTENZIONE: 
## i numeri di telefono devono essere nel formato 393123456789 
## (preceduti dal prefisso internazionale, '39' x l'italia)
wa_dest='DESTINATARIO'

## Messaggio
wa_text='Prova invio da Bash Linux!'

# Set the URL to send the request to
url='https://api.wazone.app/send'

curl -H "Content-type: application/x-www-form-urlencoded" \
     -d "receiver=$wa_dest" \
     -d "msgtext=$wa_text" \
     -d "sender=$wa_device" \
     -d "token=$wa_token" \
     -X POST \
     https://api.wazone.app/send

1.5 - PowerShell

Esempio di invio messaggio con PowerShell.

Esempio che fa uso della PowerShell, la shell open software di Microsoft.

##
## Esempio di invio messaggio WA in PowerShell
##
## @Una realizzazione (C) 2023/2024 Verbasoft
## @Sviluppato da Daniele Piselli <daniele@verbasoft.net>
##

## wa_device e wa_token sono il numero di telefono e il token del vostro cellulare
## si trovano nel pannello di gestione del servizio nelle proprietà del dispositivo
## registrarsi su https://wazone.app per avere un account di prova per 30gg
$wa_device = 'IL_TUO_NUMERO';
$wa_token = 'IL_TUO_TOKEN';

## numero di telefono del destinatario, ATTENZIONE: 
## i numeri di telefono devono essere nel formato 393123456789 
## (preceduti dal prefisso internazionale, '39' x l'italia)
$wa_dest='DESTINATARIO';

## Messaggio
$wa_text = 'Invio da PowerShell Windows!';


## chiamata RestAPI POST
$postParams = @{
    receiver=$wa_dest;
    msgtext=$wa_text;
    sender=$wa_device;
    token=$wa_token
}

$Response = Invoke-WebRequest -Uri https://api.wazone.app/send -Method POST -Body $postParams
if ($Response.Content -like "*true*") {
   Write-Output "OK";
} else {
   Write-Output "ERR";
}

1.6 - Batch

Esempio di invio messaggio con DOS Batch.

Puo’ essere considerato anacronistico usare ancora il batch ma posso assicurare che in ambito industriale ci sono ancora vecchi sistemi che girano in DOS o WinXP per tanto se volete mandare degli allarmi od eventi ad un dispositivio mobile con poche righe potete effettuare la chiamata API da questo sistema. La libreria curl è disponibile pre-compliata per molti ambienti.

@echo off
::
:: Esempio di invio messaggio WA in Batch
::
:: @Una realizzazione (C) 2023/2024 Verbasoft
:: @Sviluppato da Daniele Piselli <daniele@verbasoft.net>
::

:: wa_device e wa_token sono il numero di telefono e il token del vostro cellulare
:: si trovano nel pannello di gestione del servizio nelle proprietà del dispositivo
:: registrarsi su https://wazone.app per avere un account di prova per 30gg
set wa_device=IL_TUO_NUMERO
set wa_token=IL_TUO_TOKEN

:: numero di telefono del destinatario, ATTENZIONE: 
:: i numeri di telefono devono essere nel formato 393123456789 
:: (preceduti dal prefisso internazionale, '39' x l'italia)
set wa_dest=DESTINATARIO

:: testo da inviare e destinatorio
set wa_text=Invio da BATCH DOS 

curl -s -H "Content-type: application/x-www-form-urlencoded" -d "receiver=%wa_dest%" -d "msgtext=%wa_text%" -d "sender=%wa_device%" -d "token=%wa_token%" -X POST https://api.wazone.app/send

2 - Libreria PHP

Documentazione della libreria PHP

La libreria in PHP è stata realizzata per semplificare l’uso delle API nello sviluppo di progetti con WAZone, la classe è scaricabile dal sito GitHub oppure è possibile integrarla con Composer, in questo modo sarà sempre aggiornata nel vostro progetto.

L’uso della libreria è molto semplice, accedere a wazone.app e recuperare il DEVICE_ID e il TOKEN_ID del vostro dispositivo mittente, quindi importate nel vostro sorgente la classe con il comando include e chiamate il membro della funzione che vi occorre.


Nome Descrizione Parametri Valori
WAZone() Costruttore della classe DEVICE_ID:text
TOKEN_ID:text
obbligatorio
obbligatorio
SendText() Funzione: Invia messaggio NUMBER:text
MESSAGE:text
obbligatorio
obbligatorio
SendMedia() Funzione: Invia media e testo NUMBER:text
MEDIAURL:text
MESSAGE:text
obbligatorio
obbligatorio
facoltativo
CheckNumber() Funzione: Controlla numero NUMBER:text obbligatorio

Le funzioni della classe ritornano una variabile “success” che indica lo stato della operazione se è andata a buon fine.

Qui sotto trovate dei semplici esempi di uso del servizio per l’invio dei messaggi… copiate il Costruttore e una delle Funzioni (SendText, SendMedia, CheckNumber) in base a quello che vi serve, sostituite i valori nelle variabili e in un attimo avrete integrato l’invio di messaggi su WA nella vostra applicazione o servizio.

// includere la libreria (con composer usare l'autoloading)
include("class.wazone.php");

// wa_device e wa_token sono il numero di telefono e il token del cellulare
// si trovano nel pannello di gestione WAZone nelle proprietà del dispositivo
// registrarsi su https://wazone.app per avere un account di prova per 30gg
$wa_device = 'IL_TUO_NUMERO';
$wa_token = 'IL_TUO_TOKEN';

// numero di telefono del destinatario, ATTENZIONE: 
// i numeri di telefono devono essere nel formato 393123456789 
// (preceduti dal prefisso internazionale, '39' x l'italia)
$wa_number = 'DESTINATARIO';

// istanziare la classe WAZone
$WA = new WAZone($wa_device, $wa_token);
// una volta caricata e inizializzata la libreria, chiamare la funzione...

// invio messaggio testuale
$API = $WA->SendText($wa_number, "Prova invio messaggio!");
if (!$API->success) {
   print "Errore invio messaggio \n";
} else {
   print "Messaggio inviato a $wa_number!!\n";
}
// il messaggio verrà ricevuto sul cellulare del DESTINATARIO
// una volta caricata e inizializzata la libreria, chiamare la funzione...

// url del file multimediale da inviare al destinatario
$urlmedia = "https://verbasoft.github.io/WAZone/docs/wazone.pdf";

// invia messaggio multimediale
$API = $WA->SendMedia($wa_number, $urlmedia, "prova invio documento pdf...");
if (!$API->success) {
   print "Errore invio messaggio!! \n";
} else {
   print "Messaggio inviato a $wa_number!!\n";
}

// il messaggio testuale e l'allegato verrà ricevuto sul cellulare del DESTINATARIO
// una volta caricata e inizializzata la libreria, chiamare la funzione...

// controllo se il numero è presente in WA
$API = $WA->CheckNumber($wa_number);
if (!$API->success) {
   print "Numero $wa_number non presente su WA! \n";
} else {
   print "Numero $wa_number è presente su WA!!\n";
}

// con questa funzione saprete se il numero è presente in WA

Forniamo un servizio di analisi e integrazione del vostro sistema informatico, acquistabile sul sito wazone, in cui viene studiata l’integrazione al vostro ambiente, sito internet, software windows, portale web, etc…

3 - Composer

Libreria PHP disponibile su Packagist (Composer).

Oltre che su GitHub, sul sito Packagist (Composer) è possibile trovare la libreria di integrazione API scrittta in PHP, se la importate nei vostri progetti avrete la classe con l’elenco della chiamate API sempre aggiornata e molto semplice da usare.

Aggiungere nel vostro progetto PHP la seguente linea di comando per importare la classe WAZone nel file composer.json.

composer require verbasoft/wazone dev-main

Con questo comando invece potete tenere sempre aggiornata la libreria con le nuove API che usciranno per integrare meglio il vostro progetto:

composer update verbasoft/wazone

Nota: i comandi indicati sopra sono per un ambiente Linux, in Windows o Hosting Plesk o Cpanel l’uso potrebbe essere leggermente diverso.