JV,
Thanks for the compliment on the new site. Tom and I worked hard to try to bring a better experience for everyone and it is nice to see people using it.
Let's take a look at your problem from a higher level for a second. If you could answer a few general questions, it will help me to understand your desired outcome.
1. You state you want to use the Identification and Services messages for discovery in your application's component. What are you trying to discover? If you take a look at the SystemTree class in the NodeManager code and some of the discovery message parsing code in the NodeManagerComponent and CommunicatorComponent classes, you will see that discovery of the entire possible system architecture is a complex task. To ease this task, OpenJAUS tries to handle the construction and maintenance of the SystemTree at the NodeManager level and provide access to this data through the ojCmptLookupAddress() function. However, support for looking up a service address was left out of the ojCmpt interface (it is part of the underlying libNodeManager interface). If that is something the community needs it can easily be added.
2. You are correct that the ojNM sends the QueryIdentification and QueryServices messages to components automatically. This is based on receiving a heartbeat from a component. I've attached an image of the NodeManager component's behavior upon receipt of a Heartbeat message. This shows how the NM behaves when a ReportHeartbeatPulse message is received from any JAUS entity. This chart was made as part of the NM design we did in late 2007 when we built the latest node manager.
So hopefully that gives you a little background about what is going on in the NodeManager. If you can provide us with some more insight into your thought process and what you want to accomplish, hopefully we can find the solution that works for you.
~Danny