Skip to content

Repository files navigation

MultiInfo PHP

This package was created to help communicating with Plus MultiInfo API.

Implemented Endpoints

Package has implementented most Requests, Parsers and Responses of the API

Sending

  • SendSms - send short message (up to 160 characters)
  • SendSmsRaw - send binary message
  • SendSmsLong - send long message (up to 1377 characters)
  • Package - send bundle of short messages

Receiving

  • GetSms - read received messages

Status

  • InfoSms - get the status of sent message
  • PackageInfo - get the status of sent bundle

Requirements

VersionPHP
0.x>= 7.4

Installation

composer require nextgen-tech/multiinfo

Usage

First, you need to initiate base classes.

useNGT\MultiInfo\Certificate;
useNGT\MultiInfo\Credentials;
useNGT\MultiInfo\Handler;
useNGT\MultiInfo\Url;
useNGT\MultiInfo\Connections\HttpConnection;
// Create instance of credentials.$credentials = newCredentials(
$login, // Login of API user$password, // Password of API user$serviceId// Service ID
);
// Create instance of certificate.$certificate = newCertificate(
$path, // Path to certificate (CURLOPT_SSLCERT)$privateKeyPath, // Path to certificate private key (CURLOPT_SSLKEY)$password, // Certificate password (CURLOPT_SSLCERTPASSWD)$type// Certificate type - defaults to PEM (CURLOPT_SSLCERTTYPE)
);
// Create instance of API URL.$url = Url::api1(); // or URL::api2(), depends of service configuration// Create instance of connection.$connection = newHttpConnection($url, $certificate);
// Create handler instance.$handle = newHandler($connection);

Then you can create Request, send it through Handler and receive Response.

$request = new \NGT\MultiInfo\Requests\SendSmsRequest($credentials);
$request->setContent('message'); // Required, content of the message$request->setDestination('48123456789'); // Required, phone number of the recipient$request->setValidTo(newDateTime('+7 days')); // Optional, period of validity of the message$request->setRequestDeliveryNotification(true); // Optional, indicates whether the delivery notification should be requested$request->setZeroClass(true); // Optional, indicates whether the message should be sent as zero class$request->setAdvancedEncoding(true); // Optional, indicates whether the message should use advanced encoding$request->setDeleteWhenProcessed(true); // Optional, indicates whether the message should be deleted after processing.$request->setReplyTo(12345); // Optional, ID of message to which the message is replying$request->setOrigin('CUSTOM'); // Optional, origin (nadpis) of the message./** @var \NGT\MultiInfo\Responses\SendSmsResponse */$response = $handler->handle($request);
$response->getMessageId(); // ID of the message$response->getSender(); // Phone number of the sender$response->getReceiver(); // Phone number of the receiver$response->getContentType(); // Content type of the message$response->getContent(); // Content of the message$response->getProtocolId(); // ID of the protocol$response->getCodingScheme(); // Coding scheme$response->getServiceId(); // ID of the service$response->getConnectorId(); // ID of the connector$response->getReceivedAt(); // Date of receiving message

Each endpoint has its own Request, Parser and Response. It is highly recommended to look into Requests and Responses directories in order to get the list of all available methods.

About

PHP wrapper that helps communicating with Plus MultiInfo API

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Contributors

Languages