Maxim, есть бот, в нём реализованы какие-то обработчики событий. Дальше прямо в эти обработчики событий дописываем нужные действия. Например, обработчик команды /start показывал пользователю стартовое меню с кнопками - дописываем туда также запись в таблицу в базе информацию о том, что в такое-то время пользователь нажал /start. В обработчике кнопок дописываем, что пользователь нажал такую-то кнопку. Итд итп. В результате мы имеем данные для последующего анализа. Например, если в боте реализован опрос, можно посчитать, сколько времени потратил на прохождение опроса от первого вопроса до последнего, сколько процентов пользователей завершили опрос и всё такое.
Что такое exp и rank? Почему rank в функции не используется?
Так вообще длина полоски в пикселях определяется так: берём отношение текущего показателя к максимуму и умножаем на длину всего прогрессбара в пикселях:
А в чём вопрос? Написано выражение, что мешает его вычислить? Современный C++ умеет комплексные числа. Или вопрос в том, чтобы упростить это выражение? Тогда это не к C++, а к математике.
ZtS199, если честно я не знаю, почему ссылки через сайт работают не у всех. Кажется, раньше было не так. Но в целом Viber в России не пользуется большой популярностью ни у пользователей, ни у бизнеса, поэтому я мало представляю о том, что там происходит в последнее время. По слухам, немного лучше у него обстоят дела в Белоруссии и на Украине.
Я бы посоветовал попробовать сделать своими силами ссылку с лендингом (и можно с редиректом через несколько секунд), которая бы вела на viber://. Сейчас штатный chats.viber.com/robokassa_help показывает как раз такую ссылку. Может быть прокатит, но лучше потестировать на разных видах устройств.
А что касается продвижения чат ботов, перспективнее выглядит Telegram (где со ссылками всё и так хорошо) и WhatsApp (где тоже хорошие ссылки, но увы платно business only либо дёшево-нелегально-рискованно).
Наличие изоляции никак не связано. Продавать можно и на изоляции. Всё зависит от того, что, кому и как продавать. Некоторые вещи даже особенно хорошо начали продаваться именно в карантин, например, онлайн-образование или курьерские услуги. Вот если бы автор вопроса назвал конкретную область деятельности стартапа (что и кому тот продаёт), можно было бы о чём-то покумекать, а наугад-то что говорить?
TomRiddle, ну можно приклеть префиксс к номеру и работать с массивами диапазонов из полных номеров, но в этом случае перебор будет среди намного большего количества вариантов. А так мы за один шаг выберем подмассив для конкретного префикса намного меньшего размера и переберём его заметно быстрее.
В данном случае я имел в виду, что data_rows делается из csv-файлов примерно так:
data_rows = {}
for row in csvfile:
try:
data_rows[row[0]].append(row[1:])
except KeyError:
data_rows[row[0]]=[row[1:]]
Но лучше действительно номера перевести в числа, они будут меньше памяти расходовать.
Если прикинуть, в выгрузке около 383 тыс. строк, при 80 уникальных кодах, то есть будет словарь на 80 элементов, в каждом из которых будет в среднем 4787 диапазонов. Правда, по факту там всё жутко неравномерно, больше половины выгрузки - это 495+499.