Jump to content
  • IsAtLeastOneMemberOfGroupLoggedOff()


    Lua   → VBScript


    This function returns true if at least one member of the given group is busy.

    Please see the Introduction chapter for some usage instructions.


    -- IsAtLeastOneMemberOfGroupLoggedOff
    -- Returns true if at least one member of the given group is busy.
    -- Parameter:
    --   sGroup          group number or name
    -- Return:
    --   boolean         true  - at least one member of group logged off
    --                   false . all members of the group logged in
    function IsAtLeastOneMemberOfGroupLoggedOff ( sGroup )
        PBXScript.OutputTrace ("---------> IsAtLeastOneMemberOfGroupLoggedOff ( " .. sGroup .. " )")
        local bReturn = false 
        local oUsers  = nil
        oUsers = PBXScript.GetUserByAddress(sGroup)
        if (oUsers ~= nil) then
            for i = 1, #oUsers do
                PBXScript.OutputTrace ("Found user '" .. oUsers[i]:Name() .. "' with current state '" .. oUsers[i]:State() .. "'")
                -- state 1 = logged off
                if (oUsers[i]:State() == 1) then 
                    bReturn = true
        PBXScript.OutputTrace ("bReturn = " .. tostring(bReturn))
        PBXScript.OutputTrace ("<--------- IsAtLeastOneMemberOfGroupLoggedOff")
        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.

    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now
  • 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.