Programming the ESP8266 to use REST protocol directly is a more practical solution in most case as not everyone have a MQTT broker to work with.
The problem is most notification service now uses SSL for security reason, and the ESP8266 stack can’t seem to work with HTTPS servers.
Did some test with google.com, on port 80 and a non secure connection, my code works fine. The ESP connected and return a page. On a secure connection, on port 443 it fails on handshake.
I think the current SSL stack in the ESP8266 sdk cannot handle strong encryption, or the certificates might be too big or heavy for it to handle.
It is beyond my skills to get SSL working, I guess I will have to work on another solution.