What might cause a "composition-hook-failed" status for the Recording Composition API?

We have been recording and composing streams for several months now and this feature has been working without fail. We have set up and deployed our Composition hooks. When users create and end video streams, Twilio automatically creates a composition and sends status updates to our hooks. We've used this to create hundreds of streams and compositions so far.

This worked as expected until recently, when we received an unexpected error status. For a single stream/composition, we received a "composition-hook-failed" status to our hook:

{

"AccountSid": "...",

"ErrorMessage": "The specified list of sources returned no recordings for the given room.",

"FailedOperation": "CompositionEnqueue",

"HookFriendlyName": "primary",

"HookSid": "...",

"HookUri": "/v1/CompositionHooks/...",

"RoomSid": "...",

"StatusCallbackEvent": "composition-hook-failed",

"Timestamp": "..."

}

A few after the stream, we noticed this error in our logs and found that the composition process had not been restarted by Twilio. When we triggered this composition manually, everything worked as expected, the hooks were called, the composition was created, and is now the recorded video is viewable. While it's great that this is resolved for this composition, in order to automate this resolution process, I need to understand why it failed in the first place.


So my questions are, what might cause the composition process to failed with a  "composition-hook-failed" status? Why might the error "The specified list of sources returned no recordings for the given room." occur when the hook was initially hook sent, but not occur a few days later when the process was restarted manually?

If this is an emergency, please contact Twilio Support. This is not an official Support channel. https://support.twilio.com/
Have an urgent question?
Please contact Twilio Support. This is not an official Support channel.
Contact Support