Loading...
Loading...
Use to bind agent users into a Salesforce Queue via GroupMember Data API POSTs, with SOQL-based idempotency (safe re-run — only inserts missing bindings). Binds either the generated demo agents (agent{1..N}.<suffix>@example.com) or an explicit list of real agents passed as usernames/User Ids. Triggers: add agents to a Case/Voice queue, assign agent users to a queue, populate queue membership for Omni routing. Do not use to create the queue (service-omni-queue-deploy), to create the agent users (service-omni-agent-users-create), or to assign permission sets (service-omni-permission-set-assign).
npx skill4agent add forcedotcom/sf-skills service-omni-queue-members-assignGroupMemberservice-omni-queue-routing-config-deployservice-omni-agent-users-createservice-omni-queue-deployservice-omni-permission-set-assignbash scripts/verify-and-bind.sh <org-alias> [queue-developer-name=CaseQueue] [count=3] [explicit-members-csv]
# demo agents (default):
bash scripts/verify-and-bind.sh myorg CaseQueue 3
# real agents by username/id:
bash scripts/verify-and-bind.sh myorg VoiceQueue "" "jdoe@acme.com,005XX000001abcd"org-aliasqueue-developer-nameCaseQueuecount31..10explicit-members-csvMEMBER_USERNAMES_CSVMEMBER_USER_IDS_CSVsfsfPermissionsModifyAllDataservice-omni-agent-users-createservice-omni-queue-deploysafe_to_writeverify-and-bind.shsafe_to_writeGroup.IdType='Queue'Useragent{1..N}.<suffix>@example.comGroupMemberGroupMemberallOrNonebeforestatusboundreusedpartialblockedqueueorg_suffixmember_sourcegenerated_patternexplicitrequested_countbeforebound_this_runbound_countreused_countaftermanual_actionsblocking_issueboundreusedpartialblocking_issueblockedbound_count + reused_count == requested_countpartialblocking_issueblockedpartial| File | When to read |
|---|---|
| Before the detect/bind cycle — GroupMember schema, the queue-vs-public-group distinction, why |
| When validating changes — run |