Modify all calls to port variables to match. Espconn1 = TelnetPort1

Should make code more fluid & inuitive.
All code changes made to reflect javascrupt, html, and C.
pull/205/head
Alex 8 years ago
parent 6596883fb1
commit 0b8368af24
  1. 2
      esp-link/cgi.c
  2. 34
      esp-link/cgitelnet.c
  3. 8
      esp-link/config.c
  4. 8
      esp-link/config.h
  5. 4
      esp-link/main.c
  6. 8
      html/home.html
  7. 1
      html/ui.js

@ -190,7 +190,7 @@ int ICACHE_FLASH_ATTR printGlobalInfo(char *buff, int buflen, char *token) {
extern char *esp_link_version; // in user_main.c extern char *esp_link_version; // in user_main.c
int ICACHE_FLASH_ATTR cgiMenu(HttpdConnData *connData) { int ICACHE_FLASH_ATTR cgiMenu(HttpdConnData *connData) { //This is where we can modify the navigation that is auto generated
if (connData->conn==NULL) return HTTPD_CGI_DONE; // Connection aborted. Clean up. if (connData->conn==NULL) return HTTPD_CGI_DONE; // Connection aborted. Clean up.
char buff[1024]; char buff[1024];
// don't use jsonHeader so the response does get cached // don't use jsonHeader so the response does get cached

@ -11,12 +11,12 @@ int ICACHE_FLASH_ATTR cgiTelnetGet(HttpdConnData *connData) {
int len; int len;
os_printf("Current telnet ports: port1=%d port2=%d\n", os_printf("Current telnet ports: port0=%d port1=%d\n",
flashConfig.telnet_port1, flashConfig.telnet_port2); flashConfig.telnet_port0, flashConfig.telnet_port1);
len = os_sprintf(buff, len = os_sprintf(buff,
"{ \"port1\": \"%d\", \"port2\": \"%d\" }", "{ \"port0\": \"%d\", \"port1\": \"%d\" }",
flashConfig.telnet_port1, flashConfig.telnet_port2); flashConfig.telnet_port0, flashConfig.telnet_port1);
jsonHeader(connData, 200); jsonHeader(connData, 200);
httpdSend(connData, buff, len); httpdSend(connData, buff, len);
@ -33,13 +33,13 @@ int ICACHE_FLASH_ATTR cgiTelnetSet(HttpdConnData *connData) {
} }
int8_t ok = 0; int8_t ok = 0;
uint16_t port1, port2; uint16_t port0, port1;
ok |= getUInt16Arg(connData, "port0", &port0);
ok |= getUInt16Arg(connData, "port1", &port1); ok |= getUInt16Arg(connData, "port1", &port1);
ok |= getUInt16Arg(connData, "port2", &port2);
if (ok <= 0) { //If we get at least one good value, this should be >= 1 if (ok <= 0) { //If we get at least one good value, this should be >= 1
ets_sprintf(buf, "Unable to fetch telnet ports.\n Received: port1=%d port2=%d\n", ets_sprintf(buf, "Unable to fetch telnet ports.\n Received: port0=%d port1=%d\n",
flashConfig.telnet_port1, flashConfig.telnet_port2); flashConfig.telnet_port0, flashConfig.telnet_port1);
os_printf(buf); os_printf(buf);
errorResponse(connData, 400, buf); errorResponse(connData, 400, buf);
return HTTPD_CGI_DONE; return HTTPD_CGI_DONE;
@ -47,23 +47,23 @@ int ICACHE_FLASH_ATTR cgiTelnetSet(HttpdConnData *connData) {
if (ok > 0) { if (ok > 0) {
// fill both port variables from flash or ajax provided value // fill both port variables from flash or ajax provided value
if (!port0) port0 = flashConfig.telnet_port0;
if (!port1) port1 = flashConfig.telnet_port1; if (!port1) port1 = flashConfig.telnet_port1;
if (!port2) port2 = flashConfig.telnet_port2;
// check whether ports are different // check whether ports are different
if (port1 == port2) { if (port0 == port1) {
os_sprintf(buf, "Ports cannot be the same.\n Tried to set: port1=%d port2=%d\n", os_sprintf(buf, "Ports cannot be the same.\n Tried to set: port0=%d port1=%d\n",
flashConfig.telnet_port1, flashConfig.telnet_port2); flashConfig.telnet_port0, flashConfig.telnet_port1);
os_printf(buf); os_printf(buf);
errorResponse(connData, 400, buf); errorResponse(connData, 400, buf);
return HTTPD_CGI_DONE; return HTTPD_CGI_DONE;
} }
// we're good, set flashconfig // we're good, set flashconfig
flashConfig.telnet_port0 = port0;
flashConfig.telnet_port1 = port1; flashConfig.telnet_port1 = port1;
flashConfig.telnet_port2 = port2; os_printf("Telnet ports changed: port0=%d port1=%d\n",
os_printf("Telnet ports changed: port1=%d port2=%d\n", flashConfig.telnet_port0, flashConfig.telnet_port1);
flashConfig.telnet_port1, flashConfig.telnet_port2);
// save to flash // save to flash
if (configSave()) { if (configSave()) {
@ -77,8 +77,8 @@ int ICACHE_FLASH_ATTR cgiTelnetSet(HttpdConnData *connData) {
// apply the changes // apply the changes
serbridgeInit(); serbridgeInit();
serbridgeStart(0, flashConfig.telnet_port1, flashDefault.telnet_port1mode); serbridgeStart(0, flashConfig.telnet_port0, flashDefault.telnet_port0mode);
serbridgeStart(1, flashConfig.telnet_port2, flashDefault.telnet_port2mode); serbridgeStart(1, flashConfig.telnet_port1, flashDefault.telnet_port1mode);
} }

@ -35,10 +35,10 @@ FlashConfig flashDefault = {
.data_bits = EIGHT_BITS, .data_bits = EIGHT_BITS,
.parity = NONE_BITS, .parity = NONE_BITS,
.stop_bits = ONE_STOP_BIT, .stop_bits = ONE_STOP_BIT,
.telnet_port1 = 23, .telnet_port0 = 23,
.telnet_port2 = 2323, .telnet_port1 = 2323,
.telnet_port0mode = 0,
.telnet_port1mode = 0, .telnet_port1mode = 0,
.telnet_port2mode = 0,
}; };
typedef union { typedef union {
@ -166,8 +166,8 @@ bool ICACHE_FLASH_ATTR configRestore(void) {
flashConfig.stop_bits = flashDefault.stop_bits; flashConfig.stop_bits = flashDefault.stop_bits;
} }
if (flashConfig.telnet_port0 == 0) { flashConfig.telnet_port0 = flashDefault.telnet_port0; }
if (flashConfig.telnet_port1 == 0) { flashConfig.telnet_port1 = flashDefault.telnet_port1; } if (flashConfig.telnet_port1 == 0) { flashConfig.telnet_port1 = flashDefault.telnet_port1; }
if (flashConfig.telnet_port2 == 0) { flashConfig.telnet_port2 = flashDefault.telnet_port2; }
return true; return true;
} }

@ -41,10 +41,10 @@ typedef struct {
int8_t data_bits; int8_t data_bits;
int8_t parity; int8_t parity;
int8_t stop_bits; int8_t stop_bits;
uint16_t telnet_port1, // Telnet port settings uint16_t telnet_port0, // Telnet port settings
telnet_port2; telnet_port1;
int8_t telnet_port1mode, int8_t telnet_port0mode,
telnet_port2mode; telnet_port1mode;
} FlashConfig; } FlashConfig;
extern FlashConfig flashConfig; extern FlashConfig flashConfig;
extern FlashConfig flashDefault; extern FlashConfig flashDefault;

@ -182,8 +182,8 @@ user_init(void) {
// init the wifi-serial transparent bridge (port 23) // init the wifi-serial transparent bridge (port 23)
serbridgeInit(); serbridgeInit();
serbridgeStart(0, flashConfig.telnet_port1, flashDefault.telnet_port1mode); serbridgeStart(0, flashConfig.telnet_port0, flashDefault.telnet_port0mode);
serbridgeStart(1, flashConfig.telnet_port2, flashDefault.telnet_port2mode); serbridgeStart(1, flashConfig.telnet_port1, flashDefault.telnet_port1mode);
uart_add_recv_cb(&serbridgeUartCb); uart_add_recv_cb(&serbridgeUartCb);
#ifdef SHOW_HEAP_USE #ifdef SHOW_HEAP_USE

@ -53,19 +53,19 @@
<div class="card"> <div class="card">
<h1>Telnet Serial-Bridge</h1> <h1>Telnet Serial-Bridge</h1>
<p style="margin-bottom:0;">There are two ports available for telnet to use by default: 23 &amp; 2323 <br> <p style="margin-bottom:0;">There are two ports available for telnet to use by default: 23 &amp; 2323 <br>
Note - this time, only port1 may be changed &amp; used sucessfully.</p> Note - this time, only port0 may be changed &amp; used sucessfully.</p>
<div id="telnet-spinner" class="spinner spinner-small"></div> <div id="telnet-spinner" class="spinner spinner-small"></div>
<table id="telnet-table" class="pure-table pure-table-horizontal" hidden><tbody> <table id="telnet-table" class="pure-table pure-table-horizontal" hidden><tbody>
<tr><td>Current Telnet ports</td><td class="telnet-info"></td></tr> <tr><td>Current Telnet ports</td><td class="telnet-info"></td></tr>
<tr><td colspan=2 class="popup-target">Telnet port 1:<br> <tr><td colspan=2 class="popup-target">Telnet port 1:<br>
<div class="click-to-edit telnet-port1"> <div class="click-to-edit telnet-port0">
<span class="edit-off" style="display:block; width:auto;"></span> <span class="edit-off" style="display:block; width:auto;"></span>
<input class="edit-on" maxlength=5 hidden> </input> <input class="edit-on" maxlength=5 hidden> </input>
<div class="popup">Click to edit!<br>Default port: 23</div> <div class="popup">Click to edit!<br>Default port: 23</div>
</div> </div>
</td></tr> </td></tr>
<tr><td colspan=2 class="popup-target">Telnet port 2:<br> <tr><td colspan=2 class="popup-target">Telnet port 2:<br>
<div class="click-to-edit telnet-port2"> <div class="click-to-edit telnet-port1">
<span class="edit-off" style="display:block; width:auto;"></span> <span class="edit-off" style="display:block; width:auto;"></span>
<input class="edit-on" maxlength=5 hidden> </input> <input class="edit-on" maxlength=5 hidden> </input>
<div class="popup">Click to edit!<br>Default port: 2323</div> <div class="popup">Click to edit!<br>Default port: 2323</div>
@ -175,8 +175,8 @@
onLoad(function() { onLoad(function() {
makeAjaxInput("system", "description"); makeAjaxInput("system", "description");
makeAjaxInput("system", "name"); makeAjaxInput("system", "name");
makeAjaxInput("telnet", "port0");
makeAjaxInput("telnet", "port1"); makeAjaxInput("telnet", "port1");
makeAjaxInput("telnet", "port2");
fetchPins(); fetchPins();
getWifiInfo(); getWifiInfo();
getSystemInfo(); getSystemInfo();

@ -401,6 +401,7 @@ function showNotification(text) {
var el = $("#notification"); var el = $("#notification");
el.innerHTML = text; el.innerHTML = text;
el.removeAttribute('hidden'); el.removeAttribute('hidden');
// window.scrollTo(0, 0); //Uncomment this line so window will scroll up on regular notifications
if (notifTimeout != null) clearTimeout(notifTimeout); if (notifTimeout != null) clearTimeout(notifTimeout);
notifTimout = setTimeout(function() { notifTimout = setTimeout(function() {
el.setAttribute('hidden', ''); el.setAttribute('hidden', '');

Loading…
Cancel
Save