Витой:TCP-сервер с примером производителя push?

StackOverflow https://stackoverflow.com/questions/1591787

  •  22-09-2019
  •  | 
  •  

Вопрос

Я хочу собрать простой TCP-сервер, используя Python и Twisted.

Сервер запускается и ждет подключения — у меня уже есть клиентское приложение, не являющееся Python.После установления соединения сервер начинает отправлять данные через определенный интервал (например,1 сек).

Сервер считывает данные из статического файла (по одной записи), я смогу разобраться в этой части.

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

У меня есть простой tcp-сервер с фабрикой в ​​скрученном состоянии, и я могу реагировать на ConnectionMade/dataReceived и т. д., но не могу понять. как подключить push-продюсер.

Кто-нибудь знает какие-нибудь примеры, показывающие производитель push-уведомлений с tcp-сервером в витом состоянии?

Это было полезно?

Решение

А как насчет чего-то упрощенного, например:

thedata = '''
Questa mattina
mi son svegliato
o bella ciao, bella ciao,
bella ciao, ciao, ciao
questa mattina
mi son svegliato
ho trovato l'invasor!
'''.splitlines(True)

class Push(protocol.Protocol):
    """This is just about the simplest possible protocol"""
    def connectionMade(self):
        for line in thedata:
          if not line or line.isspace():
            continue
          self.transport.write(line)
          time.sleep(1.0)
        self.transport.loseConnection()

Здесь жестко закодированы данные, но вы говорите, что чтение их из файла — не ваша проблема.Если вы расскажете нам, что не так с этим слишком упрощенным «push-сервером», возможно, мы сможем предложить лучшую помощь!-)

Другие советы

Здесь является полным примером производителя push-уведомлений.Он был добавлен в svn в качестве примера.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top