Autor Thema: msgDialog: Instant Messaging als FHEM Interface  (Gelesen 76665 mal)

Offline TM4889

  • New Member
  • *
  • Beiträge: 19
Antw:msgDialog: Instant Messaging als FHEM Interface
« Antwort #600 am: 02 März 2019, 09:45:12 »
Ich stehe gerade etwas auf dem Schlauch bei dem Inline-Keyboard. Im Meta Dialog wird %me% als Inline-Keyboard angezeigt, jedoch funktioniert nichts wenn ich drauf klicke. Habe auch schon bereits "(%me%:%me%)" ausprobiert, ohne erfolgt. Kann mir jemand von euch weiterhelfen und schauen was ich bei meiner Definition übersehen habe?


mein Meta Dialog
Internals:
   CFGFN      /opt/fhem/config_cfg/Test-Funktionen.cfg
   DEF        {
"%me%": {
"match": "\/?(start|%me%)",
"commands": "deletereading TYPE=msgDialog $recipient_history",
"message": [
"{return('(' . join(') (', sort{lc($a) cmp lc($b)} (split('\n', fhem('get TYPE=msgDialog:FILTER=NAME!=$SELF:FILTER=allowed=.*($recipient|everyone).* trigger', 1)))) . ') (abbrechen) ')}",
"Ich kann folgendes für dich tun:"
]
},
"Zurück": {
"commands": "set $recipient_history=.+ say @$recipient {(ReadingsVal($DEV, '$recipient_history', '') =~ m/((.+)\\|.+$)/;; return($2 || $1);;)}"
},
"Abbrechen": {
"match": "\/?abbrechen",
"commands": "deletereading TYPE=msgDialog $recipient_history",
"message": [
"TelegramBot_MTYPE=queryInline (%me%) ",
"Dialog abgebrochen."
]
},
"Beenden": {
"match": "\/?beenden",
"commands": "deletereading TYPE=msgDialog $recipient_history",
"message": [
"TelegramBot_MTYPE=queryInline (%me%:%me%) ",
"Dialog beendet."
]
}
}
   FUUID      5c7a3f7e-f33f-31dd-5434-13278f6e258f01b3
   MSGCOMMAND msg push \@$recipients $message
   NAME       Main_MsgDialog
   NOTIFYDEV  TYPE=(ROOMMATE|GUEST)
   NR         1294
   NTFY_ORDER 50-Main_MsgDialog
   STATE      rr.Marcus: abbrechen
   TRIGGER    Beenden,Zurück,Abbrechen,start
   TYPE       msgDialog
   OLDREADINGS:
   READINGS:
     2019-03-02 09:33:44   state           rr.Marcus: abbrechen
Attributes:
   allowed    everyone


mein Roommate
Internals:
   CFGFN      /opt/fhem/config_cfg/Homestatus_rgr.Bewohner_rr.Marcus.cfg
   CHANGED   
   DEF        rgr.Bewohner
   DURATIONTIMER 1551515955.04479
   FUUID      5c7a3f80-f33f-31dd-38bd-24b10b168609b931
   NAME       rr.Marcus
   NOTIFYDEV  global,BT_Tag.Marcus
   NR         1421
   NTFY_ORDER 50-rr.Marcus
   READY      1
   RESIDENTGROUPS rgr.Bewohner
   STATE      ???
   TYPE       ROOMMATE
   VERSION    20_ROOMMATE.pm:v0.0.18681/2019-02-21
   READINGS:
     2019-02-21 19:59:52   durTimerAbsence 00:00:00
     2019-02-21 19:59:52   durTimerAbsence_cr 0
     2019-02-21 19:59:52   durTimerPresence 00:00:00
     2019-02-21 19:59:52   durTimerPresence_cr 0
     2019-02-21 19:59:52   durTimerSleep   00:00:00
     2019-02-21 19:59:52   durTimerSleep_cr 0
     2019-03-02 09:33:45   fhemMsgPush     (start)
Dialog abgebrochen.
     2019-03-02 09:33:45   fhemMsgPushGw    TelegramBot:@XXXXXXXXX:OK
     2019-03-02 09:33:45   fhemMsgPushPrio 0
     2019-03-02 09:33:45   fhemMsgPushState 1
     2019-03-02 09:33:45   fhemMsgPushTitle -
     2019-03-02 09:33:44   fhemMsgRcvPush  abbrechen
     2019-03-02 09:33:44   fhemMsgRcvPushGw TelegramBot
     2019-03-02 09:33:45   fhemMsgState    1
     2019-03-02 09:33:45   fhemMsgStateTypes push:1
   TIMER:
     rr.Marcus_DurationTimer:
       HASH       rr.Marcus
       MODIFIER   DurationTimer
       NAME       rr.Marcus_DurationTimer
Attributes:
   alias      Marcus
   devStateIcon .*zuhause:user_available:absent .*anwesend:user_available:absent .*abwesend:user_away:home .*verreist:user_ext_away:home .*bettfertig:scene_toilet:asleep .*schlaeft:scene_sleeping:awoken .*aufgestanden:scene_sleeping_alternat:home .*:user_unknown:home
   eventMap   home:zuhause absent:abwesend gone:verreist gotosleep:bettfertig asleep:schlaeft awoken:aufgestanden
   group      Bewohner
   icon       people_sensor
   msgContactPush TelegramBot:@XXXXXXXXX
   room       Homestatus
   rr_presenceDevices BT_Tag.Marcus
   rr_realname alias
   webCmd     state
   widgetOverride state:zuhause,bettfertig,schlaeft,aufgestanden,abwesend,verreist


mein Bot
Internals:
   CFGFN      /opt/fhem/config_cfg/Service_Message.cfg
   CHANGED   
   DEF       
   FAILS      0
   FUUID      5c7a3f7b-f33f-31dd-11ca-d411b41fea09434f
   NAME       TelegramBot
   NR         761
   OLD_POLLING 12
   POLLING    12
   SNAME      TelegramBot
   STATE      Polling
   TYPE       TelegramBot
   UPDATER    0
   WAIT       0
   me         XXXXXXXXX:SmartHomeCCU:@SmartHomeCCU_bot
   offset_id  XXXXXXXXX
   sentLastResult SUCCESS
   sentMsgId  2880
   sentMsgOptions
   sentMsgPeer Marcus
   sentMsgPeerId XXXXXXXXX
   sentMsgResult SUCCESS
   sentMsgText
Dialog abgebrochen.
   AliasCmds:
   Contacts:
     XXXXXXXXX  XXXXXXXXX:Marcus:
   HU_DO_PARAMS:
     NAME       
     addr       https://api.telegram.org:443
     auth       0
     boundary   TelegramBot_boundary-x0123
     buf       
     code       200
     compress   1
     conn       
     data       
     displayurl <hidden>
     header     agent: TelegramBot/1.0
User-Agent: TelegramBot/1.0
Accept: application/json
Accept-Charset: utf-8
Content-Type: multipart/form-data; boundary=TelegramBot_boundary-x0123
     hideurl    1
     host       api.telegram.org
     httpheader HTTP/1.1 200 OK
Server: nginx/1.12.2
Date: Sat, 02 Mar 2019 08:33:45 GMT
Content-Type: application/json
Content-Length: 266
Connection: close
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: GET, POST, OPTIONS
Access-Control-Expose-Headers: Content-Length,Content-Type,Date,Server,Connection
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
     hu_blocking 0
     hu_filecount 1
     hu_port    443
     hu_portSfx
     loglevel   4
     method     POST
     path       /bot780003243:AAHZZpvq-uKMarNXYzVCeOL8H3PFuFktofc/sendMessage
     protocol   https
     redirects  0
     timeout    30
     url        https://api.telegram.org/bot780003243:AAHZZpvq-uKMarNXYzVCeOL8H3PFuFktofc/sendMessage
     args:
       XXXXXXXXX
Dialog abgebrochen.
       {"inline_keyboard":[[{"callback_data":"start","text":"start"}]]}
       0
       undef
       
       1
     hash:
     sslargs:
   HU_UPD_PARAMS:
     FD         11
     NAME       
     addr       https://api.telegram.org:443
     auth       0
     buf       
     code       200
     compress   1
     displayurl <hidden>
     header     agent: TelegramBot/1.0
User-Agent: TelegramBot/1.0
Accept: application/json
Accept-Charset: utf-8
     hideurl    1
     host       api.telegram.org
     hu_blocking 0
     hu_filecount 11
     hu_port    443
     hu_portSfx
     isPolling  update
     loglevel   4
     method     GET
     offset     XXXXXXXXX
     path       /bot780003243:AAHZZpvq-uKMarNXYzVCeOL8H3PFuFktofc/getUpdates?offset=200413272&limit=5&timeout=120
     protocol   https
     redirects  0
     timeout    245
     url        https://api.telegram.org/bot780003243:AAHZZpvq-uKMarNXYzVCeOL8H3PFuFktofc/getUpdates?offset=200413272&limit=5&timeout=120
     hash:
     sslargs:
   READINGS:
     2019-03-02 09:31:55   Contacts        XXXXXXXXX:Marcus:
     2019-03-02 00:00:48   PollingErrCount 0
     2019-02-21 19:58:33   PollingLastError NonBlockingGet timed out on read from <hidden> after 245s
     2019-03-02 08:59:52   StoredCommands  FHEM set WZ.HKTH.001_Control controlMode auto
start

     2019-03-02 09:33:44   msgChat         Marcus
     2019-03-02 09:33:44   msgChatId       XXXXXXXXX
     2019-03-02 09:33:44   msgFileId       
     2019-03-02 09:33:44   msgId           2879
     2019-03-02 09:33:44   msgPeer         Marcus
     2019-03-02 09:33:44   msgPeerId       XXXXXXXXX
     2019-03-02 09:33:44   msgReplyMsgId   
     2019-03-02 09:33:44   msgText         abbrechen
     2019-03-02 09:33:44   prevMsgChat     Marcus
     2019-03-02 09:33:44   prevMsgFileId   
     2019-03-02 09:33:44   prevMsgId       2877
     2019-03-02 09:33:44   prevMsgPeer     Marcus
     2019-03-02 09:33:44   prevMsgPeerId   XXXXXXXXX
     2019-03-02 09:33:44   prevMsgReplyMsgId
     2019-03-02 09:33:44   prevMsgText     Berechtigungen
     2019-03-02 09:33:46   queryData       start
     2019-03-02 09:33:46   queryID         2961880442298486279
     2019-03-02 09:33:46   queryPeer       Marcus
     2019-03-02 09:33:46   queryPeerId     XXXXXXXXX
     2019-03-02 09:33:46   queryReplyMsgId 2880
     2019-03-02 09:33:45   sentMsgId       2880
     2019-03-02 09:33:45   sentMsgPeerId   XXXXXXXXX
     2019-03-02 09:33:45   sentMsgResult   SUCCESS
   inlinechats:
   sentQueue:
Attributes:
   alias      Telegram
   allowUnknownContacts 0
   cmdFavorites /cmd
   cmdKeyword FHEM
   cmdRestrictedPeer XXXXXXXXX
   defaultPeer XXXXXXXXX
   event-on-change-reading state
   event-on-update-reading msgText
   favorites  /[WZTemp_20]=set WZ.HKTH.001_Clima desired-temp 20.0;
/[WZTemp_23]=set WZ.HKTH.001_Clima desired-temp 23.0;
/[BADTemp_20]=set BAD.HKTH.001_Clima desired-temp 20.0;
/[BADTemp_25]=set BAD.HKTH.001_Clima desired-temp 25.0;
   favorites2Col 1
   group      Message-Service
   parseModeSend 1_Markdown
   pollingTimeout 120
   room       System
   utf8Special 1

Offline binford6000

  • Tester
  • Hero Member
  • ****
  • Beiträge: 1072
  • 🏠⚙️💡🛠📱
Antw:msgDialog: Instant Messaging als FHEM Interface
« Antwort #601 am: 02 März 2019, 09:50:19 »
Moin,
dein msgConfig device wäre noch interessant...
Und hast du schon eigene Dialoge erstellt?

VG Sebastian
FHEM 5.9 auf Ubuntu LTS-LXC unter Proxmox, IOserver für deconz + CUL via ser2net, Testumgebung: docker pull fhem/fhem
SONOS, alexa-fhem, homebridge, TelegramBot mit msgDialog, livetracking

Offline TM4889

  • New Member
  • *
  • Beiträge: 19
Antw:msgDialog: Instant Messaging als FHEM Interface
« Antwort #602 am: 02 März 2019, 10:06:23 »
Ich habe bereits eigene Dialoge erstellt, unter anderem auch einen mit einem Ziffernblock, welcher ebenfalls über ein Inline-Keyboard laufen soll.

mein msgConfig
Internals:
   CFGFN      /opt/fhem/config_cfg/Service_Message.cfg
   FUUID      5c7a46ae-f33f-31dd-4d29-eca3aac0bf5c581b
   NAME       globalMsg
   NOTIFYDEV  TYPE=(Jabber|TelegramBot|yowsup)
   NR         752
   NTFY_ORDER 50-globalMsg
   STATE      ???
   TYPE       msgConfig
   VERSION    75_msgConfig.pm:v0.0.18681/2019-02-21
   READINGS:
     2019-02-28 19:58:36   fhemMsgPush     (%me%) aaaa
     2019-02-28 19:58:36   fhemMsgPushGw   TelegramBot:OK
     2019-02-28 19:58:36   fhemMsgPushPrio 0
     2019-02-28 19:58:36   fhemMsgPushState 1
     2019-02-28 19:58:36   fhemMsgPushTitle -
     2019-02-28 19:58:36   fhemMsgState    1
     2019-02-28 19:58:36   fhemMsgStateTypes push:1 forwards:text>push
Attributes:
   group      Global
   msgContactPush TelegramBot
   msgDialog_evalSpecials me=start
TelegramBot=TelegramBot
   room       System
   userattr   msgDialog_evalSpecials:textField-long msgDialog_msgCommand:textField

Offline binford6000

  • Tester
  • Hero Member
  • ****
  • Beiträge: 1072
  • 🏠⚙️💡🛠📱
Antw:msgDialog: Instant Messaging als FHEM Interface
« Antwort #603 am: 02 März 2019, 10:13:51 »
Der cmdalias "message2queryEditInline" ist auch nicht disabled?
FHEM 5.9 auf Ubuntu LTS-LXC unter Proxmox, IOserver für deconz + CUL via ser2net, Testumgebung: docker pull fhem/fhem
SONOS, alexa-fhem, homebridge, TelegramBot mit msgDialog, livetracking

Offline TM4889

  • New Member
  • *
  • Beiträge: 19
Antw:msgDialog: Instant Messaging als FHEM Interface
« Antwort #604 am: 02 März 2019, 10:23:57 »
Der cmdalias "message2queryEditInline" ist auch nicht disabled?

Ist dieser notwendig? Dieser ist doch nur zum Versenden und nicht zum Empfang notwendig. Oder liege ich da falsch?

Offline binford6000

  • Tester
  • Hero Member
  • ****
  • Beiträge: 1072
  • 🏠⚙️💡🛠📱
Antw:msgDialog: Instant Messaging als FHEM Interface
« Antwort #605 am: 02 März 2019, 10:35:37 »
Ich schalte mit einem notify von normal auf Inline Keyboard um:
inline_normal.DUM:.* {
if ("$EVENT" =~ "on") {
  fhem("set sentMsgIdByPeerId active; attr message2queryEditInline disable 0");
  }
elsif ("$EVENT" =~ "off") {
  fhem("set sentMsgIdByPeerId inactive; attr message2queryEditInline disable 1");
  }
}
Wobei ich das ewig nicht mehr gemacht habe. Finde gerade das Inline Keyboard bei Telegram super!
VG Sebastian
FHEM 5.9 auf Ubuntu LTS-LXC unter Proxmox, IOserver für deconz + CUL via ser2net, Testumgebung: docker pull fhem/fhem
SONOS, alexa-fhem, homebridge, TelegramBot mit msgDialog, livetracking

Offline TM4889

  • New Member
  • *
  • Beiträge: 19
Antw:msgDialog: Instant Messaging als FHEM Interface
« Antwort #606 am: 02 März 2019, 10:43:35 »
Ich schalte mit einem notify von normal auf Inline Keyboard um:
inline_normal.DUM:.* {
if ("$EVENT" =~ "on") {
  fhem("set sentMsgIdByPeerId active; attr message2queryEditInline disable 0");
  }
elsif ("$EVENT" =~ "off") {
  fhem("set sentMsgIdByPeerId inactive; attr message2queryEditInline disable 1");
  }
}
Wobei ich das ewig nicht mehr gemacht habe. Finde gerade das Inline Keyboard bei Telegram super!
VG Sebastian

Siehe meine vorherige Antwort #604
Ich schalte im MsgDialog auf Inline um, in dem ich vor den Button "TelegramBot_MTYPE=queryInline" setze. Das funktioniert auch soweit, nur bekomm ich es nicht hin, dass der MsgDialog auf "queryData" vom TelegramBot triggert.

Offline binford6000

  • Tester
  • Hero Member
  • ****
  • Beiträge: 1072
  • 🏠⚙️💡🛠📱
Antw:msgDialog: Instant Messaging als FHEM Interface
« Antwort #607 am: 02 März 2019, 10:52:45 »
Hmm da kann ich dir leider nicht weiterhelfen.
Aber vielleicht haben die anderen msgDialog-Junkies noch eine Idee...  ;)
VG Sebastian
FHEM 5.9 auf Ubuntu LTS-LXC unter Proxmox, IOserver für deconz + CUL via ser2net, Testumgebung: docker pull fhem/fhem
SONOS, alexa-fhem, homebridge, TelegramBot mit msgDialog, livetracking

Offline TM4889

  • New Member
  • *
  • Beiträge: 19
Antw:msgDialog: Instant Messaging als FHEM Interface
« Antwort #608 am: 02 März 2019, 11:15:44 »
Habe mir e mal etwas genauer angeschaut. Der MsgDialog trigger nur auf "TYPE=(ROOMMATE|GUEST)"-Devices, also nicht direkt auf den TelegramBot. Somit müsste der Fehler doch im ROOMMATE Device liegen? Aber laut Logfile triggert ROOMATE auf nicht auf die queryData vom Bot.

Offline binford6000

  • Tester
  • Hero Member
  • ****
  • Beiträge: 1072
  • 🏠⚙️💡🛠📱
Antw:msgDialog: Instant Messaging als FHEM Interface
« Antwort #609 am: 02 März 2019, 11:19:14 »
Dann probier mal
attr rr.Marcus event-on-update-reading fhemMsgRcvPushVG Sebastian
FHEM 5.9 auf Ubuntu LTS-LXC unter Proxmox, IOserver für deconz + CUL via ser2net, Testumgebung: docker pull fhem/fhem
SONOS, alexa-fhem, homebridge, TelegramBot mit msgDialog, livetracking

Offline TM4889

  • New Member
  • *
  • Beiträge: 19
Antw:msgDialog: Instant Messaging als FHEM Interface
« Antwort #610 am: 02 März 2019, 11:39:12 »
Dann probier mal
attr rr.Marcus event-on-update-reading fhemMsgRcvPushVG Sebastian

Bringt auch nichts, da die queryData vom Bot nicht in das Reading geschrieben werden.

Fehler gefunden 😏
« Letzte Änderung: 02 März 2019, 11:57:10 von TM4889 »

Offline Wolle02

  • Full Member
  • ***
  • Beiträge: 247
Antw:msgDialog: Instant Messaging als FHEM Interface
« Antwort #611 am: 02 März 2019, 17:24:48 »
Zitat
Fehler gefunden 😏

Und möchtest du vielleicht gerne andere User, die eventuell das gleiche Problem haben an deiner Lösung teilhaben lassen?

Offline TM4889

  • New Member
  • *
  • Beiträge: 19
Antw:msgDialog: Instant Messaging als FHEM Interface
« Antwort #612 am: 03 März 2019, 00:05:48 »
Und möchtest du vielleicht gerne andere User, die eventuell das gleiche Problem haben an deiner Lösung teilhaben lassen?

Gern, die Fehlerquelle saß wie so oft vorm Bildschirm  :-\

attr TelegramBot event-on-change-reading state
attr TelegramBot event-on-update-reading msgText

Da war es kein Wunder, dass nichts auf "queryData" getriggert wurde.

Offline toensi

  • Jr. Member
  • **
  • Beiträge: 60
Antw:msgDialog: Instant Messaging als FHEM Interface
« Antwort #613 am: 10 März 2019, 10:06:35 »
Hallo zusammen,
ich würde gerne das Modul mit Pushbullet nutzen, bekommen jedoch immer eine Fehlermeldung beim Gateway, please help :=)

fhemMsgPushGw Pushbullet:UNDEFINED aber es ist doch da :
5c592822-f33f-c225-5839-14874032f9cbcbb6
LAST_PUSH   2019-03-10 09:27:57 NAME  push  NR  73 STATE Initialized TYPE Pushbullet Readings state Initialized

Besten Dank vorab ! :=)

Offline igami

  • Developer
  • Hero Member
  • ****
  • Beiträge: 2671
  • RTFM
    • commandref
Antw:msgDialog: Instant Messaging als FHEM Interface
« Antwort #614 am: 10 März 2019, 17:37:38 »
Hallo zusammen,
ich würde gerne das Modul mit Pushbullet nutzen, bekommen jedoch immer eine Fehlermeldung beim Gateway, please help :=)

fhemMsgPushGw Pushbullet:UNDEFINED aber es ist doch da :
5c592822-f33f-c225-5839-14874032f9cbcbb6
LAST_PUSH   2019-03-10 09:27:57 NAME  push  NR  73 STATE Initialized TYPE Pushbullet Readings state Initialized

Besten Dank vorab ! :=)
also geht der msg Befehl schon nicht? Dann bitte an den Maintainer von msg wenden
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im August 2019.

MAINTAINER: archetype, Heating_Control, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap, RandomTimer, WeekdayTimer
ToDo: adb, FluxLED