Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/edujugon/socialautopost
PHP and Laravel 5 Package to post on Twitter
https://github.com/edujugon/socialautopost
Last synced: 16 days ago
JSON representation
PHP and Laravel 5 Package to post on Twitter
- Host: GitHub
- URL: https://github.com/edujugon/socialautopost
- Owner: Edujugon
- License: mit
- Created: 2016-07-29T10:37:26.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2016-08-05T11:58:29.000Z (over 8 years ago)
- Last Synced: 2024-10-12T10:44:29.571Z (about 1 month ago)
- Language: PHP
- Homepage:
- Size: 16.6 KB
- Stars: 13
- Watchers: 3
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Social Auto Post
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](https://github.com/edujugon/SocialAutoPost#laravel-alias-facade) 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
- [site](https://github.com/edujugon/SocialAutoPost#site)
- [params](https://github.com/edujugon/SocialAutoPost#params)
- [post](https://github.com/edujugon/SocialAutoPost#post)
- [withFeedback](https://github.com/edujugon/SocialAutoPost#withfeedback)
- [config](https://github.com/edujugon/SocialAutoPost#config)
- [getSite](https://github.com/edujugon/SocialAutoPost#getsite)
- [getParams](https://github.com/edujugon/SocialAutoPost#getparams)
- [getFeedback](https://github.com/edujugon/SocialAutoPost#getfeedback)
- [getConfig](https://github.com/edujugon/SocialAutoPost#getconfig)> Or go to [Usage samples](https://github.com/edujugon/SocialAutoPost#usage-samples) directly.
#### site
`site` method sets the social site, which you pass the name through parameter.
**Syntax**
```php
object site($socialName)
```#### params
`params` method sets the Post parameters, which you pass through parameter as **array**.
**Syntax**
```php
object params(array $data)
```Check out the [Params Available](https://github.com/edujugon/SocialAutoPost#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](https://github.com/edujugon/SocialAutoPost#withfeedback) method chained to this method (post)**Syntax**
```php
object post()
```#### withFeedback
`withFeedback` method provides the post response just after be sent the post.
**Syntax**
```php
object/array withFeedback()
```#### config
`config` method sets dynamically the social site app configuration, which you pass through parameter as **array**.
**Syntax**
```php
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**
```php
string getSite()
```#### getParams
`getParams` If you want to get the post parameters, this method may help you.
**Syntax**
```php
array getParams()
```#### getFeedback
`getFeedback` If you want to get the very last post feedback, this method may help you.
**Syntax**
```php
object/null getFeedback()
```#### getConfig
`getConfig` If you want to get the current social configuration, this method may help you.
**Syntax**
```php
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:
1) Chain the method `withFeedback()` to the `post()` method.```php
$social = new SocialAutoPost('twitter');
$social->params(['status' => 'My new post #twitter])
->post()
->withFeedback();
```2) You may call the method `getFeedback()` whenever you want after sending the post.
```php
$social->getFeedback();
```
### Laravel Alias FacadeAfter 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.