| This project contains three sub-projects: |
| - The RTD excell Addin |
| - A sample client sending messages to queue1 |
| - A ample message processor |
| |
| RDT AddIn |
| Excel provides a function called RTD (real-time data) that lets you specify a COM server via its ProgId here "Qpid" so that you can push qpid messages into Excel. |
| For using the Qpid RTD follows those steps: |
| |
| 1) Copy the configuration Excel.exe.config into C:\Program Files\Microsoft Office\Office12 |
| 2) Edit Excel.exe.xml and set the targeted Qpid broker host, port number |
| 3) Select the cell or cell range to contain the information |
| 4) enter the following formula =rtd("Qpid",,"myQueue") Where MyQueue is the queue from which you wish to receive messages from |
| |
| Note: The Qpid RTD is a COM-AddIn that must be registered with Excel. This is done automatically when compiling the Addin with visual studio. |
| |
| The default behavior of the RDT AddIn is to display the message payload. This could be altered by specifying your own message processor. |
| A Message processor is a class that implements the API ExcelAddIn.MessageProcessor. For example, the provided processor in client-010\addins\ExcelAddInMessageProcessor displays the message body and the the header price when specified. |
| |
| To use you own message processor follows those steps: |
| 1) Write your own message processor that extends ExcelAddIn.MessageProcessor |
| 2) Edit Excel.exe.config and uncomment the entries: |
| <add key="ProcessorAssembly" value="<path>\qpid\dotnet\client-010\addins\ExcelAddInMessageProcessor\bin\Debug\ExcelAddInMessageProcessor.dll"/> |
| <add key="ProcessorClass" value="ExcelAddInMessageProcessor.Processor"/> |
| - ProcessorAssembly is the path on the Assembly that contains your processor class |
| - ProcessorClass is your processor class name |
| 3) run excel and define a rtd function |
| |
| Note: the provided ExcelAddInProducer can be used for testing the provided message processor. As messages are sent to queue1 the following rtd fucntion should be used =rtd("Qpiud",,"queue1") |