# 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)

1. Log in to https://pbx.packetdial.com/
   - Credentials: vault `msp-tools/oitvoip-provisioning.sops.yaml`
   - Username: `Prov_Admin`
   - Password: `YJ5UgRd9pV`

2. Navigate to: **Domains** → **vwp.91912.service** → **Users** → **Import**

3. Upload: `clients/valleywide/voip/vwp-users-import.csv`

4. 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**

```bash
# 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
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**

```bash
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:

```bash
ymcs.py devices | grep -i "<LAST-4-OF-MAC>"
```

**Step E: Bind Account to Phone**

```bash
# 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. Clarified Extensions (2026-07-10)

**Extension 101 - Natalya (Receptionist)**
- M365 Account: Customer Service (customerservice@valleywideplastering.com)
- Phone: Test phone from yesterday (MAC 805e0cdd71b1 / Last 4: 71b1)
- Status: Phone already registered, ready for user provisioning
- **Action:** Create user 101 separately (see provision-natalya-101.md)

**Extension 106 - Tammy**
- M365 Account: Accounts Payable (acctpay@valleywideplastering.com)
- Status: Ready to add to second CSV batch
- **Action:** Include in second CSV import

**Extension 117 - Jesse III**
- Email: jesse@nescoap.com (external domain, like Ty@CASARICA.NET)
- Status: Ready to add to second CSV batch
- **Action:** Include in second CSV import

---

## PARKED FOR LATER (4 Extensions)

**Need client clarification:**

| Ext | Name Given | Status | Notes |
|-----|------------|--------|-------|
| 108 | Shannon | Parked - no info yet | Waiting for clarification |
| 111 | Kitchen | Shared phone | May not need M365 account |
| 112 | Conference Room | Shared phone | May not need M365 account |
| 118 | Warehouse | Shared phone | May not need M365 account |

**Action:** Get client clarification on Shannon. For shared phones (Kitchen/Conference Room/Warehouse), confirm whether they need individual M365 accounts or can be configured as shared 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 PacketDial
- **`PROVISIONING-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.)
