Cisco Unified Application Environment Developer Forums

« Back to Beta

Unexpected JTAPI behavior

Combination View Flat View Tree View
Threads [ Previous | Next ]
Hi,

I'm trying to play with CUAE 2.5.0.7057. In the .etch configuration I included:
mixin cisco.uc.cuae.legacy.Http
mixin cisco.uc.cuae.legacy.CallControl
mixin cisco.uc.cuae.legacy.MediaControl
mixin cisco.uc.cuae.legacy.CiscoIpPhone
mixin cisco.uc.cuae.legacy.JTapi
The primary trigger of the application is "Metreos.Providers.Http.GotRequest". The app uses jTapiSendXSIData with "Dial:" URI.
I have two problems with the application:
1. new instance of the application is started on any JTAPI event, e.g.:

14:15:57.656 V EPM Handle event message -Metreos.Providers.JTapi.JTapiGotDigits
14:15:57.656 V EPM Event is from anonymous script -Metreos.Providers.JTapi.JTapiGotDigits
14:15:57.656 V EPM Handle SendBeginCuaeScript
14:15:57.687 V EPM Send cisco.uc.cuae.EtchBridge.beginCuaeScript message to Etch application HttpMakeCall.
14:15:57.687 I EPM Failed to send beginCuaeScript event, Error: Object reference
not set to an instance of an object.
14:15:57.687 W EPM Error in sending beginCuaeScript to Etch application - HttpMakeCall.

2. after jTapiSendXSIData which is (I presume) synchronnous, I get no data as if the jTapiSendXSIData function didn't return. E.g. for:
CreateExecuteOptions opt = new CreateExecuteOptions();
opt.url1 = "Dial:" + num;
CreateExecuteResult res = server.createExecute(sessionId, opt);
System.out.println("Send Execute: " + res.xmlObject);
JTapiSendXSIDataResult xsires = server.jTapiSendXSIData(sessionId,
device, res.xmlObject, null);
System.out.println("XSI result: " + xsires.resultCode);

the ouput stops at "Send Execute: <?xml version="1.0" encoding="utf-8"?><CiscoIPPhoneExecute>
<ExecuteItem Priority="0" URL="Dial:2241" />
</CiscoIPPhoneExecute>"

The same happens for "jTapiGetDeviceStatus" so I don't know if I'm missing some important information how to write an application or if it's a bug.

Thanks Jarda

Hi Jarda,

For the first issue, application instances are started based on the
triggering parameter... I think you are referring the logs being printed
in the app server, will look into that errors. Do you see licenses are
being utilized for these unwarranted script instances ?

For the second issue, what do you see in the app server logs related to
JTAPISendXSIData ? At the client side I assume your Java app just hang
after printing the "Send Execute" traces... BTW., hope you have
configured that device in the JTAPI Monitored device pool.

regards,
Ram

Cisco Developer Services
http://developer.cisco.com/

-----Original Message-----
From: cuae-beta-bounces@developer.cisco.com
mailto:cuae-beta-bounces@developer.cisco.com On Behalf Of JAROSLAV
MARTAN
Sent: Wednesday, June 18, 2008 11:30 AM
To: cuae-beta@developer.cisco.com
Subject: [Cuae-beta] Unexpected JTAPI behavior

Hi,

I'm trying to play with CUAE 2.5.0.7057. In the .etch configuration I
included:
mixin cisco.uc.cuae.legacy.Http
mixin cisco.uc.cuae.legacy.CallControl
mixin cisco.uc.cuae.legacy.MediaControl
mixin cisco.uc.cuae.legacy.CiscoIpPhone
mixin cisco.uc.cuae.legacy.JTapi
The primary trigger of the application is
"Metreos.Providers.Http.GotRequest". The app uses jTapiSendXSIData with
"Dial:" URI.
I have two problems with the application:
1. new instance of the application is started on any JTAPI event, e.g.:

14:15:57.656 V EPM Handle event message
-Metreos.Providers.JTapi.JTapiGotDigits
14:15:57.656 V EPM Event is from anonymous script
-Metreos.Providers.JTapi.JTapiGotDigits
14:15:57.656 V EPM Handle SendBeginCuaeScript
14:15:57.687 V EPM Send cisco.uc.cuae.EtchBridge.beginCuaeScript message
to Etch application HttpMakeCall.
14:15:57.687 I EPM Failed to send beginCuaeScript event, Error: Object
reference
not set to an instance of an object.
14:15:57.687 W EPM Error in sending beginCuaeScript to Etch application
  • HttpMakeCall.

2. after jTapiSendXSIData which is (I presume) synchronnous, I get no
data as if the jTapiSendXSIData function didn't return. E.g. for:
CreateExecuteOptions opt = new CreateExecuteOptions();
opt.url1 = "Dial:" + num;
CreateExecuteResult res = server.createExecute(sessionId, opt);
System.out.println("Send Execute: " + res.xmlObject);
JTapiSendXSIDataResult xsires = server.jTapiSendXSIData(sessionId,
device, res.xmlObject, null);
System.out.println("XSI result: " + xsires.resultCode);

the ouput stops at "Send Execute: <?xml version="1.0"
encoding="utf-8"?><CiscoIPPhoneExecute>
<ExecuteItem Priority="0" URL="Dial:2241" />
</CiscoIPPhoneExecute>"

The same happens for "jTapiGetDeviceStatus" so I don't know if I'm
missing some important information how to write an application or if
it's a bug.

Thanks Jarda
_______________________________________________
Cuae-beta mailing list
Cuae-beta@developer.cisco.com

_______________________________________________
Cuae-beta mailing list
Cuae-beta@developer.cisco.com

Hi Ram,

seen inline.

Ramgopal Chockalingam -X (rchockal - Infosys at Cisco) wrote:
Hi Jarda,

For the first issue, application instances are started based on the
triggering parameter... I think you are referring the logs being printed
in the app server, will look into that errors. Do you see licenses are
being utilized for these unwarranted script instances ?

Apparently the licenses are being utilized, however if the application
is triggered by JTAPI, it just runs "beginCuaeScript", finds out there
is no handler for the event and exits.

After http trigger I see:

2008:06:18::17:54:12(34): Info: EPM Handle bridge message with method
name registerApplication
2008:06:18::17:54:12(40): Info: EPM Application HttpMakeCall, partition
Default registered
2008:06:18::17:54:24(06): Verbose: LM License check PASS: licensed: 6,
running: 0.
2008:06:18::17:54:24(06): Verbose: EPM Handle event message -
Metreos.Providers.Http.GotRequest
2008:06:18::17:54:24(06): Verbose: EPM Handle SendBeginCuaeScript

After subsequent JTAPI triggers this appears in AppServer log:

2008:06:18::17:54:26(93): Info: JTP Added JTapi call
1000003<->DfwNjysPl6nwk5kh
2008:06:18::17:54:26(93): Info: JTP Sending third-party IncomingCall
for: 1000003
2008:06:18::17:54:26(93): Verbose: LM License check PASS: licensed: 6,
running: 1.
2008:06:18::17:54:26(93): Verbose: R No handler registered for
incoming event:
InternalMessage:
Type: EventMessage
Message ID: Metreos.Providers.JTapi.JTapiIncomingCall
Routing GUID: f49c918a-d733-4e1c-9e3f-6948bcdda861
Source: JTapiProvider

Actually I don't mind receiving additional events, I like the idea of
"anonymous" script. But I think it would be great to have an option to
filter the events on the CUAE server side (using regular expressions?).


For the second issue, what do you see in the app server logs related to
JTAPISendXSIData ? At the client side I assume your Java app just hang
after printing the "Send Execute" traces... BTW., hope you have
configured that device in the JTAPI Monitored device pool.

The device is configured (otherwise I would receive no JTAPI events).

For jTapiGetDeviceStatus I see this:
2008:06:18::18:03:38(50): Info: EPM Handle CUAE provider action message
with method name jTapiGetDeviceStatus
2008:06:18::18:03:38(53): Verbose: JTP Sent GetDeviceStatus.
deviceName:SEP001DA21A2384
2008:06:18::18:03:38(53): Verbose: JTP GetDeviceStatus request sent,
waiting for response from stack...CallId:1000004, DeviceNameSEP001DA21A2384
2008:06:18::18:03:38(54): Verbose: JTP Got 58(DeviceStatus) message from
v6.1.
2008:06:18::18:03:38(56): Verbose: JTP Field: 5(DeviceName) =
SEP001DA21A2384
2008:06:18::18:03:38(56): Verbose: JTP Field: 40(CallId) = 1000004
2008:06:18::18:03:38(56): Verbose: JTP Field: 59(DeviceStatus) = 1
2008:06:18::18:03:38(56): Verbose: JTP Field: 63(ResultCode) = 0
2008:06:18::18:03:38(56): Verbose: JTP Received DeviceStatus message
from JTAPI service
2008:06:18::18:03:38(57): Verbose: JTP Received OnDeviceStatus message
from JTAPI proxy
2008:06:18::18:03:38(57): Verbose: JTP Updating transaction results1000004
2008:06:18::18:03:38(57): Verbose: JTP Releasing lock on device
SEP001DA21A2384
2008:06:18::18:03:38(59): Verbose: JTP Got response for GetDeviceStatus
message; released the lock: CallId:1000004

For jTapiSendXSIData I see:

2008:06:18::18:16:42(56): Info: EPM Handle CUAE provider action message
with method name jTapiSendXSIData
2008:06:18::18:16:42(60): Verbose: JTP Sent SendXSIData.
deviceName:SEP001DA21A2384, deviceType:CtiMonitored
2008:06:18::18:16:42(81): Verbose: JTP Got 35(InitiatedCall) message
from v6.1.
2008:06:18::18:16:42(81): Verbose: JTP Field: 5(DeviceName) =
SEP001DA21A2384
2008:06:18::18:16:42(81): Verbose: JTP Field: 6(DeviceType) = 6
2008:06:18::18:16:42(81): Verbose: JTP Field: 40(CallId) = 988Q56cyjBsnz3ld
2008:06:18::18:16:42(81): Verbose: JTP Field: 42(From) = 2245
2008:06:18::18:16:42(90): Verbose: JTP PropOnCallInitiated - entry
StackCallId 988Q56cyjBsnz3ld : DevName SEP001DA21A2384
2008:06:18::18:16:42(92): Info: JTP Added JTapi call
1000001<->988Q56cyjBsnz3ld
2008:06:18::18:16:42(92): Info: JTP Sending third-party CallInitiated
for: 1000001
2008:06:18::18:16:42(92): Verbose: LM License check PASS: licensed: 6,
running: 1.
2008:06:18::18:16:42(93): Verbose: R No handler registered for
incoming event:
InternalMessage:
Type: EventMessage
Message ID: Metreos.Providers.JTapi.JTapiCallInitiated
Routing GUID: 16080790-a578-40c4-a194-6888843884e1
Source: JTapiProvider
SourceType: Provider

If you want to take a look at the logs, the server is accessible at
Cisco internal network (in our lab) at 10.62.8.131.

Jarda


regards,
Ram

Cisco Developer Services
http://developer.cisco.com/

-----Original Message-----
From: cuae-beta-bounces@developer.cisco.com
mailto:cuae-beta-bounces@developer.cisco.com On Behalf Of JAROSLAV
MARTAN
Sent: Wednesday, June 18, 2008 11:30 AM
To: cuae-beta@developer.cisco.com
Subject: [Cuae-beta] Unexpected JTAPI behavior

Hi,

I'm trying to play with CUAE 2.5.0.7057. In the .etch configuration I
included:
mixin cisco.uc.cuae.legacy.Http
mixin cisco.uc.cuae.legacy.CallControl
mixin cisco.uc.cuae.legacy.MediaControl
mixin cisco.uc.cuae.legacy.CiscoIpPhone
mixin cisco.uc.cuae.legacy.JTapi
The primary trigger of the application is
"Metreos.Providers.Http.GotRequest". The app uses jTapiSendXSIData with
"Dial:" URI.
I have two problems with the application:
1. new instance of the application is started on any JTAPI event, e.g.:

14:15:57.656 V EPM Handle event message
-Metreos.Providers.JTapi.JTapiGotDigits
14:15:57.656 V EPM Event is from anonymous script
-Metreos.Providers.JTapi.JTapiGotDigits
14:15:57.656 V EPM Handle SendBeginCuaeScript
14:15:57.687 V EPM Send cisco.uc.cuae.EtchBridge.beginCuaeScript message
to Etch application HttpMakeCall.
14:15:57.687 I EPM Failed to send beginCuaeScript event, Error: Object
reference
not set to an instance of an object.
14:15:57.687 W EPM Error in sending beginCuaeScript to Etch application
  • HttpMakeCall.

2. after jTapiSendXSIData which is (I presume) synchronnous, I get no
data as if the jTapiSendXSIData function didn't return. E.g. for:
CreateExecuteOptions opt = new CreateExecuteOptions();
opt.url1 = "Dial:" + num;
CreateExecuteResult res = server.createExecute(sessionId, opt);
System.out.println("Send Execute: " + res.xmlObject);
JTapiSendXSIDataResult xsires = server.jTapiSendXSIData(sessionId,
device, res.xmlObject, null);
System.out.println("XSI result: " + xsires.resultCode);

the ouput stops at "Send Execute: <?xml version="1.0"
encoding="utf-8"?><CiscoIPPhoneExecute>
<ExecuteItem Priority="0" URL="Dial:2241" />
</CiscoIPPhoneExecute>"

The same happens for "jTapiGetDeviceStatus" so I don't know if I'm
missing some important information how to write an application or if
it's a bug.

Thanks Jarda
_______________________________________________
Cuae-beta mailing list
Cuae-beta@developer.cisco.com

_______________________________________________
Cuae-beta mailing list
Cuae-beta@developer.cisco.com

Jaroslav Martan, CSE Cisco Systems
CCIE#5871 V Celnici 10
Tel: +420 221435030 117 21 Praha 1
GSM: +420 602376247 Czech Republic
Fax: +420 221435230
_______________________________________________
Cuae-beta mailing list
Cuae-beta@developer.cisco.com

Hi Jarda,

We are fixing the anonymous trigger issue / license usage in the
upcoming Beta probably within 2 weeks.

I will test your JTAPI push and keep you informed about its status.

regards,
Ram

Cisco Developer Services
http://developer.cisco.com/

-----Original Message-----
From: Jaroslav Martan (jmartan)
Sent: Wednesday, June 18, 2008 3:36 PM
To: Ramgopal Chockalingam -X (rchockal - Infosys at Cisco)
Cc: cuae-beta@developer.cisco.com
Subject: Re: [Cuae-beta] Unexpected JTAPI behavior

Hi Ram,

seen inline.

Ramgopal Chockalingam -X (rchockal - Infosys at Cisco) wrote:
Hi Jarda,

For the first issue, application instances are started based on the
triggering parameter... I think you are referring the logs being
printed
in the app server, will look into that errors. Do you see licenses are
being utilized for these unwarranted script instances ?

Apparently the licenses are being utilized, however if the application
is triggered by JTAPI, it just runs "beginCuaeScript", finds out there
is no handler for the event and exits.

After http trigger I see:

2008:06:18::17:54:12(34): Info: EPM Handle bridge message with method
name registerApplication
2008:06:18::17:54:12(40): Info: EPM Application HttpMakeCall, partition
Default registered
2008:06:18::17:54:24(06): Verbose: LM License check PASS: licensed: 6,
running: 0.
2008:06:18::17:54:24(06): Verbose: EPM Handle event message -
Metreos.Providers.Http.GotRequest
2008:06:18::17:54:24(06): Verbose: EPM Handle SendBeginCuaeScript

After subsequent JTAPI triggers this appears in AppServer log:

2008:06:18::17:54:26(93): Info: JTP Added JTapi call
1000003<->DfwNjysPl6nwk5kh
2008:06:18::17:54:26(93): Info: JTP Sending third-party IncomingCall
for: 1000003
2008:06:18::17:54:26(93): Verbose: LM License check PASS: licensed: 6,
running: 1.
2008:06:18::17:54:26(93): Verbose: R No handler registered for
incoming event:
InternalMessage:
Type: EventMessage
Message ID: Metreos.Providers.JTapi.JTapiIncomingCall
Routing GUID: f49c918a-d733-4e1c-9e3f-6948bcdda861
Source: JTapiProvider

Actually I don't mind receiving additional events, I like the idea of
"anonymous" script. But I think it would be great to have an option to
filter the events on the CUAE server side (using regular expressions?).


For the second issue, what do you see in the app server logs related
to
JTAPISendXSIData ? At the client side I assume your Java app just
hang
after printing the "Send Execute" traces... BTW., hope you have
configured that device in the JTAPI Monitored device pool.

The device is configured (otherwise I would receive no JTAPI events).

For jTapiGetDeviceStatus I see this:
2008:06:18::18:03:38(50): Info: EPM Handle CUAE provider action message
with method name jTapiGetDeviceStatus
2008:06:18::18:03:38(53): Verbose: JTP Sent GetDeviceStatus.
deviceName:SEP001DA21A2384
2008:06:18::18:03:38(53): Verbose: JTP GetDeviceStatus request sent,
waiting for response from stack...CallId:1000004,
DeviceNameSEP001DA21A2384
2008:06:18::18:03:38(54): Verbose: JTP Got 58(DeviceStatus) message from

v6.1.
2008:06:18::18:03:38(56): Verbose: JTP Field: 5(DeviceName) =
SEP001DA21A2384
2008:06:18::18:03:38(56): Verbose: JTP Field: 40(CallId) = 1000004
2008:06:18::18:03:38(56): Verbose: JTP Field: 59(DeviceStatus) = 1
2008:06:18::18:03:38(56): Verbose: JTP Field: 63(ResultCode) = 0
2008:06:18::18:03:38(56): Verbose: JTP Received DeviceStatus message
from JTAPI service
2008:06:18::18:03:38(57): Verbose: JTP Received OnDeviceStatus message
from JTAPI proxy
2008:06:18::18:03:38(57): Verbose: JTP Updating transaction
results1000004
2008:06:18::18:03:38(57): Verbose: JTP Releasing lock on device
SEP001DA21A2384
2008:06:18::18:03:38(59): Verbose: JTP Got response for GetDeviceStatus
message; released the lock: CallId:1000004

For jTapiSendXSIData I see:

2008:06:18::18:16:42(56): Info: EPM Handle CUAE provider action message
with method name jTapiSendXSIData
2008:06:18::18:16:42(60): Verbose: JTP Sent SendXSIData.
deviceName:SEP001DA21A2384, deviceType:CtiMonitored
2008:06:18::18:16:42(81): Verbose: JTP Got 35(InitiatedCall) message
from v6.1.
2008:06:18::18:16:42(81): Verbose: JTP Field: 5(DeviceName) =
SEP001DA21A2384
2008:06:18::18:16:42(81): Verbose: JTP Field: 6(DeviceType) = 6
2008:06:18::18:16:42(81): Verbose: JTP Field: 40(CallId) =
988Q56cyjBsnz3ld
2008:06:18::18:16:42(81): Verbose: JTP Field: 42(From) = 2245
2008:06:18::18:16:42(90): Verbose: JTP PropOnCallInitiated - entry
StackCallId 988Q56cyjBsnz3ld : DevName SEP001DA21A2384
2008:06:18::18:16:42(92): Info: JTP Added JTapi call
1000001<->988Q56cyjBsnz3ld
2008:06:18::18:16:42(92): Info: JTP Sending third-party CallInitiated
for: 1000001
2008:06:18::18:16:42(92): Verbose: LM License check PASS: licensed: 6,
running: 1.
2008:06:18::18:16:42(93): Verbose: R No handler registered for
incoming event:
InternalMessage:
Type: EventMessage
Message ID: Metreos.Providers.JTapi.JTapiCallInitiated
Routing GUID: 16080790-a578-40c4-a194-6888843884e1
Source: JTapiProvider
SourceType: Provider

If you want to take a look at the logs, the server is accessible at
Cisco internal network (in our lab) at 10.62.8.131.

Jarda


regards,
Ram

Cisco Developer Services
http://developer.cisco.com/

-----Original Message-----
From: cuae-beta-bounces@developer.cisco.com
mailto:cuae-beta-bounces@developer.cisco.com On Behalf Of JAROSLAV
MARTAN
Sent: Wednesday, June 18, 2008 11:30 AM
To: cuae-beta@developer.cisco.com
Subject: [Cuae-beta] Unexpected JTAPI behavior

Hi,

I'm trying to play with CUAE 2.5.0.7057. In the .etch configuration I
included:
mixin cisco.uc.cuae.legacy.Http
mixin cisco.uc.cuae.legacy.CallControl
mixin cisco.uc.cuae.legacy.MediaControl
mixin cisco.uc.cuae.legacy.CiscoIpPhone
mixin cisco.uc.cuae.legacy.JTapi
The primary trigger of the application is
"Metreos.Providers.Http.GotRequest". The app uses jTapiSendXSIData
with
"Dial:" URI.
I have two problems with the application:
1. new instance of the application is started on any JTAPI event,
e.g.:

14:15:57.656 V EPM Handle event message
-Metreos.Providers.JTapi.JTapiGotDigits
14:15:57.656 V EPM Event is from anonymous script
-Metreos.Providers.JTapi.JTapiGotDigits
14:15:57.656 V EPM Handle SendBeginCuaeScript
14:15:57.687 V EPM Send cisco.uc.cuae.EtchBridge.beginCuaeScript
message
to Etch application HttpMakeCall.
14:15:57.687 I EPM Failed to send beginCuaeScript event, Error: Object
reference
not set to an instance of an object.
14:15:57.687 W EPM Error in sending beginCuaeScript to Etch
application
- HttpMakeCall.

2. after jTapiSendXSIData which is (I presume) synchronnous, I get no
data as if the jTapiSendXSIData function didn't return. E.g. for:
CreateExecuteOptions opt = new CreateExecuteOptions();
opt.url1 = "Dial:" + num;
CreateExecuteResult res = server.createExecute(sessionId, opt);
System.out.println("Send Execute: " + res.xmlObject);
JTapiSendXSIDataResult xsires = server.jTapiSendXSIData(sessionId,
device, res.xmlObject, null);
System.out.println("XSI result: " + xsires.resultCode);

the ouput stops at "Send Execute: <?xml version="1.0"
encoding="utf-8"?><CiscoIPPhoneExecute>
<ExecuteItem Priority="0" URL="Dial:2241" />
</CiscoIPPhoneExecute>"

The same happens for "jTapiGetDeviceStatus" so I don't know if I'm
missing some important information how to write an application or if
it's a bug.

Thanks Jarda
_______________________________________________
Cuae-beta mailing list
Cuae-beta@developer.cisco.com

_______________________________________________
Cuae-beta mailing list
Cuae-beta@developer.cisco.com

Jaroslav Martan, CSE Cisco Systems
CCIE#5871 V Celnici 10
Tel: +420 221435030 117 21 Praha 1
GSM: +420 602376247 Czech Republic
Fax: +420 221435230

_______________________________________________
Cuae-beta mailing list
Cuae-beta@developer.cisco.com

Hi Ram,

do you plan anything like "stateless" triggers, in other words an
ability to subscribe to specific set of triggers (on single or list of
devices)? I think with JTAPI it doesn't make much sense to require
primary trigger and just then allow subsequent triggers on the device.
For example I need to watch CallActive/CallInactive on shared line
between IP phone and CUAE SCCP phone. In some call scenarios none of the
primary triggers is fired and AFAIK there is no way how to get CallID of
an active call.

Jarda

Ramgopal Chockalingam -X (rchockal - Infosys at Cisco) wrote:
Hi Jarda,

We are fixing the anonymous trigger issue / license usage in the
upcoming Beta probably within 2 weeks.

I will test your JTAPI push and keep you informed about its status.

regards,
Ram

Cisco Developer Services
http://developer.cisco.com/

-----Original Message-----
From: Jaroslav Martan (jmartan)
Sent: Wednesday, June 18, 2008 3:36 PM
To: Ramgopal Chockalingam -X (rchockal - Infosys at Cisco)
Cc: cuae-beta@developer.cisco.com
Subject: Re: [Cuae-beta] Unexpected JTAPI behavior

Hi Ram,

seen inline.

Ramgopal Chockalingam -X (rchockal - Infosys at Cisco) wrote:
Hi Jarda,

For the first issue, application instances are started based on the
triggering parameter... I think you are referring the logs being
printed
in the app server, will look into that errors. Do you see licenses are
being utilized for these unwarranted script instances ?

Apparently the licenses are being utilized, however if the application
is triggered by JTAPI, it just runs "beginCuaeScript", finds out there
is no handler for the event and exits.

After http trigger I see:

2008:06:18::17:54:12(34): Info: EPM Handle bridge message with method
name registerApplication
2008:06:18::17:54:12(40): Info: EPM Application HttpMakeCall, partition
Default registered
2008:06:18::17:54:24(06): Verbose: LM License check PASS: licensed: 6,
running: 0.
2008:06:18::17:54:24(06): Verbose: EPM Handle event message -
Metreos.Providers.Http.GotRequest
2008:06:18::17:54:24(06): Verbose: EPM Handle SendBeginCuaeScript

After subsequent JTAPI triggers this appears in AppServer log:

2008:06:18::17:54:26(93): Info: JTP Added JTapi call
1000003<->DfwNjysPl6nwk5kh
2008:06:18::17:54:26(93): Info: JTP Sending third-party IncomingCall
for: 1000003
2008:06:18::17:54:26(93): Verbose: LM License check PASS: licensed: 6,
running: 1.
2008:06:18::17:54:26(93): Verbose: R No handler registered for
incoming event:
InternalMessage:
Type: EventMessage
Message ID: Metreos.Providers.JTapi.JTapiIncomingCall
Routing GUID: f49c918a-d733-4e1c-9e3f-6948bcdda861
Source: JTapiProvider

Actually I don't mind receiving additional events, I like the idea of
"anonymous" script. But I think it would be great to have an option to
filter the events on the CUAE server side (using regular expressions?).

For the second issue, what do you see in the app server logs related
to
JTAPISendXSIData ? At the client side I assume your Java app just
hang
after printing the "Send Execute" traces... BTW., hope you have
configured that device in the JTAPI Monitored device pool.

The device is configured (otherwise I would receive no JTAPI events).

For jTapiGetDeviceStatus I see this:
2008:06:18::18:03:38(50): Info: EPM Handle CUAE provider action message
with method name jTapiGetDeviceStatus
2008:06:18::18:03:38(53): Verbose: JTP Sent GetDeviceStatus.
deviceName:SEP001DA21A2384
2008:06:18::18:03:38(53): Verbose: JTP GetDeviceStatus request sent,
waiting for response from stack...CallId:1000004,
DeviceNameSEP001DA21A2384
2008:06:18::18:03:38(54): Verbose: JTP Got 58(DeviceStatus) message from

v6.1.
2008:06:18::18:03:38(56): Verbose: JTP Field: 5(DeviceName) =
SEP001DA21A2384
2008:06:18::18:03:38(56): Verbose: JTP Field: 40(CallId) = 1000004
2008:06:18::18:03:38(56): Verbose: JTP Field: 59(DeviceStatus) = 1
2008:06:18::18:03:38(56): Verbose: JTP Field: 63(ResultCode) = 0
2008:06:18::18:03:38(56): Verbose: JTP Received DeviceStatus message
from JTAPI service
2008:06:18::18:03:38(57): Verbose: JTP Received OnDeviceStatus message
from JTAPI proxy
2008:06:18::18:03:38(57): Verbose: JTP Updating transaction
results1000004
2008:06:18::18:03:38(57): Verbose: JTP Releasing lock on device
SEP001DA21A2384
2008:06:18::18:03:38(59): Verbose: JTP Got response for GetDeviceStatus
message; released the lock: CallId:1000004

For jTapiSendXSIData I see:

2008:06:18::18:16:42(56): Info: EPM Handle CUAE provider action message
with method name jTapiSendXSIData
2008:06:18::18:16:42(60): Verbose: JTP Sent SendXSIData.
deviceName:SEP001DA21A2384, deviceType:CtiMonitored
2008:06:18::18:16:42(81): Verbose: JTP Got 35(InitiatedCall) message
from v6.1.
2008:06:18::18:16:42(81): Verbose: JTP Field: 5(DeviceName) =
SEP001DA21A2384
2008:06:18::18:16:42(81): Verbose: JTP Field: 6(DeviceType) = 6
2008:06:18::18:16:42(81): Verbose: JTP Field: 40(CallId) =
988Q56cyjBsnz3ld
2008:06:18::18:16:42(81): Verbose: JTP Field: 42(From) = 2245
2008:06:18::18:16:42(90): Verbose: JTP PropOnCallInitiated - entry
StackCallId 988Q56cyjBsnz3ld : DevName SEP001DA21A2384
2008:06:18::18:16:42(92): Info: JTP Added JTapi call
1000001<->988Q56cyjBsnz3ld
2008:06:18::18:16:42(92): Info: JTP Sending third-party CallInitiated
for: 1000001
2008:06:18::18:16:42(92): Verbose: LM License check PASS: licensed: 6,
running: 1.
2008:06:18::18:16:42(93): Verbose: R No handler registered for
incoming event:
InternalMessage:
Type: EventMessage
Message ID: Metreos.Providers.JTapi.JTapiCallInitiated
Routing GUID: 16080790-a578-40c4-a194-6888843884e1
Source: JTapiProvider
SourceType: Provider

If you want to take a look at the logs, the server is accessible at
Cisco internal network (in our lab) at 10.62.8.131.

Jarda

regards,
Ram

Cisco Developer Services
http://developer.cisco.com/

-----Original Message-----
From: cuae-beta-bounces@developer.cisco.com
mailto:cuae-beta-bounces@developer.cisco.com On Behalf Of JAROSLAV
MARTAN
Sent: Wednesday, June 18, 2008 11:30 AM
To: cuae-beta@developer.cisco.com
Subject: [Cuae-beta] Unexpected JTAPI behavior

Hi,

I'm trying to play with CUAE 2.5.0.7057. In the .etch configuration I
included:
mixin cisco.uc.cuae.legacy.Http
mixin cisco.uc.cuae.legacy.CallControl
mixin cisco.uc.cuae.legacy.MediaControl
mixin cisco.uc.cuae.legacy.CiscoIpPhone
mixin cisco.uc.cuae.legacy.JTapi
The primary trigger of the application is
"Metreos.Providers.Http.GotRequest". The app uses jTapiSendXSIData
with
"Dial:" URI.
I have two problems with the application:
1. new instance of the application is started on any JTAPI event,
e.g.:
14:15:57.656 V EPM Handle event message
-Metreos.Providers.JTapi.JTapiGotDigits
14:15:57.656 V EPM Event is from anonymous script
-Metreos.Providers.JTapi.JTapiGotDigits
14:15:57.656 V EPM Handle SendBeginCuaeScript
14:15:57.687 V EPM Send cisco.uc.cuae.EtchBridge.beginCuaeScript
message
to Etch application HttpMakeCall.
14:15:57.687 I EPM Failed to send beginCuaeScript event, Error: Object
reference
not set to an instance of an object.
14:15:57.687 W EPM Error in sending beginCuaeScript to Etch
application
- HttpMakeCall.

2. after jTapiSendXSIData which is (I presume) synchronnous, I get no
data as if the jTapiSendXSIData function didn't return. E.g. for:
CreateExecuteOptions opt = new CreateExecuteOptions();
opt.url1 = "Dial:" + num;
CreateExecuteResult res = server.createExecute(sessionId, opt);
System.out.println("Send Execute: " + res.xmlObject);
JTapiSendXSIDataResult xsires = server.jTapiSendXSIData(sessionId,
device, res.xmlObject, null);
System.out.println("XSI result: " + xsires.resultCode);

the ouput stops at "Send Execute: <?xml version="1.0"
encoding="utf-8"?><CiscoIPPhoneExecute>
<ExecuteItem Priority="0" URL="Dial:2241" />
</CiscoIPPhoneExecute>"

The same happens for "jTapiGetDeviceStatus" so I don't know if I'm
missing some important information how to write an application or if
it's a bug.

Thanks Jarda
_______________________________________________
Cuae-beta mailing list
Cuae-beta@developer.cisco.com

_______________________________________________
Cuae-beta mailing list
Cuae-beta@developer.cisco.com

Jaroslav Martan, CSE Cisco Systems
CCIE#5871 V Celnici 10
Tel: +420 221435030 117 21 Praha 1
GSM: +420 602376247 Czech Republic
Fax: +420 221435230
_______________________________________________
Cuae-beta mailing list
Cuae-beta@developer.cisco.com

Hi Jarda,

As of now for JTAPI we have only 3 triggers "Incoming Call,
CallInitiated, CallEstabilished" based on which an application script
instance would be started. However other trigger events could be a sub
trigger for that application instance which would be invoked based on
the deviceName / appropriate event parameters. You could have as many
sub triggering event for each number of shared lines you have.

Can you please give me an example call-scenario where no primary trigger
is fired.

BTW., FYI., the primary trigger of OnIncomingCall could be null, which
indicates that app would be triggered on any incoming call to the app
server.

regards,
Ram

Cisco Developer Services
http://developer.cisco.com/

-----Original Message-----
From: Jaroslav Martan (jmartan)
Sent: Monday, June 23, 2008 3:27 AM
To: Ramgopal Chockalingam -X (rchockal - Infosys at Cisco)
Cc: cuae-beta@developer.cisco.com
Subject: Re: [Cuae-beta] Unexpected JTAPI behavior

Hi Ram,

do you plan anything like "stateless" triggers, in other words an
ability to subscribe to specific set of triggers (on single or list of
devices)? I think with JTAPI it doesn't make much sense to require
primary trigger and just then allow subsequent triggers on the device.
For example I need to watch CallActive/CallInactive on shared line
between IP phone and CUAE SCCP phone. In some call scenarios none of the

primary triggers is fired and AFAIK there is no way how to get CallID of

an active call.

Jarda

Ramgopal Chockalingam -X (rchockal - Infosys at Cisco) wrote:
Hi Jarda,

We are fixing the anonymous trigger issue / license usage in the
upcoming Beta probably within 2 weeks.

I will test your JTAPI push and keep you informed about its status.

regards,
Ram

Cisco Developer Services
http://developer.cisco.com/

-----Original Message-----
From: Jaroslav Martan (jmartan)
Sent: Wednesday, June 18, 2008 3:36 PM
To: Ramgopal Chockalingam -X (rchockal - Infosys at Cisco)
Cc: cuae-beta@developer.cisco.com
Subject: Re: [Cuae-beta] Unexpected JTAPI behavior

Hi Ram,

seen inline.

Ramgopal Chockalingam -X (rchockal - Infosys at Cisco) wrote:
Hi Jarda,

For the first issue, application instances are started based on the
triggering parameter... I think you are referring the logs being
printed
in the app server, will look into that errors. Do you see licenses
are
being utilized for these unwarranted script instances ?

Apparently the licenses are being utilized, however if the application

is triggered by JTAPI, it just runs "beginCuaeScript", finds out there

is no handler for the event and exits.

After http trigger I see:

2008:06:18::17:54:12(34): Info: EPM Handle bridge message with method
name registerApplication
2008:06:18::17:54:12(40): Info: EPM Application HttpMakeCall,
partition
Default registered
2008:06:18::17:54:24(06): Verbose: LM License check PASS: licensed:
6,
running: 0.
2008:06:18::17:54:24(06): Verbose: EPM Handle event message -
Metreos.Providers.Http.GotRequest
2008:06:18::17:54:24(06): Verbose: EPM Handle SendBeginCuaeScript

After subsequent JTAPI triggers this appears in AppServer log:

2008:06:18::17:54:26(93): Info: JTP Added JTapi call
1000003<->DfwNjysPl6nwk5kh
2008:06:18::17:54:26(93): Info: JTP Sending third-party IncomingCall
for: 1000003
2008:06:18::17:54:26(93): Verbose: LM License check PASS: licensed:
6,
running: 1.
2008:06:18::17:54:26(93): Verbose: R No handler registered for
incoming event:
InternalMessage:
Type: EventMessage
Message ID: Metreos.Providers.JTapi.JTapiIncomingCall
Routing GUID: f49c918a-d733-4e1c-9e3f-6948bcdda861
Source: JTapiProvider

Actually I don't mind receiving additional events, I like the idea of
"anonymous" script. But I think it would be great to have an option to

filter the events on the CUAE server side (using regular
expressions?).

For the second issue, what do you see in the app server logs related
to
JTAPISendXSIData ? At the client side I assume your Java app just
hang
after printing the "Send Execute" traces... BTW., hope you have
configured that device in the JTAPI Monitored device pool.

The device is configured (otherwise I would receive no JTAPI events).

For jTapiGetDeviceStatus I see this:
2008:06:18::18:03:38(50): Info: EPM Handle CUAE provider action
message
with method name jTapiGetDeviceStatus
2008:06:18::18:03:38(53): Verbose: JTP Sent GetDeviceStatus.
deviceName:SEP001DA21A2384
2008:06:18::18:03:38(53): Verbose: JTP GetDeviceStatus request sent,
waiting for response from stack...CallId:1000004,
DeviceNameSEP001DA21A2384
2008:06:18::18:03:38(54): Verbose: JTP Got 58(DeviceStatus) message
from

v6.1.
2008:06:18::18:03:38(56): Verbose: JTP Field: 5(DeviceName) =
SEP001DA21A2384
2008:06:18::18:03:38(56): Verbose: JTP Field: 40(CallId) = 1000004
2008:06:18::18:03:38(56): Verbose: JTP Field: 59(DeviceStatus) = 1
2008:06:18::18:03:38(56): Verbose: JTP Field: 63(ResultCode) = 0
2008:06:18::18:03:38(56): Verbose: JTP Received DeviceStatus message
from JTAPI service
2008:06:18::18:03:38(57): Verbose: JTP Received OnDeviceStatus message

from JTAPI proxy
2008:06:18::18:03:38(57): Verbose: JTP Updating transaction
results1000004
2008:06:18::18:03:38(57): Verbose: JTP Releasing lock on device
SEP001DA21A2384
2008:06:18::18:03:38(59): Verbose: JTP Got response for
GetDeviceStatus
message; released the lock: CallId:1000004

For jTapiSendXSIData I see:

2008:06:18::18:16:42(56): Info: EPM Handle CUAE provider action
message
with method name jTapiSendXSIData
2008:06:18::18:16:42(60): Verbose: JTP Sent SendXSIData.
deviceName:SEP001DA21A2384, deviceType:CtiMonitored
2008:06:18::18:16:42(81): Verbose: JTP Got 35(InitiatedCall) message
from v6.1.
2008:06:18::18:16:42(81): Verbose: JTP Field: 5(DeviceName) =
SEP001DA21A2384
2008:06:18::18:16:42(81): Verbose: JTP Field: 6(DeviceType) = 6
2008:06:18::18:16:42(81): Verbose: JTP Field: 40(CallId) =
988Q56cyjBsnz3ld
2008:06:18::18:16:42(81): Verbose: JTP Field: 42(From) = 2245
2008:06:18::18:16:42(90): Verbose: JTP PropOnCallInitiated - entry
StackCallId 988Q56cyjBsnz3ld : DevName SEP001DA21A2384
2008:06:18::18:16:42(92): Info: JTP Added JTapi call
1000001<->988Q56cyjBsnz3ld
2008:06:18::18:16:42(92): Info: JTP Sending third-party CallInitiated
for: 1000001
2008:06:18::18:16:42(92): Verbose: LM License check PASS: licensed:
6,
running: 1.
2008:06:18::18:16:42(93): Verbose: R No handler registered for
incoming event:
InternalMessage:
Type: EventMessage
Message ID: Metreos.Providers.JTapi.JTapiCallInitiated
Routing GUID: 16080790-a578-40c4-a194-6888843884e1
Source: JTapiProvider
SourceType: Provider

If you want to take a look at the logs, the server is accessible at
Cisco internal network (in our lab) at 10.62.8.131.

Jarda

regards,
Ram

Cisco Developer Services
http://developer.cisco.com/

-----Original Message-----
From: cuae-beta-bounces@developer.cisco.com
mailto:cuae-beta-bounces@developer.cisco.com On Behalf Of JAROSLAV
MARTAN
Sent: Wednesday, June 18, 2008 11:30 AM
To: cuae-beta@developer.cisco.com
Subject: [Cuae-beta] Unexpected JTAPI behavior

Hi,

I'm trying to play with CUAE 2.5.0.7057. In the .etch configuration I
included:
mixin cisco.uc.cuae.legacy.Http
mixin cisco.uc.cuae.legacy.CallControl
mixin cisco.uc.cuae.legacy.MediaControl
mixin cisco.uc.cuae.legacy.CiscoIpPhone
mixin cisco.uc.cuae.legacy.JTapi
The primary trigger of the application is
"Metreos.Providers.Http.GotRequest". The app uses jTapiSendXSIData
with
"Dial:" URI.
I have two problems with the application:
1. new instance of the application is started on any JTAPI event,
e.g.:
14:15:57.656 V EPM Handle event message
-Metreos.Providers.JTapi.JTapiGotDigits
14:15:57.656 V EPM Event is from anonymous script
-Metreos.Providers.JTapi.JTapiGotDigits
14:15:57.656 V EPM Handle SendBeginCuaeScript
14:15:57.687 V EPM Send cisco.uc.cuae.EtchBridge.beginCuaeScript
message
to Etch application HttpMakeCall.
14:15:57.687 I EPM Failed to send beginCuaeScript event, Error:
Object
reference
not set to an instance of an object.
14:15:57.687 W EPM Error in sending beginCuaeScript to Etch
application
- HttpMakeCall.

2. after jTapiSendXSIData which is (I presume) synchronnous, I get no
data as if the jTapiSendXSIData function didn't return. E.g. for:
CreateExecuteOptions opt = new CreateExecuteOptions();
opt.url1 = "Dial:" + num;
CreateExecuteResult res = server.createExecute(sessionId, opt);
System.out.println("Send Execute: " + res.xmlObject);
JTapiSendXSIDataResult xsires = server.jTapiSendXSIData(sessionId,
device, res.xmlObject, null);
System.out.println("XSI result: " + xsires.resultCode);

the ouput stops at "Send Execute: <?xml version="1.0"
encoding="utf-8"?><CiscoIPPhoneExecute>
<ExecuteItem Priority="0" URL="Dial:2241" />
</CiscoIPPhoneExecute>"

The same happens for "jTapiGetDeviceStatus" so I don't know if I'm
missing some important information how to write an application or if
it's a bug.

Thanks Jarda
_______________________________________________
Cuae-beta mailing list
Cuae-beta@developer.cisco.com

_______________________________________________
Cuae-beta mailing list
Cuae-beta@developer.cisco.com

Jaroslav Martan, CSE Cisco Systems
CCIE#5871 V Celnici 10
Tel: +420 221435030 117 21 Praha 1
GSM: +420 602376247 Czech Republic
Fax: +420 221435230

_______________________________________________
Cuae-beta mailing list
Cuae-beta@developer.cisco.com

Hi Ram,

the case is that I have shared line between IP phone and CUAE SCCP
phone. I'm trying to build sort of single number reach service (similar
to what Unified Mobility does). So what I need to do is receive incoming
call on both phones (real and virtual) simultaneously and depending on
the user's activity move the call between them (put on hold on one, make
it active on another).
I was hitting various limitations of CUAE's SCCP implementation and
finally I got to the point that to move the existing call from real to
virtual phone I do "JTapiBlindTransfer" to the same number. It's like a
putting call on hold and make it ring again on the same phone. The phone
starts ringing as I expected but I see no "JTapiIncomingCall" trigger
although from verbose logs I see that a call ID is allocated by JTAPI
(it shows in a log when I call jTapiGetDeviceStatus).

Another question I could ask was: do you plan to extend the
functionality of SCCP to allow call Hold and Resume?...

Jarda

Ramgopal Chockalingam -X (rchockal - Infosys at Cisco) wrote:
Hi Jarda,

As of now for JTAPI we have only 3 triggers "Incoming Call,
CallInitiated, CallEstabilished" based on which an application script
instance would be started. However other trigger events could be a sub
trigger for that application instance which would be invoked based on
the deviceName / appropriate event parameters. You could have as many
sub triggering event for each number of shared lines you have.

Can you please give me an example call-scenario where no primary trigger
is fired.

BTW., FYI., the primary trigger of OnIncomingCall could be null, which
indicates that app would be triggered on any incoming call to the app
server.

regards,
Ram

Cisco Developer Services
http://developer.cisco.com/

-----Original Message-----
From: Jaroslav Martan (jmartan)
Sent: Monday, June 23, 2008 3:27 AM
To: Ramgopal Chockalingam -X (rchockal - Infosys at Cisco)
Cc: cuae-beta@developer.cisco.com
Subject: Re: [Cuae-beta] Unexpected JTAPI behavior

Hi Ram,

do you plan anything like "stateless" triggers, in other words an
ability to subscribe to specific set of triggers (on single or list of
devices)? I think with JTAPI it doesn't make much sense to require
primary trigger and just then allow subsequent triggers on the device.
For example I need to watch CallActive/CallInactive on shared line
between IP phone and CUAE SCCP phone. In some call scenarios none of the

primary triggers is fired and AFAIK there is no way how to get CallID of

an active call.

Jarda

Ramgopal Chockalingam -X (rchockal - Infosys at Cisco) wrote:
Hi Jarda,

We are fixing the anonymous trigger issue / license usage in the
upcoming Beta probably within 2 weeks.

I will test your JTAPI push and keep you informed about its status.

regards,
Ram

Cisco Developer Services
http://developer.cisco.com/

-----Original Message-----
From: Jaroslav Martan (jmartan)
Sent: Wednesday, June 18, 2008 3:36 PM
To: Ramgopal Chockalingam -X (rchockal - Infosys at Cisco)
Cc: cuae-beta@developer.cisco.com
Subject: Re: [Cuae-beta] Unexpected JTAPI behavior

Hi Ram,

seen inline.

Ramgopal Chockalingam -X (rchockal - Infosys at Cisco) wrote:
Hi Jarda,

For the first issue, application instances are started based on the
triggering parameter... I think you are referring the logs being
printed
in the app server, will look into that errors. Do you see licenses
are
being utilized for these unwarranted script instances ?
Apparently the licenses are being utilized, however if the application

is triggered by JTAPI, it just runs "beginCuaeScript", finds out there

is no handler for the event and exits.

After http trigger I see:

2008:06:18::17:54:12(34): Info: EPM Handle bridge message with method
name registerApplication
2008:06:18::17:54:12(40): Info: EPM Application HttpMakeCall,
partition
Default registered
2008:06:18::17:54:24(06): Verbose: LM License check PASS: licensed:
6,
running: 0.
2008:06:18::17:54:24(06): Verbose: EPM Handle event message -
Metreos.Providers.Http.GotRequest
2008:06:18::17:54:24(06): Verbose: EPM Handle SendBeginCuaeScript

After subsequent JTAPI triggers this appears in AppServer log:

2008:06:18::17:54:26(93): Info: JTP Added JTapi call
1000003<->DfwNjysPl6nwk5kh
2008:06:18::17:54:26(93): Info: JTP Sending third-party IncomingCall
for: 1000003
2008:06:18::17:54:26(93): Verbose: LM License check PASS: licensed:
6,
running: 1.
2008:06:18::17:54:26(93): Verbose: R No handler registered for
incoming event:
InternalMessage:
Type: EventMessage
Message ID: Metreos.Providers.JTapi.JTapiIncomingCall
Routing GUID: f49c918a-d733-4e1c-9e3f-6948bcdda861
Source: JTapiProvider

Actually I don't mind receiving additional events, I like the idea of
"anonymous" script. But I think it would be great to have an option to

filter the events on the CUAE server side (using regular
expressions?).
For the second issue, what do you see in the app server logs related
to
JTAPISendXSIData ? At the client side I assume your Java app just
hang
after printing the "Send Execute" traces... BTW., hope you have
configured that device in the JTAPI Monitored device pool.
The device is configured (otherwise I would receive no JTAPI events).

For jTapiGetDeviceStatus I see this:
2008:06:18::18:03:38(50): Info: EPM Handle CUAE provider action
message
with method name jTapiGetDeviceStatus
2008:06:18::18:03:38(53): Verbose: JTP Sent GetDeviceStatus.
deviceName:SEP001DA21A2384
2008:06:18::18:03:38(53): Verbose: JTP GetDeviceStatus request sent,
waiting for response from stack...CallId:1000004,
DeviceNameSEP001DA21A2384
2008:06:18::18:03:38(54): Verbose: JTP Got 58(DeviceStatus) message
from
v6.1.
2008:06:18::18:03:38(56): Verbose: JTP Field: 5(DeviceName) =
SEP001DA21A2384
2008:06:18::18:03:38(56): Verbose: JTP Field: 40(CallId) = 1000004
2008:06:18::18:03:38(56): Verbose: JTP Field: 59(DeviceStatus) = 1
2008:06:18::18:03:38(56): Verbose: JTP Field: 63(ResultCode) = 0
2008:06:18::18:03:38(56): Verbose: JTP Received DeviceStatus message
from JTAPI service
2008:06:18::18:03:38(57): Verbose: JTP Received OnDeviceStatus message

from JTAPI proxy
2008:06:18::18:03:38(57): Verbose: JTP Updating transaction
results1000004
2008:06:18::18:03:38(57): Verbose: JTP Releasing lock on device
SEP001DA21A2384
2008:06:18::18:03:38(59): Verbose: JTP Got response for
GetDeviceStatus
message; released the lock: CallId:1000004

For jTapiSendXSIData I see:

2008:06:18::18:16:42(56): Info: EPM Handle CUAE provider action
message
with method name jTapiSendXSIData
2008:06:18::18:16:42(60): Verbose: JTP Sent SendXSIData.
deviceName:SEP001DA21A2384, deviceType:CtiMonitored
2008:06:18::18:16:42(81): Verbose: JTP Got 35(InitiatedCall) message
from v6.1.
2008:06:18::18:16:42(81): Verbose: JTP Field: 5(DeviceName) =
SEP001DA21A2384
2008:06:18::18:16:42(81): Verbose: JTP Field: 6(DeviceType) = 6
2008:06:18::18:16:42(81): Verbose: JTP Field: 40(CallId) =
988Q56cyjBsnz3ld
2008:06:18::18:16:42(81): Verbose: JTP Field: 42(From) = 2245
2008:06:18::18:16:42(90): Verbose: JTP PropOnCallInitiated - entry
StackCallId 988Q56cyjBsnz3ld : DevName SEP001DA21A2384
2008:06:18::18:16:42(92): Info: JTP Added JTapi call
1000001<->988Q56cyjBsnz3ld
2008:06:18::18:16:42(92): Info: JTP Sending third-party CallInitiated
for: 1000001
2008:06:18::18:16:42(92): Verbose: LM License check PASS: licensed:
6,
running: 1.
2008:06:18::18:16:42(93): Verbose: R No handler registered for
incoming event:
InternalMessage:
Type: EventMessage
Message ID: Metreos.Providers.JTapi.JTapiCallInitiated
Routing GUID: 16080790-a578-40c4-a194-6888843884e1
Source: JTapiProvider
SourceType: Provider

If you want to take a look at the logs, the server is accessible at
Cisco internal network (in our lab) at 10.62.8.131.

Jarda

regards,
Ram

Cisco Developer Services
http://developer.cisco.com/

-----Original Message-----
From: cuae-beta-bounces@developer.cisco.com
mailto:cuae-beta-bounces@developer.cisco.com On Behalf Of JAROSLAV
MARTAN
Sent: Wednesday, June 18, 2008 11:30 AM
To: cuae-beta@developer.cisco.com
Subject: [Cuae-beta] Unexpected JTAPI behavior

Hi,

I'm trying to play with CUAE 2.5.0.7057. In the .etch configuration I
included:
mixin cisco.uc.cuae.legacy.Http
mixin cisco.uc.cuae.legacy.CallControl
mixin cisco.uc.cuae.legacy.MediaControl
mixin cisco.uc.cuae.legacy.CiscoIpPhone
mixin cisco.uc.cuae.legacy.JTapi
The primary trigger of the application is
"Metreos.Providers.Http.GotRequest". The app uses jTapiSendXSIData
with
"Dial:" URI.
I have two problems with the application:
1. new instance of the application is started on any JTAPI event,
e.g.:
14:15:57.656 V EPM Handle event message
-Metreos.Providers.JTapi.JTapiGotDigits
14:15:57.656 V EPM Event is from anonymous script
-Metreos.Providers.JTapi.JTapiGotDigits
14:15:57.656 V EPM Handle SendBeginCuaeScript
14:15:57.687 V EPM Send cisco.uc.cuae.EtchBridge.beginCuaeScript
message
to Etch application HttpMakeCall.
14:15:57.687 I EPM Failed to send beginCuaeScript event, Error:
Object
reference
not set to an instance of an object.
14:15:57.687 W EPM Error in sending beginCuaeScript to Etch
application
- HttpMakeCall.

2. after jTapiSendXSIData which is (I presume) synchronnous, I get no
data as if the jTapiSendXSIData function didn't return. E.g. for:
CreateExecuteOptions opt = new CreateExecuteOptions();
opt.url1 = "Dial:" + num;
CreateExecuteResult res = server.createExecute(sessionId, opt);
System.out.println("Send Execute: " + res.xmlObject);
JTapiSendXSIDataResult xsires = server.jTapiSendXSIData(sessionId,
device, res.xmlObject, null);
System.out.println("XSI result: " + xsires.resultCode);

the ouput stops at "Send Execute: <?xml version="1.0"
encoding="utf-8"?><CiscoIPPhoneExecute>
<ExecuteItem Priority="0" URL="Dial:2241" />
</CiscoIPPhoneExecute>"

The same happens for "jTapiGetDeviceStatus" so I don't know if I'm
missing some important information how to write an application or if
it's a bug.

Thanks Jarda
_______________________________________________
Cuae-beta mailing list
Cuae-beta@developer.cisco.com

_______________________________________________
Cuae-beta mailing list
Cuae-beta@developer.cisco.com

Jaroslav Martan, CSE Cisco Systems
CCIE#5871 V Celnici 10
Tel: +420 221435030 117 21 Praha 1
GSM: +420 602376247 Czech Republic
Fax: +420 221435230
_______________________________________________
Cuae-beta mailing list
Cuae-beta@developer.cisco.com

Hi Jarda,

When you say CUAE SCCP phone, what do you mean by that ? Is it a
physical SCCP device added to the CUAE's SCCP device pool ? or is it a
virtual CTI SCCP Port which is being first party call control'd via CUAE
application ?

Ok., you have another IP Device which got a line / DN sharing with the
above SCCP device.

I hope, your Monitored CTI Device Pool in CUAE has both the above
devices... isn't it ? Hence, your JTAPIIncomingCall app would be
triggered for any calls arriving in this monitored device pool. Now,
depending on the application logic you do "JTAPIBlindTransfer" to move
the incoming call arriving on a shared DN between real &#38; virtual device.

At this step CUAE's which app / trigger doesn't work ? As per
your description it seems the virtual CUAE SCCP Phone application
doesn't get notified / triggered about this transfer. Please elaborate
so as to replicate your setup.

CUAE to support SCCP call hold / resume, I think Rajesh / someone in
this mailer would answer.

regards,
Ram

Cisco Developer Services
http://developer.cisco.com/

-----Original Message-----
From: Jaroslav Martan (jmartan)
Sent: Tuesday, June 24, 2008 12:07 PM
To: Ramgopal Chockalingam -X (rchockal - Infosys at Cisco)
Cc: cuae-beta@developer.cisco.com; Rajesh Vargheese (rvarghee)
Subject: Re: [Cuae-beta] Unexpected JTAPI behavior

Hi Ram,

the case is that I have shared line between IP phone and CUAE SCCP
phone. I'm trying to build sort of single number reach service (similar
to what Unified Mobility does). So what I need to do is receive incoming

call on both phones (real and virtual) simultaneously and depending on
the user's activity move the call between them (put on hold on one, make

it active on another).
I was hitting various limitations of CUAE's SCCP implementation and
finally I got to the point that to move the existing call from real to
virtual phone I do "JTapiBlindTransfer" to the same number. It's like a
putting call on hold and make it ring again on the same phone. The phone

starts ringing as I expected but I see no "JTapiIncomingCall" trigger
although from verbose logs I see that a call ID is allocated by JTAPI
(it shows in a log when I call jTapiGetDeviceStatus).

Another question I could ask was: do you plan to extend the
functionality of SCCP to allow call Hold and Resume?...

Jarda

Ramgopal Chockalingam -X (rchockal - Infosys at Cisco) wrote:
Hi Jarda,

As of now for JTAPI we have only 3 triggers "Incoming Call,
CallInitiated, CallEstabilished" based on which an application script
instance would be started. However other trigger events could be a sub
trigger for that application instance which would be invoked based on
the deviceName / appropriate event parameters. You could have as many
sub triggering event for each number of shared lines you have.

Can you please give me an example call-scenario where no primary
trigger
is fired.

BTW., FYI., the primary trigger of OnIncomingCall could be null, which
indicates that app would be triggered on any incoming call to the app
server.

regards,
Ram

Cisco Developer Services
http://developer.cisco.com/

_______________________________________________
Cuae-beta mailing list
Cuae-beta@developer.cisco.com

Hi Ram,

sorry I was not specific enough. By "CUAE SCCP phone" or "virtual phone"
I mean device belonging to "SCCP Device Pool" on CUAE. In a CUAE
application such device is controlled by the set of "Call Control"
Actions (MakeCall, AnswerCall, etc., no Hold/Resume).
I have a shared line between the "virtual" phone and real phone. The
real phone is controlled via JTAPI.

The call scenario is like this:
1. incoming call to the shared line (say 1111), on virtual I get
IncomingCall, on real I get JtapiIncoming call, as expected.
2. I answer the real phone manually, get JtapiCallActive on real phone
and RemoteHangup on virtual. It's not ideal but allows me to go on.
3. after some time I send JtapiBlindTransfer to the real phone with "To"
set to the shared line DN (1111). On the virtual phone I receive
IncomingCall (as expected), real phone rings but there is no event in
JTAPI. Just when I execute JTapiGetDeviceStatus, I see in an AppServer
log that there is a new callID on the real phone, but I can't use it in
the application as JTapiGetDeviceStatus doesn't return the callID.

So my guess is that JTAPI actually catches the incoming call but for
some reason it doesn't send the trigger. Maybe it is related to the fact
that I see IncomingCall on the virtual phone, then I answer it and after
that I see JtapiHangup on the real phone. So from JTAPI perspective the
real phone hasn't finnished the transfer and is already receiving a new
call (from the same number as before).

I checked "Max Calls per Device" in JTAPI provider (set it to 4), busy
trigger on CUCM, no change.

Jarda

Ramgopal Chockalingam -X (rchockal - Infosys at Cisco) wrote:
Hi Jarda,

When you say CUAE SCCP phone, what do you mean by that ? Is it a
physical SCCP device added to the CUAE's SCCP device pool ? or is it a
virtual CTI SCCP Port which is being first party call control'd via CUAE
application ?

Ok., you have another IP Device which got a line / DN sharing with the
above SCCP device.

I hope, your Monitored CTI Device Pool in CUAE has both the above
devices... isn't it ? Hence, your JTAPIIncomingCall app would be
triggered for any calls arriving in this monitored device pool. Now,
depending on the application logic you do "JTAPIBlindTransfer" to move
the incoming call arriving on a shared DN between real &#38; virtual device.

At this step CUAE's which app / trigger doesn't work ? As per
your description it seems the virtual CUAE SCCP Phone application
doesn't get notified / triggered about this transfer. Please elaborate
so as to replicate your setup.

CUAE to support SCCP call hold / resume, I think Rajesh / someone in
this mailer would answer.

regards,
Ram

Cisco Developer Services
http://developer.cisco.com/

-----Original Message-----
From: Jaroslav Martan (jmartan)
Sent: Tuesday, June 24, 2008 12:07 PM
To: Ramgopal Chockalingam -X (rchockal - Infosys at Cisco)
Cc: cuae-beta@developer.cisco.com; Rajesh Vargheese (rvarghee)
Subject: Re: [Cuae-beta] Unexpected JTAPI behavior

Hi Ram,

the case is that I have shared line between IP phone and CUAE SCCP
phone. I'm trying to build sort of single number reach service (similar
to what Unified Mobility does). So what I need to do is receive incoming

call on both phones (real and virtual) simultaneously and depending on
the user's activity move the call between them (put on hold on one, make

it active on another).
I was hitting various limitations of CUAE's SCCP implementation and
finally I got to the point that to move the existing call from real to
virtual phone I do "JTapiBlindTransfer" to the same number. It's like a
putting call on hold and make it ring again on the same phone. The phone

starts ringing as I expected but I see no "JTapiIncomingCall" trigger
although from verbose logs I see that a call ID is allocated by JTAPI
(it shows in a log when I call jTapiGetDeviceStatus).

Another question I could ask was: do you plan to extend the
functionality of SCCP to allow call Hold and Resume?...

Jarda

Ramgopal Chockalingam -X (rchockal - Infosys at Cisco) wrote:
Hi Jarda,

As of now for JTAPI we have only 3 triggers "Incoming Call,
CallInitiated, CallEstabilished" based on which an application script
instance would be started. However other trigger events could be a sub
trigger for that application instance which would be invoked based on
the deviceName / appropriate event parameters. You could have as many
sub triggering event for each number of shared lines you have.

Can you please give me an example call-scenario where no primary
trigger
is fired.

BTW., FYI., the primary trigger of OnIncomingCall could be null, which
indicates that app would be triggered on any incoming call to the app
server.

regards,
Ram

Cisco Developer Services
http://developer.cisco.com/

Jaroslav Martan, CSE Cisco Systems
CCIE#5871 V Celnici 10
Tel: +420 221435030 117 21 Praha 1
GSM: +420 602376247 Czech Republic
Fax: +420 221435230
_______________________________________________
Cuae-beta mailing list
Cuae-beta@developer.cisco.com