- use ssl websockets
- don't assume parameter is a string
- error handling