All Projects → mac-cain13 → Notificato

mac-cain13 / Notificato

Licence: mit
Takes care of Apple push notifications (APNS) in your PHP projects.

Projects that are alternatives of or similar to Notificato

node-apn-http2
Communicate with Apple Push Notification Service via native Node.js v8.8.1+ HTTP2 module (node-apn drop-in)
Stars: ✭ 25 (-88.48%)
Mutual labels:  apple, push-notifications
Gunfish
No description or website provided.
Stars: ✭ 35 (-83.87%)
Mutual labels:  apple, push-notifications
Grocer
Pushing your Apple notifications since 2012.
Stars: ✭ 1,005 (+363.13%)
Mutual labels:  apple, push-notifications
apns2
Node client for connecting to Apple's Push Notification Service using the new HTTP/2 protocol with JSON web tokens
Stars: ✭ 66 (-69.59%)
Mutual labels:  apple, push-notifications
Net Core Push Notifications
Lightweight .NET Core Push Notifications for Android and iOS
Stars: ✭ 105 (-51.61%)
Mutual labels:  apple, push-notifications
Mac
macOS Mojave v. 10.14 setup for developers.
Stars: ✭ 209 (-3.69%)
Mutual labels:  apple
Igrphototweaks
Drag, Rotate, Scale and Crop
Stars: ✭ 212 (-2.3%)
Mutual labels:  apple
Shsearchbar
The search bar that doesn't suck.
Stars: ✭ 206 (-5.07%)
Mutual labels:  apple
Liiphellobundle
[DEPRECATED] Alternative Hello World Bundle for Symfony2 using several FriendsOfSymfony Bundles
Stars: ✭ 206 (-5.07%)
Mutual labels:  symfony
Oauth2 Bundle
Symfony bundle which provides OAuth 2.0 authorization/resource server capabilities.
Stars: ✭ 215 (-0.92%)
Mutual labels:  symfony
Onesignal Cordova Sdk
OneSignal is a free push notification service for mobile apps. This plugin makes it easy to integrate your Ionic, PhoneGap CLI, PhoneGap Build, Cordova, or Sencha Touch app with OneSignal. Supports Android, iOS, and Amazon's Fire OS platforms. https://onesignal.com
Stars: ✭ 214 (-1.38%)
Mutual labels:  push-notifications
Platform Application
OroPlatform - business application management system that is a backbone of the OroCRM and OroCommerce.
Stars: ✭ 211 (-2.76%)
Mutual labels:  symfony
Symfony Docker
🐳 The Symfony Docker Edition – featuring PHP 7, Docker and Docker Compose
Stars: ✭ 209 (-3.69%)
Mutual labels:  symfony
Periphery
A tool to identify unused code in Swift projects.
Stars: ✭ 3,017 (+1290.32%)
Mutual labels:  apple
Symfonydependencyinjectiontest
Library for testing user classes related to the Symfony Dependency Injection Component
Stars: ✭ 206 (-5.07%)
Mutual labels:  symfony
Apple Store Helper
Apple Store iPhone预约助手
Stars: ✭ 215 (-0.92%)
Mutual labels:  apple
Event Dispatcher Contracts
A set of event dispatcher abstractions extracted out of the Symfony components
Stars: ✭ 2,667 (+1129.03%)
Mutual labels:  symfony
Spstorkcontroller
Now playing controller from Apple Music, Mail & Podcasts Apple's apps.
Stars: ✭ 2,494 (+1049.31%)
Mutual labels:  apple
Symfony Flex Backend
Symfony Flex REST API template project
Stars: ✭ 214 (-1.38%)
Mutual labels:  symfony
Browser Kit
The BrowserKit component simulates the behavior of a web browser, allowing you to make requests, click on links and submit forms programmatically.
Stars: ✭ 2,563 (+1081.11%)
Mutual labels:  symfony

Notificato Build Status of Master

Notificato takes care of push notifications in your PHP projects.

Italian: notificato è: participio passato English: notified

Why use Notificato instead of X?

Notificato has some advantages not all other PHP push libraries have:

  1. Supports multiple APNS certificates, so you can push to multiple Apps/Passbook Passes
  2. Takes excellent care of PHPs buggy SSL-sockets, handles quirks and error responses correctly
  3. Well tested with unit tests and nice Object-Oriented structure

Installation

Installation with Composer is recommended. Run the require command to add Notificato to your project:

composer require wrep/notificato

Suggestion: There is also a Notificato for Symfony bundle available, highly recommended for Symfony2 & Symfony3 users.

Getting started

  1. Take a look at the snippet below for a impression how Notificato works
  2. Read the documentation it will help you with common use cases
  3. Check out the API docs for a deeper understanding what Notificato is capable of
<?php
// This imports the Composer autoloader
require_once('vendor/autoload.php');

use Wrep\Notificato\Notificato;

class GettingStarted
{
	/**
	 * This example sends one pushnotification with an alert to Apples production push servers
	 */
	public function sendOnePushNotification()
	{
		// First we get a Notificato instance and tell it what certificate to use as default certificate
		$notificato = new Notificato('./certificate.pem', 'passphrase-to-use');

		// Now we get a fresh messagebuilder from Notificato
		//  This message will be send to device with pushtoken 'fffff...'
		//  it will automaticly be associated with the default certificate
		//  and we will set the red badge on the App icon to 1
		$message = $notificato->messageBuilder()
								->setDeviceToken('ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff')
								->setBadge(1)
								->build();

		// The message is ready, let's send it!
		//  Be aware that this method is blocking and on failure Notificato will retry if necessary
		$messageEnvelope = $notificato->send($message);

		// The returned envelope contains usefull information about how many retries where needed and if sending succeeded
		echo $messageEnvelope->getFinalStatusDescription();
	}

	/**
	 * This example reads all unregistered devices from Apples feedback service
	 */
	public function readFeedbackService()
	{
		// First we get the a Notificato instance and tell it what certificate to use as default certificate
		$notificato = new Notificato('./certificate.pem', 'passphrase-to-use');

		// Now read all "tuples" from the feedback service, be aware that this method is blocking
		$tuples = $notificato->receiveFeedback();

		// The tuples contain information about what device unregistered and when it did unregister.
		//  Don't forget to check if the device reregistered after the "invaidated at" date!
		foreach ($tuples as $tuple)
		{
			echo 'Device ' . $tuple->getDeviceToken() . ' invalidated at ' . $tuple->getInvalidatedAt()->format(\DateTime::ISO8601) . PHP_EOL;
		}
	}
}

$gettingStarted = new GettingStarted();
$gettingStarted->sendOnePushNotification();
$gettingStarted->readFeedbackService();

Contribute

We'll love contributions, read Contribute.md for some more info on what you can do and stuff that you should know if you want to help!

License & Credits

Notificato is released under the MIT License by Mathijs Kadijk, so feel free to use it in commercial and non-commercial projects.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].