The youtube status page says everything is good, and it has been happily ingesting my uploaded data, but the video doesn't update.
So my questions are:
- Given that things are currently broken, how do I un-break it?
- How do I determine that it is in this broken state? Given that the dashboard is telling me that everything is fine.
- If the answer to #1 is, "You have to reset things by generating a new stream key" (which is a terrible answer) then:
- How do I generate a new stream key through the API instead of interactively?
- How do I make that new stream key stream to the old video ID?
- Or if I can't do that, how do I determine what the new video ID is?
Here's what I know:
- Z_OQ9X3V-Ko says it is live, but the video never updates.
- That's the video that has been working as a way to watch the webcast since Oct 21. It stopped working some time yesterday.
- This has happened before. Sometimes it magically starts working again. Sometimes the only way to fix it is to generate a new "stream name/key" and change the URL.
- FMLE is streaming to rtmp://a.rtmp.youtube.com/live2 and has been pushing bits for 11+ hours.
- live_dashboard shows "Live, Stream health green".
- The "stream name/key" listed there is the same as what FMLE is using.
- The video embedded on the dashboard is Z_OQ9X3V-Ko, as it should be.
- Using the API,
"/youtube/v3/videos?id=Z_OQ9X3V-Ko &part=id, snippet, contentDetails, liveStreamingDetails, status"
says:"publishedAt": "2015-10-23T04:00:29.000Z",
"liveBroadcastContent": "live",and no liveStreamingDetails are returned.
- "/youtube/v3/liveStreams
?part=id, snippet, contentDetails, status &mine=true"
returns one item:"id": "BKC3Bi_ckdOm3HxPRB98LQ1417763778482615",
"publishedAt": "2014-12-05T07:16:18.000Z",
"streamStatus": "inactive",
"isDefaultStream": false - "/youtube/v3/liveBroadcasts
?part=id, snippet, contentDetails, status &mine=true &maxResults=50
returns 10 entries, none of which are "Z_OQ9X3V-Ko":"id": "jbCKnscEbmE",
"actualStartTime": "2015-11-26T08:33:48.628Z",
"actualEndTime": "2015-11-26T20:25:21.000Z",
"lifeCycleStatus": "complete","id": "i8QWCaRAP7E",
"actualStartTime": "2015-11-18T11:04:34.542Z",
"actualEndTime": "2015-11-18T22:56:51.000Z",
"lifeCycleStatus": "complete","id": "UjeRjaQ0-KU",
"actualStartTime": "2015-11-11T13:24:08.278Z",
"actualEndTime": "2015-11-12T01:15:37.000Z",
"lifeCycleStatus": "complete","id": "RKPuRpAcSfs",
"actualStartTime": "2015-11-10T23:53:45.665Z",
"actualEndTime": "2015-11-11T11:48:31.000Z",
"lifeCycleStatus": "complete","id": "Gg7DV3XeY08",
"actualStartTime": "2015-10-30T23:44:08.467Z",
"actualEndTime": "2015-10-31T11:35:45.000Z",
"lifeCycleStatus": "complete","id": "Jgq1-qKryx4",
"actualStartTime": "2015-10-29T15:00:10.001Z",
"actualEndTime": "2015-10-30T04:54:12.000Z",
"lifeCycleStatus": "complete","id": "kUbm7mRzucw",
"actualStartTime": "2015-10-23T16:18:52.824Z",
"actualEndTime": "2015-10-24T04:10:39.000Z",
"lifeCycleStatus": "complete","id": "lgVXFThZP5Y",
"actualStartTime": "2015-10-23T04:05:56.033Z",
"actualEndTime": "2015-10-23T15:57:59.000Z",
"lifeCycleStatus": "complete","id": "gTIK2XawLDA",
"actualStartTime": "2015-01-07T20:15:54.541Z",
"actualEndTime": "2015-10-21T21:02:16.000Z",
"lifeCycleStatus": "complete","id": "8RyXumjr-rA",
"actualStartTime": "2014-12-06T00:40:25.882Z",
"actualEndTime": "2015-01-07T20:03:35.000Z",
"lifeCycleStatus": "complete",If you go to the dnalounge/videos page, all of those videos are listed there, with the title "DNA Lounge Live Stream". I don't even know where those came from, or how there got to be ten of them. Except for the last two, they all have durations of less than 12 hours, and are not consecutive, so... WTF are they?
- But!
"/youtube/v3/liveBroadcasts?part=id, snippet, contentDetails, status &id=Z_OQ9X3V-Ko"
returns:"id": "Z_OQ9X3V-Ko",
"publishedAt": "2015-10-23T04:00:29.000Z",
"isDefaultBroadcast": true
"lifeCycleStatus": "live",
"recordingStatus": "notRecording"
"boundStreamId": "BKC3Bi_ckdOm3HxPRB98LQ1445572830053739",So it seems to know that the thing exists, and seems to think it's current. So why doesn't it appear in the liveBroadcasts list?
You'd think there would be a way to take "BKC3Bi_ckdOm3HxPRB98LQ1417763778482615" (the thing returned by /liveStreams) and turn that into the video ID to which it is feeding bits, but I don't see a way.
Update: Today at around 9:42pm, the stream magically began working again, through no action of my own. Now that it is in the working state, all of the above URLs are returning exactly the same thing as when it was stuck. Hooray.
Update 2: And at 1am it went down again, and has been since. Hooray.