Skip to content

alihesari/laravel-social-auto-posting

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

38 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Build Status GitHub tag

๐ŸŒˆ Introduction

This is a Laravel package to post your content to social networks such:

๐Ÿš€ Features:

  • ๐Ÿ’ Simple. Easy to use.
  • ๐Ÿ“ Send text message to Telegram channel
  • ๐Ÿ“ท Send photo to Telegram channel
  • ๐ŸŽต Send audio to Telegram channel
  • ๐Ÿ“– Send document to Telegram channel
  • ๐Ÿ“บ Send video to Telegram channel
  • ๐Ÿ”Š Send voice to Telegram channel
  • ๐ŸŽด Send a group of photos or videos as an album to Telegram channel
  • ๐Ÿ“ Send location to Telegram
  • ๐Ÿ“Œ Send venue to Telegram
  • ๐Ÿ“ž Send contact to Telegram
  • ๐ŸŒ Send message with url inline keyboard to Telegram channel
  • โœจ Send text and media to Twitter
  • ๐ŸŽ‰ Send text and media to Facebook

๐Ÿ”จ Installation:

  1. Download and install package via composer:
composer require toolkito/larasap
  1. Run the command below to publish the package config file: config\larasap.php
php artisan vendor:publish --tag=larasap

๐Ÿ”Œ Configuration:

Set the social network information in the config\larasap.php.

๐Ÿ•น Usage:

First, add the use Toolkito\Larasap\SendTo; in your controller.

Next, send message to your Telegram channel or Twitter account.

๐Ÿšฉ Roadmap

  • Improve tests and coverage
  • Improve performance

๐ŸŒฑ Quick examples:

โญ Telegram examples:

๐Ÿ“ Send text message to Telegram:

SendTo::Telegram('Hello, I\'m testing Laravel social auto posting');

๐Ÿ“ท Send photo to Telegram:

SendTo::Telegram(
    'Hello, I\'m testing Laravel social auto posting', // Photo caption (Optional)
    [
        'type' => 'photo', // Message type (Required)
        'file' => 'https://i.imgur.com/j6bzKQc.jpg' // Image url (Required)
    ],
    '' // Inline keyboard (Optional)
);

๐ŸŽต Send audio to Telegram:

SendTo::Telegram(
 'Hello, I\'m testing Laravel social auto posting', // Audio caption (Optional)
 [
     'type' => 'audio', // Message type (Required)
     'file' => 'http://example.com/let-me-be-your-lover.mp3', // Audio url (Required) 
     'duration' => 208, // Duration of the audio in seconds (Optional)
     'performer' => 'Enrique Iglesias', // Performer (Optional)
     'title' => 'Let Me Be Your Lover' // Track name (Optional)
 ],
'' // Inline keyboard (Optional)
);

๐Ÿ“– Send document to Telegram:

SendTo::Telegram(
   'Hello, I\'m testing Laravel social auto posting', // Document caption
   [
       'type' => 'document', // Message type (Required)
       'file' => 'http://example.com/larasap.pdf', // Document url (Required)
   ],
  '' // Inline keyboard (Optional)
);

๐Ÿ“บ Send video to Telegram:

SendTo::Telegram(
  'Hello, I\'m testing Laravel social auto posting', // Video caption (Optional)
  [
      'type' => 'video', // Message type (Required)
      'file' => 'http://example.com/let-me-be-your-lover.mp4', // Audio url (Required) 
      'duration' => 273, // Duration of sent video in seconds (Optional)
      'width' => 1920, // Video width (Optional)
      'height' => 1080 // Video height (Optional)
  ],
 '' // Inline keyboard (Optional)
);

๐Ÿ”Š Send voice to Telegram:

SendTo::Telegram(
  'Hello, I\'m testing Laravel social auto posting', // Voice message caption (Optional)
  [
      'type' => 'voice', // Message type (Required)
      'file' => 'https://upload.wikimedia.org/wikipedia/en/9/9f/Sample_of_%22Another_Day_in_Paradise%22.ogg', // Audio url (Required) 
      'duration' => 28 // Duration of the voice message in seconds (Optional)
  ],
 '' // Inline keyboard (Optional)
);

๐ŸŽด Send media group to Telegram:

SendTo::Telegram(
   null,
   [
       'type' => 'media_group', // Message type (Required)
       'files' => // Array describing photos and videos to be sent, must include 2โ€“10 items
       [
           [
               'type' => 'photo', // Media type (Required)
               'media' => 'https://i.imgur.com/j6bzKQc.jpg', // Media url (Required)
               'caption' => 'Laravel sccial auto posting' // Media caption (Optional)
           ],
           [
               'type' => 'video', // Media type (Required)
               'media' => 'http://example.com/let-me-be-your-lover.mp4', // Media url (Required)
               'caption' => 'Let me be your lover' // Media caption (Optional)
           ]
       ]
   ]
);

๐Ÿ“ Send point on the map to Telegram:

SendTo::Telegram(
    null,
    [
        'type' => 'location', // Message type (Required)
        'latitude' => 36.1664345, // Latitude of the location (Required)
        'longitude' => 58.8209904, // Longitude of the location (Required)
        'live_period' => 86400, // Period in seconds for which the location will be updated (Optional)
        '' // Inline keyboard (Optional)
);

๐Ÿ“Œ Send information about a venue to Telegram:

SendTo::Telegram(
    null,
    [
        'type' => 'venue', // Message type (Required)
        'latitude' => 36.166048, // Latitude of the location (Required)
        'longitude' => 58.822121, // Longitude of the location (Required)
        'title' => 'Khayyam', // Name of the venue (Required)
        'address' => 'Neyshabur, Razavi Khorasan Province, Iran', // Address of the venue (Required)
        'foursquare_id' => '', // Foursquare identifier of the venue (Optional)
        '' // Inline keyboard (Optional)
);

๐Ÿ“ž Send phone contacts to Telegram:

SendTo::Telegram(
    null,
    [
        'type' => 'contact', // Message type (Required)
        'phone_number' => '+12025550149', // Contact's phone number (Required)
        'first_name' => 'John', // Contact's first name (Required)
        'last_name' => 'Doe', // Contact's last name (Optional)
        '' // Inline keyboard (Optional)
    ]
);

๐ŸŒ Send message with inline button to Telegram:

SendTo::Telegram(
    'Laravel social auto posting',
    '',
    [
        [
            [
                'text' => 'Github',
                'url' => 'https://github.com/toolkito/laravel-social-auto-posting'
            ]
        ],
        [
            [
                'text' => 'Download',
                'url' => 'https://github.com/toolkito/laravel-social-auto-posting/archive/master.zip'
            ],
        ]
    ]
);

Or

SendTo::Telegram(
    'Laravel social auto posting',
    '',
    [
        [
            [
                'text' => 'Github',
                'url' => 'https://github.com/toolkito/laravel-social-auto-posting'
            ],
            [
                'text' => 'Download',
                'url' => 'https://github.com/toolkito/laravel-social-auto-posting/archive/master.zip'
            ],
        ]
    ]
);

โญ Twitter examples:

โœจ Text tweet:

SendTo::Twitter('Hello, I\'m testing Laravel social auto posting');

โœจ Tweet with media:

SendTo::Twitter(
    'Hello, I\'m testing Laravel social auto posting',
    [
        public_path('photo-1.jpg'),
        public_path('photo-2.jpg')
    ]
);

โญ Facebook examples:

๐ŸŽ‰ Send link to Facebook page:

SendTo::Facebook(
    'link',
    [
        'link' => 'https://github.com/toolkito/laravel-social-auto-posting',
        'message' => 'Laravel social auto posting'
    ]
);

๐ŸŽ‰ Send photo to Facebook page:

SendTo::Facebook(
    'photo',
    [
        'photo' => public_path('img/1.jpg'),
        'message' => 'Laravel social auto posting'
    ]
);

๐ŸŽ‰ Send video to Facebook page:

SendTo::Facebook(
    'video',
    [
        'video' => public_path('upload/1.mp4'),
        'title' => 'Let Me Be Your Lover',
        'description' => 'Let Me Be Your Lover - Enrique Iglesias'
    ]
);