IT-инфраструктура для бизнеса и творчества

Статья удалена

Этот материал был удалён по просьбе автора.

{ "author_name": "Показательный цветок", "author_type": "self", "tags": [], "comments": 57, "likes": 59, "favorites": 190, "is_advertisement": false, "subsite_label": "dev", "id": 198939, "is_wide": true, "is_ugc": true, "date": "Thu, 21 Jan 2021 03:33:26 +0300", "is_special": false }
(function () { let cdnUrl = `https://specialsf378ef5-a.akamaihd.net/SelectelBranding/images/` let previousArticleNumber = null let currentArticleNumber = 0 let platform = 'Desktop' let articles = [ // { // name: 'camera', // url: `${cdnUrl}CameraCat`, // text: 'умную камеру для\u00A0наблюдения за\u00A0котиками', // link: '1', // num: 3 // }, { name: 'chill', url: `${cdnUrl}ChillCat`, text: 'трекер, который подскажет, когда пора отдохнуть', link: 'https://vc.ru/promo/288561-eye-tracker', num: 1 }, { name: 'cloud', url: `${cdnUrl}CloudCat`, text: 'котика: даёшь ему «пять», а\u00A0он делает бэкап в облако', link: 'https://vc.ru/dev/294799-maneki-neko', num: 2 } ] let buttonCycle = document.querySelector('.button--cycle') let buttonChoose = document.querySelector('.button--choose') let buttonMobile = document.querySelector('.button--mobile') let textField = document.querySelector('.selectel-footer-subtitle') let imageAgent = document.querySelector('.image--agent') let banner = document.querySelector('.selectel-footer') buttonCycle.addEventListener('click', cycleClick) buttonChoose.addEventListener('click', () => sendEvent(`Promo ${articles[currentArticleNumber].num} Left`, 'Click')) buttonMobile.addEventListener('click', () => sendEvent(`Promo ${articles[currentArticleNumber].num} Left`, 'Click')) let media = window.matchMedia("(max-width: 570px)") media.addEventListener('change', matchMedia) function matchMedia() { if (media.matches) { platform = 'Mobile' } else { platform = 'Desktop' } update() } matchMedia() function cycleClick(event) { sendEvent(`Promo ${articles[currentArticleNumber].num} Right`, 'Click') if (event) { event.preventDefault() event.stopPropagation() } window.open('https://vc.ru/tag/selectelDIY', '_blank') //cycle(event) } function cycle(event) { // incrementArticleNumber() textField.innerHTML = generatedText() imageAgent.src = articles[currentArticleNumber].url + platform + '.svg?3' imageAgent.setAttribute("class", "") imageAgent.classList.add('image--agent', articles[currentArticleNumber].name) banner.href = articles[currentArticleNumber].link } function update() { banner.href = articles[currentArticleNumber].link imageAgent.src = articles[currentArticleNumber].url + platform + '.svg' textField.innerHTML = generatedText() } function incrementArticleNumber() { previousArticleNumber = currentArticleNumber if (currentArticleNumber >= articles.length - 1) { currentArticleNumber = 0 } else { currentArticleNumber++ } } const sendEvent = (label, action = 'Click') => { const value = `SelectelDIY — loc: Footer — ${label} — ${action}`; if (window.dataLayer !== undefined) { window.dataLayer.push({ event: 'data_event', data_description: value, }); } }; function generatedText() { let defaultText if (platform === 'Desktop') { defaultText = `Мы тут собрали %text%. Хотите научим?` } else { defaultText = `Мы тут собрали %text%.` } return defaultText.replace('%text%', articles[currentArticleNumber].text) } function getRandom(min, max) { min = Math.ceil(min) max = Math.floor(max) return Math.floor(Math.random() * (max - min + 1)) + min } (function create() { currentArticleNumber = getRandom(0, articles.length - 1) cycle() let page = document.querySelector('.page--entry') if (page) { function insertAfter() { let parents = page.querySelectorAll('[data-id="7"]') let referenceNode = parents[0] referenceNode.parentNode.insertBefore(banner, referenceNode.nextSibling); loaded() } setTimeout(() => insertAfter(), 0) } }()) function loaded() { banner.classList.add('loaded') } loadImages([ `${cdnUrl}CameraCatDesktop.svg`, `${cdnUrl}ChillCatDesktop.svg`, `${cdnUrl}CloudCatDesktop.svg`, `${cdnUrl}CameraCatMobile.svg`, `${cdnUrl}ChillCatMobile.svg`, `${cdnUrl}CloudCatMobile.svg?3`, ]) function loadImages(urls) { return Promise.all(urls.map(function (url) { return new Promise(function (resolve) { var img = document.createElement('img'); img.onload = resolve; img.onerror = resolve; img.src = url; }); })); } }())
0
57 комментариев
Популярные
По порядку
Написать комментарий...

Комментарий удален по просьбе пользователя ред.

7

Я как раз один из установивших. Спасибо за интересную идею и толковую реализацию.Если прикрутить к этому возможность выбора курса (фразовые глаголы, в аэропорту.... и т.д.) и возможность повторять пройденные темы - вполне можно монетизировать

1

Установка бота же делается 1 кликом?
А конверсия в регулярное использование?

0

Комментарий удален по просьбе пользователя

1

Мне понравилось

4

Мне тоже

2

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

Но в целом, имхо, то же реакт-приложение, которое бот открывает в браузере, можно завернуть в pwa и устанавливать на рабочий стол как нативное. Разве что на iOS не будет пушей.

Либо через webview заворачивать в нативное приложение. Будет более «бесшовное» взаимодействие)

3

Попробуйте и почувствуйте, как веб-приложение бесшовно встраивается в транзакционный цикл пользователя.

Ну с пк не бесшовно. Пришлось открывать браузер, чтоб потыкать кнопки, когда в обычных ботах, мне этого делать не нужно. Плюс при закрытии сайта, ничего вроде не изменилось. Все началось с той же страницы с какой и было (жизни и перевод с пиццей)

а так симпотично.

2

Поскольку интернет-страницы в Telegram открываются во встроенном браузере

и это тоже не всегда правда. От настроек зависит. От webview. Его тоже настроить можно. Или убить вовсе. Может вызывать гемор

2

Статью плюсанул. Спасибо!
Пример для склада ставлю под сомнение - как сканировать, как браузер будет цепляться к сканеру?
Ещё вопросы:
Пыху использовали, потому что знали или они ещё используется?
Зачем в боте 100 кода, если там всего пара кнопок? Логика сохранения состояния в нём, а не веб-приложении?

2

Комментарий удален по просьбе пользователя ред.

1

Камера телефона для сканирования - это нерабочий кейс для большого и среднего складов, т.к. по времени задержки суммарные будут большие. Лазеры же. Но я лет 5 не слежу, могу соврать)

1

Комментарий удален по просьбе пользователя ред.

4

Реализация крутая, спасибо. И тётя в видео тоже. У меня возникла лишь одна проблема: в настройках телеграма(android) я указал открывать ссылки в браузере. Закрыв вкладку браузера я ожидал, что это как-то отобразится внутри чата с ботом, но похоже я ошибся с этой фичей.

Каждое задание веселее другого )))
Вот почитайте:
"У меня пропадал интернет минут на пять, так что я пообщался с родственниками. Кажется, они неплохие люди!" ред.

1

Комментарий удален по просьбе пользователя

1

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

1

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

0

Комментарий удален по просьбе пользователя

0

Прям черно-белая статья какая-то с посылом юзать веб приложение и использовать идентификатор чата в качестве авторизации.

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

Хотите просто easy way авторизацию на сайте? Ну так генерируйте случайный хэш с солью в виде отметки времени и User agent'а. И используйте LocalStorage. Зачем вам вообще телеграм бот, если они такие не удобные?

Во вторых, не удобных или не удобных инструментов. Есть маркетинг, потребности пользователей, цепочка конверсий. Нравится вашим пользователям телеграм - даём им бота, нравится сайт - делаем сайт. Нравится мобилка - делаем мобилку. Десктоп приложение - пилим его. Вопрос не в том, что удобно или не удобно. Вопрос в том, где ваши пользователи и где идут продажи.

0

Комментарий удален по просьбе пользователя

2

Хорошая идея. Есть так же ещё PWA технология.
зы: Сам использую в своём проекте интегрированную связку website + telegram bot. Проект на django, там бот выступает как разновидность одного из view, делает немного больше но в резульате так же ведет на сайт.
Весь код, db и прочее общее.

0

Комментарий удален по просьбе пользователя

1

отличный подход , мы как раз работаем над pwa и связать его с телегой хорошая идея , на счет хостинга рекомендую firebase hosting + custom domain с SSL.

0

Комментарий удален по просьбе пользователя ред.

1

У меня не взлетело, браузер открылся с сообщением:
In Browser: Error: There is no passage with the ID or name "Launch" ред.

–1

Комментарий удален по просьбе пользователя

1

заметка по реализации: вместо выдачи ссылки в чат,
при клике по кнопке лучше сразу отрывать ссылку.

0

Комментарий удален по просьбе пользователя

0

это возможно, возвращается custom keyboard с копкой:
kbButtonsHelp = (
{
  'text': "Create Profile",
  'url': "https://www.recruitcoders.com";, },
)

Реализация в моём боте: https://t.me/recruitcodersbot
команда /help дополенена кнопкой на сайт.

docs: https://core.telegram.org/bots/api#inlinekeyboardbutton

1

Комментарий удален по просьбе пользователя

0

Комментарий удален по просьбе пользователя

0

Комментарий удален по просьбе пользователя

0

Сертификат безопасности прикрутить забыли...

0

Комментарий удален по просьбе пользователя

0
Грядущий космос

Интересно, спасибо!

0

Комментарий удален по просьбе пользователя

0

А есть возможность посмотреть проект на гитхабе? 

0

Комментарий удален по просьбе пользователя

0

 Обычное React-приложение, которое запускается из бота с идентификатором chat.id

Я так понимаю, о безопасности и речи не идёт?

0

Комментарий удален по просьбе пользователя ред.

0

Боты и эргономика на сегодняшний день не очень совместимые понятия

0

Не рассматривали в качестве базы данных Google Sheets, а в качестве сервера web-приложений - опубликованный как web app проект на Google Apps Script?

0

Комментарий удален по просьбе пользователя

0

Если вы поднимаете react приложение, то зачем вам вообще нужен бот? 

0

Комментарий удален по просьбе пользователя

0

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

0

Комментарий удален по просьбе пользователя

0

В родном клиенте для телеграмм, который скачал в Google Play, открывается ссылка в браузере который установлен по умолчанию, на данный момент Опера, но установлю другой, будет в другом. Так было всегда, устройство работает на базе андроид 10, да и раньше так же было на предыдущих версиях. Может телефон особенный) сейчас заметил что говорите только об двух видах устройств iOS и Desktop. Возможно в статье было об этом написано, дочитал только до примера, стало не интересно потому что у меня это не сработало. Хотя идея довольно неплохая. Если бы это как-то сделать чтобы была кнопка с молнией, такие ссылки всегда открываются внутри приложения, так понимаю это быстрый просмотр для чтения статей. 

0

Это Instant View, он только для статей)
А в встроенном браузере, судя по всему, открывается только на iOS

0

эх, я-то понадеялся, что все-таки можно сделать тип веб приложение =)

0

Комментарий удален по просьбе пользователя

0

отправляет push сообщение через бот? 

0

Комментарий удален по просьбе пользователя

0
Доступный магнит

Самое веб-приложение неплохое, соглашусь, даже немного поигрался, но в таком виде ТГ - это просто прокладка, при чем в случае с рекламой приложения это может быть лишнее звено, которое просто уменьшит CR.

Если бы в боте не выбрасывалась ссылка, а при нажатии на кнопку Open открывалось окно с приложением, было бы лучше, но я не уверен с возможность реализации со стороны ТГ.

В целом круто, не ресерчил, но можно продвигать приложение в массы.

0

Комментарий добавлен по просьбе пользователя.

0

Автор молодец! И идея хорошая и реализация классная!

–1

Комментарий удален по просьбе пользователя

0
Читать все 57 комментариев
«Альфа-банк» не начислил корректно кешбэк и общие впечатления

Уже 2 недели ищу время на данный пост, но каждый раз банк чувствует и мешает это сделать – то в приложение не пускает, то в личный кабинет)))

Биржа NYSE готовится к приостановке торгов

На этой неделе, 13 октября 2021 года, NYSE предложила внести поправки в свои собственные правила, добавив "Правило 7.13 – Приостановление торговых операций".

Объявлены победители Finlanding
«Spotify: История продукта». Как мы разработали алгоритмы музыкальных рекомендаций

Из онлайн-библиотеки — в сервис персонализированных рекомендаций.

Надуть надувателей: блогеры разоблачают телефонных мошенников, чтобы в мире стало «на одну обманутую бабушку меньше» Статьи редакции

Заявлений о мошенничестве становится всё больше, но полиция не всегда на них реагирует. Чтобы предостеречь других и развлечься, блогеры обзванивают злоумышленников, взламывают их компьютеры и рассекречивают имена. Как они это делают и почему им не доверяют — в пересказе The Guardian.

Окумура звонит мошенникам в роли Ким Кардашьян
«Российский рынок акций был и остаётся одним из самых привлекательных в мире»

Виталий Исаков, директор по инвестициям УК «Открытие» («Открытие Инвестиции»).

Может ли Тинькофф распоряжаться вашими ценными бумагами

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

Кейс: Продвижение сети магазинов одежды через аудиорекламу

Отметив трехлетнее сотрудничество с сетью бутиков женской одежды представленных в Москве, Санкт-Петербурге, Ростове-на-Дону и наличием собственного интернет-магазина, параллельно с основными каналами продвижения, мы решили протестировать аудиорекламу.

Будущее наступит во вторник на OneRetailConf
Дефицит цифровых кадров в России и их подготовка

Весь мир переходит в цифровую среду. Пока в ежегодном глобальном рейтинге конкурентоспособности Россия занимает 43-е место, но задерживаться на нем не намерена. Для этого правительство запустило программу «Цифровая экономика РФ», которая будет поддерживать цифровую экономику в стране и подготовку необходимых кадров.

В МВД и Минтрансе разработали ПДД для электросамокатов и других средств индивидуальной мобильности Статьи редакции

Россияне смогут ездить на скорости до 25 км/ч при весе устройств не более 35 килограммов.

null