Jump to content
  • IsUserFree()


    Lua   → VBScript


    This function returns true if the given user is logged in and free.

    Please see the Introduction chapter for some usage instructions.


    -- IsUserFree 
    -- Checks if given user is free or not. 
    -- Parameter:
    --   sNumber     extension  
    -- Return:
    --   boolean 
    function IsUserFree( sNumber ) 
        PBXScript.OutputTrace ("-------------> IsUserFree ( sNumber = " .. sNumber .. " )")
        local bReturn = false 
        local oUsers  = nil
        oUsers = PBXScript.GetUserByAddress(sNumber)
        if (oUsers ~= nil) then
            for i = 1, #oUsers do
                PBXScript.OutputTrace ("Found user '" .. oUsers[i]:Name() .. "' with current state '" .. oUsers[i]:State() .. "'")
                bReturn = (oUsers[i]:State() == 2)
        PBXScript.OutputTrace ("bReturn = " .. tostring(bReturn))
        PBXScript.OutputTrace ("<------------- IsUserFree")
        return bReturn 


    This function makes use of the Server Script API functions PBXConfig.GetUserByAddress() to resolve all users in the given group and PBXScript.OutputTrace() to write trace information into the SwyxServer trace file.


    This function was converted from VBScript into Lua from the initially posted version in this forum topic.



    Tom Wellige


    User Feedback

    Recommended Comments

    There are no comments to display.

    Add a comment...

    ×   Pasted as rich text.   Paste as plain text instead

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...

Important Information

By using this site, you agree to our Terms of Use and have taken note of our Privacy Policy.
We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.