ebXML Module 7.1 SP1 | Understanding and Using webMethods EBXML Module | Installing and Using ebxml Module | Working with ebXML Messages | Initiating the ebXML Module Handshake | The pingUsingTPA Service
 
The pingUsingTPA Service
The wm.ip.ebXML.MSH:pingUsingTPAservice provides a ping service to another ebXML Message Service provider, that is, another trading partner's ebXML Message Service Handler (MSH). The pingUsingTPA service sends out an ebXML Ping message to the target ebXML MSH. If the target ebXML MSH is active, it responds with an ebXML Pong message. The communication channel is established when a sender MSH receives a Pong message.
The pingUsingTPA service is a part of both the ebXML Message Service Version 1.0 Specification and ebXML Message Service Version 2.0 Specification.
*To configure the pingUsingTPA service
1. From the My webMethods screen, set up two trading partner profiles in two instances of the webMethods Trading Networks.
For example, define the first profile with Name = Buyer Inc., ExternalID = 123456789, and ID type = DUNS. Define the second profile with Name = Seller Inc., ExternalID = 987654321, and ID type = DUNS. If you do not want to run two instances of webMethods Trading Networks, you can define these two profiles on one instance of webMethods Trading Networks with the Buyer Inc. profile as the host profile.
2. Create a TPA using either ebXML Message Service Version 1.0 Specification or ebXML Message Service Version 2.0 Specification.
*To manually create a TPA with the necessary parameters to initiate the messaging channel, set the following parameters for the buyer with the values as shown (example values shown for the ebXML Message Service Version 2.0 Specification):
Parameter
Value
CollaborationProtocolAgreement:cpaid
sample
CollaborationProtocolAgreement:version;
2.0
CollaborationProtocolAgreement.PartyInfo:partyName
Buyer
CollaborationProtocolAgreement.PartyInfo:defaultMshChannelId
buyerChannelId
CollaborationProtocolAgreement.PartyInfo:defaultMshPackageId
buyerPackageId
CollaborationProtocolAgreement.PartyInfo.PartyId:body
123456789
CollaborationProtocolAgreement.PartyInfo.PartyId:type
DUNS
CollaborationProtocolAgreement.PartyInfo.DeliveryChannel:channelId
buyerChannelId
CollaborationProtocolAgreement.PartyInfo.DeliveryChannel:docExchangeId
buyerDocExchangeId
CollaborationProtocolAgreement.PartyInfo.DeliveryChannel:MessagingCharacteristics:syncReplyMode
signalsAndResponse
CollaborationProtocolAgreement.PartyInfo.DocExchange:docExchangeId
buyerdocExchangeId
CollaborationProtocolAgreement.PartyInfo.DocExchange.ebXMLSenderBinding:version
2.0
*To manually create a TPA with the necessary parameters to initiate the messaging channel, set the following parameters for the sender (example values shown):
Parameter
Value
CollaborationProtocolAgreement:PartyInfo:partyName
Seller
CollaborationProtocolAgreement.PartyInfo:defaultMshChannelId
sellerChannelId
CollaborationProtocolAgreement.PartyInfo:defaultMshPackageId
sellerPackageId
CollaborationProtocolAgreement.PartyInfo.PartyId:body
987654321
CollaborationProtocolAgreement.PartyInfo.PartyId:type
DUNS
CollaborationProtocolAgreement.PartyInfo.DeliveryChannel:channelId
sellerChannelId
CollaborationProtocolAgreement.PartyInfo.DeliveryChannel:docExchangeId
sellerDocExchangeId
CollaborationProtocolAgreement.PartyInfo.DeliveryChannel:MessagingCharacteristics:syncReplyMode
signalsAndReponse
CollaborationProtocolAgreement.PartyInfo.DocExchange:docExchangeId
sellerDocExchangeId
CollaborationProtocolAgreement.PartyInfo.DocExchange.ebXMLSenderBinding:version
2.0
CollaborationProtocolAgreement.SimplePart:id
Envelope
CollaborationProtocolAgreement.SimplePart:mimetype
text/xml
CollaborationProtocolAgreement.Packaging.CompositeList.Composite:id
Envelope
CollaborationProtocolAgreement.Packaging.CompositeList.Composite:mimetype
text/xml
3. From Developer, invoke the wm.ip.ebxml.MSH:pingUsingTPA service. When specifying the input parameters, specify:
*ID and ID type of the Buyer Inc. information for the From Party.
*ID and ID type of the Seller Inc. information for the To Party.
*sample, for CPAID, which is the value you specified in the Buyer Inc. TPA.
4. From My webMethods, go to Monitoring > Integration > B2B > Transactions to view the transactions for the exchange between the sender and the receiver. Here is a sample of the transactions.
On the Buyer Inc. side:
TN Document Type
Sender
Receiver
UserStatus
ebXML Default
Buyer Inc.
Seller Inc.
SendMessage:received
ebXML Default
Seller Inc.
Buyer Inc.
Pong
On the Seller Inc. side:
TN Document Type
Sender
Receiver
UserStatus
ebXML Default
Buyer Inc.
Seller Inc.
Ping
ebXML Default
Seller Inc.
Buyer Inc.
SendMessage:sync
On the Buyer Inc. partner side, the first message is the ebXML Ping message, which the Buyer Inc. partner created and sent to the Seller Inc. partner. When the ping message arrives at the Seller Inc. partner, the ebXML Module on the Seller Inc. recognizes it as an ebXML Ping message (see the first message on the Seller Inc. side). The Seller Inc. partner then creates an ebXML Pong message and sends it back to the Buyer Inc. partner (see the second message on the Seller Inc. side).
Note that the User Status of the second message on the Seller Inc. partner is SendMessage:sync, which indicates that the response message is sent back synchronously. The ebXML Module sends the message back synchronously because the TPA specified when invoking the pingUsingTPA service has the syncReplyMode parameter set to signalsAndResponse.
Note:
The syncReplyMode parameter takes four values, none, responseOnly, signalsAndResponse, signalsOnly. For ebXML Message Service Version 2.0 Specification, there is an additional value, mshSignalsOnly. When the value is set to none the reply is asynchronous. At present, ebXML Module interprets the values of responseOnly, signalsAndResponse, signalsOnly, and mshSignalsOnlyas synchronous, and does not specifically handle each of these values.
When the pong message arrives at the Buyer Inc. partner, the ebXML Module on the Buyer Inc. side recognizes it as an ebXML Pong message (see the second message on the Buyer Inc. side).
5. From My webMethods, select Monitoring > Integration > B2B > Transactions > View Related Documents for the first message on the Buyer Inc. side. You should see that the pong message is related to the ping message that the Buyer Inc. partner sent. The ebXML Module extensively uses the Trading Networks related documents feature to provide you a better view of all ebXML messages in a business process.
6. Note also that all four messages have a TN document type of ebXML Default and the ebXML Module uses the User Status in each message to indicate the character of the message. The ebXML Module maps the MessageId in the ebXML envelope to the DocumentID. You can see the DocumentID in the My webMethods Transaction page. The ebXML Module maps the conversationId in the ebXML envelope is mapped to the GroupID. You can see the GroupID in the My webMethods Transaction page.
Note:
For ebXML messages that do not contain multiple parts, that is, the ping and pong messages, ebXML Module uses the non-multipart MIME structure. For information about the non-multipart MIME structure, see the ebXML Message Service Version 1.0 Specification and ebXML Message Service Version 2.0 Specification.