HTTP request from prosody to external service

Hello, and thank you for your work.

I am working on a prosody plugin to send some data via HTTP to an external backend.
After some research, I’ve found this http client : https://prosody.im/doc/developers/net/http and made my plugin. But, I have a problem, and I don’t know if the problem comes from jitsi, prosody or docker. Here is an example of module that show’s up the problem :

local http = require "net.http";
module:log("info", "MOD REQUEST ENABLED.");

http.request( "https://pokeapi.co/api/v2/pokemon/ditto", { method = "GET" }, function(res, test1, test2)
  module:log("info", "TEST OK");
  module:log("info", tostring(res));
  module:log("info", tostring(test1));
  module:log("info", tostring(test2));
end)

Then I enable the module in prosody configuration and I run : docker-compose down -v && docker-compose up -d && docker-compose logs -f prosody

And this is my logs from prosody :

prosody_1  | meet.jitsi:my_plugin          info  TEST OK
prosody_1  | meet.jitsi:my_plugin          info  sslv3 alert handshake failure
prosody_1  | meet.jitsi:my_plugin          info  0
prosody_1  | meet.jitsi:my_plugin          info  table: 0x55ad1731f2f0

Note :

  • I tried to make a curl https://pokeapi.co/api/v2/pokemon/ditto from the container, and it worked…
  • sometimes I have this log Cannot assign requested address instead of sslv3 alert handshake failure

So my question is : Do you understand my problem and can you help me to solve it ?

Thanks for your help

EDIT : I install jitsi locally, on a Mac OS with docker : https://jitsi.github.io/handbook/docs/devops-guide/devops-guide-docker

I was able to call this url https://gorest.co.in/public-api/users but not this one https://pokeapi.co/api/v2/pokemon/ditto however, both https certificate seems valid to my browser…

What am I not understanding ?