I had used the solution found in this thread to successfully import new YouTube transcripts in Koa, by setting transcript language English only (instead of en-US which isn’t supported by Tutor), and then clearing the video ID, and then re-clicking “import transcript”. However, I just recently tried this on my updated Lilac Tutor instance, and not only does it not re-import existing video transcripts, it will no longer import new video transcripts. Basically it’s back to the original behavior of just straight up acting like there’s no transcript available on YouTube, and that I need to manually upload ever transcript, which is untenable.
I can see “accept_language”: “en-US,en;q=0.9” in the below, and I created both en-US and en transcripts, but basically I still never seem to see a reply to the GET that is generated, so I suspect either Lilac broke, or YouTube changed what they expect to request transcripts… (I also note the first line says stuff about POST, but I only ever see GETs in the logs)
cms_1 | 2021-12-06 13:41:27,148 INFO 113 [tracking] [user 3] [ip 1.2.3.4] logger.py:41 - {"name": "/transcripts/check", "context": {"user_id": 3, "path": "/transcripts/check", "course_id": "", "org_id": ""}, "username": "Admin", "session": "c38e174349024be4867316907f9f21fc", "ip": "1.2.3.4", "agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.54 Safari/537.36", "host": "not.my.domain.com", "referer": "https://not.my.domain.com/container/block-v1:MyOrg+MyClass+V1+type@vertical+block@76e38676405a4c24aa7e86f3110cef4e", "accept_language": "en-US,en;q=0.9", "event": "{\"GET\": {\"data\": [\"{\\\"locator\\\":\\\"block-v1:MyOrg+MyClass+V1+type@video+block@daa97e36dd134d758f1bece36459c9ce\\\",\\\"videos\\\":[{\\\"mode\\\":\\\"youtube\\\",\\\"video\\\":\\\"THISISTHEVIDEOID\\\",\\\"type\\\":\\\"youtube\\\"},{\\\"mode\\\":\\\"edx_video_id\\\",\\\"type\\\":\\\"edx_video_id\\\",\\\"video\\\":\\\"\\\"}]}\"]}, \"POST\": {}}", "time": "2021-12-06T13:41:27.147717+00:00", "event_type": "/transcripts/check", "event_source": "server", "page": null}
cms_1 | [pid: 113|app: 0|req: 1860/5267] 172.18.0.13 () {58 vars in 3188 bytes} [Mon Dec 6 13:41:27 2021] GET /transcripts/check?data=%7B%22locator%22%3A%22block-v1%MyOrg%2BMyClass%2BV1%2Btype%40video%2Bblock%40daa97e36dd134d758f1bece36459c9ce%22%2C%22videos%22%3A%5B%7B%22mode%22%3A%22youtube%22%2C%22video%22%3A%22THISISTHEVIDEOID%22%2C%22type%22%3A%22youtube%22%7D%2C%7B%22mode%22%3A%22edx_video_id%22%2C%22type%22%3A%22edx_video_id%22%2C%22video%22%3A%22%22%7D%5D%7D => generated 229 bytes in 108 msecs (HTTP/1.0 200) 6 headers in 299 bytes (1 switches on core 0)
nginx_1 | 172.18.0.4 - - [06/Dec/2021:13:41:05 +0000] http://not.my.domain.com "GET /transcripts/check?data=%7B%22locator%22%3A%22block-v1%MyOrg%2BMyClass%2BV1%2Btype%40video%2Bblock%40daa97e36dd134d758f1bece36459c9ce%22%2C%22videos%22%3A%5B%7B%22mode%22%3A%22youtube%22%2C%22video%22%3A%22THISISTHEVIDEOID%22%2C%22type%22%3A%22youtube%22%7D%2C%7B%22mode%22%3A%22edx_video_id%22%2C%22type%22%3A%22edx_video_id%22%2C%22video%22%3A%22%22%7D%5D%7D HTTP/1.1" 200 229 "https://not.my.domain.com/container/block-v1:MyOrg+MyClass+V1+type@vertical+block@76e38676405a4c24aa7e86f3110cef4e" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.54 Safari/537.36" "1.2.3.4"
nginx_1 | 172.18.0.4 - - [06/Dec/2021:13:41:27 +0000] http://not.my.domain.com "GET /transcripts/check?data=%7B%22locator%22%3A%22block-v1%MyOrg%2BMyClass%2BV1%2Btype%40video%2Bblock%40daa97e36dd134d758f1bece36459c9ce%22%2C%22videos%22%3A%5B%7B%22mode%22%3A%22youtube%22%2C%22video%22%3A%22THISISTHEVIDEOID%22%2C%22type%22%3A%22youtube%22%7D%2C%7B%22mode%22%3A%22edx_video_id%22%2C%22type%22%3A%22edx_video_id%22%2C%22video%22%3A%22%22%7D%5D%7D HTTP/1.1" 200 229 "https://not.my.domain.com/container/block-v1:MyOrg+MyClass+V1+type@vertical+block@76e38676405a4c24aa7e86f3110cef4e" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.54 Safari/537.36" "1.2.3.4"