edujugon / social-auto-post
PHP and Laravel 5 Package to post on Twitter
Installs: 5 743
Dependents: 0
Suggesters: 0
Security: 0
Stars: 13
Watchers: 3
Forks: 5
Open Issues: 0
Requires
- php: >=5.5.0
- illuminate/support: ^5.2
- jublonet/codebird-php: ^3.1
Requires (Dev)
- phpunit/phpunit: 4.0.*
This package is auto-updated.
Last update: 2024-12-19 09:47:40 UTC
README
This is a lightly and easy to use package to post on your favorite social sites.
####Social Sites Available:
- More sites coming soon.
Installation
type in console:
composer require edujugon/social-auto-post
Or update your composer.json file.
"edujugon/social-auto-post": "1.0.*"
Then
composer install
Laravel 5.*
Register the Social service by adding it to the providers array.
'providers' => array(
...
Edujugon\SocialAutoPost\Providers\SocialAutoPostServiceProvider::class
)
Let's add the Alias facade, add it to the aliases array.
'aliases' => array(
...
'SocialAutoPost' => Edujugon\SocialAutoPost\Facades\SocialAutoPost::class,
)
Publish the package's configuration file to the application's own config directory
php artisan vendor:publish --provider="Edujugon\SocialAutoPost\Providers\SocialAutoPostServiceProvider" --tag="config"
Go to laravel facade sample directly.
Configuration
The default configuration for all Social sites is located in Config/Config.php
Before using this package you should create your app in your social site and then update the config values like follows:
'twitter' => [
'consumerKey' => 'YOUR_CONSUMER_KEY',
'consumerSecret' => 'YOUR_CONSUMER_SECRET',
'accessToken' => 'YOUR_ACCESS_TOKEN',
'accessTokenSecret' => 'YOUR_ACCESS_TOKEN_SECRET'
]
You can dynamically set those values or add new ones calling the method config like follows:
$social->config(['consumerKey' => 'new_key','accessToken' => 'new_access_token']);
Usage
$social = new SocialAutoPost;
By default it will use Twitter as Social Site but you can also pass the name as parameter:
$social = new SocialAutoPost('twitter');
Now you may use any method what you need. Please see the API List.
API List
Or go to Usage samples directly.
site
site
method sets the social site, which you pass the name through parameter.
Syntax
object site($socialName)
params
params
method sets the Post parameters, which you pass through parameter as array.
Syntax
object params(array $data)
Check out the Params Available.
post
post
method sends the post. This method does not return the post response.
if you want to get the post response you can use withFeedback method chained to this method (post)
Syntax
object post()
withFeedback
withFeedback
method provides the post response just after be sent the post.
Syntax
object/array withFeedback()
config
config
method sets dynamically the social site app configuration, which you pass through parameter as array.
Syntax
object config(array $data)
getSite
getSite
If you want to get the current social site in used, this method gets the social site name.
Syntax
string getSite()
getParams
getParams
If you want to get the post parameters, this method may help you.
Syntax
array getParams()
getFeedback
getFeedback
If you want to get the very last post feedback, this method may help you.
Syntax
object/null getFeedback()
getConfig
getConfig
If you want to get the current social configuration, this method may help you.
Syntax
array getConfig()
Usage samples
You can chain the methods.
$social = new SocialAutoPost('twitter');
$social->params(['status' => 'My new post #twitter])
->post()
->withFeedback();
or with media
$social = new SocialAutoPost('twitter');
$social->params(['status' => 'My new post #twitter,
'media' =>'/path/myImage.jpg'
])
->post()
->withFeedback();
NOTICE that Status cannot be over 140 characters for TWITTER.
or do it separately
$social = new SocialAutoPost('twitter');
$social->params(['status' => 'My new post #twitter])
$social->post();
Params Available
- status
- media (optional)
- local path to your image.
- url to you image.
Getting the Social Site response after posting
There are 2 way to get the post response:
-
Chain the method
withFeedback()
to thepost()
method.$social = new SocialAutoPost('twitter'); $social->params(['status' => 'My new post #twitter]) ->post() ->withFeedback();
-
You may call the method
getFeedback()
whenever you want after sending the post.$social->getFeedback();
Laravel Alias Facade
After register the Alias Facade for this Package, you can use it like follows:
SocialAutoPost::site('twitter')
->params(['status' => 'My new post #twitter'])
->post()
->withFeedback();
It will return the post response.