# Zmq Source stream source scan table source The source will subscribe to a Zero Mq topic to import the messages into eKuiper ## Compile & deploy plugin ```shell # cd $eKuiper_src # go build -trimpath -modfile extensions.mod --buildmode=plugin -o plugins/sources/Zmq.so extensions/sources/zmq/zmq.go # cp plugins/sources/Zmq.so $eKuiper_install/plugins/sources ``` Restart the eKuiper server to activate the plugin. ## Configuration The configuration for this source is `$ekuiper/etc/sources/zmq.yaml`. The format is as below: ```yaml #Global Zmq configurations default: server: tcp://192.168.2.2:5563 test: server: tcp://127.0.0.1:5563 ``` ### Global configurations Use can specify the global zmq source settings here. The configuration items specified in `default` section will be taken as default settings for the source when connects to Zero Mq. ### server The url of the Zero Mq server that the source will subscribe to. ## Override the default settings If you have a specific connection that need to overwrite the default settings, you can create a customized section. In the previous sample, we create a specific setting named with `test`. Then you can specify the configuration with option `CONF_KEY` when creating the stream definition (see [stream specs](../../../sqls/streams.md) for more info). ## Sample usage ``` demo ( ... ) WITH (DATASOURCE="demo", FORMAT="JSON", CONF_KEY="test", TYPE="zmq"); ``` The configuration keys "test" will be used. The Zero Mq topic to subscribe is "demo" as specified in the `DATASOURCE`.