как общаться между двумя клиентами с помощью API канала?

Я успешно реализовал канал API для создания соединения между браузером и сервером ядра приложения. Я хочу спросить, как будет отправляться сообщение от второго клиента к первому клиенту. Я не понимаю реального алгоритма.


person omerjerk    schedule 07.08.2013    source источник


Ответы (1)


Client_id, который вы использовали для создания подключения к серверу ядра приложения, — это то, что вам нужно для отправки сообщения другому client_id. Либо сохраните это в хранилище данных, либо его можно создать по их идентификатору, но вам все равно понадобится какой-то способ узнать, например, что такое другой client_id:

Создать комнату:

room = models.Room(user=user_id)
room.put()
token = channel.create_channel(room.key.id() + user_id)

Другой присоединяется к комнате:

room = models.Room.query().get()
room.another_user = user_id
room.put()
token = channel.create_channel(room.key.id() + user_id)

Затем передайте идентификатор комнаты и токен для ссылки на ваш js, чтобы отправить сообщение:

room = models.Room.get_by_id(room_id)
send_to = room.user if room.user != user_id else room.other_user
channel.send_message(room.key.id() + send_to, message)

Обратите внимание, что user_id в каждом примере — это текущий подключенный пользователь.

person Faisal    schedule 07.08.2013