BlackBox Developers Meeting - Helpdesk's Adviser

Slide 1: Helpdesk's Adviser
The Helpdesk Adviser is a collection of tools to support the work at the helpdesk.

Chapter 1. Question and answer

Slide 2: 1.1 The Starting Point
...
The solutions are in the head of the staff. Not everybody knows everything.
The one who knows isn't available right now and we won't reinvent the wheel.

Slide 3: 1.2 The Collections 
The first step is we collect the solutions.
...

Slide 4: 1.3 And the Folder Structure 
I call the main folder 'Uhl' (Users Help Line). There is a directory for every topic. 
Every directory has a lot of documents. The structure of the document is:
	Headline
	The description of the Problem
	The solution
	The date of last change at the bottom line.
	
Slide 5: 1.4 The Starting Page 
And this is the starting page. All topics found in the starting page. 
This page grows with the adviser. It didn't look like this at the beginning.
Every topic is a link to a document which containing a list of contents.
Every entry in the list of contents is a link to a document.
	
Slide 6: 1.5 The Tools 
We need BlackBox and 4 subsystems: Info, Desktop, Dos & Html.
To really getting started we need the module InfoCmds only. 
The subsystem Dos used for updating.
The other Info modules used for searching
And the last Subsystem Html is optional.


Chapter 2. How to organize it?

Slide 7: 2.1 Links
...
I would like to propagate the state of document through the link.
If the document is in browser mode, the link should open the next document in browser mode.
If the document is in edit mode, the link should open the document in edit mode.

Slide 8: 2.2 Specification of InfoCmds
I build my own command InfoCmds.OpenDoc which open a document in browser or edit mode depending 
on the global Boolean variable. This command is using in the same way as StdCmds.OpenDoc.  

Slide 9: 2.3 Implementation of InfoCmds
The first implentation is very easy.  

Slide 10: 2.4 The Local Network
The master pc used for developing the program, used for insert new document and used for maintenance 
the old documents. The server has all documents, which are free to used. The users have access to the 
documents via his/her workstations.
At the beginning some years ago there was an Alpha Server. Today it is an NT-Server. The server just 
works as a file share and provide the access. The program is running on the PC.
The document can be changed on the maste PC or on the server. We need a tool for replication. More about this tool in the next chapter.

Slide 11: 2.5 Installations
On the server we install the BlackBox without the development subsystem. We add the Info subsystem 
and the Uhl folders. The starting module is changing to opens the starting page automatically.
The workstation needs only a shortcut to the program BlackBox.exe at the server. The program is running 
on the workstation. The helpdesk adviser is used in browser mode.
On the master pc I install the BlackBox including the development subsystem, the Info Subsystem and the 
Uhl folders. Additionally a persistent desktop program is installed. At the start of Blackbox it opens all documents, we worked on at the last session.


Chapter 3. Solution changes and updates.

Slide 12: 3.1 The World is always Changing
As I told earlier the data must be synchronize between master PC and the server. We implement a 
replication into 2 steps: The first step compares the folders and list all difference in a document and the second step  run through that document and updates the change.
The reason is: Between step 1 & 2 we can proof the change and desire if we update or not. 

Slide 13: 3.2 The Update Program
Here is the user interface of update program.
Quick Compare:	takes care of file length and file date only.
Not Quick Compare:	compares contents of the files byte by byte.
Short List:	Only directories compared which on both side exist.
Long List:	All directories compared.

Slide 14: 3.3 Sample Output of Compare
Here is a sample output of compare. It is a normal BlackBox document...
Based on this list, we can run an update to copy exactly new files and those that were changed. Old files, 
no longer existing in the original, are deleted.

Slide 15: 3.4 Sign and switches
This slide shows the definition of sign and the behaviour of the switches.

Slide 16: 3.5 The Rules of Updating
These rules are looking quite complicated, but they are easy. They descript how the program works.


Chapter 4. Where are the documents? 

Slide 17: 4.1 Build a cross-reference list
Normally we can find a document through the list of topics and then through the list of contents. But what 
can we do if I have a keyword only? Every book has an index. The helpdesk adviser should have one too. 
I divide the cross-reference program into two modules: InfoCrossRef builds the list and InfoIndex uses it. 
Of course it is a linked list.

Slide 18: 4.2 What Is a Word?
This was the most difficult question for programming the cross-reference list.

Slide 19: 4.3 Search thru all documents
I would like to point out that the BlackBox command "Search In Docu" is not suitable for this task. But it is 
very good template to write a search command for our helpdesk adviser.

Slide 20: 4.4 Is every document reachable?
Sometimes things go wrong. We put in a new document and we never find it again. So we have to look 
thru an other way.


Chapter 5. Html-Converter

Slide 21: 5.1 Html import and export
The helpdesk's adviser is in use internally by the staff. The next step is provide access via the intranet. Is it possible to translate them automatically to html? Yes it is. We wrote an converter, which can translate the documents.

Slide 22: 5.2 Link fix
After we wrote a program, which translate all odc documents to html documents and vice versa. I realised 
that there is a different approach for relative link.

Slide 23: 5.3 Tag views
On the left side we see the structure of a html document. On the right side there is an example how tags 
handle in BlackBox documents. All tags that are not translated are in a tag view. The tag views can be 
created, expanded, collapsed, shown and hidden.

Slide 24: 5.4 What Is Missing
It works. It is useful, but it has its limitations. With this slide we look forward. What can be added next the Xhmtl subsystem? This is a short list of wishes and open questions. Lets have a dream.
	x There are no tabulators in html. Should tabulators translate to tables?
	x Tables translation in both direction are not handle yet.
	x Images and graphics too.
And so on.

Average diskspace of one document:
	in BlackBox (.odc) 4 kByte
	in BlackBox converted to html 5 kByte 
	in MS Word (.odc) 22 kByte
	in MS Word converted to html 13 kByte


Slide 25: The End
Now I am at the end of my speaking. I hope: You are now ready to quench the fire. You have look over the 
wall. You enjoy it. And you know the way: How it is going on.

The end.
