On Thu, 2003-07-31 at 16:30, Jayson Vantuyl wrote: > On Wed, Jul 30, 2003 at 05:07:50PM +0200, Armand A. Verstappen wrote: > > On Wed, 2003-07-30 at 16:40, John Congdon wrote: > > > Has anyone solved the problem on the ADSI phones > > > that when you hit one of the soft keys, the Number Pad > > > stops working? > > > It relates to not putting the phone back into voice mode when the > prompts are playing (after updating the screen). > > Attached is my (partially incomplete but usable) voicemail2 patch. > Interestingly, it fixes an apparent typo in the Options softkey as well > (that one took me a week to track down). > Excellent!! Tested here, this solves the problem. Thank you.
I've taken the liberty to edit your patch, to put back in the 'adsi_logo' and the values for adapp and adsec as they are in CVS. As far as I can tell those changes have no relation to problem this patch solves, they're just local changes to satisfy your local preferences, right? I've removed those to ease integration into CVS. wkr, -- Envida http://www.envida.net/ Armand A. Verstappen Graadt van Roggenweg 328 [EMAIL PROTECTED] 3531 AH Utrecht tel: +31 (0)30 298 2255 Postbus 19127 fax: +31 (0)30 298 2111 3501 DC Utrecht
--- app_voicemail2.c.cvs 2003-07-31 20:40:29.000000000 +0200
+++ app_voicemail2.c 2003-07-31 20:43:38.000000000 +0200
@@ -1290,7 +1290,7 @@
bytes += adsi_load_soft_key(buf + bytes, ADSI_KEY_APPS + 0, "Listen",
"Listen", "1", 1);
bytes += adsi_load_soft_key(buf + bytes, ADSI_KEY_APPS + 1, "Folder",
"Folder", "2", 1);
bytes += adsi_load_soft_key(buf + bytes, ADSI_KEY_APPS + 2, "Advanced",
"Advnced", "3", 1);
- bytes += adsi_load_soft_key(buf + bytes, ADSI_KEY_APPS + 3, "Options",
"Options", "4", 1);
+ bytes += adsi_load_soft_key(buf + bytes, ADSI_KEY_APPS + 3, "Options",
"Options", "0", 1);
bytes += adsi_load_soft_key(buf + bytes, ADSI_KEY_APPS + 4, "Help", "Help",
"*", 1);
bytes += adsi_load_soft_key(buf + bytes, ADSI_KEY_APPS + 5, "Exit", "Exit",
"#", 1);
adsi_transmit_message(chan, buf, bytes, ADSI_MSG_DOWNLOAD);
@@ -1433,6 +1433,7 @@
bytes += adsi_input_format(buf + bytes, 1, ADSI_DIR_FROM_LEFT, 0, "Password:
******", "");
bytes += adsi_input_control(buf + bytes, ADSI_COMM_PAGE, 4, 0, 1,
ADSI_JUST_LEFT);
bytes += adsi_set_keys(buf + bytes, keys);
+ bytes += adsi_voice_mode(buf + bytes, 0);
adsi_transmit_message(chan, buf, bytes, ADSI_MSG_DISPLAY);
}
@@ -1460,6 +1461,8 @@
bytes += adsi_display(buf + bytes, ADSI_COMM_PAGE, 2, ADSI_JUST_CENT, 0, " ",
"");
bytes += adsi_set_line(buf + bytes, ADSI_COMM_PAGE, 1);
bytes += adsi_set_keys(buf + bytes, keys);
+ bytes += adsi_voice_mode(buf + bytes, 0);
+
adsi_transmit_message(chan, buf, bytes, ADSI_MSG_DISPLAY);
}
@@ -1546,6 +1549,8 @@
bytes += adsi_display(buf + bytes, ADSI_COMM_PAGE, 4, ADSI_JUST_LEFT, 0,
datetime, "");
bytes += adsi_set_line(buf + bytes, ADSI_COMM_PAGE, 1);
bytes += adsi_set_keys(buf + bytes, keys);
+ bytes += adsi_voice_mode(buf + bytes, 0);
+
adsi_transmit_message(chan, buf, bytes, ADSI_MSG_DISPLAY);
}
@@ -1589,6 +1594,8 @@
/* Except "Exit" */
keys[5] = ADSI_KEY_SKT | (ADSI_KEY_APPS + 5);
bytes += adsi_set_keys(buf + bytes, keys);
+ bytes += adsi_voice_mode(buf + bytes, 0);
+
adsi_transmit_message(chan, buf, bytes, ADSI_MSG_DISPLAY);
}
@@ -1632,6 +1639,8 @@
keys[0] = 1;
bytes += adsi_set_keys(buf + bytes, keys);
+ bytes += adsi_voice_mode(buf + bytes, 0);
+
adsi_transmit_message(chan, buf, bytes, ADSI_MSG_DISPLAY);
}
@@ -1670,6 +1679,8 @@
bytes += adsi_set_line(buf + bytes, ADSI_COMM_PAGE, 1);
bytes += adsi_set_keys(buf + bytes, keys);
+ bytes += adsi_voice_mode(buf + bytes, 0);
+
adsi_transmit_message(chan, buf, bytes, ADSI_MSG_DISPLAY);
}
@@ -1681,6 +1692,8 @@
if (!adsi_available(chan))
return;
bytes += adsi_set_line(buf + bytes, ADSI_COMM_PAGE, 1);
+ bytes += adsi_voice_mode(buf + bytes, 0);
+
adsi_transmit_message(chan, buf, bytes, ADSI_MSG_DISPLAY);
}
@@ -1695,6 +1708,8 @@
bytes += adsi_display(buf + bytes, ADSI_COMM_PAGE, 3, ADSI_JUST_LEFT, 0, " ",
"");
bytes += adsi_display(buf + bytes, ADSI_COMM_PAGE, 4, ADSI_JUST_CENT, 0,
"Goodbye", "");
bytes += adsi_set_line(buf + bytes, ADSI_COMM_PAGE, 1);
+ bytes += adsi_voice_mode(buf + bytes, 0);
+
adsi_transmit_message(chan, buf, bytes, ADSI_MSG_DISPLAY);
}
@@ -2036,6 +2051,18 @@
char newpassword[80] = "";
char newpassword2[80] = "";
char prefile[256]="";
+ char buf[256];
+ int bytes=0;
+
+ if (adsi_available(chan))
+ {
+ bytes += adsi_logo(buf + bytes);
+ bytes += adsi_display(buf + bytes, ADSI_COMM_PAGE, 3, ADSI_JUST_CENT,
0, "Options Menu", "");
+ bytes += adsi_display(buf + bytes, ADSI_COMM_PAGE, 4, ADSI_JUST_CENT,
0, "Not Done", "");
+ bytes += adsi_set_line(buf + bytes, ADSI_COMM_PAGE, 1);
+ bytes += adsi_voice_mode(buf + bytes, 0);
+ adsi_transmit_message(chan, buf, bytes, ADSI_MSG_DISPLAY);
+ }
while((cmd >= 0) && (cmd != 't')) {
if (cmd)
retries = 0;
@@ -2360,6 +2387,8 @@
break;
case '0':
cmd = vm_options(chan, vmu, &vms, vmfmts);
+ if (useadsi)
+ adsi_status(chan, vms.newmessages,
vms.oldmessages, vms.lastmsg);
break;
default: /* Nothing */
cmd = vm_instructions(chan, &vms);
signature.asc
Description: This is a digitally signed message part
