Miranda NG Official Community Forum
Miranda NG русскоязычный форум => Разработка => Topic started by: Thug on 13 08 2020, 23:30:07
-
dartraiden, в фэйсбуке есть какие-то особые стикеры, которые отображаются в миранде картинкой? Обычные мне приходят кодом для смайлиэд, как в ВК с соответствующей опцией. Не могу нагуглить, как отправить кастомный стикер. Хочу увидеть, что это вообще такое.
-
Отправлять нельзя, потому что в Миранде нет поддержки отправки стикеров. Т.е. никакой возможности установить с сервера набор стикеров, как в каком-нибудь Телеграме. Для этого пришлось бы серьёзно дорабатывать SmileyAdd и протоколы.
Стикеры можно принимать, для этого нужно включить в настройках SmileyAdd поддержку стикеров плюс сам протокол должен уметь это, сейчас это у нас умеет только фейсбук. Надо бы аську тоже обучить, там стикеры приходят как передача файлов, что убого.
После этого стикеры будут отображаться, смайлопаки для этого не требуются. Что, как я понимаю, вы и хотели.
-
dartraiden, конечно, об отправке речь и не идёт. Я имел ввиду, что не могу нагуглить, что это за кастомные стикеры в фэйсбуке, и как их отправить через сайт. Или же я вас неправильно понял, и речь идёт об обычных стикерах. В смайлиэд есть опция "отключить стикеры", которая у меня отключена - соответственно, стикеры включены, но в окне сообщений в Миранде приходящие с фэйсбука стикеры всё равно отображаются, как код, типа "STK{126361920881938}". Что я делаю не так?
Да, именно то, что вы описали, я и хочу.
-
George Hazan, [14.08.20 14:36]
а-а, вкурил
George Hazan, [14.08.20 14:36]
это глюк в смайлиадд
George Hazan, [14.08.20 14:36]
старый 😊
George Hazan, [14.08.20 14:36]
он еще в MSN глючил, для которого это и делалось
это надо тикет завести
https://github.com/miranda-ng/miranda-ng/issues/2527
а опцию про отключение стикеров надо выпилить, непонятно, зачем она и кому нужна
-
Можно обновляться и пробовать фейсбук.
-
dartraiden, да, заработали, спасибо. Только они очень уж мелкие, 16x16 наверное - ничего не разглядеть (масштабирование отключено). Стикеры задумывались большими. И есть незначительные проблемы - в окне чата с самим собой они не отображаются вообще, а если отослать с сайта стикер другому человеку, когда открыто окно чата с ним в миранде, то отправленный стикер не отобразится сразу, а отобразится только после закрытия и повторного открытия окна переписки с ним.
Ну.. ждём теперь стикеры вконтакте :)
-
Thug,
сложно сказать, то, что сервер отдает, я и использую.
а в каталоге AvatarsCache\Facebook_1\Stickers они тоже мелкие? или там картинка с кучей глифов?
-
ghazan, извиняюсь, это из-за того, что макс. высота стикеров стояла на 15. Всегда думал, что эта настройка не работает без галки рядом, т.к. на обычные смайлы она не влияет. Предел высоты стикеров можно поднять до 99. Картинки в кэше имеют размер 128 на 128. Может быть, стоит поднять настраиваемый предел выше 99.
Заметил ещё один нюанс - после перезапуска Миранды все ранее пришедшие стикеры в окне сообщений отображаются просто кодом.
-
после перезапуска Миранды все ранее пришедшие стикеры в окне сообщений отображаются просто кодом
А если мышкой выделить? Несколько раз выделить мышкой один и тот же код стикера. Стикер появится?
-
Предел высоты стикеров можно поднять до 99. Картинки в кэше имеют размер 128 на 128. Может быть, стоит поднять настраиваемый предел выше 99.
Можно выставить 0, это отключает масштабирование.
-
А если мышкой выделить? Несколько раз выделить мышкой один и тот же код стикера. Стикер появится?
Нет, это не помогает. Но, если в свежем сообщении приходит такой-же стикер, который висит в виде кода в окне переписки, то ранее пришедшие стикеры с этим кодом начинают отображаться картинкой.
Можно выставить 0, это отключает масштабирование.
Спасибо за подсказку) Не очевидно, но работает.
-
ghazan, после последних правок всё заработало, как надо, большое спасибо :THUMBS UP:
А есть ли возможность получить от сервера анимированные стикеры? В кэш прилетают статичные
-
Thug,
есть мнение, что анимированных стикеров в фейсбуке долго не будет.
они отдаются в формате WEBP, а FreeImage его не поддерживает, соотв. и анимировать не сможет
-
Поддерживает, надо только втащить webp-либу их.
-
В настоящий момент относительно несложно скачивать анимированные аватары, но чтобы наладить их показ, надо полностью переписать SmileyAdd на базе FreeImage, выкинув GDI+
-
Thug,
в общем даже 10-я винда со всеми обновлениями показывать WebP отказывается наотрез
-
ghazan, ничего, я рад, что стикеры вообще появились) Я вот только не пойму, где там webp? Когда я смотрю исходный код страницы с анимированным стикером в фэйсбуке, он мне выдаёт вот это, например
https://scontent-arn2-1.xx.fbcdn.net/v/t39.1997-6/p240x240/47212247_1134376293403294_2285070730599071744_n.png?_nc_cat=110&_nc_sid=0572db&_nc_ohc=yh-KeEe5lssAX_R3n5H&_nc_ht=scontent-arn2-1.xx&oh=9c01ffd6357014202f9c96c75d002bbe&oe=5F63861F
Просто пнг картинка без анимации с четырьмя кадрами.
А в ВК вообще по-другому. Там наводишься на стикер, и каждый подвижный фрагмент стикера будто является отдельным элементом. Саму анимированную картинку я не могу найти. Не понимаю, как это работает :-\
-
Thug,
если нетворк лог посмотреть, там будет в описании стикера раздел animated_image, и вот там указывается урлик, который отдает webp
-
ghazan, нашёл, спасибо. Но это только в фэйсбуке. В ВК после ссылок на статичные стикеры во всех разрешениях идёт раздел animation_url, и там уже не webp, а какой-то скрипт https://vk.com/sticker/3-21097.json?1
Что с этим вообще можно сделать? ???
-
Напоминает SVG на первый взгляд. Что-то векторное.