I am working on a java based application gateway to interact with the ICM script using the application gateway node.
I am able to make it work using the PVs and am able to exchange the data between ICM Script and the gateway. But I am not able to use the the ECC variables. As soon as I populate the response from Application gateway using the ECC variable router throws INVALID TAG exception.
I am sure I am missing something in the way i populate the ECC variable because router logs show that my ECC variable and its value are coming back in the same field and the value field on the router side shows the invalid value...
Tag Name = Call.user.COBYES, Tag Value = x00
I think It needs to be -
Tag Name = Call.user.COB, Tag Value = YES
Here is the complete log for this call.
17:13:02:177 ra-agi Trace: Received message from host. Length is 41, Data is: 0x00 0x00 0x00 0x21 0x00 0x00 0x00 0x0a 0x00 0x00 0x02 0x3c 0x00 0x00 0x00 0x00 0x09 0x03 0x50 0x56 0x31 0x14 0x10 0x43 0x61 0x6c 0x6c 0x2e 0x75 0x73 0x65 0x72 0x2e 0x43 0x4f 0x42 0x59 0x45 0x53 0x00 0x00
17:13:02:177 ra-agi Trace: Received Query Confirm message from application gateway host.
17:13:02:177 ra-agi Trace: ApplicationGatewayID = 5000
17:13:02:177 ra-agi Trace: InvokeID = 572
17:13:02:177 ra-agi Trace: Tag type = PeripheralVariable1, Tag Value = PV1
17:13:02:177 ra-agi Trace: Tag type = EXPANDED_CALL_VARIABLE_TAG, Tag Name = Call.user.COBYES, Tag Value = x00
17:13:02:177 ra-agi An invalid tag type was received in a host query confirm. Application Gateway ID = 5000, Tag type = 0..
17:13:02:178 ra-agi Trace: Invalid tag, type = 0, Tag Value =
17:13:02:178 ra-agi Trace: Sending AppGWLookupReply:
17:13:02:178 ra-agi Trace: transaction ID is 13
17:13:02:178 ra-agi Trace: result is Unknown Result
Does anyone has a sample java code for the application gateway ?
Tagged data field is a standard mechanism utilized in the AGI. The space is not reserved if it is smaller than the maximum length -- as tagged data fields tag (prefix) the data with the length of the data. The "value" would map to the data for that element in the array -- and "index" would map to the index into the array for that data element.
Cisco Advanced Services has a set of pre-built software integration packages which can be used to integrate external applications.