Twitter прикручивает донаты юзерам через @ln_strike (в сатошах и в долларах, получатели только американские и сальвадорские, отправители со всего мира, но пока только на айфонах). Мы, конечно, осуждаем огороженность и привязанность к насмерть зарегулированному платёжному провайдеру с обязательным KYC.
В это же время @zebedeeio включает в свой web-extension хак, который показывает кнопку доната на твитах тех юзеров, у которых в twitter-профиле указан lightning address (см. предыдущий пост). Т.е. я пишу в "биографии"⚡anton @ mvp.int.sw4me.com (символ ⚡ключевой), расширения zebedee в чужих браузерах это видят и создают кнопку доната. Сие прогресс, но сам по себе zebedee -- кастодиальный кошелёк с ограничениями по географии, что обидно. Впрочем, повторить подвиг и сделать такой же tipping extenion без самого zebedee довольно просто.
Неплохо бы, наверное, иметь такое в moera безо всяких хаков (и без нагружания moerы функцией обработки чужих платежей). Типа, указал я в профиле kovalenko_anton@lntxbot.com, moera сама перекодировала его в LNURL, и на моих постах/комментах можно нажать кнопку ⚡Donate -- появляется QR-код, на который можно кликнуть и открыть кошелёк, или (в мобильном варианте) при клике открывается ссылка lighting:LNURL1...
Хотя то же самое можно сделать и без привязки к конкретной технологии. Просто в профиле для донатов должно быть можно независимо указать "что показывать в QR" (произвольная строка, будет QR-encoded) и "что открывать по клику" (URL с произвольной схемой, хоть bitcoin: хоть lightning:, как юзер решит), дальше "кнопка доната" может на десктопе вести к сценарию "показал QR, можно отсканировать или кликнуть", а на мобиле "сразу открыть указанный URL" (ну или можно для всех платформ единообразно, просто скан QR с мобилы нужен редко). Чистая косметика, а сразу переплюнет minds и twitter одновременно (не говоря о фейсбуках всяких).
Comments (7)
...не говоря уже о том, что юзер из Украины, к примеру, указывая <номер-карточки>@uacard.lnurl-pay.me, имеет возможность получать фиатные донаты, вообще никак не связываясь с лайтнингом (главное, чтобы с ним решился связываться отправитель доната) -- поясняющий тредик https://twitter.com/LNURL_pay_me/status/1434534864661909508
Идея мне нравится, но я пока не понял, как это должно работать 😉 Перечитаю завтра на свежую голову.
В общем, моя идея для "программы-минимум" — полностью агностичная показывалка qr-кодов и обрабатывалка кликов (чтобы тащила данные из профиля в кнопку "задонатить").
Т.е. я указываю, что при нажатии "задотатить мне" надо показывать Qr-encoded строчку LNURL1DP68GURN8GHJ7MRWW3UXYMM59E3K7MF0D3H82UNV9ACXZ7FLW4EK2UNFVS7NVV3HXG8NXLEV, а при клике надо переходить на URL lightning:LNURL1DP68GURN8GHJ7MRWW3UXYMM59E3K7MF0D3H82UNV9ACXZ7FLW4EK2UNFVS7NVV3HXG8NXLEV. И вуаля, с десктопа юзер нажимает и сканирует QR, с телефона нажимает и сразу открывается кошелёк, так что если у донатера есть чем всё это открыть — всё просто работает. У кого-то другого там лежит bc1quynpuzyznw7fx5whn5s7d7n3gzanc4tfgrckjk и bitcoin:bc1quynpuzyznw7fx5whn5s7d7n3gzanc4tfgrckjk, ну и что, мы же не обязаны всех унифицировать. Ещё у кого-то там может лежать https://paypal.me, профиль гитхаба со спонсорством или patreon, или на btcpayserver (btcpayjungle.com или собственный).
Предлагаю разные поля для QR и для ссылки потому, что «как правильно кодировать» и «какая схема урла самая правильная» — это соглашения, меняющиеся от протокола к протоколу (например, bitcoin: перед адресом многие включают в QR-код, но многие не включают, а вот если bitcoin:?param, то прямо все включают, а lightning: не включают в сам QR практически никогда, и предполагается для lnurl-pay плавная миграция на префикс lnurlp: в будущем — незачем всё это хардкодить в moera и обрабатывать).
Ну и roadmap какой-то виден за пределами программы-минимум, можно поддержать указание нескольких платёжных ссылок, а для конкретного читателя-донатера рендерить в первую очередь ту, где его любимый префикс (будь то схема протокола, как lightning: или там bitcoin:, или схема+хост, как https://paypal.me).
Это реально классная идея. Мне кажется, нужно сразу делать возможность указания нескольких QR+ссылок и показывать их как набор кнопочек с автоматически определяемыми иконками (⚡для Lightning и т.д.). А предпочитаемую донатером указывать первой. В общем, надо начать, а потом будет видно, в каком направлении совершенствовать.
Ну, смотри, что получилось 😉 (Зайди в редактирование профиля.)
Ура, работает!
Если юзер не указал линк, а моера зато сообразила по формату, что это вообще такое, может стоит залинковаться автоматически на bitcoin: или lightning:, это позволяет одним кликом с телефона отправить платеж, ничего не сканируя и не копируя.
Сделано.