emqx/apps/emqx_exhook
Zaiming (Stone) Shi f24728ee7b chore: sync diverged modules modules from ee back to ce 2022-10-05 14:59:18 -03:00
..
docs chore: sync diverged modules modules from ee back to ce 2022-10-05 14:59:18 -03:00
etc feat(exhook): expose tcp some options for grpc client 2022-06-24 17:50:05 +08:00
include chore: update copyright 2022-04-14 11:23:25 +08:00
priv feat(exhook): expose tcp some options for grpc client 2022-06-24 17:50:05 +08:00
src chore: update appups 2022-09-12 10:56:35 -03:00
test test(exhook): more case for topic filter wildcards/level and different qos 2022-08-26 11:13:44 +08:00
.gitignore feat(exhook): add field `meta` for grpc proto 2022-04-07 17:26:59 +08:00
README.md docs(README): EMQ X -> EMQX 2022-02-15 16:15:25 +01:00
rebar.config fix: update grpc deps & deps in root rebar.config 2022-06-16 10:49:53 +08:00

README.md

emqx_exhook

The emqx_exhook extremly enhance the extensibility for EMQX. 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

EMQX                                      Third-party Runtime
+========================+                 +========+==========+
|    ExHook              |                 |        |          |
|   +----------------+   |      gRPC       | gRPC   |  User's  |
|   |   gPRC Client  | ------------------> | Server |  Codes   |
|   +----------------+   |    (HTTP/2)     |        |          |
|                        |                 |        |          |
+========================+                 +========+==========+

Usage

gRPC service

See: priv/protos/exhook.proto

CLI

Example

See: https://github.com/grpc-ecosystem/awesome-grpc

Thanks