Канал appengine сообщений нет

Я пытаюсь заставить канал api работать. Это то, что у меня есть до сих пор:

в представлении:

def channel_test(channel_token): tries = 1 logging.info('starting channel_test') for attempt in range(tries): message = 'this is message number: ' + str(attempt) channel.send_message(channel_token, message) logging.info('just sent: ' + message) logging.info(channel_token) def viewfunc(): channel_token = channel.create_channel('aosasdf123') deferred.defer(channel_test, channel_token, _countdown=10) return render_template('Main/cycle.html', form=form, channel_token=channel_token) 

и в моем шаблоне:

 <script type="text/javascript" charset="utf-8"> function tell_user(message) { $('#CycleChannelMessages').append(message + '<br />'); } function onOpened() { console.log('onOpened'); var connected = true; tell_user('ready to take messages'); tell_user('{{ channel_token }}'); } function onMessage(msg_obj) { console.log('onMessage'); tell_user('something'); // tell_user(msg_obj.data); } function onError(obj) { console.log('onError'); } function onClose(obj) { console.log('onClose'); } var channel = new goog.appengine.Channel('{{ channel_token }}'); var socket = channel.open(); socket.onopen = onOpened; socket.onmessage = onMessage; socket.onerror = onError; socket.onclose = onClose; </script> - <script type="text/javascript" charset="utf-8"> function tell_user(message) { $('#CycleChannelMessages').append(message + '<br />'); } function onOpened() { console.log('onOpened'); var connected = true; tell_user('ready to take messages'); tell_user('{{ channel_token }}'); } function onMessage(msg_obj) { console.log('onMessage'); tell_user('something'); // tell_user(msg_obj.data); } function onError(obj) { console.log('onError'); } function onClose(obj) { console.log('onClose'); } var channel = new goog.appengine.Channel('{{ channel_token }}'); var socket = channel.open(); socket.onopen = onOpened; socket.onmessage = onMessage; socket.onerror = onError; socket.onclose = onClose; </script> 

Но единственный выход, который я получаю, – onOpen:

 ready to take messages channel-1788270053-aosasdf123 

И в консоли я вижу только:

 onOpened 

Поэтому никакой другой функции не было. Журналы из пусковой установки приложений ясно показывают, что отложенная функция запущена и не вызывает ошибок или предупреждений.

Теперь, что я сделал неправильно, потому что ничего не появляется в интерфейсе. Это на dev-server BTW. Я еще не пробовал его в производстве.

Framework – это фляжка, если это имеет значение.

One Solution collect form web for “Канал appengine сообщений нет”

Вы передаете client_id для send_message не send_message . Таким образом, ваш код должен быть:

 channel.send_message('aosasdf123', message) 

Вы размещаете клиентскую сторону channel_token для открытия канала и сохраняете секретную информацию client_id на стороне сервера для передачи сообщений этому клиенту по каналу.

  • Результат -1% 7 отличается в javascript (-1) и python (6)
  • Недопустимая ошибка области при попытке доступа к gmail api
  • ElementNotVisibleException: Сообщение: элемент в настоящее время не виден ... selenium (python)
  • Обход ответа скрипта при очистке веб-сайта с помощью запросов / BeautifulSoup
  • Можете ли вы использовать аргументы ключевого слова в Javascript или Python?
  • Java или любой другой язык: какой метод / класс вызывал мой?
  • как преобразовать холст в изображение для загрузки в колбу?
  • Обнаружение вывода консоли javascript с помощью python
  • Python - лучший язык программирования в мире.