Configuring X login and rich embeds for Discourse

У вас всё ещё есть богатые встраиваемые элементы? Меня тоже только что заблокировали. Мне на самом деле не важен вход в Twitter (я его всё равно отключил), но я использовал его для встраивания твитов. Если повторная регистрация решит эту проблему, это отлично.

Похоже, что в теории это возможно:

Но я не думаю, что Discourse использует этот API.

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

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

2 лайка

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

Вы используете правильные ключи? Речь идёт об API-ключе и секрете, а не о второй паре клиентских данных, которые вам выдали (говорю я это потому, что сначала использовал неправильный набор, и, очевидно, ничего не работало).

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

Затем в Discourse я оставил галочку «включить аутентификацию через Twitter» снятой и добавил API-ключи.

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

Я только что опубликовал это минуту назад

Да, я пробовал использовать именно их. Я также пробовал создать их заново, но это всё равно не помогло.

Редактирование: Для ясности, вы не платили за доступ, верно, @Kartoon? Вы используете бесплатный тариф?

Я спрашиваю, потому что не уверен, доступен ли вообще GET-эндпоинт для твитов на бесплатном тарифе. Похоже, что нет, что, очевидно, создаст проблему.

Да, мне тоже не повезло, я выполнил те же шаги. Странно, неужели проблема на стороне Twitter?

1 лайк

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

Честно говоря, я тоже не знаю. Я следовал руководству из первого сообщения примерно 6 месяцев назад, чтобы изначально добавить это, подал заявку (или что там нужно) для получения повышенного доступа. Получил то же самое письмо, которое было опубликовано здесь сегодня, просто удалил приложение, создал его заново, и всё сразу заработало.

Вы пытаетесь также включить вход через Twitter? Может быть, обе функции больше не работают вместе? У меня на старом приложении это не было включено, и сейчас я тоже не включал. Это единственное, что приходит мне в голову. Я мог бы попробовать воссоздать приложение для вас, но одновременно можно иметь только одно приложение для разработки. Учитывая, что у вас возникли проблемы, я немного нервничаю удалять своё приложение и повторять шаги заново, вдруг у меня сейчас работает что-то из-за какой-то странной случайности.

Я попытался опубликовать около 5 разных твитов, и все они работают нормально.

Мой проект всё ещё имеет статус «elevated» (повышенный), а у вас?

Редакция: Я нашёл способ посмотреть настройки, которые я использовал.

Мой URL обратного вызова:

https://mysite.ca/auth/twitter/callback

Может быть, это как-то тайно ограничено по географии? Хотя я нахожусь в Канаде с канадским доменом, так что если вы в США, я не могу представить, чтобы это было причиной.

У меня это работает без изображений в одностраничных твитах (вероятно, связано с последними изменениями в их API).

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

1 лайк

Забудь, это что-то связанное с моим сервером Discourse или ещё чем-то (потому что здесь, на Meta, всё работает).

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

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

Существующие встраивания Twitter на форуме уже есть. Добавление новых не дает превью Discourse во время набора поста, но после публикации они отображаются.

Однако есть нюанс…

Если к твиту вручную прикреплено изображение или видео, оно загрузится в onebox.

Пример:

Если изображение было автоматически подтянуто из URL для данного твита, оно, похоже, не загружается в onebox. Возможно, так было всегда, я не помню.

Пример:

Кстати, ссылки на Twitter здесь, на Meta, показывают превью в панели предпросмотра во время набора. У меня на форуме такой функционал не работает.

Кажется, не имеет значения, какой вариант я выбираю здесь:

Могу подтвердить, что настройки @Kartoon работают и на моём экземпляре. У меня изначально была неверная URI обратного вызова на стороне Twitter, из-за чего это не работало, так что, возможно, проверьте это?

1 лайк

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

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

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

Что касается твитов со ссылками, то, думаю, они никогда не загружали содержимое по ссылке.

Ничего не менял после вчерашнего дня, но сегодня попробовал, и богатые вложения снова работают.

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

Но, например, как с Google Drive: если отправить ссылку на папку с ограниченным доступом, появится текст «Войдите, чтобы просмотреть этот элемент». Если затем сделать папку общедоступной и отправить ссылку снова, всё равно будет показываться тот же текст вместо правильного описания папки. Или когда ссылки IMDb начали превращаться в постеры: после исправления проблемы все уже превратившиеся в постеры ссылки оставались такими. Наверное, есть способ что-то с этим сделать, но для меня это никогда не было большой проблемой.

Очень странно… учитывая все странности, возникшие в Twitter, возможно, это просто совпадение. Вероятно, у них был наплыв людей, менявших настройки, если всем пришло такое письмо, так что, возможно, что-то происходило. По крайней мере, теперь всё работает, lol.

То же самое, так что, скорее всего, проблема была на стороне Twitter.