Commit Graph

783 Commits

Author SHA1 Message Date
Francis Lavoie ef86f86668
Attempt at making TriggerEventController also publish to other servers 2019-09-23 15:36:09 -04:00
Francis Lavoie 091f56ea15
Simplify controller logic due to PresenceChannel logic changes 2019-09-23 15:36:09 -04:00
Francis Lavoie 990a075b20
Avoid calls to app() 2019-09-23 15:36:09 -04:00
Francis Lavoie 00e8f3e1a8
Add channel storage to LocalDriver to simplify PresenceChannel logic 2019-09-23 15:36:09 -04:00
anthony 373b993e64
rename emptyclient to localclient 2019-09-23 15:36:09 -04:00
anthony f2b3347f89
resolve app from local variables in console 2019-09-23 15:36:09 -04:00
anthony 060b986058
resolve app from local variables 2019-09-23 15:36:09 -04:00
Arthur Vandenberghe 11e1f89b5e
Merge pull request #1 from deviouspk/analysis-z3nD5L
Apply fixes from StyleCI
2019-09-23 15:36:09 -04:00
anthony d43ac821d9
remove test code 2019-09-23 15:36:09 -04:00
anthony 6e68d3d144
one line var doc 2019-09-23 15:36:09 -04:00
anthony b5fcc13797
remove redis host 2019-09-23 15:36:09 -04:00
anthony 3c909b95c0
remove predis from require-dev 2019-09-23 15:36:09 -04:00
anthony d7c30f3b0f
cleanup & refactor of pubsub code 2019-09-23 15:35:43 -04:00
Francis Lavoie ed5503407e
Fix mistake during rebase 2019-09-23 15:35:12 -04:00
Francis Lavoie faf2c75d3d
Fix redis-pusher broadcast driver, wrong params for extend() callable 2019-09-23 15:35:12 -04:00
Francis Lavoie b7ae9bac4a
Add tests for replication, fix bugs in the implementation 2019-09-23 15:35:12 -04:00
Francis Lavoie 4baac7ef00
Implement presence channel storage in Redis 2019-09-23 15:35:12 -04:00
Francis Lavoie 87c00fb340
app() -> $this->laravel in StartWebSocketServer 2019-09-23 15:35:12 -04:00
Francis Lavoie eca8c7b846
Scope pub/sub channels in Redis by appId to avoid crosstalk between apps 2019-09-23 15:35:12 -04:00
Francis Lavoie 668cd29df0
Fix style issues reported by StyleCI 2019-09-23 15:35:12 -04:00
Francis Lavoie e454f53eaa
Initial implementation of Redis as a pub/sub backend, WIP
TODO:
- Presence channels need the user lists stored in Redis (tricky, requires a lot of changes and async code in HTTP controllers)
- Channels in Redis should be scoped by the app ID
2019-09-23 15:35:12 -04:00
Francis Lavoie c203d24469
Clean up some typos, add some type hints, StyleCI fixes 2019-09-23 15:34:55 -04:00
Sam Snelling b584d0cacb
Update with pub sub replication and redis driver 2019-09-23 15:34:42 -04:00
Henrik B Hansen 8e422cbc5b Make it possible to customise the port the dashboard connects to (#124)
* Make it possible to customise the port the dashboard connects to.

* Fixed so both wsPort and wssPort are changed.

* Changed env port name and added path

* Fixed typo in wsPath

* Moved port into dashboard section in config

* Changed env name to LARAVEL_WEBSOCKETS_PORT
2019-09-04 08:48:06 +02:00
rahulhaque fa86844ea5 Debug dashboard connection exceeded error added (#194) 2019-09-04 08:44:59 +02:00
Marcel Pociot 74c3e06ece Add Laravel 6 support and ignition solution 2019-09-04 08:45:21 +02:00
Arthur Vandenberghe 0ffc19a5f5 update react dns to v1.1 (#227)
The resolverinterface (used in #223)  was newly introduced in reach/dns 1.1. This PR to avoid that people who are on react/dns 1.0 get issues.
2019-07-28 15:29:56 -04:00
Gabriel Iuga 94fb667b90 Fix for dependency upgrade (#223)
* + DnsResolver no longer extends React/Dns/Resolver as it's now a final class
+ StartWebSocketServer:getDnsResolver returns ResolverInterface to comply with new react/dns policy

* + organize imports

* + organize imports
2019-07-28 14:18:22 -04:00
Tom de Wit 639a63bfbb Allow the use of pusher-php-server 4.0 (#209) 2019-07-15 21:13:29 +02:00
Catzilla d145cd4160 Fixed channels HTTP API endpoint (#127)
* Fixed channels HTTP API endpoint
2019-05-11 08:52:04 +02:00
Jadon 03c9835b5d Update websockets.php (#132)
Accept SSL certificate paths through `.env` file.

This is to support projects that exist as multiple clones of the same repository.

`config/websockets.php` is generally tracked by git, making it difficult to pick the unique certificates, per installation.
2019-05-11 08:49:40 +02:00
Ahmed Al-Shahawi aecbfeebe7 Add the ability to limit the maximum concurrent connections per appli… (#143)
* Add the ability to limit the maximum concurrent connections per application

Co-Authored-By: AlShahawi <alshahawi@outlook.com>
2019-05-11 08:48:33 +02:00
Luke Policinski 556f4338e8 Fix/Feature : Fixing ability to add custom handlers to a route by adding a custom routes method to the router (#150)
Fixing Coding Standards

Fixing Coding Standards
2019-05-11 08:46:25 +02:00
Alex Bouma 5e84ef1ddc Fix connection counting (#74)
* Fix connection counting

* Remove unused method from FakeStatisticsLogger

* Add tests for testing the connection counting

* StyleCI fixes

* Do not use Laravel 5.7.10 testing helper

* CS
2019-05-11 08:40:45 +02:00
Marcel Pociot d2146f7977 fix ability to recursively call the respond method. Fixes #173 2019-05-11 08:39:03 +02:00
Marcel Pociot 1c2b89b54d Fix content length bug 2019-02-27 15:44:42 +01:00
Marcel Pociot f26f89236e Merge branch 'master' of github.com:beyondcode/laravel-websockets 2019-02-27 15:28:09 +01:00
Marcel Pociot 82bba5bd02 Fix content length method 2019-02-27 15:27:51 +01:00
Francis Lavoie 3ec6c0ade3 Add support for Laravel 5.8 (#122)
* Fix Laravel 5.8 compatibility

* Use Arr:: and Str:: instead of global helpers

* Remove testbench-core dependency, release was tagged
2019-02-27 15:27:21 +01:00
Marcel Pociot 15e6b6ae96 Use content length check for requests split into multiple messages 2019-02-27 15:24:00 +01:00
Marcel Pociot edcf205dba
Apply fixes from StyleCI (#123) 2019-02-27 15:23:47 +01:00
Francis Lavoie 70ffe41c86 Add support for overriding stats logger's base URL 2019-02-21 12:13:58 -05:00
Marcel Pociot 53691ce8a5
Update README.md 2019-01-28 21:42:58 +01:00
Alex Bouma 83dec0b5f1 Fix signature validation (#38)
* Add failing test

* Fix signature validation

* Fix tests to generate correct signatures

*  StyleCI fix

* Ignore route params when validating the signature

* Fix tests to add route params next to signature

* StyleCI fixes
2019-01-02 22:30:57 +01:00
Ahmad Fikrizaman Bin Abd Rahim c1f6ffa51b Fix Invalid Signature issue and enable event creator to be sent from any app (#39)
* Add the ability to configure middleware.

Fixes #22

* Fix StyleCI Error.

* Include X-App-ID

* Reconstruct the PusherBroadcaster

* fix styleci

* change from overwriting constructor to new Broadcaster

* optional  inside dashboard gate

* remove comment

* fix for styleci

* Fix typo

* Removed unused $config['options']
2018-12-17 09:38:18 +01:00
Sam Snelling ec96ca7172 Update ChannelManager (#41)
* Update Channel Manager

Switch ChannelManager to an interface. Extend with an ArrayChannelManager (and copy the code). Update the config to allow for swapping. Bind it to the ServiceProvider

* Add a fallback if the config variable isn’t set

* Fix StyleCI

* Fix StyleCI line break

* Add description for the ChannelManager option
2018-12-10 20:47:52 +01:00
Alex Bouma db6d794fd5 Option to resolve DNS for the statistics endpoint (#31) 2018-12-10 10:31:19 +01:00
Marcel Pociot efbeb18995
Merge pull request #40 from stayallive/fix-empty-channels-response
Fix Pusher lib expecting empty object not array
2018-12-09 11:07:12 +01:00
Marcel Pociot ecf0fe4fb5
Update README.md 2018-12-09 11:06:23 +01:00
Alex Bouma 0a0c1249eb
Add test 2018-12-07 20:42:20 +01:00