Продать доступ к видео

Загрузить уроки к себе, закрыть их подпиской и понимать, чего такая защита не умеет.

Блок Видео берёт запись из двух мест: своё видео, загруженное к нам, или ссылку на VK Видео, Rutube, Дзен, YouTube. Для платного курса годится только первое. Ссылку на файл скачивает кто угодно одной кнопкой, а видеохостинг показывает запись каждому, кому она досталась, — оплата к этому отношения не имеет. И главное: сама ссылка не спрятана. Приложение отдаёт браузеру свои данные целиком, поэтому адрес записи виден любому, кто открыл приложение, даже если экран с уроком закрыт условием. Условие прячет блок на экране, а не адрес внутри данных.

Источник записи — во вкладке «Контент» у блока «Видео»: «Загрузить видео» или «По ссылке».
Источник записи — во вкладке «Контент» у блока «Видео»: «Загрузить видео» или «По ссылке».

Загрузка идёт частями, поэтому обрыв связи её не убивает: вернитесь в редактор, и она продолжится с того места, где остановилась. После загрузки видео обрабатывается — от секунд до пары минут, — и на карточке это написано словами. Пока идёт обработка, показывать нечего, и приложение честно скажет «видео обрабатывается» вместо чёрного кадра.

На той же карточке — «Кому показывать». Три варианта: всем, кто открыл приложение; пока не прошла дата в столбце; если в столбце что-нибудь записано. Второй и третий смотрят в таблицу людей — ту, у которой стоит отметка «одна строка на посетителя», — и отвечают на вопрос «что записано про ЭТОГО человека». Обычная таблица на такой вопрос не отвечает, поэтому и не предлагается.

Видео живёт не только в свойстве блока: у столбца таблицы есть тип «Видео» с той же карточкой. Так собирают курс, у которого двадцать уроков: строки таблицы — уроки, экран у них один, а проигрыватель на нём стоит подстановкой {{item.video}}. Двадцать экранов ради двадцати записей заводить не нужно.

Подписка собирается из этого так: столбец «Доступ до» в таблице людей, а оплата двигает дату вперёд. Отзывать доступ не нужно — он заканчивается сам, когда дата пройдёт.

  1. На кнопке оплаты выберите действие «Принять оплату» и укажите сумму.
  2. Там же нажмите «Продлевать доступ после оплаты»: таблица «одна строка на посетителя», столбец с датой и число дней.
  3. Столбец возьмите тот же, что стоит в правиле доступа у самого видео, — иначе оплата будет двигать дату, которую никто не проверяет.

Дальше всё происходит само. Дата считается от большего из двух — от сегодняшнего дня или от той, что уже стоит: купивший второй месяц заранее не теряет остаток первого. За три дня до конца ваш бот сам напоминает покупателю, что пора продлить, — то же письмо, что подтверждает оплату, тем же ботом. А в окне «Платежи» внизу видно, у кого доступ кончается в ближайший месяц.