real time notification in laravel5.4 - notifications

I am working on laravel notification. Can anyone suggest me how to do the real time notification?
I already go through browser. I didn't found any where correct answer.
Can anyone suggest me how to do that? Or has Laravel have any built function?
I am new to Laravel, so this is my first project I am doing in Laravel. So I am not that much of familiar using Laravel. I tried a lot.

Your post is duplicated...
"Laravel Echo", i think it's what you want for real time notification.
https://laracasts.com/lessons/introducing-laravel-echo
look at this post : Real-time chatting and notifications in laravel 5

You have three options. Either Ajax, WebSocket or Realtime technologies.
In ajax, you need to use setInterval() to check every second.
setInvertal(function(){
fetch_notifications();
}, 1000);
In websocket. It's free but it requires nodejs. Check this. It's laravel 4 but you can easily update to laravel 5. http://www.volkomenjuist.nl/blog/2013/10/20/laravel-4-and-nodejsredis-pubsub-realtime-notifications/
Lastly, using realtime web technologies. Most of them are giving free, it up to you if you want to upgrade your account. Check this lists.
https://www.leggetter.co.uk/real-time-web-technologies-guide/
Laravel recommends using pusher, its good. For my self, I would recommend using PubNub. It's very popular and easy to use. Check this. https://www.pubnub.com/blog/2011-03-19-build-real-time-chat-10-lines-code/
Ably is good too.
Goodluck.

Related

Can I use just DirectusSDK instead of REST or GraphQL?

Are there any downsides to use directusSdk instead of making GraphQL requests?
According to documentation; My front-end can log in users and make requests through javascript SDK.
I would say using the SDK is a great option and is something I choose to do myself where possible, I believe that the Directus application uses it too, therefore it is well looked after 😌

What is the point of using /api/v1/(whatever route here) in express?

Ive been making API's for about a year now and I was taught to use http://IPAddress:Port/api/v1 all the time when building an API with express.js. Is there a specific reason I would want to do that? Is this just denoting that the API is in development? Ive recently changed my API to not run on port 3000 so that I am able to just say http://IPAddress.com/ instead of http://IPAddress.com:3000/api/v1 and it works just fine the new way.
One main reason for versioning an API is because it may be that an API can be improved upon but doing so might lead to breaking changes (for example, it might not work for applications that are consuming the API because an endpoint has been modified).
So, the solution to this is to allow consumers of the current API (v1) to keep using it until they want to switch, and release an updated version (v2) for new consumers.
Here's some more info on it: https://restfulapi.net/versioning/

To Make an API Centric Application or Not? - Laravel

So. I have embarked on the journey of learning Laravel in the last couple of weeks, and am thoroughly enjoying it.
It has come time for a site redesign and I thought it was about time to tighten up some of our functionality, so I am making the switch from CodeIgniter to Laravel.
I was wondering whether it is worth starting off with a RESTful API layer in Laravel (easy enough to create) and use it as a base even for the web application. In the future we are likely to build a mobile app that will need to use the API. So:
Is it worth having the web application connect to the API
and what is the easiest way/s to make calls to the API without having to write a bazillion
lines for cURL everytime I want to make a request?
It is definitely worth it.
I am currently redesigning a messy PHP code for an established hosting company turning it into beautiful Laravel code. I already have a mobile app working with it - Laravel makes it easy to return JSON data with one line -
Response::json('OK', 200);
or
Response::eloquent(Auth::user());
or
$tasks = Task::all();
Response::eloquent($tasks);
You don't need to use CURL as far as I know.
You can make all requests with simple AJAX, jQuery would simplify that.
Also using some MVC JS framework would help you make the application code structure more elegant for the client side, and the advantage is that you can easily package that into PhoneGap when you are ready to have your API take some real testing.
Today I posted on my blog about a simple example that you can try to see if this approach is worth your time : http://maxoffsky.com/code-blog/login-to-laravel-web-application-from-phonegap-or-backbone/
Check it out and accept the answer if you think it's on the right track.
As always, your results may vary, but this is exactly what I'm going through at the moment. I'm migrating a large .Net site with this API architecture and I've decided to keep it for Laravel.
I personally decided for this because:
More scalable. I can setup api.domain.com and then add additional
boxes/vm/whatever as our traffic grows. In fact, you could load
balance just the api by "round robin" or multiple dns entries for
that domain.
Future proofing for new sites and apps. Sounds like you're in the
same situation. I can see an app or two being added in the next year
or so.
Lost cost. You'll already be laying out your controllers, so really
it can be just a matter of setting them to RESTful and making small
tweaks to accommodate.
To be fair, some counter points:
Possibly additional load time, from processing through the API, though this should be minimal.
Additional security items to consider if you'd like to lock things down to just your app.
Either way, welcome to Laravel!
and what is the easiest way/s to make calls to the API without having to write a bazillion lines for cURL everytime I want to make a request?
#Sneaksta try postman chrome extension for calling rest services. you can create forms in this extension and pass data from these forms to you Rest services
https://chrome.google.com/webstore/detail/postman-rest-client/fdmmgilgnpjigdojojpjoooidkmcomcm?utm_source=chrome-ntp-icon

REST API for Whiskerboard

I need some help with implementing a status board with a REST API. I've already found the two best options (in my opinion): Stashboard and Whiskerboard.
I have already tried Whiskerboard and I find it easy to install and deploy because it does not need Google App Engine's SDK to be used locally. However, I need something like Stashboard's REST API: http://readthedocs.org/docs/stashboard/en/latest/restapi.html
I know that Whiskerboard is based on Stashboard so probably they have the same REST API. But I cannot seem to find any documentation on Whiskerboard's REST API. Moreover, I looked into each status board's models and there are lots of differences, with Whiskerboard's being largely simpler compared with that of Stashboard's, so they must not have the same REST API.
I will appreciate it if anyone can provide me a link to Whiskerboard's REST API which should be much like Stashboard's. If there really is none, some other solutions could still be suggested. Thank you in advance!
No, it doesn't have the same REST API. You could find this out by reading the code. If you want a similar REST API you have the following options:
Code the feature yourself.
Ask the developer of Whiskerboard for the feature.
Ask someone else at your organization to code and contribute the feature.
Good luck.
You can check out this solution forked by sijis and myself, jvasallo, that we have been working on. He forked the repo for whiskerboard and added an API to it. Still uses Django, and recently I did some work porting it to 1.5.1. Initially, Whiskerboard is a 1.3 Django app.
https://github.com/sijis/whiskerboard

Rails 3: Real-time server push?

I'm trying to write a Rails 3 application in which a server can push data to multiple clients in real time.
I've heard of Juggernaut, but I've also heard that it does not work with Rails 3. I tried APE (AJAX Push Engine), but I'm not having much luck with it.
I'm very new to Rails. I can't find many guides that involve real-time push, and Rails 3. I was looking for a free, easy (if possible) solution to this. If anyone could point me in the right direction, I'd greatly appreciate it.
Check out Faye: http://faye.jcoglan.com/ - I hear really good things about it.
if you're looking for a hosted solution, i've used Pusher http://pusher.com/ in the past, and loved it. i converted a site that used ajax polling over to pusher in about 30 minutes.
You can try juggernaut to do what you want.
The github repository : https://github.com/maccman/juggernaut
Example of application with juggernaut : https://github.com/maccman/holla
Enjoy :)
Have you looked into http://socket.io ? It powers the push functions behind Juggernaut, if I recall correctly.
There appears to be a library for Rails here: https://github.com/markjeee/Socket.IO-rack -- it says 2.3+, which I assume means 3 is ok (though I'm not a Ruby guy, so I wouldn't really know).
In keeping with the Pusher suggestion, there's RMSN - a drop in replacement I've written using NowJS.
https://github.com/leppert/RMSN
Starting with Rails 4, you could also use Entangled:
https://github.com/so-entangled/rails
It basically keeps all data between client and server in sync in real time through web sockets. It's easy to set up, so give it a try.