Как получить тессельский микроконтроллер для подключения к firebase
Я пытаюсь подключить свой тессель к базе, и я все перепробовал. У кого-нибудь еще есть подобная проблема? Я читал, что в тесселе используются веб-сокеты, отличные от firebase, но я действительно новичок и мало что знаю об этом. Кто-нибудь может мне помочь?
3 ответа
Рад слышать, что люди заинтересованы в использовании Firebase с Tessel. Я один из инженеров Firebase, который работал с ребятами из Tessel, чтобы это произошло. Есть два сообщения форума Tessel, которые дают более подробную информацию о проблеме:
Пакеты узлов Firebase используют faye-websockets, которые компилятор Tessel не может поддерживать. Мы получили nodejs-websockets для компиляции и создали версию библиотеки Firebase для проверки концепции. Я мог читать и писать из Firebase, используя Tessel, но мы очень не решались выпустить отдельную версию Firebase для NPM только для использования на Tessel, тем более что nodejs-websockets не так хорошо поддерживается, как faye-websockets. Затем я провел вечер, работая с ребятами из Tessel, чтобы заставить работать faye-websockets, и теперь он компилируется с изменениями в ветке (tessel/runtime/JH-HTTPParser). У меня нет временных рамок для их объединения в Master и отправки в производство, но я знаю, что существует большое количество API на основе SSL и веб-сокетов, которые ожидают этих изменений, чтобы попасть в основную ветку.
TL; DR: Firebase компилируется на Tessel (вы можете создать код из вышеприведенной ветки), и он может либо читать, либо записывать (не оба одновременно). Когда у меня будет больше времени, я буду отлаживать Tessel + Firebase, чтобы заставить это работать правильно.
С приобретением у меня не было много времени, чтобы попробовать. В прошлый раз, когда я проверял, что-то компилировалось и выполнялось для некоторых операций (я не все проверял), если мы использовали неминифицированную версию библиотеки Firebase (в настоящее время не предоставляется конечным пользователям). Проблема здесь в том, что минификация помещает все переменные в одну строку, а виртуальная машина Tessel Lua будет жаловаться на то, что существует более 200 переменных, и ей это не понравится. Я могу поэкспериментировать с этим в течение следующей недели и посмотреть, где что будет, иначе я могу проверить связь с Джоном и ребятами из Tessel, чтобы узнать, как мы можем лучше решить эту проблему.
Я использую SynergyKit для общения в реальном времени. Вы можете скачать библиотеку Node.js, которая полностью поддерживается платформой tessel и использует библиотеку websocket, которая является одной из немногих библиотек, написанных на чистом javascript.
Вы сможете вживую наблюдать за всеми данными в коллекциях и отправлять сообщения. Есть документация для Node.js.