Задать вопрос
@ofonarev

Как реализовать передачу данных между компьютером и сервером?

Я пишу телеграмм бота на библиотеке pyTelegramBotAPI. Подскажите пожалуйста, как можно реализовать передачу данных между сервером и компьютером? Мне нужно, чтобы бот, загруженный на Python Anywhere (в качестве сервера), отправлял команду приложению на компьютере, а после её выполнения отправлял на сервер ответ (допустим True или False). Я мог бы использовать библиотеку socket, но я слышал о том, что она может отправлять данные только по локальной сети. Насколько я знаю, она может отправлять данные не только по локальной сети, но для этого у компьютера должен быть так называемый 'белый' ip, но я не знаю будет ли у пользователя он.

Прошу подсказать возможно ли такое вообще, а если возможно то, как это можно реализовать и какими путями, если не прибегать к сторонним программам? Если простое решение есть в других языках, то я могу прибегнуть к ним, важно только, чтобы они могли работать вместе с Python.
(Сорри за грамматику)
  • Вопрос задан
  • 300 просмотров
Подписаться Простой Комментировать
Ответ пользователя Vindicar К ответам на вопрос (4)
Vindicar
@Vindicar
RTFM!
У пользователя белого IP не будет почти гарантированно, это не бесплатное удовольствие и далеко не все провайдеры его вообще предоставляют.
PythonAnywhere также жёстко ограничивает адреса, на которые можно обращаться бесплатному аккаунту. Так что при таких вводных особо ничего не поделаешь.
Хотя можно инвертировать - пусть пользовали стучатся на сервер по старому доброму HTTP, а твоё приложение это обслуживает.

Вообще встаёт вопрос, а нахрена такая архитектура? Зачем пользователю вообще запускать у себя твоё приложение? Ботнет мутишь?
Ответ написан