1. Go to this page and download the library: Download pikart/goip library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
use Pikart\Goip\ServerFactory;
use Pikart\Goip\ReactServer;
use Pikart\Goip\Message;
use Pikart\Goip\Messages\RequestMessage;
use Pikart\Goip\Messages\ReceiveMessage;
$server = ServerFactory::default( ReactServer::class, '0.0.0.0', 333);
// Listening to all incoming messages
$listenerId1 = $server->listenAll(function (Message $message){
// Request message
if( $message instanceof RequestMessage)
{
var_dump( $message );
}
// Receive message
if( $message instanceof ReceiveMessage)
{
var_dump( $message );
}
// Message
var_dump( $message );
});
// Listening to a concrete message
$listenerId2 = $server->listen( RequestMessage::class, function (RequestMessage $message){
var_dump( $message );
});
$listenerId3 = $server->listen( ReceiveMessage::class, function (ReceiveMessage $message){
var_dump( $message );
});
// Remove listener 1
$server->off($listenerId1);
// Remove listener 2
$server->off($listenerId2);
// Remove listener 3
$server->off($listenerId3);
use Pikart\Goip\ServerFactory;
use Pikart\Goip\ReactServer;
use Pikart\Goip\Message;
$server = ServerFactory::default( ReactServer::class, '0.0.0.0', 333);
// Listening to all incoming messages
$server->listenAll(function (Message $message){
// Message
var_dump( $message );
});
$server->run();
\Pikart\Goip\Messages\RequestMessage::class // Keep Alive packets with gateway (line) information
\Pikart\Goip\Messages\DeliverMessage::class // SMS delivery report
\Pikart\Goip\Messages\HangupMessage::class // End telephone call
\Pikart\Goip\Messages\ReceiveMessage::class // Incoming SMS
\Pikart\Goip\Messages\RecordMessage::class // Start a phone call
\Pikart\Goip\Messages\StateMessage::class // Change of gate (line) status
\Pikart\Goip\Messages\NotSupportedMessage::class // Message not supported by package
\Pikart\Goip\Message::class // Main abstract class
use Pikart\Goip\ServerFactory;
use Pikart\Goip\ReactServer;
use Pikart\Goip\Message;
use Pikart\Goip\Messages\ReceiveMessage;
$server = ServerFactory::default( ReactServer::class, '0.0.0.0', 333);
$server->listenAll(function (Message $message){
// Array of all attributes
$attributes = $message->attributes();
// Pikart\Goip\Request::class Access to raw request from goip
$request = $message->request();
// Show remote host and port
$remoteHost = $message->request()->host();
$remotePort = $message->request()->port();
});
// ReceiveMessage
$server->listen( ReceiveMessage::class, function ( ReceiveMessage $message ) {
// Received text message
$smsTextMessage = $message->msg();
// Sender phone number
$phoneNumber = $message->srcnum();
// Password from goip
$goipPassword = $message->password();
// Show remote host and port
$remoteHost = $message->request()->host();
$remotePort = $message->request()->port();
});