Critical RPS provisioning URL fix + CSV bulk import ready + complete VoIP setup guide CRITICAL FIX: - RPS server URL corrected: http://ndp.ucaasnetwork.com/cfg (was ftp://p.packetdials.net) - Discovered ACG has TWO whitelabel accounts (WLC vs OIT/PacketDial) - Test phone (805e0cdd71b1) now registered immediately after fix (Status 1) USER PROVISIONING: - M365 account matching: 11 matched users, 7 unmatched (need clarification) - CSV bulk import prepared (vwp-users-import.csv) - Strategy: users WITHOUT devices initially (add phone extension: no) - Device assignment workflow: incremental as phones distributed COMPLETE VOIP SETUP DOCUMENTED: - DID (phone number) management + routing options - Call queues (ring groups) - recommended queues for VWP - Auto-attendants (IVR menus) - main menu design - Time frames (business hours routing) - Additional features (hunt groups, voicemail-only, fax-to-email) - All components with API commands + examples FILES CREATED (7): - README.md: Quick navigation hub + domain info - PROVISIONING-STATUS.md: Current status + next steps - SESSION-SUMMARY-2026-07-09.md: Complete session documentation (18 pages) - COMPLETE-CLIENT-SETUP.md: Full VoIP setup guide (15 pages) - DEVICE-ASSIGNMENT-COMMANDS.md: Copy-paste command reference - extension-mapping.md: Extension to M365 account mapping - vwp-users-import.csv: Bulk import file (READY for upload) IMPLEMENTATION PHASES: Phase 1 (In Progress): Basic connectivity - CSV ready for upload Phase 2 (Planned): Main line setup - queue + auto-attendant + DID Phase 3 (Planned): Business hours routing - time-based call handling Phase 4 (Optional): Additional features per client needs NEXT ACTIONS: - Upload CSV to PacketDial web UI (manual step) - Get client clarification on 7 unmatched users - Assign devices as phones distributed (per-phone workflow documented) Domain: vwp.91912.service Main Number: 480-705-9500 E911: a-6a395c03d4cfe (301 N 56TH ST, CHANDLER AZ) YMCS Site: 1e7578a6fe0e41cfb5a3e8b40933ffee Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
5.9 KiB
VWP Phone Provisioning Status
Last Updated: 2026-07-09 20:45 MST
Status: Ready for CSV bulk import + Complete VoIP setup documented
Session Summary: SESSION-SUMMARY-2026-07-09.md
CRITICAL FIX COMPLETED
RPS Provisioning URL corrected:
- ❌ Wrong:
ftp://p.packetdials.net(Whitelabel Communication) - ✅ Correct:
http://ndp.ucaasnetwork.com/cfg(OIT/PacketDial)
Result: Test phone (MAC 805e0cdd71b1) REGISTERED immediately after fix!
Two whitelabel accounts:
- Whitelabel Communication (WLC):
ftp://p.packetdials.net - OIT/PacketDial:
http://ndp.ucaasnetwork.com/cfg← VWP uses this one
READY FOR IMPORT
CSV File Created: clients/valleywide/voip/vwp-users-import.csv
Contains 11 matched users with:
- ✓ Correct M365 email addresses
- ✓ Proper first/last names
- ✓ Users only, NO devices (
add phone extension: no) - ✓ All PacketDial defaults (voicemail, caller ID, dial permissions)
Device Assignment Strategy: Users will be created without SIP devices. Physical phones will be assigned later as they're distributed to staff.
Matched Extensions:
- 102: Jesse Guerrero (jesse@valleywideplastering.com)
- 103: Rose Guerrero (rose@valleywideplastering.com)
- 104: Shelly Dooley (shelly@valleywideplastering.com)
- 105: JR Guerrero (j-r@valleywideplastering.com)
- 107: Payroll Department (payroll@valleywideplastering.com)
- 109: Kayla Guerrero (kayla@valleywideplastering.com)
- 110: Ron Winger (ron@valleywideplastering.com)
- 113: Chris Guerrero (chris@valleywideplastering.com)
- 114: Ty Fetters (Ty@CASARICA.NET)
- 115: Toni Billing (billing@valleywideplastering.onmicrosoft.com)
- 116: Bart Graffin (estimating@valleywideplastering.com)
NEXT STEPS (Tomorrow Morning)
1. Upload CSV to PacketDial (Users Only)
-
Log in to https://pbx.packetdial.com/
- Credentials: vault
msp-tools/oitvoip-provisioning.sops.yaml - Username:
Prov_Admin - Password:
YJ5UgRd9pV
- Credentials: vault
-
Navigate to: Domains → vwp.91912.service → Users → Import
-
Upload:
clients/valleywide/voip/vwp-users-import.csv -
Verify import completed successfully (all 11 users created WITHOUT devices)
2. Device Assignment Workflow (Per Phone)
As each physical phone is distributed to a user, follow this process:
Step A: Create SIP Device in PacketDial
# Example for extension 102
bash .claude/scripts/py.sh ns.py create-device vwp.91912.service 102 --body '{
"device": "sip:102a@vwp.91912.service"
}' --confirm
Step B: Get SIP Password
bash .claude/scripts/py.sh ns.py devices vwp.91912.service 102 | \
python3 -c "import sys, json; d=json.load(sys.stdin); \
print(f\"102: {d[0].get('device-sip-registration-password')}\")"
Step C: Create YMCS SIP Account
ymcs.py add-sipaccount --body '{
"registerName": "102@vwp.91912.service",
"username": "102@vwp.91912.service",
"password": "<SIP-PASSWORD-FROM-STEP-B>",
"label": "Ext 102 - Jesse Guerrero",
"displayName": "Jesse Guerrero",
"sipServer1": {
"host": "pbx.packetdial.com",
"port": 5060
},
"siteId": "1e7578a6fe0e41cfb5a3e8b40933ffee"
}' --confirm
Step D: Identify Physical Phone
User provides last 4 digits of MAC address. Find device in YMCS:
ymcs.py devices | grep -i "<LAST-4-OF-MAC>"
Step E: Bind Account to Phone
# Get account ID from step C output, device ID from step D
ymcs.py raw POST /v2/dm/devices/{device-id}/bindAccounts --body '[{
"lineId": 1,
"accountType": 0,
"accountId": "{account-id}"
}]' --confirm
# Reboot phone to apply
ymcs.py reboot --body '{
"deviceIds": ["{device-id}"],
"deviceType": 1
}' --confirm
3. Test Phone Identification
Test phone (805e0cdd71b1) is for the receptionist (one of the 7 unmatched users, NOT in the CSV import).
- Last 4 of MAC:
71b1 - This phone is already configured and registered
- Do NOT create a device for this extension yet (waiting on user clarification)
PARKED FOR LATER (7 Extensions)
Need client clarification on these names:
| Ext | Name Given | Status | Notes |
|---|---|---|---|
| 101 | Natalya | No M365 match | Verify real name |
| 106 | Tammy | No M365 match | Verify real name |
| 108 | Shannon | No M365 match | Verify real name |
| 111 | Kitchen | Shared phone | May not need M365 account |
| 112 | Conference Room | Shared phone | May not need M365 account |
| 117 | Jesse III | No M365 match | Possibly Ryan Guerrero? |
| 118 | Warehouse | Shared phone | May not need M365 account |
Action: Get client clarification, then create a second CSV for these 7 extensions.
FILES CREATED
- Extension Mapping:
clients/valleywide/voip/extension-mapping.md - Bulk Import CSV:
clients/valleywide/voip/vwp-users-import.csv - This Status:
clients/valleywide/voip/PROVISIONING-STATUS.md
DOCUMENTATION UPDATE NEEDED
docs/VOIP_ONBOARDING_WORKFLOW.md needs update:
- Add OIT vs WLC provisioning URL distinction
- Document CSV bulk import method
- Add troubleshooting section for wrong RPS URL
RELATED DOCUMENTATION
This Directory (clients/valleywide/voip/)
extension-mapping.md- M365 account matching (11 matched, 7 unmatched)vwp-users-import.csv- Bulk import file for PacketDialPROVISIONING-STATUS.md- This file (status + next steps)COMPLETE-CLIENT-SETUP.md- Full VoIP setup guide (DIDs, queues, IVRs, time frames)SESSION-SUMMARY-2026-07-09.md- Complete session documentation
Skills Documentation
.claude/skills/packetdial/SKILL.md- PacketDial skill reference.claude/skills/packetdial/docs/VOIP_ONBOARDING_WORKFLOW.md- Workflow guide.claude/skills/yealink-ymcs/SKILL.md- YMCS skill reference.claude/skills/yealink-ymcs/docs/SIPSERVER_SCHEMA.md- SIP account schema
Wiki
wiki/clients/valleywide.md- VWP client infrastructure (M365 tenant, phones, etc.)