Tuesday, June 26, 2018

GDG Цензура Bot, REST API (часть 4)

 

Проблема

Цензор бот работает только в приложении Telegram. Появилась идея вынести цензуру из телеграмма в интернет. В этом посте детали реализации, а в следующем - первая интеграция со сторонним ресурсом!

Решение

Telegram-бот - это на самом сайт. Вот он: http://gdg-censor-bot.herokuapp.com/

На этот сайт приходят уведомления от Telegram. А сторонние приложения посылают запросы на модерацию.

Я добавил на сайт метод «parse», который взаимодействует со всеми остальными интернет ресурсами. Это, пожалуй, все технические детали.

Пример запроса

//
// Всего 10 секунд займет
// - открыть консоль сайта vadimcpp.ru
// - скопировать, вставить и выполнить текст ниже 👇
//

$.ajax({
url: 'http://gdg-censor-bot.herokuapp.com/parse',
type: 'POST',
data: {
key: 'A7A034AF8C960D1CD322622BDC9C45B23FA7CEFB01B451386BBCFDB4E3A1A5AE',
text: 'хуй пизда джигурда'
},
success: function(data) {
console.log('Success:', data);
}
});

Пример ответов

Нецензурные слова найдены 🗣:
{
    "text": "хуй пизда джигурда",
    "result": "*** *** джигурда",
    "censored": true,
    "client": "Vadim Cpp personal website"
}

Цензура в порядке 😎:
{
    "text": "Хочешь идти быстро - иди один. Хочешь идти далеко - лучше идти вместе.",
    "result": "Хочешь идти быстро - иди один. Хочешь идти далеко - лучше идти вместе.",
    "censored": false,
    "client": "Vadim Cpp personal website"
}

Если вы читаете этот пост с мобильного, то лучше открыть сайт vadimcpp.ru и протестировать UI:


Итого

− «Это же просто. Я могу интегрировать цензуру в свой сайт всего в один REST запрос!» — подумает умный читатель. Да, это так. Бота можно интегрировать. Получите ключ доступа и пользуйтесь.

Контакты для связи для получения ключей:
Телеграм: @vadimcpp
Email: vadim.cpp(at)gmail.com

О том, как реализована фича Антиспам, можно почитать в части 5.