adhearsion/punchblock — pull request #178 by benlangfeld (2013-09-25 12:48:46+00:00)
Title: Output native->UniMRCP fallback in cases where native audio playback fails

WIP

Right now the situation is the following:

Given the following document:

```xml

Hello world

```

and a renderer of `:native_or_unimrcp`, in the case that Playback(foo.wav) sets `PLAYBACKSTATUS` to error, Punchblock will attempt to send the full document to UniMRCP for rendering. If that also fails, the output component will fail.

This should be used with caution, since with the following doc:

```xml

```

given failure of bar.wav playing, will attempt to play all three files again via UniMRCP.

* [ ] Support for multiple documents. This will avoid the above problem by scoping fallback per-document, thus returning to native rendering for the second and subsequent documents if the first falls back.
* [ ] Fallback in cases of `UnrenderableDocError`
* [ ] Fallback in cases of `RubyAMI::Error`?