Date: Wed, 4 Feb 87 13:09:46 PST From: Swinehart.pa Subject: What Finch Needs To: VoiceProject^ Cc: Swinehart Reply-to: Swinehart.pa This is a summary of the kinds of activities required or desired before the release of "Finch 7.0". This is in approximate order of importance. Connection management The NamesGV stuff, in VoiceUtils, is now set up to attempt reconnection whenever a connection if found to be broken or nonexistent. If a reconnection attempt fails, an error code is returned, but the next call will try again. This code is probably the best model for improving the way that Finch keeps its connection alive (it does some variant of that, but not as good), and for making sure that all other remote connections behave this way (to registered services like "feep", the synthesizer, and voice ropes, for instance. LoganBerry is allegedly prepared to behave this way in recent releases, but some interfacing may be required. Ken Pier bug chronicled in Notes[March 28, 1986 2:16:59 pm PST] should then be analyzed in light of the changes. Error code management Each of the calls on ThParty or on specific services, such as the "Feep" service or the VoiceRopeServer, should be analyzed in terms of the nb codes the call can return. I have developed a pretty good feel for which errors are ERRORs, which representative of major failures that will be managed at lower levels, and which actually require direct action by the client program. User interface bugs Need Visit/Unvisit commands. February 25, 1987 5:09:37 pm PST The Called party/calling party fields do not behave at all well, these days. Notes[December 23, 1986 3:49:42 pm PST]. If a more elaborate treatment of conversation logs is not undertaken, the current one needs some tuning. See Notes[April 27, 1986 8:23:39 pm PDT] The white pages database is good enough/accessible enough these days that mappings to peoples' real names could be considered. Finch for Cedar 6 will hang up (and wait if necessary) in order to place a new call. I don't know if this has been fully retained in the current new version. It's likely that the Finch end of the synthesizer code needs work. Others as discovered during testing. Finch's ability to handle multiple conversations may be buggy. This is described further in Notes[June 22, 1986 9:07:53 pm PDT]. Second-order connection management Finch should poll once in a while (there's a No-op ThParty call) to be sure the server's still there -- that will accomplish a reconnect if necessary. This is required because the next incoming call wants to be recorded. February 25, 1987 3:57:53 pm PST Dan suggests that NamesGVClientImpl be used as a model for the evaluation of RPC failures. Need to study where to put the monitor locks to avoid races between polling and user requests (want to lock as little as possible). Also need some state to record if you're waiting for a poll response, or whatever. Dan says he usually studies such things on paper, with the appropriate data (abstract), functions, callers, etc. before sitting down to change the code. Will want to back off on polling frequency, depending on the nature of the error. Also want to avoid drowning the user in error msgs generated by the polling process. If the reconnect fails, the current conversation should be logged as unknown state, etc., or at least unhighlighted. Also should unhighlight/invalidate current conv. when Finch drops out explicitly. Remove "drop out" command? Make Finch command eqv. FinchTool command? TiogaVoice Probably needs a lot of work. I know of quiet a few bugs. WalnutVoice/PeanutVoice. Have to decide how we want to do it. Other bugs See entries in Notes dealing with Finch. Some are most likely non-problems by now, but some need addressing. November 27, 1985 2:43:50 pm PST March 14, 1986 6:53:46 am PST June 11, 1986 6:19:11 pm PDT May 4, 1986 11:49:14 pm PDT Desired, optional changes. Conversation of conversation log to TiogaButtons, much better/more consistent reports therein. Completion of server-based conversation log design, design of integration among conversation logs, mail logs, phone directories. New approach to phone directory browsing. Finch's ability to handle multiple conversations should be enhanced. Let's do some conferencing and large-meeting stuff. Really should do some stuff about priorities, overriding busy, and so on. ¬FinchTasks.tioga Copyright Ó 1987 by Xerox Corporation. All rights reserved. Swinehart, 4 Feb 87 13:09:46 PST Polle Zellweger (PTZ) February 26, 1987 3:51:51 pm PST Ê1˜™Icode™