Query AD from a UCCX script

Does anyone know how to query Active Directory from a UCCX script?  Looking to pull the caller's email field from the ANI.

Hi
You can do this, but it's not so simple. Two options:
1) Create a custom java class to read LDAP and return the info you require
2) Implement a middleware web server that you can call from UCCX, that would take ANI as a parameter and return the email address.
I've done 1) before, or something very similar...
Aaron

Similar Messages

  • DB Read error from UCCX Script

    Hi All,
    We are running uccx 7.0.
    Trying to return data from DB using stored procedure from the uccx script.
    We are able to run this when we pass explicit value instead of variable ANI.
    But whenever we provide variable ANI, we get below
    error: SQL statement varible not defined : ANI
    Query which provided in the DB Read as below,
    select * from  table(credit_back.fun_select_point($ANI));
    Request your help on it..
    Regards,
    Shalid K.C

    Yes Gergely.
    we have created new script and when i add DB Read function in the script, it is not allow to apply it, same time it is giveing the above mentioned error.
    but when i test it with explicite value it is working.. .not working by providing variable name
    Regards,
    Shalid

  • UCCX script to pull XML data

    Hello,
    My goal is to create a UCCX script that will run on a Standard license server. Basically, when a user dials a four digit "speed dial", I want them to be translated to a UCCX route point, that will take the original called number, and the calling number, and use that to create a URL that it will then query and retrieve the actual number that will need to be dialed.
    So my plan currently is to have a phone inside of a partition that has a translation pattern of XXXX. The called number gets translated to 1158, which is the trigger of the application on UCCX.
    The url I want to query will be something like this:
    http://localhost:35798/RestServiceImpl.svc/XML/1017/6314
    "Localhost" will eventually become the IP address of the server hosting IIS application that will provide the XML output. 1017 is the "speed dial" or the original called number, 6314 is the calling number.
    Going to that URL should return me this output:
    <XMLDataResponse xmlns="http://tempuri.org/">
      <XMLDataResult>
      <CallingXML>
      <Extension>6300</Extension>
      <SpeedDial>1001</SpeedDial>
      <PhoneNumber>918005551212</PhoneNumber>
      </CallingXML>
      </XMLDataResult>
    </XMLDataResponse>
    This is the script as I have written it out so far:
    It does not seem to like what I have put together thus far when I try to validate it. I'm just wondering if I'm doing something that's obviously wrong.
    The end goal will be to take the NewNumber and dial it, while hiding it from the phone.
    Thanks,
    Mark

    Here's an update: I have the script retrieving the correct numbers and formulating the URL correctly. It also appears to be delivering the query from the XML.
    Here's what the XML looks like when I hit it from my browser:
    http://tempuri.org/
    ">
      http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">63141017918003551111
    When I do an Interactive Script Debug session and dial the number, I can see that there are two problems: 1) the NewNumber string is "null" by the time it gets to the step to do a Call Consult Transfer, and 2) the script just shows up a blank Exception.
    This tells me I am not parsing the XML correctly.
    Here is what I have currently:
    NewNumber = Get XML Data (xml, "/descendant::XMLDataResponse/child::XMLDataResult/child::PhoneNumber")
    Which based upon what I've read in Cisco's Volume 2 and elsewhere, should be correct.
    Notice in the screenshot that the XML data that UCCX pulls in looks different from when I look at it from my browser. I've also attached the script.
    Thanks,
    Mark

  • Trying to query data from a view - ORA-01882 and ORA-02063 Errors

    Hey there,
    I tried to query data from a view that was provided by a colleague. This view works fine and gives correct data using PL/SQL Developer or SQLPLUS, but in SQL Developer, I get the following error:
    ORA-01882: Time zone region not found
    ORA-02063: preceding line from SYSTOOLS
    01882.00000 - "timezone region %s not found"
    * Cause: Specified reason name was not found
    * Action: Please contact Oracle Customer Support
    Vendor Code 1882
    Where comes this error message from?! SYSTOOLS is the database link.
    Can't see an obvious reason for this error.
    OS is Windows 2000 SP4, SQL Developer is v1.1.1.25 BUILD MAIN-25.14
    Regards,
    Thomas

    From Oracle Messages 'Cause and Action'
    http://www.oracle.com/technology/products/designer/supporting_doc/des9i_90210/cmnhlp72/messages/ora_messages.htm
    ORA-01882, 00000, "timezone region %s not found"
    Cause: The specified region name was not found.
    Action: Please contact Oracle Customer Support.
    Maybe invalid region in NLS_LANG?
    "select * from v$nls_parameters"
    Starting this script in all developer program and compared result...

  • How to update XML file through UCCX script ?

    Hi,
    I have an UCCX script with MENU step. One of the step is for technical support team. When caller chose this step, information about date and time of the call and calling number should be recorded on a XML file located on the web server.
    This XML is uploaded into the web server , but I don't know how to update it through UCCX script.
    Here is how the XML file looks like:
    <?xml version="1.0" ?>
    <rss version="2.0">
    <channel>
    <title>CALL LOG</title>
    <link></link>
    <description>Support Call log</description>
    <ttl>1</ttl>
    <item>
    <title>2011-08-24 14:56:39 - 00044 123 123 123</title>
    <link></link>
    <description></description>
    </item
    </channel>
    </rss>
    Any idea?
    Thanks,
    O

    Hi
    The 'keyword transform' step uses the template XML file to generate the actual XML file you want to post... the template would be a plain text file uploaded to the repository, and would look like so:
    <?xml version="1.0" ?>
    CALL LOG
    Support Call log
    1
    %%calldatetime%% - %%clinumber%%
    Now - if you had that bit of XML, with correct time/number in it - have you verified know that you can definately just post that XML to a certain URL to get it on the server? Check with whoever manages that server exactly what you need to do to get it to appear - then worry about how you do that from UCCX. It may not be a matter of posting up that XML, you may need it in a different format or something..
    Aaron

  • UCCX script editor not working

    1-The loading bar down of the screen always loading and never finishes.Please  take a look to the attached picture.
    2-When i go to the uccx and want to change the server from hostname to ip address,i always get update failed.
    I am so new in uccx,help is appreciated.
    Thanks in advance.

    Hello,
    You have come to the right place to ask questions on UCCX.
    Please take some time to read through the product manuals, as they are full of good information and will answer most of your questions.
    UCCX Documentation Home Page
    http://www.cisco.com/en/US/customer/products/sw/custcosw/ps1846/tsd_products_support_series_home.html
    On to your two questions:
    1.  This is not a loading bar.  This bar is completely useless, and all it's telling you is how much memory the Editor has available to it in order to process things.  The button to the right is simply a "garbage collector" which will attempt to free up any abandoned memory, but mostly it just sits there looking pretty.  You really don't need to bother with either of these too status bar items, and can ignore them.
    Source: UCCX Scripting Volume 1 - Getting Started with Scripts
    2. It's been about two years since I've completed an install of UCCX, and therefore don't have this information fresh in my head.  I did spend  few minutes trying to find documentation on the topic, but to no avail.  I was only really able to read the Help page for that specific page (Help > For This Page), however, it didn't make a big deal about changing the value.  It simply says, change it and then click Save.
    Could you post the exact error message you are receiving?  Also, what is your intention with changing the hostname to IP?  Unlike CUCM where you may want to remove DNS dependency on the phones to communicate with the server, UCCX clients use the IP address regardless.  So perhaps it's not a necessary step?
    Anthony Holloway
    Please use the star ratings to help drive great content to the top of searches.

  • Anyway to supress the coulmn names in the query output from SQLPLUS

    Hi,
    I am using sqlplus to run a script which returns the results with column names.
    Is there anyway to omit the column names from the query output from sqlplus?
    I would like to have only results with out their column names in the output.
    Thanks in advance!!

    Hi,
    Maybe your LINES(IZE) isn't set ?
    SCOTT>set lines 130
    SCOTT>select status, machine, module
      2    from v$session
      3   where upper(username) = 'SCOTT';
    STATUS   MACHINE                                                          MODULE
    INACTIVE PFAE3\VPC4894-03                                                 TOAD 9.7.2.5
    ACTIVE   PFAE3\VPC4894-03                                                 SQL*Plus
    2 rows selected.
    SCOTT>As an alternative to setting linesize, you can format columns:
    SCOTT>set lines 80
    SCOTT>col status for a8
    SCOTT>col machine for a30
    SCOTT>col module for a30
    SCOTT>select status, machine, module
      2    from v$session
      3   where upper(username) = 'SCOTT';
    STATUS   MACHINE                        MODULE
    INACTIVE PFAE3\VPC4894-03               TOAD 9.7.2.5
    ACTIVE   PFAE3\VPC4894-03               SQL*Plus
    2 rows selected.
    SCOTT>Regards
    Peter

  • UCCX script and abandoned calls

    Hi Guys
    I got question about that UCCX script and abandoned calls , so currently we had 4 different script for  support the call follow .
    So the Main script is just AA let the people select menu 1 , 2 ,3 then go to different queue , after select 1 (for example) then call-direct to second script trigger number and coming into the queue .
    Unfortunately , the system counter the action to be an Abandoned call      , I already open the case about this issue and the TAC did not found any configure issue on UCCX , from the log we can seem all the REDIRECT,lrd=5000 is abandoned call .
    23811205: Apr 28 13:01:44.257 GMT+800 %MIVR-SS_TEL-7-UNK:Call.received() JTAPICallContact[id=37148,implId=151183/1,state=STATE_RECEIVED_IDX,inbound=true,App name=APP0,task=null,session=null,seq num=-1,cn=5000,dn=5000,cgn=0405554590,ani=null,dnis=null,clid=null,atype=DIRECT,lrd=null,ocn=5000,route=RP[num=5000],TP=null
    23811420: Apr 28 13:02:00.491 GMT+800 %MIVR-SS_TEL-7-UNK:Call.transferring(5030) JTAPICallContact[id=37148,implId=151183/1,state=STATE_ANSWERED_IDX,inbound=true,App name=APP0,task=48000040709,session=36000027315,seq num=0,cn=5000,dn=5000,cgn=0405554590,ani=null,dnis=null,clid=null,atype=DIRECT,lrd=null,ocn=5000,route=RP[num=5000],TP=5007]
    23811424: Apr 28 13:02:00.491 GMT+800 %MIVR-SS_TEL-7-UNK:Call.abandoned() - transferring JTAPICallContact[id=37148,implId=151183/1,state=STATE_ANSWERED_IDX,inbound=true,App name=APP0,task=48000040709,session=36000027315,seq num=0,cn=5000,dn=5000,cgn=0405554590,ani=null,dnis=null,clid=null,atype=DIRECT,lrd=null,ocn=5000,route=RP[num=5000],TP=5007]
    23818414: Apr 28 13:09:46.095 GMT+800 %MIVR-SS_TEL-7-UNK:Call.transferring(239) JTAPICallContact[id=37149,implId=151183/1,state=STATE_ANSWERED_IDX,inbound=true,App name=app2_Admin,task=48000040710,session=null,seq num=-1,cn=5030,dn=5030,cgn=0405554590,ani=null,dnis=null,clid=null,atype=REDIRECT,lrd=5000,ocn=5000,route=RP[num=5030],TP=5034]
    23818421: Apr 28 13:09:46.095 GMT+800 %MIVR-SS_TEL-7-UNK:Call.abandoned() - transferring JTAPICallContact[id=37149,implId=151183/1,state=STATE_ANSWERED_IDX,inbound=true,App name=app2_Admin,task=48000040710,session=null,seq num=-1,cn=5030,dn=5030,cgn=0405554590,ani=null,dnis=null,clid=null,atype=REDIRECT,lrd=5000,ocn=5000,route=RP[num=5030],TP=5034]
    Please give some advice about that and I am look forward to heard from you guys soon .
    Thanks

    Hi Jon
    I was tested "Set Call Contact Info step to mark the call as handled" last night , but not working .
    so in the get call contact info properties , I was used  last Redirect number  to nest trigger number .
    but not working .
    so have got any idea about that ?
    thanks

  • DiscoverSQL2005DBEngineDiscovery.vbs : The Query 'select * from __NAMESPACE where Name ='ComputerManagement'' returned an invalid result set.

    hi
    I am keep receiving this message in central administration running server in event viewer
    DiscoverSQL2005DBEngineDiscovery.vbs : The Query 'select * from __NAMESPACE where Name ='ComputerManagement'' returned an invalid result set.  Please check to see if this is a valid WMI Query.. Object required
    adil

    Hi adil,
    It seems to be not related to SharePoint issue, I find a similar error post from Operations Manager forum you can take a look
    Also another below article of basic troubleshooting of discovery scripts for your reference.
    And for the further better assistance regarding this issue, you may want to post Operations Manager forum here.
    http://social.technet.microsoft.com/Forums/systemcenter/en-US/21e9de85-5cbc-4217-8d9b-921e13dc88dc/sql-mp-issues-with-discovery-vbs-scripts?forum=operationsmanagermgmtpacks
    http://blogs.technet.com/b/kevinholman/archive/2010/03/09/basic-troubleshooting-of-discovery-scripts.aspx
    Thanks
    Daniel Yang
    TechNet Community Support

  • Working with TimeZone variables in UCCx script

    Hi Team
    I'm wondering if you guys could help me to find out the best way to work with TZ variables in UCCx script.
    Because of different countries customer has a branches, I need to setup different TimeZones for each country handled by the same centralized UCCx.
    In this post they use Java to work with TZ, however, but I prefer another way to work with TZ variables:
    https://supportforums.cisco.com/discussion/11851751/how-make-uccx-holiday-script-timezone-aware
    My idea is to work with Time Zone variables in the script, so what I did was to create different TZ variables and each one of the them assigned the proper timezone based on the country, so depending of the Trigger involved (DNIS), I can find witch country this call came from and give the right timezone.
    The problem I have is that at the time I want to add or subtract two variables of TZ, I got an error because of the syntax. I've been trying different options, but until now, no luck.
    Would you mind you guys who had been working on this let me know what is the right syntax to add or subtract TimeZone variables un UCCx?
    Thanking you in advance
    Martin

    Hi
    I've been working on TZ's recently... see this post:
    https://supportforums.cisco.com/discussion/12474756/how-check-daylight-saving-within-uccx-script
    My approach in the scripts was that basically I allow the department to set their opening hours in the timezone of their choice.
    They have a management web page served from CCX that accepts start/end times each day, and a timezone. That all gets stored in XML.
    In the script, based on that information I get the current time in whatever timezone is set, and compare that to the XML open/close times.
    Similarly for holidays, I get the current date/time in the holiday TZ and compare the holidays to that.
    Aaron

  • Procedure of mapping new UCCX script

    Hi Guys,
    Can you please tell me the procedure of correctly creating a trigger for a UCCX script?
    do I need to create a separate call control group all together or I can use existing one?

    Hi Shyam,
    Make sure before testing a script you have checked below:
    1. Unified CTI telephony Subsystem is InService
    2. The validation of Script is successful before uploading in script management.
    Yes , You can do a reactive script to check if trigger is hitting the script.
    Set the reactive script, once you make a call the script will reloaded and you will come to know that the script is triggered.
    Step 1: in Script Editor , go to Debug-->Reactive script
    Step 2: Select the Script you want to monitor from dropdown and set the timer timer
    Step 3: Call the Route point (trigger), the script will reloaded with the red mark. So you can to know the script is triggered.
    Step 4: You can debug the script by click step over button to check if any error is there in the script.

  • "Subroutines" in an UCCX script

    My days as a former programmer are showing through. I always preferred structured code. So in that regard, does anyone have a mechanism for creating a pseudo subroutine inside a UCCX script? I realize that I can create a subscript and call it from my original script, but I really don't want to do that for the few lines of code I need to execute.
    I have a few lines of code that I need to execute from various points in my script. I'm looking for a mechanism to allow me to "call" that from a point in my script and then return to that point.
    I could set a string variable with a value that defines where I'm at within my script, and then use a switch statement based on that string variable with a bunch of goto statements that will return me to the proper point. What would be better is the capability to modify the destination of a goto statement based on the variable. Does anybody have any other suggestions?

    Sadly you cannot reference a variable within the Goto step. The way you can do this within the same script is to set a variable, Goto the function, and then check the variable value at the end of the function to decide where to return to. You can use a Match step to evaluate that variable and have a different Goto step within each case.
    You may also want to read up on Trigger Application method instead of using subflows. This was a great improvment introduced in CCX5+. My answer to another thread gave a crash-course explaination of why it's better:
    http://forums.cisco.com/eforum/servlet/NetProf?page=netprof&forum=Unified%20Communications%20and%20Video&topic=Contact%20Center&topicID=.ee6fe12&fromOutline=&CommCmd=MB%3Fcmd%3Ddisplay_location%26location%3D.2cd3f333

  • UCCX Scripting question

    We have a requirement from our client running UCCX version 8.5 to
    route calls within a certain time period to the same agent that dealt with the last call
    from that specific calling number.  I recognise that this is probably a fairly complex scripting issue,
    but it's very pressing nonetheless, and any helpful pointers I could get from an expert
    would be most gratefully received.  We are working on a project which will depend on this
    feature, and I don't know how to achieve it.  Thanks in advance

    Here is everything you need to make this work.  You are very close to the solution.
    Also, I will be typing this out as opposed to uploading a script for two reasons:
    So that the contents of the script can be searched for
    I am on UCCX 8.5 and I realize that if I upload a script, everyone not on UCCX 8.5 will not be able to open it
    Script 1 - Trigger 1000
    Variables
    Session this_session = nullString session_data = ""
    Script
    StartAccept(--Triggering Contact--)/* The Get Contact Info step grabs a reference to the Session for the Triggering Contact */this_session = Get Contact Info (--Triggering Contact--, Session)Set session_data = "Yippee-ki-yay"/* In the Set Session Info step, you use the context tab to store the session data. *//* The name is a quoted string you make up. I.e., "the_session_data" or "my_secret" *//* For me, I will use the same name as my variable in order to keep it consistent: "session_data" */ /* The value is the variable in your script which holds the value you wish to store.  For me: session_data */Set Session Info (this_session)Call Redirect (--Triggering Contact--, "2000")     Successful     Busy     Invalid     UnsuccessfulEnd
    Script 2 - Trigger 2000
    Variables
    Session this_session = nullString session_data = ""
    Script
    StartAccept(--Triggering Contact--)/* The Get Contact Info step grabs a reference to the Session for the Triggering Contact *//* In this example scenario, this will be the exact same session as in Script 1. *//* That is because the session is attached to the contact, and not to the script *//* If the caller had hung up, and called script 2 directly, then this would not be the same session *//* In that case, you would have had to create a session mapping in script 1, and then use the Get Session step *//* in this script to try and retrieve a reference to an existing session.  Session only last for 30 minutes by default. */this_session = Get Contact Info (--Triggering Contact--, Session)/* In the Get Sessoin Info step, you use the context tab to retrieve the session data *//* Just like the Set Session Info step, you need to specify the name, and which variable you will hold the value in *//* What is neat here is, the step knows about the names you've typed in previously, and makes them available from a drop down list. *//* However, if your's in not shown, don't panic, just type the name in again, just as you did with the Set Session Info step. */session_data = Get Session Info (this_session, "session_data")/* If the session_data variable (or any variables you use in the Get Session Info step) return null after the Get Session Info step, *//* That means that they were not set (not found) within the session object. */If (session_data != null && session_data.trim() != "")     True          /* We now hold a good value for session_data from the first script.  Yay!  We did it! */     False          /* Oops, something went wrong and now we're left standing in the rain all alone. */End
    Anthony Holloway
    Please use the star ratings to help drive great content to the top of searches.

  • Order status using UCCX scripting

    I have Oracle DB which contain information about customer order such as if order has been shipped, when has been shipped,and so on. We do not want to query directly against the DB, and as far as I know Oracle has XML DB web services. If we turn that on, and have a report in xml that give me all information I needed. How do I use UCCX scripting to access these data, and read it back to customer when they call.
    I am using UCCX 8.5 premium.

    Hi,
    I see.
    This way: I certainly need the WSDL. It's basically the contract between the SOAP server and the SOAP client, the description of the protocol they are going to use. Its a file or a URL, in both cases, it's an XML document.
    SOAP might be a bit tricky, but I can help you with that. It's basically the SOAP client (in our case, the UCCX server) sending an XML over HTTP to the SOAP server, and expecting some result, which is usually an XML document, too.
    There are several approaches of enabling a UCCX script to perform SOAP commmunication, and I have created several documents about it:
    https://supportforums.cisco.com/document/97736/uccx-8x-really-simple-soap-client-no-custom-jar
    https://supportforums.cisco.com/document/112616/uccx-oop-soap-client-1-custom-jar-using-jax-ws
    Or, there's a recent thread about a similar integration:
    https://supportforums.cisco.com/discussion/12240436/uccx-soap-request
    Please ask the administrator of your Oracle DB about the WSDL, download it, post it to here.
    About the second integration option: I was thinking about a Grails proxy app - do you have a Tomcat or other Java application server in your environment we could use? 
    G.

  • UCCX scripting to invoke Web Serivces?

    Hi,
         I am working on UCCX 7.0(1). My task is to write a UCCX script that would invoke a call to web services. Below is the details of what Iam trying to achieve-
    1) Send a request as "http://L01oh055841Z2KX.cardinalhealth.net:9084/wsa/services/WsDWLServiceControllerAdapter". This involves appending an XML doc that would be the input parameter to the web services adapter. I use the Create URL Document step from the script pallette but have no idea how to send the XML document that would act as a parameter to the adapter in the above link..
    Has anybody tried this before?
    Thanks,

    Anthony,
    My thask is similar to original poster's task. I'm trying to follow your guide. Problem is, when I try to create application and select my script (that uses custom java class), I get message - Error occurred while loading script. Check log for more details. Which logfile do I check? Is it CRS engine log? I looked thet up and it contained nothing more that keepalive reports. Actually I went through all of them and found no error messages. I suspect that I should turn up tracing, but I don't like the idea of turning on trace for all subsystems. Maybe you could tell me which subsystem I should investigate further?
    Thank you!
    Ervins

Maybe you are looking for