Вызов функции Python из кода Erlang

Я работаю над брокером MQTT ( http://www.emqtt.io/), который написан на Erlang. У меня есть случай, когда мне нужно вызвать один из моих модулей Python из кода брокера emqtt, написанного на erlang.

Я уже зарегистрировался в Google по поводу erlport ( http://erlport.org/), который используется для связи между портами erlang и python. Он хорошо работает в оболочке erlang, но когда я использую то же самое в коде erqg emqtt, он не работает. Выдает ошибку показанную ниже

17:22:40.073 <0.717.0> [error] gen_server <0.717.0> terminated with reason: call to undefined function python:start()
17:22:40.073 <0.717.0> [error] CRASH REPORT Process <0.717.0> with 1 neighbours exited with reason: call to undefined function python:start() in gen_server2:terminate/3 line 1151
17:22:40.073 <0.631.0> [error] Supervisor emqttd_session_sup had child session started with {emqttd_session,start_link,undefined} at <0.717.0> exit with reason call to undefined function python:start() in context child_terminated
17:22:40.073 <0.677.0> [error] Supervisor 'esockd_connection_sup - <0.677.0>' had child connection started with emqttd_client:start_link([{packet,[{max_clientid_len,512},{max_packet_size,65536}]},{client,[{idle_timeout,30}]},{session,...},...]) at <0.716.0> exit with reason call to undefined function python:start() in context connection_crashed

Мы вызываем модуль Python из кода подключаемых модулей emqtt, изменение кода показано ниже.

on_message_acked(ClientId, Message, _Env) ->
   io:format("client ~s acked: ~s~n", [ClientId, emqttd_message:format(Message)]),
   io:format("client ~s",[python:start()]),
   {ok, Message}.

Пожалуйста, помоги нам.

0 ответов

Другие вопросы по тегам