Text Input for button not working
salmanwaheed
Posts: 2
Hi,
I am trying to get input string from text-input button, I am trying below code just to check if any string is triggering, I have placed some code to check in Telnet. but so far unable to see anything in telnet console.
DEFINE_EVENT
DATA_EVENT[dvTP]{
STRING:
{
SEND_STRING 0,'STRING';
}
}
0
Comments
How are you doing the text input?
I created button in touch panel and change input text in properties, now on touch panel I can enter any value, but I cannot receive this text string in main program, I have put my code above I am using in processor.
Are you issuing the ^BSM command?
^BSM
Button Submit Text Command - This command causes the text areas to send their text as strings to the NetLinx Master.
Syntax:
"'^BSM-'"
Variable:
address range: Address codes of buttons to affect. A '.' between addresses includes the range, and & between addresses includes each address.
Example:
SEND_COMMAND Panel,"'^BSM-500'"
Returns a String of format "'-'".
The string is returned on the port a ^BIT command was received on, or if that has not occurred, is sent on the address port.
If a "name" is applied to the text input this will be applied as a standard header to the string with the text input as the parameter (header-parameter)
The submit button calls the ^BSM in code
button_event[dvTP_MEET, BTN_MEET_CONFIRM] { push: { send_command button.input.device,"'^BSM-',itoa(TXT_MEET_SUBJECT),'&',itoa(TXT_MEET_TIME)"; // Returns strings with } } data_event[dvTP_MEET] { string: { stack_var iCmd[DUET_MAX_CMD_LEN], iHeader[DUET_MAX_HDR_LEN], iParam[DUET_MAX_PARAM_LEN]; local_var volatile char iSubject[100]; local_var volatile integer iTime; iCmd = data.text; iHeader = DuetParseCmdHeader(iCmd); iParam = DuetParseCmdParam(iCmd); switch(iHeader) { case 'SUBJECT': { iSubject = iParam; } case 'TIME': { iTime = atoi(iParam); } } cancel_wait 'Create Meeting Debounce' wait 1 'Create Meeting Debounce' { // DEFINE_FUNCTION CHAR RmsBookingCreate(CHAR startDate[], // CHAR startTime[], // INTEGER durationMinutes, // CHAR subject[], // CHAR messageBody[], // LONG locationId) if(length_string(iSubject) && iTime) { RmsBookingCreate(LDATE, TIME, iTime, iSubject, 'Adhoc meeting request', 0); } } } }