SOAP driver - Userid not getting updated in CallManager


Hi,

I am using a SOAP driver to create/update users in CallManager. IAM
email address is mapped to userid in CallManager. The user creation is
working fine.
However, when there is an update happening in IAM email address, the
userid in CallManager is not getting updated accordingly. As per the
policy implemented, driver sent the update request and received response
from Call Manager in the form of UUID, but the userid was not updated in
the Call Manager system.Other values like firstName got updated
successfully. Can someone please help here?

Update Request from driver

<nds dtdversion="4.0" ndsversion="8.x">
<source>
<product edition="Advanced" version="4.0.1.2">DirXML</product>
<contact>Novell, Inc.</contact>
</source>
<input>
<soapenv:Envelope xmlns:ns="">www.cisco.com/.../9.0"
xmlns:soapenv="">schemas.xmlsoap.org/.../">
<soapenv:Header/>
<soapenv:Body>
<ns:updateUser sequence="\IDV\Company\People\Employees\user1">
<uuid>{1CED0531-0B8C-91F4-DDC4-FEE881A8BF0E}</uuid>
<userid>test12@gmail.com</userid>
<firstName>Agi</firstName>
<lastName>Vincent</lastName>
<middleName>Kythakodan</middleName>
<manager>\IDV\Company\People\Employees\user2</manager>
<department/>
</ns:updateUser>
</soapenv:Body>
</soapenv:Envelope>
</input>
</nds>
[06/16/16 09:53:40.785]:CallManager ST:CallManager: Value of boolean
flag 'remove-existing' is : false
[06/16/16 09:53:40.786]:CallManager ST:CallManager:
HTTPSubscriberTransport.send()


Response received

<nds dtdversion="2.0">
<source>
<product build="20110402_112430" instance="CallManager"
version="3.5.6">Identity Manager Driver for SOAP</product>
<contact>Novell, Inc.</contact>
</source>
<output>
<ns:updateUserResponse xmlns:ns="">www.cisco.com/.../9.0"
xmlns:soapenv="">schemas.xmlsoap.org/.../">
<return>{1CED0531-0B8C-91F4-DDC4-FEE881A8BF0E}</return>
</ns:updateUserResponse>
</output>
</nds>


Regards,
Dinil


--
Dinil_Varghese
------------------------------------------------------------------------
Dinil_Varghese's Profile: https://forums.netiq.com/member.php?userid=9574
View this thread: https://forums.netiq.com/showthread.php?t=56043

  • On 6/16/2016 9:44 AM, Dinil Varghese wrote:
    >
    > Hi,
    >
    > I am using a SOAP driver to create/update users in CallManager. IAM
    > email address is mapped to userid in CallManager. The user creation is
    > working fine.
    > However, when there is an update happening in IAM email address, the
    > userid in CallManager is not getting updated accordingly. As per the
    > policy implemented, driver sent the update request and received response
    > from Call Manager in the form of UUID, but the userid was not updated in
    > the Call Manager system.Other values like firstName got updated
    > successfully. Can someone please help here?
    >
    > Update Request from driver
    >
    > <nds dtdversion="4.0" ndsversion="8.x">
    > <source>
    > <product edition="Advanced" version="4.0.1.2">DirXML</product>
    > <contact>Novell, Inc.</contact>
    > </source>
    > <input>
    > <soapenv:Envelope xmlns:ns="">www.cisco.com/.../9.0"
    > xmlns:soapenv="">schemas.xmlsoap.org/.../">
    > <soapenv:Header/>
    > <soapenv:Body>
    > <ns:updateUser sequence="\IDV\Company\People\Employees\user1">
    > <uuid>{1CED0531-0B8C-91F4-DDC4-FEE881A8BF0E}</uuid>
    > <userid>test12@gmail.com</userid>
    > <firstName>Agi</firstName>
    > <lastName>Vincent</lastName>
    > <middleName>Kythakodan</middleName>
    > <manager>\IDV\Company\People\Employees\user2</manager>
    > <department/>
    > </ns:updateUser>
    > </soapenv:Body>
    > </soapenv:Envelope>
    > </input>
    > </nds>
    > [06/16/16 09:53:40.785]:CallManager ST:CallManager: Value of boolean
    > flag 'remove-existing' is : false
    > [06/16/16 09:53:40.786]:CallManager ST:CallManager:
    > HTTPSubscriberTransport.send()
    >
    >
    > Response received
    >
    > <nds dtdversion="2.0">
    > <source>
    > <product build="20110402_112430" instance="CallManager"
    > version="3.5.6">Identity Manager Driver for SOAP</product>
    > <contact>Novell, Inc.</contact>
    > </source>
    > <output>
    > <ns:updateUserResponse xmlns:ns="">www.cisco.com/.../9.0"
    > xmlns:soapenv="">schemas.xmlsoap.org/.../">
    > <return>{1CED0531-0B8C-91F4-DDC4-FEE881A8BF0E}</return>
    > </ns:updateUserResponse>
    > </output>
    > </nds>


    So... Do you think that perhaps, changing the naming attribute is more
    likely a rename, than an attribute modify?

    I do not recall how CUCM handles that specific case. I worked with the
    dir number, phone API's not the User API so I am not certain. Check and
    see if they doc how to rename. The Cisco forums are not horrible on
    supporting the API's. The forums here are WAY better, but the Cisco ones
    are not horrible. :)


  • On Thu, 16 Jun 2016 13:44:02 0000, Dinil Varghese wrote:

    > Hi,
    >
    > I am using a SOAP driver to create/update users in CallManager. IAM
    > email address is mapped to userid in CallManager. The user creation is
    > working fine.
    > However, when there is an update happening in IAM email address, the
    > userid in CallManager is not getting updated accordingly. As per the
    > policy implemented, driver sent the update request and received response
    > from Call Manager in the form of UUID, but the userid was not updated in
    > the Call Manager system.Other values like firstName got updated
    > successfully. Can someone please help here?


    If you sent the request, and the application replied with a "success"
    message, then it would seem that you'd need to go ask the application why
    it didn't do what it said that it did. There may be something else you
    need to do, the equivalent of a "rename thing" instead of just pushing
    over an updated email address.


    --
    David Gersic
    Knowledge Partner http://forums.microfocus.com
    If you find this post helpful, please click on the star below.
  • On 6/16/2016 12:15 PM, David Gersic wrote:
    > On Thu, 16 Jun 2016 13:44:02 0000, Dinil Varghese wrote:
    >
    >> Hi,
    >>
    >> I am using a SOAP driver to create/update users in CallManager. IAM
    >> email address is mapped to userid in CallManager. The user creation is
    >> working fine.
    >> However, when there is an update happening in IAM email address, the
    >> userid in CallManager is not getting updated accordingly. As per the
    >> policy implemented, driver sent the update request and received response
    >> from Call Manager in the form of UUID, but the userid was not updated in
    >> the Call Manager system.Other values like firstName got updated
    >> successfully. Can someone please help here?

    >
    > If you sent the request, and the application replied with a "success"
    > message, then it would seem that you'd need to go ask the application why
    > it didn't do what it said that it did. There may be something else you
    > need to do, the equivalent of a "rename thing" instead of just pushing
    > over an updated email address.


    I did a quick look at the SOAP WSDL after my last post on the topic and
    did not see any rename functions at all. I concur that his XML looks
    mostly valid, except that the first two nodes are an either/or thing.

    I.e. Identify the object by uuid (GUID) or by userid, but usually not
    both. This leads me to think you may not be allowed to rename this way.



  • Hi Geoff,

    This update logic works fine for rest of the attributes like firstname.
    I wonder why it is not happening only for userid?

    Regards,
    Dinil.


    --
    Dinil_Varghese
    ------------------------------------------------------------------------
    Dinil_Varghese's Profile: https://forums.netiq.com/member.php?userid=9574
    View this thread: https://forums.netiq.com/showthread.php?t=56043


  • Adding one more point here.. I am actually modifying an existing code to
    meet our requirement. userid was not included in the updateUser logic
    earlier. Not sure if I am missing some configurations somewhere as part
    of this.


    --
    Dinil_Varghese
    ------------------------------------------------------------------------
    Dinil_Varghese's Profile: https://forums.netiq.com/member.php?userid=9574
    View this thread: https://forums.netiq.com/showthread.php?t=56043

  • On 6/16/2016 1:35 PM, Dinil Varghese wrote:
    >
    > Hi Geoff,
    >
    > This update logic works fine for rest of the attributes like firstname.
    > I wonder why it is not happening only for userid?


    Go re-read the discussion David and I have been having. We have been
    explaining this. If you do not get it yet, consider re-reading it.

  • On Thu, 16 Jun 2016 17:56:29 0000, Dinil Varghese wrote:

    > Adding one more point here.. I am actually modifying an existing code to
    > meet our requirement. userid was not included in the updateUser logic
    > earlier. Not sure if I am missing some configurations somewhere as part
    > of this.


    You'll need to go ask Cisco, or somebody familiar with how this
    application allows for / handles renaming existing users, from within the
    SOAP interface. Mock it up in SoapUI until you understand how it's
    supposed to work.

    --
    David Gersic
    Knowledge Partner http://forums.microfocus.com
    If you find this post helpful, please click on the star below.
  • On Thu, 16 Jun 2016 16:24:28 0000, Geoffrey Carman wrote:

    > On 6/16/2016 12:15 PM, David Gersic wrote:
    >> On Thu, 16 Jun 2016 13:44:02 0000, Dinil Varghese wrote:
    >>
    >>> Hi,
    >>>
    >>> I am using a SOAP driver to create/update users in CallManager. IAM
    >>> email address is mapped to userid in CallManager. The user creation is
    >>> working fine.
    >>> However, when there is an update happening in IAM email address, the
    >>> userid in CallManager is not getting updated accordingly. As per the
    >>> policy implemented, driver sent the update request and received
    >>> response from Call Manager in the form of UUID, but the userid was not
    >>> updated in the Call Manager system.Other values like firstName got
    >>> updated successfully. Can someone please help here?

    >>
    >> If you sent the request, and the application replied with a "success"
    >> message, then it would seem that you'd need to go ask the application
    >> why it didn't do what it said that it did. There may be something else
    >> you need to do, the equivalent of a "rename thing" instead of just
    >> pushing over an updated email address.

    >
    > I did a quick look at the SOAP WSDL after my last post on the topic and
    > did not see any rename functions at all. I concur that his XML looks
    > mostly valid, except that the first two nodes are an either/or thing.
    >
    > I.e. Identify the object by uuid (GUID) or by userid, but usually not
    > both. This leads me to think you may not be allowed to rename this way.


    Perhaps this application doesn't support renames? If so, convert the
    event to a <delete> followed by an <add> to re-provision the object with
    the new name. Could have nasty side effects in the application, though,
    so proceed with caution.


    --
    David Gersic
    Knowledge Partner http://forums.microfocus.com
    If you find this post helpful, please click on the star below.