![]() * feat(gateway): add gateway application * chore(gateway): add normalize confs function * refactor: move emqx-stomp to emqx-gateway subdir * chore(gateway): fix some bad function defination * chore(gateway): rename type to gwid * chore(gw-stomp): upgrade the implementation to suppport gateway instance * feat(gw-stomp): add reconnect mechanism * refactor(stomp): upgrade connection&channel module to latest * refactor(stomp): more details for handle_in/out * refactor(stomp): get it up and running * chore(gw): load some modules by default * refactor: upgrade the emqx-gateway schema module * test(stomp): fix testcases for stomp gateway * chore(gw): remove needless lines * chore(gateway): correct a lot of specs * chore(gw): add a draft for metrics * chore(gw): add metrics process * fix(gw): fix cm process monitor * test(gw): add test cases for gateway-regitry * feat(gw): add metrics/cli for gateway * fix(gw): fix xref errors * chore(gw): pretty gateway metrics print format * chore(gw-stomp): generate clientid by default * chore(gw): more reliable * chore(gw): rename gwid -> type * chore(gw): impl the update logic * chore(gw): some format improvement * chore(gw): adapts the hocon configs * fix(gw): fix xref errors * test(gw): update configurations for tests * chore(gw): ignore diaylzer warnings * fix(gw): fix bad function call * chore(gw): remove needless comments |
||
---|---|---|
.. | ||
docs | ||
etc | ||
include | ||
priv | ||
src | ||
test | ||
.gitignore | ||
README.md | ||
rebar.config |
README.md
emqx_exhook
The emqx_exhook
extremly enhance the extensibility for EMQ X. It allow using an others programming language to mount the hooks intead of erlang.
Feature
- Based on gRPC, it brings a very wide range of applicability
- Allows you to use the return value to extend emqx behavior.
Architecture
EMQ X Third-party Runtime
+========================+ +========+==========+
| ExHook | | | |
| +----------------+ | gRPC | gRPC | User's |
| | gPRC Client | ------------------> | Server | Codes |
| +----------------+ | (HTTP/2) | | |
| | | | |
+========================+ +========+==========+
Usage
gRPC service
See: priv/protos/exhook.proto
CLI
Example
Recommended gRPC Framework
See: https://github.com/grpc-ecosystem/awesome-grpc