08-13-2014 11:00 AM - edited 03-14-2019 01:45 PM
I am trying to create a script in CCX 9.0 premium ha that can perform an AXL/SOAP query on the CCM 9.1 cluster where CCX is registered. What I am trying to do is replicate the forced auth code functionality for a downstream PBX that is behind an MGCP QSIG gateway. I am collecting digits for the FAC. I want to query the facinfo table on CCM, and then transfer the call if I find a match. I have found a number of SOAP examples, but I am not quite able to connect all the dots. I was trying to do it with a URL document, but that step throws an exception because it doesn't trust the self signed cert from CCM.I get the feeling that this step won't allow me to properly format the SOAP query anyway. I can't imagine I am the first person to ever want to do this, but I haven't been able to find anything. I so wish I could just make a JDBC connection to CCM...
08-14-2014 02:14 AM
Hi
I've done this - basically my approach was to take the AxlSqlToolkit code from CUCM plugins.
I modified that into a custom JAR that was uploaded to UCCX, and invoked using SET steps. This allows the custom jar to contain the code to bypass the cert checking and to do pretty much any SOAP stuff.
Regards
Aaron
08-16-2014 10:31 AM
Based on Aaron's comments, I decided to try and adapt/bludgeon the UCMGetUserByExtension java class from Tanner Ezell. I would cite the article number where he posted that, but I can't find it.
Big disclaimer here. I used to do some C development 15+ years ago, but I have never done Java. I realize that makes me a total neophyte, so I apologize in advance if my questions are overly simple.
I am trying just to recompile the original source and the current javac (jdk-7u67-windows-i586) is throwing an error. Here is the code block in question exactly as it was formatted in the original JAR file:
UCMGetUserByExtension localUCMGetUserByExtension = new UCMGetUserByExtension(); UCMGetUserByExtension
tmp397_395 = localUCMGetUserByExtension;tmp397_395.getClass();localObject1 = new UCMGetUserByExtension.MyTrustManager(tmp397_395);
TrustManager[] arrayOfTrustManager = { localObject1 };
The error I get from javac is as follows:
z:UCMGetUserByExtension.java:56: error: non-static variable this cannot be referenced from a static context
tmp397_395 = localUCMGetUserByExtension;tmp397_395.getClass();localObjec
t1 = new UCMGetUserByExtension.MyTrustManager(tmp397_395);
^
z:UCMGetUserByExtension.java:57: error: cannot find symbol
TrustManager[] arrayOfTrustManager = { localObject1 };
^
symbol: variable localObject1
location: class UCMGetUserByExtension
3 errors
2 warnings
I tried defining localObject1 instead as "UCMGetUserByExtension localObject1", but then I get this error "non-static variable this cannot be referenced from a static context". I found some articles on stackoverflow, so I redefined MyTrustManager as "static public class" instead of just "public class", but that caused this error "constructor MyTrustManager in class MyTrustManager cannot be applied to given types". I feel pretty certain that is fairly elementary java data typing, but the answer has eluded me thus far. :-(
08-18-2014 06:00 AM
Hi,
you are probably using this code block within a static method.
Can you please reveal more about what you are trying to achieve? I have done some SOAP and Java programming, I can help you with that.
G.
08-20-2014 10:36 AM
I am trying to query for an authorization level from the facinfo table. If I were doing it from the CCM CLI, it would be:
run sql select name, authorizationlevel from facinfo where code = '12345' (the where would be a local variable).
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide