Ok, diciamo che da titolo si intuisce tutto il post.
Io sono una di quelle persone che ha bisogno di condividere
Premetto che non è una guida passo a passo, ma semplicemente un "vi avviso dell'esistenza e buon divertimento"
Ho trovato e installato per bene una libreria online che mi permette di avere, grazie a php, whatsapp online dentro a un database mysql e quindi poter utilizzare i servizi di messaggeria istantanea senza un cellulare accesso.
Su hosting non la installerete mai per limitazioni. Io ad esempio mi son comprato un Raspberry PI da 25 euro nel quale ho installato una piattaforma LAMP (Apache, mysql, php).
La libreria si chiama CHAT-API:
github.com/mgp25/Chat-API
A prima vista sembra una bestemmia ma in realtà, capito il funzionamento, è abbastanza semplice.
Necessita per funzionare di almeno PHP 5.6 o superiore, della libreria PHP Protobuf e Curve25519.
Protobuf per interpretare gli oggetti come nodi, e Curve per decifrare i messaggi di whatsapp
L'installazione delle librerie è molto semplice, basta scaricarli da Github, unzipparli, caricarli sul vostro server, e da connessione SSH (raggiunta la cartella) digitare:
phpize
./configure
make
make install
E' necessario il pacchetto php5-dev altrimenti phpize non verrà eseguito
Una volta installate dovrete farle caricare ad apache e riavviarlo.
Nei vostri php ini (esempio: /etc/php5/apache2/php.ini) aggiungete a fine riga:
extension_dir = "/usr/lib/php5/20090626/"
extension="protobuf.so"
extension="curve25519.so"
Ogni installazione ha un numero diverso di extension dir, dipende dal vostro s.o. e versione
Fatelo sia per il php caricato da apache, che per il php utilizzato dal CLI (shell)
Fatto questo si tratta solo di compilare la pagina php
All'interno della cartella
examples trovate un sacco di file già pronti dal quale poter partire.
Ad esempio registerTool.php lo potete usare per attivare l'account e ottenere cosi il vostro USERID e la vostra PASSWORD
Attenzione, non è una pagina da eseguire da browser ma tramite shell!
Comando:
All'interno di exampleFunctional.php ci sono le classi necessarie per connettervi a WA, per mettersi in ascolto di nuovi messaggi, per inviare un messaggio a un numero target e un sacco di altri giochi.
Ma quindi a script realizzato, come lo eseguo?
Le opzioni sono due. La prima è quello di creare una pagina php che verrà poi richiamata ogni minuto tramite una cronjob. La seconda (quella che utilizzo io) è di realizzare interamente il sistema tramite shell. Quindi tenere uno script che avvia la pagina php e la termina ogni giorno, in modo da avere la consegna dei messaggi in tempo reale.
La pagina contiene un parametro while che rimane in ascolto perenne di messaggi in arrivo. Se scegliete la seconda opzione vi raccomando di settare nel vostro codice php l'esecuzione della pagina a tempo indeterminato.
ini_set('max_execution_time', 0);
Per avviare da php shell e non rischiare la chiusura a logout utente potete usare questo comando
nohup php /path/globale/del/vostro/script.php 2> /dev/null & echo $!
Vi restituirà il PID del processo con il quale potrete impostare il kill automatico a mezzanotte. Il kill avviene solo per alleggerire la cache di sistema
Se avete qualche problema potete chiedere, provo ad aiutarvi, ma non prima di avervi spronato ad usare stackoverflow e senza darvi la pappa pronta