Command Line Interface

The Alpaca Command Line Interface is tool for performing complex management tasks on BroadWorks objects - User, Group, Service Provider, and group services. The CLI can be accessed by running alpaca and logging in with a valid BroadWorks user.

Commands can be accessed by navigating to the BroadWorks object that the command resides. The list of available objects from the current location can be displayed by executing get. Navigation can be performed by executing cd with the target object.

Command available from the current location can be displayed by running help or its alias ?.

Group

  • add

    • callpickupgroup

      • Description: Add a Call Pickup Group to the Group.
      • Usage:
      add callpickupgroup <name> 
      
      • Example:
      add callpickupgroup Pickup-001
      
    • callcenter

      • Description: Add a Call Center to the Group.
      • Usage:
      add callcenter <callcenterid> <callcentername> <lastname> <firstname> <password> <language> <timezone> <type> <policy> <enablevideo> <queuelength> <allowescape> <escapedigit> <resetstatsenteringqueue> <allowagentlogoff> <allowcallwaitingforagents> <extpreferredcodec> <intpreferredcodec> <playringingwhileoffering> 
      
      • Example:
      add callcenter cc_20001@serviceprovider.com "Support Call Center" "Call Center" "Support" MyPassword$1 English America/New_York Premium Circular TRUE 10 TRUE 1 TRUE FALSE FALSE None None TRUE
      
    • huntgroup

      • Description: Add a Hunt Group to the Group.
      • Usage:
      add huntgroup <huntgroupid> <huntgroupname> <lastname> <firstname> <language> <timezone> <policy> <huntafternoanswer> <noanswernumberofrings> <forwardaftertime> <forwardtimeoutseconds> <forwardtophonenumber> <allowcallwaitingforagents> <agentlist> 
      
      • Example:
      add huntgroup hg_20001@serviceprovider.com "Admins HuntGroup" HuntGroup Admins English America/New_York Circular TRUE 2 TRUE 6 2295551002 FALSE "2295551001@sip.serviceprovider.com,2295551003@sip.serviceprovider.com"
      
    • user

      • Description: Add a User to the Group.
      • Usage:
      add user <userid> <lastname> <firstname> <callingidlastname> <callingidfirstname> <callingidphonenumber> <password> <language> <timezone> 
      
      • Example:
      add user 2295551002@serviceprovider.com Smith John Smith John 2295551002 MyPassword$1 English America/New_York
      
    • groupaccessdevice

      • Description: Add an Access Device to the Group.
      • Usage:
      add groupaccessdevice <name> <type> 
      
      • Example:
      add groupaccessdevice "PolycomVVX600-0004F200001" "Polycom VVX 600"
      
  • modify

    • voiceportal

      • Description: Modifies the Voice Portal settings for the Group.
      • Usage:
      modify voiceportal <phonenumber> <extension> [OPTIONS]
      
      OPTIONS:
           -a,--isactive=<BOOLEAN>              Sets if the Voice Portal is active. Takes boolean argument.
           -i,--allowidentification=<BOOLEAN>   Allow identification by DN or Alias. Takes boolean argument.
      
      • Example:
      modify voiceportal 2295551002 51002 --isactive=true --allowidentification=false
      
    • extensionlength

      • Description: Modifies the extension length settings for the Group.
      • Usage:
      modify extensionlength <minlength> <maxlength> <defaultlength> 
      
      • Example:
      modify extensionlength 3 5 5
      
    • blfuri

      • Description: Sets the Busy Lamp Field URI's for all Users in the Group. Supports BroadWorks Tags.
      • Usage:
      modify blfuri <uri> 
      
      • Example:
      modify blfuri "%BWLOGIN-ID-PRIMARY%_blf@sip.serviceprovider.com"
      
    • callinglineid

      • Description: Modifies the Calling Line ID for the Group.
      • Usage:
      modify callinglineid <number> 
      
      • Example:
      modify callinglineid 2295551002
      
  • get

    • Description: Retrieves the list of objects that can be accessed from this location.
    • Usage:
    get  
    
  • activate

    • number

      • Description: Activate a number or number range for the Group.
      • Usage:
      activate number  [OPTIONS]
      
      OPTIONS:
           -n,--number=<DN>     A specific number to activate on the group.
           -r,--range=<RANGE>   A number range to activate on the group. Specified as [low-high].
      
      • Example:
      activate number --range=2295551002-2295551005
      
  • report

    • voiceportalnotchanged

      • Description: Generates a report Voice Portal Passcodes and whether they have been modified from the originally provisioned value.
      • Usage:
      report voiceportalnotchanged  [OPTIONS]
      
      OPTIONS:
           -w,--writeOutput=<FILENAME>   Write Output to a file
      
      • Example:
      report voiceportalnotchanged --writeOutput=/tmp/report.txt
      
    • serviceassignments

      • Description: Generates a report of Service Assignment.
      • Usage:
      report serviceassignments  [OPTIONS]
      
      OPTIONS:
           -f,--foldServicePacks         Fold Service Packs by Service Provider
           -w,--writeOutput=<FILENAME>   Write Output to a file
      
    • registrations

      • Description: Retrieves a report of all registrations.
      • Usage:
      report registrations  
      
      • Example:
      report registrations
      
    • userdetails

      • Description: Generates a report of User details.
      • Usage:
      report userdetails  [OPTIONS]
      
      OPTIONS:
           -w,--writeOutput=<FILENAME>   Write Output to a file
      
    • migrationencumbrances

      • Description: Retrieves a report of migration encumbrances for all Users in the Group.
      • Usage:
      report migrationencumbrances  [OPTIONS]
      
      OPTIONS:
           -d,--destination=<GROUPID>   The destination GroupID to include requirements in the report
      
      • Example:
      report migrationencumbrances --destination="Acme Plumbing"
      
  • reset

    • devices

      • Description: Resets User's Access Devices for all Users in the Group with optional monitoring.
      • Usage:
      reset devices  [OPTIONS]
      
      OPTIONS:
           -f,--force                           Force Reset
           -u,--user-agent-matches=<criteria>   Reset if the user agent matches the provided criteria. The criteria uses semantic version matching
                                                grammar. e.g. ">=1.0.0 & <2.0.0"
           -w,--resetwatcher                    Reset using the ResetWatcher to monitor re-registration
      
      • Example:
      reset devices --resetwatcher
      
    • authentication

      • Description: Resets and randomizes authentication information for all User's in the Group.
      • Usage:
      reset authentication  [OPTIONS]
      
      OPTIONS:
           -f,--force          Force Delete
           -r,--reset          Reset Devices following randomization
           -u,--includeUser    Include UserID in randomization process
           -w,--resetWatcher   Watch for devices to re-register following reset
      
      • Example:
      reset authentication --reset --force
      
  • authorize

    • groupservice

      • Description: Authorize a Group Service for the Group.
      • Usage:
      authorize groupservice <service> [OPTIONS]
      
      OPTIONS:
           -l,--limit=<INTEGER>   Set a limit on the authorized quantity.
      
      • Example:
      authorize groupservice "Hunt Group"
      
    • userservice

      • Description: Authorize a User Service for the Group.
      • Usage:
      authorize userservice <service> [OPTIONS]
      
      OPTIONS:
           -l,--limit=<INTEGER>   Set a limit on the authorized quantity.
      
      • Example:
      authorize userservice "BroadTouch Business Communicator Desktop"
      
    • groupservicepack

      • Description: Authorize a Group Service for the Group.
      • Usage:
      authorize groupservicepack <servicepack> [OPTIONS]
      
      OPTIONS:
           -l,--limit=<INTEGER>   Set a limit on the authorized quantity.
      
      • Example:
      authorize groupservicepack "Premium"
      
  • delete

    • Description: Performs delete operations on the Group.
    • Usage:
    delete  [OPTIONS]
    
    OPTIONS:
         -f,--force   Force Delete
    
    • Example:
    delete --force
    
  • export

    • Description: Exports a Group to JSON format.
    • Usage:
    export  [OPTIONS]
    
    OPTIONS:
         -w,--writeOutput=<FILENAME>   Write Output to a file
    
  • assign

    • groupservice

      • Description: Assign a Group Service to the Group.
      • Usage:
      assign groupservice <service> 
      
      • Example:
      assign groupservice "Hunt Group" --limit=5
      
  • deactivate

    • number

      • Description: Deactivate a number or number range for the Group.
      • Usage:
      deactivate number  [OPTIONS]
      
      OPTIONS:
           -n,--number=<DN>     A specific number to deactivate on the group.
           -r,--range=<RANGE>   A number range to deactivate on the group. Specified as [low-high].
      
      • Example:
      deactivate number +12295551002
      
  • unassign

    • number

      • Description: Unassign a number from the Group.
      • Usage:
      unassign number <number> 
      
      • Example:
      unassign number 2295551003
      

User

  • add

    • voicemessagingalias

      • Description: Adds an additional User Voice Messaging alias.
      • Usage:
      add voicemessagingalias <alias> 
      
      • Example:
      add voicemessagingalias 2295551001
      
  • modify

    • password

      • Description: Sets the User's password to either a specified value or create a randomized password.
      • Usage:
      modify password <password> [OPTIONS]
      
      OPTIONS:
           -e,--email=<BOOLEAN>   Whether to send an email notification of the change. Overrides the default value. Takes a boolean.
           -r,--randomize         Modify the password with a randomized value
      
      • Example:
      modify password --randomize=true --email=true
      modify password MyPassword$1
      
    • callforwardingnoanswer

      • Description: Sets the User's Call Forwarding No Answer settings.
      • Usage:
      modify callforwardingnoanswer  [OPTIONS]
      
      OPTIONS:
           -a,--isactive=<BOOLEAN>          Set is active. Takes boolean argument.
           -f,--forwardtophonenumber=<DN>   Set forward to phone number.
           -n,--numberofrings=<COUNT>       Set number of rings for no answer.
      
      • Example:
      modify callforwardingnoanswer --isactive=true --forwardtophonenumber=2295551002 --numberofrings=3
      
    • outgoingsmdimwi

      • Description: Sets the User's Outoing SMDIMWI settings.
      • Usage:
      modify outgoingsmdimwi  [OPTIONS]
      
      OPTIONS:
           -a,--isactive=<BOOLEAN>   Set is active. Takes boolean argument.
           -n,--mwinumber=<DN>       Set message waiting indicator number.
      
      • Example:
      modify outgoingsmdimwi --isactive=true --mwinumber=2295551002
      
    • lastnameuppercase

      • Description: Sets the User's last name to uppercase.
      • Usage:
      modify lastnameuppercase  
      
    • voiceportalautologin

      • Description: Sets Voice Portal Auto Login setting
      • Usage:
      modify voiceportalautologin <isActive> 
      
      • Example:
      modify voiceportalautologin true
      
    • advancedvoicemessaging

      • Description: Sets the User's Advanced Voice Messaging settings.
      • Usage:
      modify advancedvoicemessaging <groupemailaddress> <groupuserid> <grouppassword> 
      
      • Example:
      modify advancedvoicemessaging 2295551002@serviceprovider.com 2295551002 MyPassword$1
      
    • blfuri

      • Description: Sets the User's Busy Lamp Field URI. Supports BroadWorks Tags.
      • Usage:
      modify blfuri <uri> 
      
      • Example:
      modify blfuri 2295551002_blf@serviceprovider.com
      
    • callforwardingbusy

      • Description: Sets the User's Call Forwarding Busy settings.
      • Usage:
      modify callforwardingbusy  [OPTIONS]
      
      OPTIONS:
           -a,--isactive=<BOOLEAN>          Set is active. Takes boolean argument.
           -f,--forwardtophonenumber=<DN>   Set forward to phone number.
      
      • Example:
      modify callforwardingbusy --isactive=true --forwardtophonenumber=2295551002
      
    • passcode

      • Description: Sets the User's passcode to either a specified value or created a randomized passcode.
      • Usage:
      modify passcode <passcode> [OPTIONS]
      
      OPTIONS:
           -e,--email=<BOOLEAN>       Whether to send an email notification of the change. Overrides the default value. Takes a boolean.
           -r,--randomize=<BOOLEAN>   Modify the passcode with a randomized value. Takes a boolean.
      
      • Example:
      modify passcode --randomize=true --email=true
      modify passcode 12349876
      
    • voicemessaging

      • Description: Sets the User's Voice Messaging settings.
      • Usage:
      modify voicemessaging  [OPTIONS]
      
      OPTIONS:
           -a,--isactive=<BOOLEAN>                    Set is active. Takes boolean argument.
           -v,--alwaysredirecttovoicemail=<BOOLEAN>   Set always redirect to voicemail. Takes boolean argument.
      
      • Example:
      modify voicemessaging --isactive=true --alwaysredirecttovoicemail=false
      
  • get

    • Description: Displays User Information.
    • Usage:
    get  
    
  • reset

    • devices

      • Description: Resets a User's Access Devices with optional monitoring.
      • Usage:
      reset devices  [OPTIONS]
      
      OPTIONS:
           -f,--force          Force Reset
           -w,--resetwatcher   Reset using the ResetWatcher to monitor re-registration
      
      • Example:
      reset devices --resetwatcher=true
      
    • authentication

      • Description: Resets and randomizes a User's authentication information.
      • Usage:
      reset authentication  [OPTIONS]
      
      OPTIONS:
           -f,--force          Force Reset
           -r,--reset          Reset Devices following randomization
           -u,--includeUser    Include UserID in randomization process
           -w,--resetWatcher   Watch for devices to re-register following reset
      
      • Example:
      reset authentication --includeUser=true --reset=false
      
  • delete

    • Description: Performs delete operations on the User.
    • Usage:
    delete  [OPTIONS]
    
    OPTIONS:
         -f,--force   Force Delete
    
    • Example:
    delete -f
    
  • export

    • Description: Exports a User to JSON format.
    • Usage:
    export  [OPTIONS]
    
    OPTIONS:
         -w,--writeOutput=<FILENAME>   Write Output to a file
    
    • Example:
    export -w user_export.json
    
  • assign

    • number

      • Description: Assigns a Telephone Number to the User.
      • Usage:
      assign number <number> 
      
      • Example:
      assign number 2295551001
      
    • callpickupgroup

      • Description: Assigns a Call Pickup Group to the User.
      • Usage:
      assign callpickupgroup <callpickupgroupid> 
      
      • Example:
      assign callpickupgroup Pickup-Admin
      
    • extension

      • Description: Assigns an extension to the User.
      • Usage:
      assign extension <extension> 
      
      • Example:
      assign extension 10001
      
    • servicepack

      • Description: Assigns a User Service Pack to the User.
      • Usage:
      assign servicepack <servicepack> 
      
      • Example:
      assign servicepack "Premium"
      
    • service

      • Description: Assigns a User Service to the User.
      • Usage:
      assign service <service> 
      
      • Example:
      assign service "Basic Call Logs"
      
    • device

      • Description: Assigns an AccessDevice to the User.
      • Usage:
      assign device <devicelevel> <name> <lineport> 
      
      • Example:
      assign device Group PolycomVVX500-0004f2000000 2295551002@sip.serviceprovider.com
      

GroupAccessDevice

  • modify

    • name

      • Description: Modify the Group Access Device name.
      • Usage:
      modify name <deviceName> 
      
      • Example:
      modify name "Polycom VVX 600 - 0004F2000001"
      
    • macaddress

      • Description: Modify the Group Access Device MAC Address.
      • Usage:
      modify macaddress <macaddress> 
      
      • Example:
      modify macaddress 0004F2000001
      
    • type

      • Description: Modify the Group Access Device type.
      • Usage:
      modify type <deviceType> 
      
      • Example:
      modify type "Polycom VVX 600"
      
    • configmode

      • Description: Modify the Group Access Device Config Mode.
      • Usage:
      modify configmode <configmode> 
      
      • Example:
      modify configmode Manual
      
  • uploadFile

    • Description: Upload a Custom Config file to the Device.
    • Usage:
    uploadFile <filepath> 
    
    • Example:
    uploadFile /tmp/alpacastore/%BWMACADDRESS%.cfg
    
  • reset

    • Description: Performs reset operations on the Group Access Device.
    • Usage:
    reset  [OPTIONS]
    
    OPTIONS:
         -f,--force                           Force Reset
         -u,--user-agent-matches=<criteria>   Reset if the user agent matches the provided criteria. The criteria uses semantic version matching
                                              grammar. e.g. ">=1.0.0 & <2.0.0"
    
    • Example:
    reset -f --user-agent-matches ">4.0.0"
    
  • delete

    • Description: Performs delete operations on the Access Device.
    • Usage:
    delete  [OPTIONS]
    
    OPTIONS:
         -f,--force   Force Delete
    
    • Example:
    delete -f
    

ServiceProvider

  • add

    • number

      • Description: Adds a number to the Service Provider.
      • Usage:
      add number <number> 
      
      • Example:
      add number 2295551002
      
    • group

      • Description: Adds a Group to the Service Provider.
      • Usage:
      add group <groupid> <defaultdomain> <userlimit> <groupname> <callinglineidname> 
      
      • Example:
      add group "Dobson Printing" serviceprovider.com 10 "Dobson Printing" "Dobson Printing"
      
  • set

    • mediaset

      • Description: Sets the media set for the Service Provider.
      • Usage:
      set mediaset <set> 
      
      • Example:
      set mediaset "G722-G711-G729"
      
    • mediapolicy

      • Description: Sets the media policy for the Service Provider.
      • Usage:
      set mediapolicy <policy> 
      
      • Example:
      set mediapolicy "No Restrictions"
      
  • get

    • Description: Retrieves the list of objects that can be accessed from this location.
    • Usage:
    get  
    
  • report

    • voiceportalnotchanged

      • Description: Generates a report Voice Portal Passcodes and whether they have been modified from the originally provisioned value.
      • Usage:
      report voiceportalnotchanged  [OPTIONS]
      
      OPTIONS:
           -w,--writeOutput=<FILENAME>   Write Output to a file
      
      • Example:
      report voiceportalnotchanged --writeOutput=/tmp/report.txt
      
    • serviceassignments

      • Description: Generates a report of Service Assignment.
      • Usage:
      report serviceassignments  [OPTIONS]
      
      OPTIONS:
           -f,--foldServicePacks         Fold Service Packs by Service Provider
           -w,--writeOutput=<FILENAME>   Write Output to a file
      
    • registrations

      • Description: Retrieves a report of all registrations.
      • Usage:
      report registrations  
      
      • Example:
      report registrations
      
    • userdetails

      • Description: Generates a report of User details.
      • Usage:
      report userdetails  [OPTIONS]
      
      OPTIONS:
           -w,--writeOutput=<FILENAME>   Write Output to a file
      
    • callforwardingalways

      • Description: Generates a report of the Call Forwarding Always details for the Service Provider.
      • Usage:
      report callforwardingalways  
      
  • reset

    • authentication

      • Description: Resets and randomizes a User's authentication information for all Users in the Service Provider
      • Usage:
      reset authentication  [OPTIONS]
      
      OPTIONS:
           -f,--force          Force Reset
           -r,--reset          Reset Devices following randomization
           -u,--includeUser    Include UserID in randomization process
           -w,--resetWatcher   Watch for devices to re-register following reset
      
      • Example:
      reset authentication --includeUser=true --reset=false
      
  • authorize

    • service

      • Description: Authorizes a Service for the Service Provider.
      • Usage:
      authorize service <service> 
      
      • Example:
      authorize service "Group Paging"
      
  • delete

    • Description: Performs a delete operation on the Service Provider.
    • Usage:
    delete  [OPTIONS]
    
    OPTIONS:
         -f,--force   Force Delete
    
    • Example:
    delete 
    
  • export

    • Description: Exports a Service Provider or Enterprise to JSON format.
    • Usage:
    export  [OPTIONS]
    
    OPTIONS:
         -w,--writeOutput=<FILENAME>   Write Output to a file
    

HuntGroup

  • modify

    • phonenumber

      • Description: Modify the Hunt Group phone number.
      • Usage:
      modify phonenumber <number> <extension> 
      
      • Example:
      modify phonenumber 2295551002 51002
      
    • forwarding

      • Description: Modify the Hunt Group forwarding settings.
      • Usage:
      modify forwarding  [OPTIONS]
      
      OPTIONS:
           -f,--forwardAfterTimeout=<BOOLEAN>     Set forward after timeout. Takes boolean argument.
           -p,--forwardToNumber=<DN>              Set forward to phone number.
           -t,--forwardTimeoutSeconds=<INTEGER>   Set forward timeout seconds. Takes integer argument.
      
      • Example:
      modify forwarding --forwardAfterTimeout=true --forwardTimeoutSeconds=10 --forwardToNumber=2295551005
      
    • huntafternoanswer

      • Description: Modify the Hunt Group hunt after no answer settings.
      • Usage:
      modify huntafternoanswer  [OPTIONS]
      
      OPTIONS:
           -h,--hunt=<BOOLEAN>   Set hunt after no answer. Takes boolean argument.
      
      • Example:
      modify huntafternoanswer --hunt=true
      

Alpaca

  • cd

    • Description: Changes the current CLI location.
    • Usage:
    cd <location> 
    
    • Example:
    cd "Company A"
    
  • detail

    • Description: Retrieves detailed information about the current location.
    • Usage:
    detail  
    

System

  • disconnect

    • Description: Disconnects Alpaca from the named BroadWorks Server.
    • Usage:
    disconnect <nickname> 
    
    • Example:
    disconnect Lab2
    
  • get

    • Description: Retrieves the list of objects that can be accessed from this location.
    • Usage:
    get  
    
  • tree

    • Description: Lists all commands in the Alpaca CLI
    • Usage:
    tree  [OPTIONS]
    
    OPTIONS:
         -m,--markdown   Output the Tree as a MarkDown document.
    
    • Example:
    tree --markdown
    
  • connect

    • Description: Connects Alpaca to an additional BroadWorks Server.
    • Usage:
    connect <nickname> <hostName> <userName> <password> <ttHostName> 
    
    • Example:
    connect Lab2 xsp2.lab.net admin password as1.lab.net