NEWS
Telegram keyboard Variable
-
Hallo zusammen,
arbeite mich als Neuling in die Welt von iobrocker ein.
Mit Java stehe ich bis jetzt noch auf Kriegsfuß.
Hoffe deshalb auf mithilfe.
Derzeit probiere ich in einem Javascript das an Telegram die Buttons (Ja/Nein) schickt, den Text der Buttons (Ja/Nein) als Variable zu definieren.
Die Variable würde ich dann über Blockly füllen sofern es sowas wie Public Variable gibt.
Alternativ könnten auch Datenpunkte statt Variable helfen.sendTo('telegram.0', { text: 'Bitte wähle ein Button', reply_markup: { keyboard: [ ['Ja', 'Nein'], ], resize_keyboard: true, one_time_keyboard: true } });
Vielen Dank u. Gruß,
-
@Ballazonk
Es gibt keine globalen Variablen, aber wie du schon sagst States.// die State werden nicht sofort erzeugt, wird also beim ersten Durchlauf wohl nicht funktionieren. createState('javascript.0.var1'); createState('javascript.0.var2'); sendTo('telegram', { text: 'Bitte wähle ein Button', reply_markup: { keyboard: [ [getState('javascript.0.var1').val, getState('javascript.0.var2').val], ], resize_keyboard: true, one_time_keyboard: true } });
und dann noch was zum auslesen der Antwort, ist aber noch nix drin um selbst geschriebenes abzufangen
createState('javascript.0.msg'); on({id:'telegram.0.communicate.request',change:"any",ack:false}, function(obj){ var msg = obj.state.val; var user = msg.substring(1,msg.indexOf(']')); msg = msg.substring(msg.indexOf(']')+1,msg.length); console.log(msg); setState('javascript.0.msg',msg); sendTo('telegram', { user: user, answerCallbackQuery: { text: "Pressed!", showAlert: false // Optional parameter } }) }
EDIT beachten
EDIT2 im ersten Teil fehlt noch der user. -
@ticaki
Vielen Dank für die Antwort.
Das Funktioniert top und macht das Ganze sehr viel komfortabler.
So langsam komme ich in die Thematik rein und kann es auch nachvollziehen, für mich persönlich sehr wichtig.Dank u. viele Gruß