@frendri

Что мне передать в data?

Добрый вечер. Есть рабочий код на Node.js:
// first, install the pusher-client library via "npm install pusher-client@1.1.0"

var Pusher = require('pusher-client');

var pusher = new Pusher('c0eef4118084f8164bec65e6253bf195', {
        encrypted: true,
        wsPort: 443,
        wssPort: 443,
        host: 'notifier.bitskins.com'
    });

pusher.connection.bind('connected', function() {
        // connected to realtime updates 
        console.log(" -- connected to websocket");
    });

pusher.connection.bind('disconnected', function() {
        // not connected to realtime updates
        console.log(" -- disconnected from websocket");
    });

var events_channel = pusher.subscribe('inventory_changes'); // use the relevant channel, see docs below
events_channel.bind('extra_info', function(data) {
        // use the relevant event type, see docs below
        // print out any data received for the given event type
        console.log(" -- got data: " + JSON.stringify(data)); // Что это а data?
    });

И есть не совсем рабочий код на Python:
import pusherclient
import json
import logging
pusher = pusherclient.Pusher('c0eef4118084f8164bec65e6253bf195', port=443)
def ok():
	print('Connected')
	logging.info('Connected')

def let(data):
	print('got info' + json.dumps(data, separators=(',', ':')))


pusher.connection.bind('connected', ok())

event_channel = pusher.subscribe('inventory_changes')
event_channel.bind('extra_info', callback=let())  # Что мне нужно передать??

Не могу понять, что мне нужно передать в data, т.к. не понимаю откуда она берется в node.js
  • Вопрос задан
  • 340 просмотров
Решения вопроса 1
@Taus
По аргументу callback передаётся функция, её не надо там вызывать.
event_channel.bind('extra_info', callback=let)

#update
У вас в pusher.connection.bind('connected', ok()) аналогичная ошибка. Надо передавать просто ok.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@Nikita_yas
Использовал код с вашими изменениями:
import pusherclient
import json
import logging
pusher = pusherclient.Pusher('c0eef4118084f8164bec65e6253bf195', port=443)
def ok():
  print('Connected')
  logging.info('Connected')

def let(data):
  print('got info' + json.dumps(data, separators=(',', ':')))


pusher.connection.bind('connected', ok)

event_channel = pusher.subscribe('inventory_changes')
event_channel.bind('extra_info', callback=let)  # Что мне нужно передать??


Выдает такую ошибку, не подскажете что это может значить?

INFO:pusherclient.connection:Connection: Sending event - {'event': 'pusher:subscribe', 'data': {'channel': 'inventory_changes'}}
Connected
ERROR:pusherclient.connection:Failed send event: 'NoneType' object has no attribute 'send'
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы