Author Message
ScottHaley
Joined: Nov 22, 2006
Messages: 7
Offline
I am registering with a local phone and have multiple Bridged line appearances (type 73) on 2 button modules. When I spin up my code, I get all of the correct event traps for the lines on the first button module (module 2) but nothing on the 2nd button module( module 4). Why is this? Here is my code:

public void lampUpdated(LampModeEvent event) {
int lamp = Integer.parseInt(event.getLamp());
String label = event.getLampLabel();
int module = (lamp & 0x700) >> 8;
int newLampState = event.getLampMode().intValue();
lamp = lamp & 0xFF;
boolean green = false;
String lampType = "red ";

if (event.getLampColor().intValue() == 3) {
green = true;
lampType = "green";
}
String[] state = { "BROKENFLUTTER", "FLUTTER", "OFF", "STEADY",
"WINK", "XXXXX", "INVERTEDWINK", "FLASH", "INVERTEDFLASH" };

String lampState = "UNKNOWN";

if (event.getLampMode() < 8) {
lampState = state[newLampState];
}
// we only care about rendering terminal module lamps to the screen



//Handles getting Extension Information for Module 2 on incoming calls
if(event.getLampMode() == 7 && module == 2){
System.out.println(event.getLampMode());
// System.out.println("Extension= " + extension + " lampUpdate [module: " + module
// + " buttonNum: " + lamp + " name: " + label + " lampType: " + lampType
// + " state: " + lampState + " :: " +event.getLampMode() +"]");
int i;
for(i = 0; i < module2Array.length; i++){

if(module2Array[i][0].equalsIgnoreCase(Integer.toString(lamp))){
ringingExt = module2Array[i][1];
System.out.println("The ringing extension is " + ringingExt);
logger.info("The ringing extension is " + ringingExt);
XmlDataItem xd = new XmlDataItem();
xd.setExtension(ringingExt);
xd.setStatus("ringing");

XmlUtils xl = new XmlUtils();
try {
xl.ModifyArray(xd);
}
catch (InterruptedException e) {
logger.error(e);
}

break;
}
}
}

//Handles getting Extension Information for Module 3 on incoming calls
if(event.getLampMode() == 7 && module == 4){

int i;
for(i = 0; i < module3Array.length; i++){

if(module3Array[i][0].equalsIgnoreCase(Integer.toString(lamp))){
ringingExt = module3Array[i][1];
System.out.println("The ringing extension is " + ringingExt);
logger.info("The ringing extension is " + ringingExt);
XmlDataItem xd = new XmlDataItem();
xd.setExtension(ringingExt);
xd.setStatus("ringing");

XmlUtils xl = new XmlUtils();
try {
xl.ModifyArray(xd);
}
catch (InterruptedException e) {
logger.error(e);
}

break;
}
}
}


Here are the results:

Calling a number on module 2 yeilds:
Jul 22, 2013 2:05:35 PM com.avaya.mvap.svcproxy.prov.RemoteServiceProvider initServiceProviderImpl
INFO: CMAPI SERVER IP=xxx.xxx.xxx.xxx: CMAPI SERVER PORT=4721
Jul 22, 2013 2:05:36 PM com.avaya.mvcs.proxy.SessionManagementServiceProxy startApplicationSession
INFO: AES release=6.1 protocol version=http://www.ecma-international.org/standards/ecma-323/csta/ed3/priv5
Jul 22, 2013 2:05:36 PM com.avaya.mvap.svcproxy.prov.ServiceProviderBuilder getCmapiServiceProvider
INFO: SERVICE PROVIDER = com.avaya.mvap.svcproxy.prov.RemoteServiceProvider
7
The ringing extension is 3142908126

Calling a number on module 4 yeilds nothing.
MartinFlynn
Joined: Nov 30, 2009
Messages: 1922
Offline
Hi Scott,

I have been able to reproduce the same problem in my lab.

It seems that there is some miss-mapping of the button IDs between the Communication Manager and AE Services when the phone is registered. This does not happen for the Primary Module (handset) or the first expansion module. It only happens for the second & third.

It means that when the lamp event arrives, the AE Services has no knowledge of the button and discards it.

I will open a bug report with development for this. Unfortunately, I don't see any possible workaround.

Martin
MartinFlynn
Joined: Nov 30, 2009
Messages: 1922
Offline
wi01115743 opened.
ScottHaley
Joined: Nov 22, 2006
Messages: 7
Offline
Thanks, let me know when they come back with a status.
MartinFlynn
Joined: Nov 30, 2009
Messages: 1922
Offline
Hi Scott,

It could take weeks or months before the ticket is examined.

Martin
Go to:   
Mobile view