lock IP Phone via AXL API

Version 1
    This document was generated from CDN thread

    Created by: Gionata Navarra on 14-01-2010 04:41:05 PM
    Hi,
     
    I need to lock/unlock IP Phones, I didn't find a way to realize this feature using JTAPI so I'm investing AXL API.
    My idea is to start from ip phone mac address and retrieve lines associated with it; then for each line I retrieve CSS associated, and I save it (to be able to restore it unlocking the phone). After that I can associate a particular CSS created to enable call.
     
    With a AXL request I've obtained lines associated to mac address, but right now the problem is how to obtain CSS associated to a line.
     
    Is there any method to do that?
     
    Thank you
    Gionata Navarra

    Subject: RE: lock IP Phone via AXL API
    Replied by: David Staudt on 14-01-2010 08:44:54 PM
    Note there is a CSS for the phone device, as well as a CSS for each individual line. These CSS's are additive, so you will want to restrict both kinds.
     
    Via getPhone/udpatePhone, you can change the modified CSS via the <callingSearchSpaceName> element.  You will want to get the 'uuid' attribute from each line's <dirn> element, then look that up via getLine, and change it via updateLine.  The line CSS is available via <shareLineAppearanceCSSName> element.

    Subject: RE: lock IP Phone via AXL API
    Replied by: Gionata Navarra on 15-01-2010 11:03:57 AM
    Note there is a CSS for the phone device, as well as a CSS for each individual line. These CSS's are additive, so you will want to restrict both kinds.
     
    Via getPhone/udpatePhone, you can change the modified CSS via the <callingSearchSpaceName> element.  You will want to get the 'uuid' attribute from each line's <dirn> element, then look that up via getLine, and change it via updateLine.  The line CSS is available via <shareLineAppearanceCSSName> element.


     
     
    I've tried to retrieve CSS in the following way:
     
    ........       

          
            GetPhoneReq req = new GetPhoneReq();
            req.setPhoneName(phoneName); //mac address

            GetPhoneRes res = service.getPhone(req);

            List<XLine> lineArray = res.getReturn().getDevice().getLines().getLine();

            GetLineReq lineReq = null;
            GetLineRes lineRes = null;

            for (XLine line : lineArray) {
                lineReq = new GetLineReq();
                lineReq.setUuid(line.getDirn().getUuid());

                lineRes = service.getLine(lineReq);

                String shareLineAppearanceCSS = lineRes.getReturn().getDirectoryNumber().getShareLineAppearanceCSSName();
                listCSSName.add(shareLineAppearanceCSS);
            }

    .....
     
    but returning listCSSName is null.
     
    Isn't it the right way?
     
    Thanks
    Gionata Navarra

    Subject: RE: lock IP Phone via AXL API
    Replied by: Gionata Navarra on 18-01-2010 04:41:56 PM
    No suggestions?
     
    Thank you
    Gionata Navarra