class Xasin::Telegram::MQTT::Server
Attributes
usernameList[RW]
Public Class Methods
new(httpCore, mqtt)
click to toggle source
Calls superclass method
Xasin::Telegram::GroupingAdapter::new
# File lib/xasin/telegram/MQTT_Adapter.rb, line 11 def initialize(httpCore, mqtt) super(httpCore); @mqtt = mqtt; setup_mqtt(); end
Public Instance Methods
on_callback_pressed(data, uID)
click to toggle source
Calls superclass method
Xasin::Telegram::GroupingAdapter#on_callback_pressed
# File lib/xasin/telegram/MQTT_Adapter.rb, line 66 def on_callback_pressed(data, uID) super(data, uID); @mqtt.publish_to "Telegram/#{uID}/KeyboardPress", data.to_json end
on_command(data, uID)
click to toggle source
Calls superclass method
Xasin::Telegram::GroupingAdapter#on_command
# File lib/xasin/telegram/MQTT_Adapter.rb, line 58 def on_command(data, uID) super(data, uID); @mqtt.publish_to "Telegram/#{uID}/Command", data.to_json; end
on_message(data, uID)
click to toggle source
Calls superclass method
Xasin::Telegram::GroupingAdapter#on_message
# File lib/xasin/telegram/MQTT_Adapter.rb, line 54 def on_message(data, uID) super(data, uID); @mqtt.publish_to "Telegram/#{uID}/Received", data.to_json; end
on_reply(data, uID)
click to toggle source
Calls superclass method
Xasin::Telegram::GroupingAdapter#on_reply
# File lib/xasin/telegram/MQTT_Adapter.rb, line 62 def on_reply(data, uID) super(data, uID); @mqtt.publish_to "Telegram/#{uID}/Reply", data.to_json; end
setup_mqtt()
click to toggle source
# File lib/xasin/telegram/MQTT_Adapter.rb, line 18 def setup_mqtt() @mqtt.subscribe_to "Telegram/+/Send" do |data, tSplit| begin data = JSON.parse(data, symbolize_names: true); rescue data = { text: data } end _handle_send(data, tSplit[0]); end @mqtt.subscribe_to "Telegram/+/Edit" do |data, tSplit| begin data = JSON.parse(data, symbolize_names: true); rescue next; end _handle_edit(data, tSplit[0]) end @mqtt.subscribe_to "Telegram/+/Delete" do |data, tSplit| _handle_delete(data, tSplit[0]) end @mqtt.subscribe_to "Telegram/+/Release" do |data, tSplit| # Resolve a saved Username to a User-ID uID = tSplit[0]; uID = @usernameList[uID] if(@usernameList.key? uID) uID = uID.to_i; # Delete the stored GID key @groupIDList[uID].delete(data); end end