?

Log in

No account? Create an account
  Journal   Friends   Calendar   User Info   Memories
 

Электронный миссионер

5th September, 2017. 3:39 pm. Бабушка лёгкого поведения

Самовыковырялся в кинотеатр, и сходил на наименее говённый, по моему мнению, фильм: "Бабушка лёгкого поведения". В первую очередь из-за Реввы и Глюкозы. Больших ожиданий от фильма не было, думал очередная рядовая средней паршивости комедия. В сути так и есть, но надо сказать, что уж куда я бука в последнее время, - местами ржал в голос.



Из приятных моментов, практически весь фильм снимали в моём районе Ясенево. Дом престарелых - это усадьба Узкое, а место где бабками обмен производился - это Зона отдыха «Битца». Немного в разных местах района, но тем не менее в пешей доступности друг от друга.
Рекомендовать фильм не могу, но четвёрку твёрдую ему поставлю. Особо доставила Глюкоза и хороший юмор, а так же очень хитро там обыгран вопрос древнейшей и самой гонимой нации. Примерно так же, как я тут сформулировал её название - деликатно, но и так всё ясно.

Read 2 Notes -Make Notes

5th September, 2017. 5:32 pm. Telegram bot

После сборки обработать напильником.

Понадобился мне под одну задачку телеграмный бот. Как оказалось не так страшен чёрт, как его малюют. Можно за часок набросать бота, хотя для управления умного дома, хоть для управления шатлом. На питоне писать не хотелось по ряду причин. Одна из которых, как не смешно звучит - переносимость кода. К питону надо ставить дополнительные либы, которые ухудшают его переносимость, особенно на встраиваемые системы, так что тут пока что рулит си и php.


Есть расчудесный проект сишного телеграмного бота https://github.com/smartnode/telebot/ . В принципе за 20 минут у меня он завёлся, минут сорок ковыряний левой пяткой я научился отправлять изображения и отвечать на сообщения. Короче, штука всем распрекрасна и уже казалось, что разверзлись врата рая и можно мутить управление шатлом, но ждал вселенский облом...

Мне понадобилось скачивать передаваемые картинки, файлы и прочую шолупень. Не только отсылать (что оказалось как два пальца об асфальт), но и получать и тут я лососнул тунца. Собстна говоря код, для получения файла примитивно прост (если я верно понял всё API). Я не поленился прошерстить весь код, чтобы понять логику работы. И родил такого монстра:

if (message->photo[1].file_size > 0) {
  char file_id[TELEBOT_FILE_ID_SIZE];
  strcpy(file_id,message->photo[1].file_id);
  ret = telebot_download_file(file_id, "photos/file_7.jpg");
  if (ret != TELEBOT_ERROR_NONE) {
   printf("Failed to download file: %d \n", ret);
  }
 }



Если перевести с программерского на русский, то мы определяем что структура сообщения имеет в поле фото не нулевой размер, и после чего пытаемся скачать его с помощью команды telebot_download_file(file_id, "photos/file_7.jpg"); в файл photos/file_7.jpg . Но, увы и ах, болт с левой резьбой.

Отладкой дошерстил до функции json_object_object_get_ex (obj, "file_path", &file_path) , которая является библиотечной и тут заткнулся. Так как надо уже мануалить работу функций. Толковых мануалов на работу апи, как и примеров нет, или по крайне мере я не смог нагуглить. Задал вопрос автору, но чуйка мне подсказывает, что он останется без ответа, а жаль... В общем, хорошая тема, но либо лыжи не едут, либо что-то не так делаю.

Read 2 Notes -Make Notes

Back A Day - Forward A Day