Антон One Way | Разработка для онлайн-школ | GetCourse PRO
560 subscribers
223 photos
29 videos
101 links
Оформление и разработка нового функционала школ на GetCourse

По вопросам пишите 👉 @onthewaytothesun
Download Telegram
🥕 Carrot quest + GetCourse

Возможно ли подружить сторонний сервис с Геткурсом своими руками?
Ответ - да, и даже нужно!

Совсем недавно ребята из Result School обратились к нам с просьбой соединить два сервиса, чтобы клиенты из Carrot quest попадали в срмку GetCourse. Путем проб и ошибок выяснили, что стандартной передачи данных из одной платформы в другую недостаточно (она просто не работает). Было решено прибегнуть к использованию супер-силы, а именно запрограммировать сервер-прослойку, который получает данные из одного места и сразу же отсылает в другое в корректном формате. Устроив с напарником небольшое дружеское соревнование, за пару часов собрали рабочий прототип, который теперь дописываем под нужды клиента.

Если вы хотите соединить какой-либо сервис с Геткурсом, то смело можете обращаться в @inkystudio и мы поможем вам с этой непростой задачей!
🔥32
Media is too big
VIEW IN TELEGRAM
Отзыв от нашего коллеги - Дмитрия Спейса, с которым в лице студии также с недавних пор ведём тесное сотрудничество 😎

#отзыв
Please open Telegram to view this post
VIEW IN TELEGRAM
2🔥2
Сегодня бóльшая часть команды Inky Studio прибыла в солнечный Таиланд ✈️

Настрой у команды боевой: с собой есть все необходимое для продуктивной работы.

Один из проектов, где требовалось сделать оформление личного кабинета в кратчайшие сроки, фронтенд-разработчики делали вдвоём по частям будучи на чемоданах в одном из промежуточных пунктов отправления (отзыв на прикрепленном скриншоте от методолога Дианы). Также в этом проекте были впервые реализованы выпадающие списки с полным описанием урока при клике на кнопку открытия описания (по умолчанию если в уроке больше трёх строк текста, описание сокращается). В общем, всё, чтобы повторное обращение клиента было только для заказа на следующие разработки, а не на правки по причине того, что если в какой-то урок добавили большое описание, он стал выглядеть некрасиво.

Уже в скором времени Inky Studio подарит миру разработок по GetCourse целую кипу интересных решений, не переставайте следить за новыми постами в нашем канале 🤙

#отзыв
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9
Что представляет собой результат разработки для GetCourse?

Стандартный геткурс состоит из написанных разработчиками платформы команд и инструкций. Для меню заданы свои иконки, поэтому они отображаются при загрузке страницы, для тренингов выводится число уроков внутри, название, описание и имя преподавателя, потому что вывод этих данных указан в коде платформы.

Одним из преимуществ площадки GetCourse является открытая для разработчиков возможность вносить изменения в команды и инструкции платформы. Например, разработчик после стандартного описания внешнего вида кнопки «отправить ответ на урок» дописывает, что цвет должен быть такой-то, шрифт такой-то и размер такой-то, и при отрисовке внешнего вида страницы она выглядит уже как задумано по дизайну и реализовано разработчиком.

Таким образом, после выполнения работы вы получаете не какой-то набор загруженных картинок для одного запуска курса, а обновлённый аккаунт GetCourse, который имеет уже свои стандарты внешнего вида и свой новый функционал. Добавляете новый тренинг? У него уже по умолчанию будет новый внешний вид. Вам поставили счётчик выполненных уроков? При копировании тренинга в копии он будет считать уже исходя из нового числа уроков, никаких дополнительных действий не потребуется.
👍2👏21
ДРУЖБА СЕРВИСОВ 📞

Одним из периодических типов задач Inky Studio является интеграция каких-либо сервисов и GetCourse.

Каждый современный сервис имеет API.

Что такое API? Представьте, что на стройке работают немец и француз. Немец кладет раствор, а француз кирпичи. Положив раствор, немец говорит "клади кирпич" на немецком. Француз же ждет фразы "можешь класть кирпич" на французском.

Их фразы — это API, и пока что они не умеют между собой коммуницировать. Будь оба строителя немцами или оба французами, они смогли бы работать слаженно без посторонней помощи, однако в рассматриваемом случае им нужен переводчик с API немца на API француза.

На скриншоте — как раз такой переводчик с API сервиса Carrotquest на GetCourse. При создании пользователя через виджет Carrotquest говорит на своем морковном "пользователь создан", но по-умолчанию геткурс его не понимает. Для этого можно создать отдельную страничку на внешнем сервере, который поймет морковный язык, "переведет" и отправит его в GetCourse. GetCourse "поймет" сообщение и создаст пользователя у себя в базе 👨‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥21🕊1
🤩 5 идей разработок для вашей школы

1. Поиск по названиям тренингов и уроков

Можно добавить в любой раздел школы (или во все сразу), поможет ученикам не запутаться, если подтренингов много.

2. Нестандартные письма с акцентом на важной информации

Рассылаете письма, в которых есть ссылка на чат, ссылка на тренинги, ссылка в Симбирь? Выделите ссылку, сделав ее кнопкой, выделите даты начала вебинара и оформите контакты обратной связи для. Сделав шаблон письма единожды делайте красивые и функциональные рассылки месяцы и годы.

3. Сделайте функциональными и информативными страницы входа и оплаты

«Оплатить Продамусом» не говорит пользователю ни о чем, а вот сокрытие лишних платежных систем по местоположению, инфографика или подписи на платежных системах, соответствующие их назначению, избавят ваш отдел техподдержки от лишних вопросов, а те, кто покинул бы страницу оплаты из-за непонимания, оплатили бы ваш курс.

4. У вас крупная школа? Поставьте систему оценки работы менеджеров, которая даст ученикам возможность оценить работу сотрудника техподдержки и периодически проверяйте статистику

Так вы сможете контролировать работу отдела техподдержки и не тратить своё время на ручные выборочные проверки с недостаточной репрезентативностью.

5. В вашей школе регулярно выходит новый контент в течение запуска? Реализуйте отображение расписания будущих занятий с помощью интерактивного календаря, расписания (стандартное расписание GetCourse показывает только уроки и только за последнюю неделю)
Please open Telegram to view this post
VIEW IN TELEGRAM
🍓4🔥211
Одна из самых популярных задач для разработчиков по GetCourse — различного рода счетчики прогресса. Будь они круговые, заполняемые полоской или вообще какое-нибудь изображение типа ростка, превращающегося в цветок по мере прохождения, механика у них всегда похожая — считается число прохождения чего-либо и общее число этого чего-либо, на основании чего уже отрисовывается инфографика.

Однако вот какой момент — GetCourse «отчитывается», сколько заданий сдал ученик (и число заданий равняется числу уроков, если в каждом уроке есть задание), GetCourse «отчитывается» о прохождении тренингов. Но хоть GetCourse и «знает», какой из уроков был просмотрен, но информацию эту он нигде не показывает. Как следствие, если у вас цель показать или посчитать просмотренные уроки, нужно какое-то дополнительное решение.

Это решение есть у Inky Studio и оно довольно автоматизированное. Просто установив решение на аккаунт школы у учеников начнут появляться на уроках статусы «просмотрен» на первых ~300 просмотренных им уроков. Если в вашей школе уроков больше, то можно расширить это значение (расширять можно до бесконечности, просто это неавтоматический процесс).

Этот статус можно либо визуализировать как угодно (надписью иконка), либо передать другим вашим разработчикам для отрисовки прогрессбаров и т.д. Просмотренный урок также получает статус «просмотрен» в коде страницы.
🔥4
Уникальная разработка Inky Studio — возможность отмечать понравившиеся уроки

Каждый ученик будет видеть суммарное количество отметок от других учеников на уроке и сможет сортировать уроки по популярности.
🔥42
Наступило 24 октября, а значит пришло время осветить важное событие для нашей студии.
Вы наверняка подумаете, что мы имеем в виду День любви к тёплым носкам, но нет, это кое-что покруче!

Сегодня день рождения одного из основателей студии, крутого разработчика и не понаслышке отличного парня - Антона Федорова 😎.

За очень короткий срок он вырос в прекрасного специалиста, который способен решать нестандартные и сложные задачи, а также волшебным образом располагать к себе людей (если вы когда-нибудь взаимодействовали с ним напрямую, то точно не остались равнодушными).

От всей команды Inky Studio ❤️ искренне желаем ему больших успехов в карьере, поменьше багов в коде и всегда оставаться таким же позитивным человеком! 🚀🎉
🎉6🍾2
ПОЧЕМУ СТОИТ ЗАКАЗАТЬ ОФОРМЛЕНИЕ ЛИЧНОГО КАБИНЕТА GETCOURSE ИМЕННО У INKY STUDIO 🤔

1) Опыт в сфере оформлений — каждый из разработчиков приложил руку к разработке около сотни личных кабинетов, на большинство задач уже заготовлены проверенные временем компоненты и наработки
2) Комплексный подход даже к мелким задачам по оформлению — даже если у нас были заказано оформление пары разделов, мы ставим классификатор страниц, оптимизируем прорисовку кастомизированных элементов при загрузке страницы, пишем код согласно актуальным веб-стандартам, чтобы в случае, если на другие работы будет нанятая другая организация, код был читаем и реиспользуем
3) Бесплатно проконсультируем по любым аспектам разработки, поможем определиться с ТЗ. Если у вас есть свой дизайнер, выдадим материалы для ускорения и упрощения отрисовки дизайн-макета
4) Помимо изменения визуала платформы дорабатывает админку таким образом, чтобы новым функционалом и визуалом можно было управлять без знаний кода. Также предоставляем видеоинструкцию по обновленной админке
5) Наши специалисты никогда не пропадут с радаров и всегда ответят вежливо и оперативно

Контакты для связи: @onthewaytothesun
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4
ПРЕОБРАЗИМ ВАШУ ШКОЛУ КАЧЕСТВЕННО И БЫСТРО 😍

Устали от серого вида стандартного GetCourse?

Закажите оформление личного кабинета у Inky Studio!

Наши оформления:
Создаются максимально быстро за счет наработок и профессионализма разработчиков
Разрабатываются индивидуально под заказчика без использования агентских шаблонов по структуре. Хотите боковое меню сверху — пожалуйста, хотите структуру меню как в каком-нибудь сервисе, но в вашем фирменном стиле — без проблем
Разрабатываются по принципу "no-code для техспецов" — весь новый функционал вносится в стандартную админку для того, чтобы школы не нуждалась в дальнейшем вмешательстве разработчиков

Мы настолько любим свое дело, что с радостью проведем для вас бесплатную консультацию по разработке на GetCourse, где с упоением расскажем о том, что можно сделать, как лучше сделать и что для этого понадобится.

Напишите в личные сообщения @onthewaytothesun и сделайте первый шаг в оформлении своего личного кабинета.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4👍3🏆1
7-и дневный автомарафон на базе SaleBot + Bizon365 для Одноклассников, Телеграма и ВК от @inkystudio

Что входит в марафон:
• Три упражнения с выдачей бонуса за ответ на задание
• Три дня вебинаров на Bizon365, отправлялись сообщения с прогревом и ссылками на вход
• Тест с выявлением потребности клиента и отправкой продающих материалов с помощью по этому вопросу
• Возможность прийти на повтор пропущенного дня или пройти марафон заново

Реализовано за 2 дня
🔥42😍2
ЭТО МОЯ ЛУЧШАЯ РАБОТА — так мы можем сказать про каждое наше новое оформление ЛК 😎

Прямо сейчас идет работа над оформлением личного кабинета Данила Матухно. Помимо того, что работа ведется качественно и в кратчайшие сроки (7 дней на всё оформление), в школе применены следующие фишечки, которых доселе нигде ни у кого не наблюдалось:
1) В стандартном GC нельзя ставить картинки на модули. Однако благодаря JS реализована не просто загрузка картинок на модули в один клик, но также скрипт вычисляет соотношение сторон картинки. Если она горизонтально вытянутая (ширина больше высоты более чем в 2 раза), то модуль занимает 100% колонки. Если картинка не вытянута, то занимает половину колонки.
2) Автоматизированный календарь, интегрированный с гугл-формами через гугловское веб-приложение. Заказчику отдается готовая гугл-таблица, в которую он вносит дату события, название, ссылку и ставит маркер при необходимости. Данные из таблицы в самом геткурсе формируются в "ближайшие события", а также вставляются в календарь. Ближайшие события могут показываться столько дней, сколько можно выставить в скрипте, таким образом, устаревшие события скрываются автоматически. При установке маркера событие может перекрашиваться, например ему ставится замочек или любой другой декоративный элемент.

Помимо этого, это уже второй проект, где админские кнопки выносятся в специальную кнопку, чтобы не мозолить глаз и внешний вид у администраторов был не хуже, чем у учеников.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10👍21
Полезности пост — как научить геткурс считать доли стоимости продуктов 🥸

Одним из действенных способов по увеличению продаж является доверительная рассрочка — возможность оформить рассрочку не от банка, а напрямую от школы. Если ЦА школы имеет не лучшую кредитную историю, доверительная рассрочка может ощутимо поднять продажи.

Однако для технического специалиста такая рассрочка — та еще мука. Необходимо сделать по письму на каждый платеж со ссылкой на конкретную сумму, а что, если курсов много? Что, если цена меняется из-за акций, промокодов и т.д.?

Для решения такой проблемы нужно всего лишь сделать страничку, которая научит геткурс считать.

В нашем частном случае рассрочка открывается при оплате частичной оплаты в размере 3т.р., поэтому страничка вычитает из суммы заказа 3 тысячи, а затем делит на 3.

https://onthewaytothesun.ru/projects/web/gc_test/GCpartial.php?cost=13333&parts=3

🟡Подставьте вместо 13333 своё значение и вместо 3 любую цифру, и вам выдастся результат деления.

🟡Теперь нужно сделать только допполе заказа "PartialCount" и "PartialCost".

🟡Создать процесс, который при покупке любого курса с доверительной рассрочкой изменит значение поля PartialCount на ту цифру, на какое число платежей вы хотите разбить курс.

🟡После этого останется только добавить в процессе блок вызова url с содержимым https://onthewaytothesun.ru/projects/web/gc_test/GCpartial.php?cost={object.cost_money_value}&parts={object.PartialCount} и в графе "записать результат в допполе" указать "PartialCost", и после этого вызова формировать письма, в которых сумма оплаты будет значиться как {payment_link}?paymentValue={PartialCost}, а в последнем просто {payment_link}

Теперь при совершении частичной оплаты в размере 3т.р. процесс берет сумму заказа, которая была на момент внесения оплаты, шлет на страничку, страничка вычисляет PartialCost, то есть сумму платежа, записывает в допполе заказа. Письма автоматически подставят индивидуальную цифру в переменную, а последнее письмо будет содержать остаток (т.е. если сумма 902 поделилась на 3 платежа как 300, то последний будет 302).

Цены можно менять сколько угодно, автоматика сама все подсчитает!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥42👏2
Знали ли вы, что в GetCourse можно автоматизировать выдачу сертификатов/дипломов ученикам? 🧑‍🎓

В качестве награды за успешное прохождение курса вы можете настроить в аккаунте автоматическую выдачу именных сертификатов/дипломов.

Бонус: проверка на оригинал по ссылке
Ссылка на готовый диплом будет сохранена в данных ученика в GetCourse.

Нужна помощь?
Напишите нам в
@inkystudio, и мы с радостью поможем вам!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Хотим поделиться с вами небольшим скриптом от нашего разработчика и сделать мир Геткурса чуть лучше 😊

Он будет полезен тем, кому требуется ограничить выбор предложений из списка, как на прикрепленном видео.

Вставьте этот скрипт в блок HTML, затем замените переменную maxChecked на то количество полей, которое вы хотите позволить выбрать пользователю.

<script>
document.addEventListener('DOMContentLoaded', function() {
// Здесь вместо 3 вставить максимальное число предложений, которое можно выбрать
const maxChecked = 3

$('.part-manyPositions').each(function() {
const $position = $(this)

let checkedCount = 0

$position.find('.form-position-input').on('change', function(evt) {
if (this.checked) {
checkedCount += 1
} else {
checkedCount -= 1
}

if (checkedCount >= maxChecked) {
$position.find('.form-position-input:not(:checked)').closest('.form-position').addClass('is-disabled')
} else {
$position.find('.form-position-input').closest('.form-position').removeClass('is-disabled')
}
})
})

$(document.head).append(`
<style>
.form-position.is-disabled {
opacity: 0.5;
pointer-events: none;
}

.form-position.selected {
background-color: transparent;
}
</style>
`)
})
</script>

А если у вас есть идеи, но нет возможности их реализовать, то вы знаете куда обращаться 😉
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍2👏1