avidian/semaphore

A wrapper for accessing the Semaphore SMS API

v1.0.0 2021-11-23 06:29 UTC

This package is auto-updated.

Last update: 2024-04-23 11:39:21 UTC


README

A wrapper for accessing the Semaphore SMS API

Table of Contents

Installation

composer require avidian/semaphore

Basic Usage

Sending Messages

use Avidian\Semaphore\Client;

$client = new Client('your api key', [/* options */]);

$response = $client->send('09991234567', 'your message');

// multiple recipients
$recipients = '09991234567, 09997654321';
$response = $client->send($recipients, 'your message');
[
  {
    "message_id": 1234567,
    "user_id": 99556,
    "user": "user@your.org",
    "account_id": 90290,
    "account": "Your Account Name",
    "recipient": "09991234567",
    "message": "The message you sent",
    "sender_name": "SEMAPHORE",
    "network": "Globe",
    "status": "Queued",
    "type": "Single",
    "source": "Api",
    "created_at": "2016-01-01 00:01:01",
    "updated_at": "2016-01-01 00:01:01"
  }
]

Retrieving Messages

$response = $client->messages([ 'limit' => 100, 'page' => 1 ]);

Supported filters for retrieving messages

$options = [
    'limit' => 100,
    'page' => 1,
    'sendername' => 'SEMAPHORE',
    'startDate' => '2016-01-01',
    'endDate' => '2016-02-01',
    'network' => 'globe',
    'status' => 'success',
];

Retrieving account information

$response = $client->account();
{
  "account_id": 12345,
  "account_name": "Your Organization",
  "status": "Active",
  "credit_balance": 5000
}

Retrieve users

$response = $client->users();
[
  {
    "user_id": 12345,
    "email": "owner@your.org",
    "role": "Owner"
  },
  {
    "user_id": 54321,
    "email": "someguy@your.org",
    "role": "User"
  }
]

Sender names

$response = $client->senderNames();
[
  {
    "name": "Semaphore",
    "status": "Active",
    "created": "2016-01-01 00:00:01"
  },
  {
    "name": "Kickstart",
    "status": "Active",
    "created": "2016-01-01 00:00:01""
  }
]

Transactions

$response = $client->transactions();

License

This library is open-sourced software licensed under the MIT license.