add services
This commit is contained in:
		
							parent
							
								
									fe328f9da3
								
							
						
					
					
						commit
						9318d3ef12
					
				| @ -13,7 +13,8 @@ Blockly.Blocks["sensebox_mqtt_setup"] = { | ||||
|         this.setHelpUrl(''); | ||||
|         this.setColour(getColour().mqtt); | ||||
|         this.appendDummyInput() | ||||
|             .appendField(Blockly.Msg.senseBox_mqtt_init); | ||||
|             .appendField(Blockly.Msg.senseBox_mqtt_init) | ||||
|             .appendField(new Blockly.FieldDropdown([["Adafruit IO", 'adafruitio'], ["DIOTY", 'dioty'], ["Other Service", 'custom']]), "service"); | ||||
|         this.appendDummyInput() | ||||
|             .setAlign(Blockly.ALIGN_LEFT) | ||||
|             .appendField(Blockly.Msg.senseBox_mqtt_server) | ||||
| @ -28,10 +29,34 @@ Blockly.Blocks["sensebox_mqtt_setup"] = { | ||||
|             .appendField(new Blockly.FieldTextInput("Username"), "username"); | ||||
|         this.appendDummyInput() | ||||
|             .setAlign(Blockly.ALIGN_LEFT) | ||||
|             .appendField(Blockly.Msg.senseBox_mqtt_password) | ||||
|             .appendField(Blockly.Msg.senseBox_mqtt_password, "passwordmsg") | ||||
|             .appendField(new Blockly.FieldTextInput("Password"), "password"); | ||||
|         this.setPreviousStatement(true, null); | ||||
|         this.setNextStatement(true, null); | ||||
|     }, | ||||
|     onchange: function (e) { | ||||
|         let service = this.getFieldValue('service'); | ||||
|         switch (this.getFieldValue('service')) { | ||||
|             case 'adafruitio': | ||||
|                 this.getField('server').setValue("io.adafruit.com"); | ||||
|                 this.getField('port').setValue("1883"); | ||||
|                 this.getField('passwordmsg').setValue("Adafruit IO Key"); | ||||
|                 break; | ||||
|             case 'dioty': | ||||
|                 this.getField('server').setValue("mqtt.dioty.co"); | ||||
|                 this.getField('port').setValue("1883"); | ||||
|                 this.getField('passwordmsg').setValue(Blockly.Msg.senseBox_mqtt_password); | ||||
|                 break; | ||||
| 
 | ||||
|             case "custom": | ||||
|                 this.getField('server').setValue("server"); | ||||
|                 this.getField('port').setValue("port"); | ||||
|                 this.getField('passwordmsg').setValue(Blockly.Msg.senseBox_mqtt_password); | ||||
|                 break; | ||||
|             default: | ||||
| 
 | ||||
|                 break; | ||||
|         } | ||||
|     } | ||||
| }; | ||||
| 
 | ||||
|  | ||||
| @ -3,11 +3,14 @@ import * as Blockly from 'blockly/core'; | ||||
| * MQTT Blocks  | ||||
| */ | ||||
| 
 | ||||
| let service; | ||||
| 
 | ||||
| Blockly.Arduino.sensebox_mqtt_setup = function () { | ||||
|     var server = this.getFieldValue('server'); | ||||
|     var port = this.getFieldValue('port'); | ||||
|     var username = this.getFieldValue('username'); | ||||
|     var pass = this.getFieldValue('password'); | ||||
|     service = this.getFieldValue('service'); | ||||
|     Blockly.Arduino.libraries_['library_senseBoxMCU'] = '#include "SenseBoxMCU.h"'; | ||||
|     Blockly.Arduino.libraries_['library_adafruitmqtt'] = '#include "Adafruit_MQTT.h"'; | ||||
|     Blockly.Arduino.libraries_['library_adafruitmqttclient'] = '#include "Adafruit_MQTT_Client.h"'; | ||||
| @ -26,7 +29,23 @@ Blockly.Arduino.sensebox_mqtt_publish = function (block) { | ||||
|     var res = feedname.split("/"); | ||||
|     var feed_client = res[res.length - 1]; | ||||
|     var value = Blockly.Arduino.valueToCode(this, 'value', Blockly.Arduino.ORDER_ATOMIC) || '"No Block connected"'; | ||||
| 
 | ||||
|     switch (service) { | ||||
|         case 'adafruitio': | ||||
|             Blockly.Arduino.definitions_['mqtt_' + feed_client + ''] = 'Adafruit_MQTT_Publish ' + feed_client + ' = Adafruit_MQTT_Publish(&mqtt, USERNAME "/feeds/' + feedname + '");' | ||||
|             break; | ||||
|         case 'dioty': | ||||
|             Blockly.Arduino.definitions_['mqtt_' + feed_client + ''] = 'Adafruit_MQTT_Publish ' + feed_client + ' = Adafruit_MQTT_Publish(&mqtt, "/"USERNAME"/' + feedname + '");' | ||||
|             break; | ||||
|         case 'custom': | ||||
|             Blockly.Arduino.definitions_['mqtt_' + feed_client + ''] = 'Adafruit_MQTT_Publish ' + feed_client + ' = Adafruit_MQTT_Publish(&mqtt, ' + feedname + ');' | ||||
|             break; | ||||
|         default: | ||||
|             break; | ||||
| 
 | ||||
|     } | ||||
| 
 | ||||
|     //Blockly.Arduino.definitions_['mqtt_' + feed_client + ''] = 'Adafruit_MQTT_Publish ' + feed_client + ' = Adafruit_MQTT_Publish(&mqtt, USERNAME "/feeds/' + feedname + '");'
 | ||||
|     Blockly.Arduino.codeFunctions_['mqtt_connect_function'] = `// Function to connect and reconnect as necessary to the MQTT server.
 | ||||
|     // Should be called in the loop function and it will take care if connecting.
 | ||||
| void MQTT_connect() { | ||||
|  | ||||
| @ -785,7 +785,7 @@ Blockly.Msg.senseBox_ws2818_rgb_led_brightness = "Helligkeit"; | ||||
|  * MQTT | ||||
|  */ | ||||
| 
 | ||||
| Blockly.Msg.senseBox_mqtt_init = "Initialisiere MQTT Broker"; | ||||
| Blockly.Msg.senseBox_mqtt_init = "Verbinde mit MQTT Broker"; | ||||
| Blockly.Msg.senseBox_mqtt_server = "Server"; | ||||
| Blockly.Msg.senseBox_mqtt_port = "Port"; | ||||
| Blockly.Msg.senseBox_mqtt_username = "Benutzername"; | ||||
|  | ||||
| @ -767,7 +767,7 @@ Blockly.Msg.senseBox_ws2818_rgb_led_position = "Position"; | ||||
|  * MQTT | ||||
|  */ | ||||
| 
 | ||||
| Blockly.Msg.senseBox_mqtt_init = "Initialize MQTT Broker"; | ||||
| Blockly.Msg.senseBox_mqtt_init = "Connect to MQTT Broker"; | ||||
| Blockly.Msg.senseBox_mqtt_server = "Server"; | ||||
| Blockly.Msg.senseBox_mqtt_port = "Port"; | ||||
| Blockly.Msg.senseBox_mqtt_username = "Username"; | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user