Added support for dynamic ringback

For perfomance, it also allows passing an opaque binary from this module
to preflow "opaque" attribute.
This is a very broad try...catch, is this intended to protect against something specific such as if Module is invalid?  In the project we generally "code for the happy case".  If you can provide what is being protected against, we can discuss some alternatives.