2017 © Pedro Peláez
 

library textlocal

Laravel Text Local Package

image

scottybo/textlocal

Laravel Text Local Package

  • Thursday, September 14, 2017
  • by scottybo
  • Repository
  • 2 Watchers
  • 1 Stars
  • 50 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 1 Open issues
  • 2 Versions
  • 56 % Grown

The README.md

Laravel Text Local API

Introduction

This package allows you to use the TextLocal API in your Laravel 5.5+ app. The core class is a modified version of the demo class provided by TextLocal on: http://api.txtlocal.com/docs/phpclass and uses Guzzle to connect to the API and also provides some additional features not available in the demo class., (*1)

Installation

Step 1. Install the package in one of two ways:, (*2)

EITHER via composer:, (*3)

composer require scottybo/textlocal

OR by adding the following to your composer.json file and running "composer update", (*4)

"require": {
    ...
    "scottybo/textlocal": "1.3.*"
}

Step 2. Add the "TextLocal" facade in your config/app.php file, (*5)

'aliases' => [
    ...
    'TextLocal' => Illuminate\Support\Facades\TextLocal::class,
];

Step 3. You'll now need to publish the configuration file using the command below. A file will be created: config/textlocal.php, (*6)

php artisan vendor:publish --provider="App\TextLocalApi\TextLocalServiceProvider" --tag="config"

Step 4. Add your TextLocal credentials to your .env file, (*7)

Important Either specify a Key OR a Hash - don't enter both!, (*8)

TEXTLOCAL_KEY=
TEXTLOCAL_USERNAME=
TEXTLOCAL_HASH=

Example usage

Important: View the API docs to see which commands you can use:, (*9)

In this example we are going to create a command the grab received messages and displays them in the console, using the command php artisan textlocal:get-received-messages, (*10)

<?php
namespace App\Console\Commands;
use Illuminate\Console\Command;
use TextLocal;

class GetReceivedMessages extends Command
{
    /**
     * The name and signature of the console command.
     *
     * @var string
     */
    protected $signature = 'textlocal:get-received-messages';
    /**
     * The console command description.
     *
     * @var string
     */
    protected $description = 'Find and store and messages received into Text Local';
    /**
     * Create a new command instance.
     *
     * @return void
     */
    public function __construct()
    {
        parent::__construct();
    }
    /**
     * Execute the console command.
     *
     * @return mixed
     */
    public function handle()
    {
        // Load our inboxes
        $inboxes = TextLocal::getInboxes();

        $start = 0;
        $limit = 1000;
        $min_time = strtotime('-1 day');
        $max_time = time(); // now

        // Loop through the inboxes
        foreach($inboxes->inboxes as $inbox) {

            // Load the messages for the current inbox (which we will call a folder)
            $folder = TextLocal::getMessages($inbox->id, $start, $limit, $min_time,$max_time);

            // If there are messages in the folder...
            if(sizeof($folder->messages) > 0) {
                foreach($folder->messages as $message) {
                    dump($message->message);
                }
            }
        }
    }
}

Available commands

  • getLastRequest ()
    • sendSms ($numbers, $message, $sender, $sched=null, $test=false, $receiptURL=null, $custom=null, $optouts=false, $simpleReplyService=false)
    • sendSmsGroup ($groupId, $message, $sender=null, $sched=null, $test=false, $receiptURL=null, $custom=null, $optouts=false, $simpleReplyService=false)
    • sendMms ($numbers, $fileSource, $message, $sched=null, $test=false, $optouts=false)
    • sendMmsGroup ($groupId, $fileSource, $message, $sched=null, $test=false, $optouts=false)
    • getUsers ()
    • transferCredits ($user, $credits)
    • getTemplates ()
    • checkKeyword ($keyword)
    • createGroup ($name)
    • getContacts ($groupId, $limit, $startPos=0)
    • createContacts ($numbers, $groupid= '5')
    • createContactsBulk ($contacts, $groupid= '5')
    • getGroups ()
    • getMessageStatus ($messageid)
    • getBatchStatus ($batchid)
    • getSenderNames ()
    • getInboxes ()
    • getBalance ()
    • getMessages ($inbox, $start, $limit, $min_time, $max_time)
    • cancelScheduledMessage ($id)
    • getScheduledMessages ()
    • deleteContact ($number, $groupid=5)
    • deleteGroup ($groupid)
    • getSingleMessageHistory ($start, $limit, $min_time, $max_time)
    • getAPIMessageHistory ($start, $limit, $min_time, $max_time)
    • getEmailToSMSHistory ($start, $limit, $min_time, $max_time)
    • getGroupMessageHistory ($start, $limit, $min_time, $max_time)
    • getSurveys ()
    • getSurveyDetails ()
    • getSurveyResults ($surveyid, $start, $end)
    • getOptouts ($time=null)

Development

Want to contribute? Great - push away!, (*11)

Todos

  • Tests not properly implemented

Licensed under MIT

The Versions

14/09 2017

dev-master

9999999-dev

Laravel Text Local Package

  Sources   Download

MIT

The Requires

 

laravel textlocal textlocal gateway laravel textlocal package textlocal sms gateway text local

12/09 2017

1.3.0.0

1.3.0.0

Laravel Text Local Package

  Sources   Download

MIT

The Requires

 

laravel textlocal textlocal gateway laravel textlocal package textlocal sms gateway text local