Автор оригінальної статті, Крістоф Литовець (Kristóf Litavecz) навчився програмувати у 2017 році. У його кар'єрі розробника немає істотних змін (поки що!), але ця історія показує, що навички програмування можуть бути корисними у повсякденному житті. Дехто навіть стверджує, що вміння писати коди стає четвертою грамотністю.
Минулого літа моя дружина та двоє наших дітей летіли з Угорщини до Каліфорнії відвідати друзів. У числі всіх складнощів перельоту наша авіакомпанія втратила в дорозі дитячий візок. Мої численні спроби зв'язатися з авіакомпанією через електронну пошту, Twitter, ввічливі, а потім і не дуже ввічливі дзвінки, щоб покрити наші витрати ні до чого не привели. Я зрозумів, що вистачить з мене і вирішив діяти інакше. Я створив Twitter-бота, який відповідав на кожен твіт з облікового запису авіакомпанії, щоб нагадати їм про наш випадок, який на той час вже три місяці перебував на розгляді. Я не робив це з метою помсти чи вимагання грошей, ні, ні в якому разі. Я просто хотів справедливості та покриття витрат за втрачений дитячий візок. На той момент я вивчав програмування близько року і активно використовував спільноту freeCodeCamp для підтримки та натхнення. Що я зробив
Якщо ви хочете скопіювати мого бота, просто клонуйте мій репозиторій, ввівши наступний рядок у ваш термінал: git clone https://github.com/krizsoo/twitterbot Крок 2. Створіть обліковий запис Twitter і додаток Twitter створіть його . Як тільки ви зареєструєтеся, зможете створити новий додаток, який дасть вам доступ до Twitter API, і ви зможете програмно генерувати твіти.
Як тільки моя програма була налаштована, я отримав чотири ключі безпеки, необхідні для доступу до API:
Крок 3. Налаштуйте Twitter Bot Мені потрібно було настроїти конфігурації, щоб переконатися, що Бот робить те, що потрібно.
- Я створив нове оточення на хмарній платформі Cloud9 dev ( ви з нею знайомі, якщо проходабо курс CS50 — прим. ред. );
- Створив обліковий запис у Twitter;
- Створив простий Twitter-бот за допомогою Node.js;
- Я налаштував його так, щоб він міг довільно твітити одне з десяти нагадувань щогодини;
- І запустив його.
Як це зробити
Крок 1. Створіть нове оточення у Cloud9 IDE Зайдіть у Cloud9 та створіть нове робоче місце (create a new workspace). Як шаблон виберіть Node.js.- Consumer Key (API Key) - споживчий ключ
- Consumer Secret (API Secret) — це своєрідний «логін+пароль» вашої програми
- Access Token - токен доступу
- Access Token Secret - секрет токена доступу
-
Встановіть залежність Node.js
npm install --save twitter
- Налаштуйте пошуковий запит
q
- ключові слова;count
- кількість твітів, які мають повернути запит;result_type
— логіка сортування, у разі показує спочатку останній твіт;lang
- це мова (наприклад, англійська)
// Set up your search parameters
var params = {
q: '@lostbabystroller',
count: 1,
result_type: 'recent',
lang: 'en'
};
Крок 4. Налаштуйте твіти Бот спрацьовував щогодини, і я не хотів, щоб він весь час повторював те саме повідомлення. Тому я створив близько 10 твітів, а Бот щоразу вибирав повідомлення випадковим способом. Важливо: Джонні Асмар рекомендує переконатися, що ви не згадуєте людей у своїх відповідях. Це суперечить Twitter TOS. Крок 5. Налаштуйте періодичність твітів Я налаштував, щоб Бот спрацьовував щогодини. Спочатку я створив змінну, яка відображає годину в мілісекундах:
//задание временного интервала твитов
var INTERVAL = 1*60*60*1000;
Потім я переконався, що Бот запущено правильно:
// Start bot and timer
BotStart();
setInterval(BotStart, INTERVAL);
Крок 6. Запустити Бота Як тільки все було налаштовано, я запустив Бота і терпляче чекав.
npm run serve
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ