Christian
dffc27c1f4
Migrate events in server to async handlers.
2019-03-05 21:37:30 +01:00
Christian
6f5f507323
Extend MQTTnet.Server application.
2019-03-05 21:37:00 +01:00
Kiarash Ghiaseddin
b68247f56d
WIP
...
First draft for MQTTnetServer project
* Basic support for settings
* Nasty code for setting up kestrel from appsettings.json
2019-03-04 21:13:22 +01:00
Christian
3b02a5f6aa
Fix NullRefException when cancelling the server.
2019-02-23 10:40:17 +01:00
Christian
09718a00e7
Add handlers to variable before using to avoid NullRefExceptions.
2019-02-23 10:13:12 +01:00
Christian
ecc2cd5f0c
Merge pull request #555 from BennyM/develop
...
When no handlers are configured the client should not blow up
2019-02-23 10:07:24 +01:00
BennyM
4860cec6c7
When no handlers are configured the client should not blow up
2019-02-19 21:40:11 +01:00
Dominik Psenner
b9e0dbf150
Add extension methods that provide a simpler api for IMqttClient and IManagedMqttClient connect/disconnect when the handlers do not need async/await
2019-02-18 08:02:09 +01:00
Dominik Psenner
2000de15e7
Add async handlers for connect and disconnect, too
...
.. this allows a client to properly async publish on connect.
2019-02-15 17:02:33 +01:00
Dominik Psenner
5e6b902430
Add convenience extensions to the managed client
2019-02-15 16:55:52 +01:00
Dominik Psenner
a1f414a06d
Add async handler interfaces for connected and disconnected to allow async code to execute on connect
2019-02-15 15:02:15 +01:00
Berni
506873ed5b
fix logger logId not used in ManagedMqttClient
2019-01-31 15:50:01 +01:00
Christian Kratky
6a2bded181
Refactor session and connection handling in server. Fix QoS level 2 issues.
2019-01-27 11:15:32 +01:00
Christian Kratky
ebf0e91ab8
Refactor subscribe and unsubscribe to support MQTTv5.
2019-01-21 21:38:39 +01:00
Christian Kratky
96a67579e2
Improve session handling.
2019-01-01 19:18:54 +01:00
Christian Kratky
4cba814716
Cleanup.
2018-12-27 23:10:52 +01:00
Christian Kratky
b527059b72
Fix session takeover.
2018-12-27 23:05:57 +01:00
Christian Kratky
c0507fcc55
Refactor interceptors etc. to support async.
2018-12-27 22:41:41 +01:00
Christian Kratky
058bb65d31
Merge from develop.
2018-12-22 09:40:47 +01:00
Christian Kratky
38b215e9b5
Merge branch 'develop' into feature/MQTTv5
2018-12-22 09:38:12 +01:00
Christian Kratky
cc113a6c34
Refactor namespaces.
2018-12-20 20:53:29 +01:00
Charles Quesnel
dfda916283
Use default parameter instead of overload
2018-12-13 14:54:31 -05:00
Charles Quesnel
40326df9a9
Fix typo in 'Cookie'
2018-12-13 14:08:53 -05:00
Charles Quesnel
a94444098a
Remove unused usings
2018-12-13 13:01:34 -05:00
Charles Quesnel
0c13e7a504
Add overload to allow passing custom request headers and cookies when connecting with WS
2018-12-13 12:56:47 -05:00
Christian Kratky
0dba57fe75
Cleanup code.
2018-12-09 21:04:14 +01:00
Christian Kratky
6483f896c1
Merge from develop.
2018-12-09 20:48:46 +01:00
Christian Kratky
28b2562112
Fix client session disposal in server.
2018-12-09 17:35:46 +01:00
Christian Kratky
619eaf284d
Add readonly property for client options.
2018-12-03 21:20:11 +01:00
Christian Kratky
86c348df58
Stop existing sessions before takeover from another client.
2018-12-02 21:50:16 +01:00
Christian Kratky
fdb2ec897c
Merge branch 'develop' of https://github.com/chkr1011/MQTTnet into develop
2018-12-01 11:00:09 +01:00
Christian Kratky
b091fee554
Reset the keep alive monitor if a session is being resumed from a different (or same) client.
2018-12-01 11:00:00 +01:00
Federico Di Gregorio
bc1a197c4f
Align conditions in dependent project with conditions in MQTTnet
2018-11-30 09:26:02 +01:00
Christian Kratky
ccc275902f
Fix wrong retain flag when distributing messages.
2018-11-28 21:35:50 +01:00
Christian Kratky
0f5fb8aa3a
Add more pacakges.
2018-11-28 21:11:23 +01:00
Christian Kratky
017f17a6b1
Fix UnitTests.
2018-11-24 20:19:16 +01:00
Christian Kratky
43105f71d8
Refactor removal from blocking queue.
2018-11-23 22:56:10 +01:00
Christian Kratky
7baff7c080
Refactor property definition for packets.
2018-11-23 22:50:44 +01:00
Paul Fake
2a93fc18e4
Made comparison function static
2018-11-21 21:44:26 -05:00
Paul Fake
31de6ee186
Delegate comparison function
2018-11-21 21:39:42 -05:00
Paul Fake
74d59673a8
Delegate for comparisons
2018-11-21 21:38:06 -05:00
Paul Fake
d1c3d9b453
Removed unnecessary code
2018-11-21 21:37:01 -05:00
Paul Fake
baa9241216
Revert "Changes to this file no longer needed"
...
This reverts commit 2c6c3ac6a4 .
2018-11-21 21:35:15 -05:00
Paul Fake
2c6c3ac6a4
Changes to this file no longer needed
2018-11-21 20:47:12 -05:00
Paul Fake
b2c31331b6
Peek-and-publish model
...
We had been seeing an issue in which the queue could grow larger than the configured cap. I examined the code and saw that this could happen if _mqttClient.PublishAsync() throws an exception, in which case a message can be re-enqueued without honoring the cap. Furthermore, I saw that it was possible for the DropOldestQueuedMessage strategy to drop messages that were not actually the oldest ones, because when re-enqueueing the messages in the queue are no longer ordered by the original time they entered the queue. It made sense to us to peek at the message when publishing rather than dequeue it, so that when re-enqueueing after an exception 1) the cap is still honored and 2) the order of queued messages isn't altered. It's ok if another thread removes the message that's currently being published from the queue due to the cap, because all we have to do then is check if it's already been removed before removing it ourselves.
2018-11-19 21:20:50 -05:00
Paul Fake
9ff39c1fd9
New functions
...
This is to support the peek-and-publish model for the managed client
2018-11-19 21:11:47 -05:00
Paul Fake
210d57b254
IEquatable for speed
...
IEquatable for speed in using EqualityComparer<TItem>.Default.Equals
2018-11-19 21:09:36 -05:00
Christian Kratky
7292cedd2f
Encode ConnAck packet.
2018-11-19 00:17:19 +01:00
Christian Kratky
48d5afa799
Refactor namings of serializers etc.
2018-11-19 00:14:15 +01:00
Christian Kratky
3db22eea51
Remove dedicated V3 messages.
2018-11-18 22:04:39 +01:00