NEWS
IOBroker c Telegram и WhatsApp
-
Я думаю подход должен быть немного другой.
Отдельный драйвер для назначения команд в который мы будем слать текст, а вот текст в него слать уже можно не только через телеграм но например из pusbulleta или распозновалки голоса (Гугловской).
4746_x2.jpg
4746_x3.jpg
4746_x4.jpg
4746_x5.jpg -
Из статьи: Теперь можно создать бота (написать программу), который будет отвечать на Ваши вопросы, выполнять определнные команды и все это в окне переписки мессенджера Telegram.
Мне кажется то что нам нужно. Можно управлять умным домом при помощи команд. `
Вещь интересная, вот только у кого на это хватил сил и времени..) -
У телеграма есть https://core.telegram.org/api#getting-started, следовательно вероятность написания драйвера выше :)
Вот только не понимаю почему нет русского языка
-
Я наконец победил Telegram:
-
При попытке оправить сообщение:
sendTo('telegram', '@SpectreKr ' + 'PhoneNumber: ' + phoneNumber);Получил ошибку:
! TypeError: 2016-02-15 10:28:35 error at Manager.ondata (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:323:16)
! TypeError: 2016-02-15 10:28:35 error at Decoder.add (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/socket.io-parser/index.js:247:12)
! TypeError: 2016-02-15 10:28:35 error at Decoder.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/socket.io-parser/node_modules/component-emitter/index.js:134:20)
! TypeError: 2016-02-15 10:28:35 error at Decoder. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
! TypeError: 2016-02-15 10:28:35 error at Manager.ondecoded (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:333:8)
! TypeError: 2016-02-15 10:28:35 error at Manager.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:131:20)
! TypeError: 2016-02-15 10:28:35 error at Manager. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
! TypeError: 2016-02-15 10:28:35 error at Socket.onpacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:221:12)
! TypeError: 2016-02-15 10:28:35 error at Socket.onevent (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:263:10)
! TypeError: 2016-02-15 10:28:35 error at Socket.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:131:20)
! TypeError: 2016-02-15 10:28:35 error at Socket.StatesInMemClient.client.on.connectionTimeout (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInMemClient.js:45:30)
! TypeError: 2016-02-15 10:28:35 error at Object.that.states.States.change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:1951:34)
! TypeError: 2016-02-15 10:28:35 error at Adapter.emit (events.js:95:17)
! TypeError: 2016-02-15 10:28:35 error at Adapter.count (/opt/iobroker/node_modules/iobroker.telegram/main.js:24:14)
! TypeError: 2016-02-15 10:28:35 error at processMessage (/opt/iobroker/node_modules/iobroker.telegram/main.js:92:29)
! TypeError: 2016-02-15 10:28:35 error at sendMessage (/opt/iobroker/node_modules/iobroker.telegram/main.js:60:18)
! TypeError: 2016-02-15 10:28:35 error Cannot call method 'match' of undefined
! message 2016-02-15 10:28:35 error messagebox.system.adapter.telegram.0 [object Object] Cannot call method 'match' of undefined
! TypeError: 2016-02-15 10:28:35 error at Manager.ondata (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:323:16)
! TypeError: 2016-02-15 10:28:35 error at Decoder.add (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/socket.io-parser/index.js:247:12)
! TypeError: 2016-02-15 10:28:35 error at Decoder.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/socket.io-parser/node_modules/component-emitter/index.js:134:20)
! TypeError: 2016-02-15 10:28:35 error at Decoder. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
! TypeError: 2016-02-15 10:28:35 error at Manager.ondecoded (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:333:8)
! TypeError: 2016-02-15 10:28:35 error at Manager.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:131:20)
! TypeError: 2016-02-15 10:28:35 error at Manager. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
! TypeError: 2016-02-15 10:28:35 error at Socket.onpacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:221:12)
! TypeError: 2016-02-15 10:28:35 error at Socket.onevent (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:263:10)
! TypeError: 2016-02-15 10:28:35 error at Socket.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:131:20)
! TypeError: 2016-02-15 10:28:35 error at Socket.StatesInMemClient.client.on.connectionTimeout (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInMemClient.js:45:30)
! TypeError: 2016-02-15 10:28:35 error at Object.that.states.States.change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:1951:34)
! TypeError: 2016-02-15 10:28:35 error at Adapter.emit (events.js:95:17)
! TypeError: 2016-02-15 10:28:35 error at Adapter.count (/opt/iobroker/node_modules/iobroker.telegram/main.js:24:14)
! TypeError: 2016-02-15 10:28:35 error at processMessage (/opt/iobroker/node_modules/iobroker.telegram/main.js:92:29)
! TypeError: 2016-02-15 10:28:35 error at sendMessage (/opt/iobroker/node_modules/iobroker.telegram/main.js:60:18)
! TypeError: 2016-02-15 10:28:35 error Cannot call method 'match' of undefined
! message 2016-02-15 10:28:35 error messagebox.system.adapter.telegram.0 [object Object] Cannot call method 'match' of undefined
Или UserName надо указывать не регистрационый логин, а имя которое записанно в переменной telegram.INSTANCE.communicate.request?При отправке сообщения без указывания имени пользователя:
! TypeError: 2016-02-15 10:40:29 error at Manager.ondata (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:323:16)
! TypeError: 2016-02-15 10:40:29 error at Decoder.add (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/socket.io-parser/index.js:247:12)
! TypeError: 2016-02-15 10:40:29 error at Decoder.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/socket.io-parser/node_modules/component-emitter/index.js:134:20)
! TypeError: 2016-02-15 10:40:29 error at Decoder. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
! TypeError: 2016-02-15 10:40:29 error at Manager.ondecoded (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:333:8)
! TypeError: 2016-02-15 10:40:29 error at Manager.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:131:20)
! TypeError: 2016-02-15 10:40:29 error at Manager. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
! TypeError: 2016-02-15 10:40:29 error at Socket.onpacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:221:12)
! TypeError: 2016-02-15 10:40:29 error at Socket.onevent (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:263:10)
! TypeError: 2016-02-15 10:40:29 error at Socket.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:131:20)
! TypeError: 2016-02-15 10:40:29 error at Socket.StatesInMemClient.client.on.connectionTimeout (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInMemClient.js:45:30)
! TypeError: 2016-02-15 10:40:29 error at Object.that.states.States.change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:1951:34)
! TypeError: 2016-02-15 10:40:29 error at Adapter.emit (events.js:95:17)
! TypeError: 2016-02-15 10:40:29 error at Adapter.count (/opt/iobroker/node_modules/iobroker.telegram/main.js:24:14)
! TypeError: 2016-02-15 10:40:29 error at processMessage (/opt/iobroker/node_modules/iobroker.telegram/main.js:92:29)
! TypeError: 2016-02-15 10:40:29 error at sendMessage (/opt/iobroker/node_modules/iobroker.telegram/main.js:60:18)
! TypeError: 2016-02-15 10:40:29 error Cannot call method 'match' of undefined
! message 2016-02-15 10:40:29 error messagebox.system.adapter.telegram.0 [object Object] Cannot call method 'match' of undefined:oops: <size size="85">небольшой баг репорт</size>
-
При попытке оправить сообщение:
sendTo('telegram', '@SpectreKr ' + 'PhoneNumber: ' + phoneNumber);:oops: <size size="85">небольшой баг репорт</size> `
Ну так можешь перенять разработку :)Поменяй строчку:
https://github.com/ioBroker/ioBroker.te … ain.js#L92
на````
count = sendMessage(obj.message);Нужно ещё реализовать поддержку WebHooks и специальных команд: /restart, /list instances, /restart instance … P.S. Что бы получать сообщения нужно один раз ввести пароль или один раз прислать сообщение из клиента, что бы можно было узнать ID пользователя. -
Перенять к сожалению не смогу, не так силен в javascript, мне понадобилось полтора дня чтоб запустить драйвер пустой, и создать первую переменную, а данные занести не смог.
И я смотрю вы сами пишете полностью API, а я взял готовое API и из него думал прикручивать нужные функции.
Сообщение я отписал ему, он в получил имя клиента. Это я сразу сделал, так как у Telegram такие правила.
После исправления заработало и с именем и просто текст.
-
Кстати, а может WebHooks отложить до момента когда времени свободного побольше будет, там нюанс что надо легитимный не само подписанный сертификат, я не думаю что здесь много пользователей которые смогут получить такой сертификат? А в первую очередь заняться специальными командами.
-
Кстати, а может WebHooks отложить до момента когда времени свободного побольше будет, там нюанс что надо легитимный не само подписанный сертификат, я не думаю что здесь много пользователей которые смогут получить такой сертификат? А в первую очередь заняться специальными командами. `
Телеграмм с осени разрешает самоподписанные сертификаты.Я api не сам пишу, а использую готовый модуль. Который тоже не без изъяна
-
После обновления потерял существующий чат, пришлось опять написать боту чтоб он начал слать сообщения. И появились варнинги
! WARNING: 2016-02-16 14:06:23 error cannot find message with id = 5677
! WARNING: 2016-02-16 14:06:23 error cannot find message with id = 5676
! WARNING: 2016-02-16 14:06:23 error cannot find message with id = 5675
! javascript-0 2016-02-16 14:06:22 info sendTo "send"…. -
А если взять api https://github.com/yagop/node-telegram-bot-api? Там webhook реализован, да и много чего другого. Лицензия тоже MIT.
-
А если взять api https://github.com/yagop/node-telegram-bot-api? Там webhook реализован, да и много чего другого. Лицензия тоже MIT. `
Я его и взял.
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden

