This a generic network question, that applies to any device inside a private LAN with desired public external access.
You have a few options, depending if this is for private or commercial grade use.
- Manually do 'port forwarding' on your router, sometimes referred as 'Nat/gaming', 'pin hole' and others: you need a fix LAN ip for your device; this config is highly router/vendor dependent.
- upnp (Linux)
- Portmapper (Linux)
- Third party cloud service, with a published ip address (very off topic): your device 'publish' on a known location and your clients access a known place.
On either case, you will need to find (and track) your router's public ip address, often randomly changed by your vendor.
Notification when someone connect the device to the internet is a complete different story....