# voipsimplicity.com — Migration CHANGELOG ## 2026-07-24 — Portal requirements documentation (revised v2.0) ### Revised - **[PORTAL-REQUIREMENTS.md](./PORTAL-REQUIREMENTS.md)** — replaced with comprehensive v1.0 covering all 7 owner-specified requirement areas: 1. **My Dashboard:** per-customer stats, lists (extensions/DIDs/queues/attendants), music on hold, time frames, graphical topology (Phase 3). 2. **Call History:** unified search (name + phone), direction/status/destination columns, recording playback (conditional), voicemail transcripts, CSV export (all + filtered), CDR data-source caveat (RingLogix CDR endpoints all return 404). 3. **Marketplace:** plans/features catalog, cart, per-extension vs per-account distinction, one/multiple/all extension selection, immediate provisioning vs request-discussion choice, audit log + ticket + notification, approval boundaries, data-source caveat. 4. **Billing:** plan/price summary, included + available features, prior invoices list (date/number/amount/status), inline framed invoice viewer (closeable), download individual/multiple/all, separate secure card update path, NEVER store card data in browser storage. 5. **My Info:** view/update name/email/phone/address, separately update payment method, add/manage authorized users with RBAC/invitation/audit trail. 6. **Site Login:** split-half login page, authenticate by domain ID/account email/authorized-user email, password reset, MFA/one-time token exploration (email/SMS) with rate limiting and recovery, order-services contact form. 7. **Screenshot-informed features:** ViiBE seller-side (Accounts, Quotes, Products, LNP, Number Orders, CNAM, Mobile Connect, Reports) and NetSapiens customer/manager views (Home/Statistics, Domains, SIP Trunks, Phone Inventory, E911, Call History, Contacts, Answer Rules, Time Frames, Voicemail/Settings, Music/Messages, Call-Center Queues/Statistics, Auto Attendants). Staff-only vs customer views separated. Provider/API unknowns marked — does not claim RingLogix supports unsupported endpoints. - Document includes sources section (owner screenshots + Obsidian notes), source-of-truth table with API availability, RBAC/tenant isolation rules, audit/compliance requirements, phased MVP sequence (4 phases), acceptance criteria, unknowns/caveats, and out-of-scope items. - **[PORTAL-GAP-ANALYSIS.md](./PORTAL-GAP-ANALYSIS.md)** — replaced with v2.0, reorganized to map gap analysis directly to the 7 owner requirement areas. Includes source-of-truth data availability matrix (19 data categories with API status), screenshot-to-feature mapping for both Viirtue and Apollo screenshots, design/UX comparison, technical architecture gaps (backend DB, payment gateway, file storage), and P0–P4 priority matrix. References 22 owner-provided screenshots and Obsidian notes. - No code or configuration changes — documentation only. Portal deployment, DNS, APIs, and credentials unchanged. ## 2026-07-24 — Entity record started ### Added - Created [ENTITY.md](./ENTITY.md) as the canonical VoIPSimplicity business-entity record. - Recorded verified VoIPSimplicity phone assets: **(844) 769-8647** and **(912) 812-8647**. - Added an entity-record link to the project README. ## 2026-07-16 — Migrated to app3 ### Source → Target - **From:** wphost02 (5.161.62.38), RunCloud-managed WordPress - **To:** app3 (152.53.241.111), CloudPanel CE ### What Migrated - WordPress files: 497 MB (rsync from RunCloud webapp) - MySQL database: 60.2 MB (20+ tables), imported into `voipsimplicity_site` - SSL: Let's Encrypt via CloudPanel (DNS challenge) ### DNS Changes - `voipsimplicity.com` A record → 152.53.241.111 (Cloudflare proxied) - `support.voipsimplicity.com` A record → 152.53.241.111 - `panel.itpropartner.com` → 152.53.241.111 (CloudPanel admin) - `www.voipsimplicity.com` redirects to root (Nginx) ### Access - **Site:** https://voipsimplicity.com - **CloudPanel:** https://panel.itpropartner.com — info@itpropartner.com - **MySQL root:** `root` / stored in `/root/.mysql-root-pw` on app3 - **Site DB:** `voipsimplicity_site` / `voipsimplicity_user` (creds in wp-config.php) ### Server - app3: RS 4000 G12 (12C EPYC 9645, 32 GB RAM, 1 TB NVMe) - Stack: Nginx 1.x, PHP 8.3, Percona MySQL 8.4, CloudPanel CE - Tailscale enabled