feat(content): publish Levi's approved UC and Contact Center pages
The work this batch exists for. Levi Halford approved two copy sheets on 2026-08-28 and sent them the same day; they were never deployed. Closes #220, #219 and #218. What ships, verbatim from the sheets: /services/unified-communications 1,125 words, 10 sections, 7 FAQs /services/contact-center 2,499 words, 12 sections, 10 FAQs Titles, H1s, hero subheadings and descriptions are the approved strings exactly, including descriptions at 164 and 191 characters, which are emitted whole rather than clamped. Each section opens with its direct answer, because that passage is what a search result or an AI answer quotes. Every section carries a stable, letter-first anchor, so an answer can deep-link to it. The FAQ is visible h3 and p, with no FAQPage markup, as the sheets require. The old copy goes: the unattributed "99.999% uptime reliability" the sheet named, and both pages' short blurbs, which the approved sections now say at length. idealFor stays, because the services index prints it as "Best fit". Levi's two constraints are held and proven, not assumed. The footer is byte for byte identical to the pre-batch build on all 19 pages. The Quick Info box is on both pages, unchanged. Verified against the built HTML, not the source: title, description and H1 match the sheets exactly; all 22 approved H2s and all 17 FAQ questions are present; no website-manager direction survived (checked against 20 phrases); no 99.999, no em dash, no U+FFFD, no markdown. In a browser: no horizontal scroll, no broken image, no console error at 320, 390, 768 and 1024; hydration clean on all 18 pages; all 24 section anchors deep-link correctly. Docs corrected in the same commit, because each would have sent the next writer the wrong way: REDESIGN_REVIEW's metrics lists now carry the owner's 2026-09-10 direction that a figure must be current, vendor-attributed and verified; OVERHAUL_PLAN gains the long-form blueprint and stops recommending an accordion for an FAQ; README stops claiming a server-rendered privacy fallback that never existed, and says what hydration actually does now. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
cd0a517d4a
commit
aff80334df
18
README.md
18
README.md
|
|
@ -98,10 +98,18 @@ Primary structure:
|
||||||
* 404
|
* 404
|
||||||
```
|
```
|
||||||
|
|
||||||
Defined in `src/routes.jsx`. **Every one of them is prerendered to static HTML at
|
Defined in `src/routes.jsx`, and listed for the build in `scripts/lib/routes.js`,
|
||||||
build time** by `scripts/prerender.js` — the SPA hydrates on top. `/privacy-policy`
|
which the prerenderer checks against the router so the two cannot drift. **Every
|
||||||
additionally has a server-rendered fallback because Meta's crawler does not run
|
one of them is prerendered to static HTML at build time** by
|
||||||
JavaScript.
|
`scripts/prerender.js`, and the SPA hydrates on top of that HTML rather than
|
||||||
|
replacing it. There is no server-rendered fallback for `/privacy-policy` and
|
||||||
|
there never was: it is readable to Meta's crawler because it is prerendered, like
|
||||||
|
every other page.
|
||||||
|
|
||||||
|
Hydration was in fact failing on every page until 2026-09-10, so React was
|
||||||
|
discarding the prerendered DOM and rendering the whole page again on the client.
|
||||||
|
`scripts/qa-browser.mjs` now counts console errors, which is how that is kept
|
||||||
|
honest.
|
||||||
|
|
||||||
The standalone `/8x8` route was removed at `0.6.6`; that content now lives inside
|
The standalone `/8x8` route was removed at `0.6.6`; that content now lives inside
|
||||||
the UCaaS and contact-centre service pages.
|
the UCaaS and contact-centre service pages.
|
||||||
|
|
@ -224,7 +232,7 @@ Based on the redesign review (see [docs/design/REDESIGN_REVIEW.md](docs/design/R
|
||||||
|
|
||||||
- **Modern, clean, stable** — not experimental, not hacker aesthetic
|
- **Modern, clean, stable** — not experimental, not hacker aesthetic
|
||||||
- **Business-first** — B2B UCaaS/IT partner, not a dev portfolio
|
- **Business-first** — B2B UCaaS/IT partner, not a dev portfolio
|
||||||
- **Trust-forward** — 8x8 partnership, certifications, uptime SLAs front and center
|
- **Trust-forward** — 8x8 partnership, certifications and support commitments front and center, each one attributable. Uptime figures belong to the vendor that offers them, never to Queue North: see the 2026-09-10 correction in `docs/design/REDESIGN_REVIEW.md`
|
||||||
- **Human but competent** — less corporate fluff, more concrete outcomes
|
- **Human but competent** — less corporate fluff, more concrete outcomes
|
||||||
|
|
||||||
Color palette evolution (not rip-and-replace):
|
Color palette evolution (not rip-and-replace):
|
||||||
|
|
|
||||||
|
|
@ -692,7 +692,7 @@ Required primitives from `@/components/ui/`:
|
||||||
- `Sheet` — mobile navigation
|
- `Sheet` — mobile navigation
|
||||||
- `Input`, `Textarea`, `Select` — forms
|
- `Input`, `Textarea`, `Select` — forms
|
||||||
- `Badge` — certifications, status indicators
|
- `Badge` — certifications, status indicators
|
||||||
- `Accordion` — FAQ or details sections
|
- `Accordion` — details sections. **Not for an FAQ**: the owner-approved service pages keep every question and answer visible as `h3` plus `p`, because an answer a reader has to click for is one an answer engine may not quote
|
||||||
- `NavigationMenu` — desktop nav (optional if simple)
|
- `NavigationMenu` — desktop nav (optional if simple)
|
||||||
- `Toast` / `Toaster` — success/error feedback
|
- `Toast` / `Toaster` — success/error feedback
|
||||||
- `Dialog` — optional modal content
|
- `Dialog` — optional modal content
|
||||||
|
|
@ -759,6 +759,36 @@ Required primitives from `@/components/ui/`:
|
||||||
- Dark navy section
|
- Dark navy section
|
||||||
- Centered copy + primary button
|
- Centered copy + primary button
|
||||||
|
|
||||||
|
### Long-Form Service Page Blueprint (added 2026-09-10)
|
||||||
|
|
||||||
|
A second shape for a service page, used when the owner supplies approved
|
||||||
|
long-form copy (`src/data/serviceContent/<slug>.js`). A service without that copy
|
||||||
|
keeps the blueprint above, so the two live side by side. Unified Communications
|
||||||
|
and Contact Center are the first two, at roughly 1,100 and 2,500 words.
|
||||||
|
|
||||||
|
**Page Hero** — unchanged band, carrying the approved H1 and subheading, and two
|
||||||
|
buttons: the approved primary CTA, and a secondary one outlined in white. Both go
|
||||||
|
to the contact form.
|
||||||
|
|
||||||
|
**Lead** — the approved hero copy sits directly *under* the hero band, at
|
||||||
|
`text-lg`, so the buttons stay above the fold on a phone.
|
||||||
|
|
||||||
|
**Sections** — one `<article id>` per approved H2, in sheet order, rendered by
|
||||||
|
`src/components/content/ContentBlocks.jsx`. Each opens with its direct answer
|
||||||
|
paragraph, then lists, steps, a callout or a figure. The ids are the anchors a
|
||||||
|
search result or an AI answer deep-links to, so they are stable, letter-first and
|
||||||
|
never renumbered.
|
||||||
|
|
||||||
|
**FAQ** — a plain section: `h3` question, `p` answer, always visible. **No
|
||||||
|
accordion, and no FAQPage markup**, both on the owner's instruction. An answer
|
||||||
|
behind a click is an answer that may not be quoted.
|
||||||
|
|
||||||
|
**Related services** — the approved anchor texts, at the end of the main column.
|
||||||
|
|
||||||
|
**Sidebar** — the same Quick Info card as the short layout, unchanged.
|
||||||
|
|
||||||
|
The build refuses copy that breaks any of this: see `scripts/lib/content.js`.
|
||||||
|
|
||||||
### Contact / Support Form Layout
|
### Contact / Support Form Layout
|
||||||
|
|
||||||
**Desktop: Two-Column**
|
**Desktop: Two-Column**
|
||||||
|
|
|
||||||
|
|
@ -155,6 +155,23 @@ This section should appear immediately after hero.
|
||||||
|
|
||||||
This is critical.
|
This is critical.
|
||||||
|
|
||||||
|
> **CORRECTED 2026-09-10, by the owner.** The two lists above are what this
|
||||||
|
> review recommended in May, and Levi Halford's approved copy sheets of
|
||||||
|
> 2026-08-28 overrule them. A figure goes on a page only when it is current,
|
||||||
|
> attributed to the vendor it belongs to, and verified at the time of
|
||||||
|
> publication. **A vendor's SLA is never presented as a Queue North guarantee**,
|
||||||
|
> and unsupported superlatives ("best", "leading", "#1") do not appear at all.
|
||||||
|
>
|
||||||
|
> The specific instruction was to remove the unattributed "99.999% uptime
|
||||||
|
> reliability" from the contact centre page, which had shipped since May. It is
|
||||||
|
> gone as of that date. The numbers above are examples of the SHAPE of a trust
|
||||||
|
> signal, not copy to reach for: an invented one costs more than the vague
|
||||||
|
> sentence it replaced, and `docs/planning/PROJECT_PLAN.md` already requires that
|
||||||
|
> nothing on the page be a claim the business cannot substantiate.
|
||||||
|
>
|
||||||
|
> The same sheets are also the standard for what an approved page looks like:
|
||||||
|
> `src/data/serviceContent/` holds the two written this way.
|
||||||
|
|
||||||
B2B buyers purchase risk reduction, not technology.
|
B2B buyers purchase risk reduction, not technology.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,586 @@
|
||||||
|
// Contact Center page content.
|
||||||
|
// Source: .drop/2026-08-28-levi-uc-cc-sheets/Contact SEO + Search Sheet APPROVED 2026-08-28.md
|
||||||
|
// Owner-approved 2026-08-28. Copy is verbatim from the sheet; website-manager
|
||||||
|
// directions in the sheet are not published here.
|
||||||
|
// Leaf module: no imports, no JSX.
|
||||||
|
//
|
||||||
|
// Punctuation: the generation rule for these modules forbids U+2014 anywhere, so
|
||||||
|
// each em dash in the approved copy is rendered as the comma the sentence needs.
|
||||||
|
// Four places are affected: hero.intro[1], the "as they happen" routing bullet, the
|
||||||
|
// implementation direct answer, and the AI callout. Words are unchanged in all four.
|
||||||
|
// This is the rule, not a house-style drift: do not "restore" them.
|
||||||
|
//
|
||||||
|
// ol item contract, shared by every generated content module: an 'ol' block's items
|
||||||
|
// are EITHER plain strings (a simple sequence) OR objects of the shape
|
||||||
|
// { text, detail } (a step title plus its explanation). Both shapes are valid, and a
|
||||||
|
// block never mixes them. A renderer must normalise before rendering: treat a string
|
||||||
|
// item as { text: item, detail: undefined } and emit detail only when it is present.
|
||||||
|
// This module's implementation sequence uses { text, detail } because the approved
|
||||||
|
// sheet gives every step an explanation; the peer module content/unified-communications.js
|
||||||
|
// uses plain strings because its sheet does not.
|
||||||
|
|
||||||
|
export const page = {
|
||||||
|
seo: {
|
||||||
|
title: 'Contact Center & CCaaS Solutions | Queue North',
|
||||||
|
description:
|
||||||
|
'Modern contact center and CCaaS solutions from Queue North Technologies, including 8x8 and Cisco Webex implementation, omnichannel routing, analytics, CRM integration, migration, and support.',
|
||||||
|
},
|
||||||
|
|
||||||
|
hero: {
|
||||||
|
h1: 'Contact Center & Customer Experience Solutions',
|
||||||
|
subheading:
|
||||||
|
'Design, implement, and support customer-engagement environments built around routing, channels, agents, reporting, integrations, and the customer experience.',
|
||||||
|
intro: [
|
||||||
|
'Queue North Technologies helps businesses design, implement, migrate, and support modern contact center environments using platforms including 8x8 Contact Center and Cisco Webex Contact Center.',
|
||||||
|
'A contact center should connect customers to the right resource, through the right channel, with the information and workflow the agent needs to resolve the interaction effectively. Queue North approaches contact center projects as an operational design problem, not simply a software-license purchase.',
|
||||||
|
],
|
||||||
|
primaryCta: { label: 'Request a Contact Center Review', to: '/contact#contact-form' },
|
||||||
|
secondaryCta: { label: 'Talk With an Engineer', to: '/contact#contact-form' },
|
||||||
|
},
|
||||||
|
|
||||||
|
sections: [
|
||||||
|
{
|
||||||
|
id: 'contact-center-vs-phone-queue',
|
||||||
|
title: 'When Does a Business Need a Contact Center Instead of a Phone Queue?',
|
||||||
|
kind: undefined,
|
||||||
|
blocks: [
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'A basic phone queue may be enough when a small team primarily needs to answer inbound calls and distribute them among available users. A contact center becomes more appropriate when customer interactions require greater control, visibility, consistency, and coordination across agents, departments, channels, and business systems.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'The difference is not simply having more features. A properly designed contact center can help reduce unnecessary transfers, improve first-contact resolution, give supervisors better operational visibility, create more structured coaching and quality-management processes, and provide customers with additional ways to engage with the organization.',
|
||||||
|
},
|
||||||
|
{ type: 'p', text: 'A business may benefit from CCaaS when it needs:' },
|
||||||
|
{
|
||||||
|
type: 'ul',
|
||||||
|
items: [
|
||||||
|
'Skills-based and intelligent routing to connect customers with the right resource sooner, reduce unnecessary transfers, and improve first-contact resolution.',
|
||||||
|
'Multiple departments, queues, or agent groups that require different routing rules, priorities, escalation paths, or service levels.',
|
||||||
|
'Voice and digital customer channels such as SMS, web chat, messaging, and email managed through a more coordinated customer-service environment.',
|
||||||
|
'Real-time agent and supervisor visibility so leaders can monitor queue conditions, agent availability, service levels, and developing issues as they happen, supporting a more proactive rather than reactive operation.',
|
||||||
|
'Historical reporting and analytics to identify trends in call volume, wait times, abandonment, transfers, agent performance, customer demand, and other operational metrics.',
|
||||||
|
'Call recording and quality-management workflows that support structured coaching, performance review, compliance requirements, and more effective agent training.',
|
||||||
|
'CRM, help-desk, or business-system integration so agents can access relevant customer information, reduce duplicate data entry, and complete workflows without constantly moving between disconnected applications.',
|
||||||
|
'Outbound campaigns and proactive engagement for functions such as appointment reminders, customer follow-up, collections, notifications, sales outreach, or service communications.',
|
||||||
|
'AI-assisted agent and customer-service capabilities such as self-service, interaction summaries, knowledge assistance, routing intelligence, quality analysis, and supervisor insights where those capabilities solve a defined business problem.',
|
||||||
|
'Distributed or remote agents that still require centralized routing, supervision, reporting, quality management, and a consistent agent experience.',
|
||||||
|
'Greater visibility into the customer journey so the organization can understand not only how many interactions occurred, but where customers wait, transfer, abandon, escalate, or repeatedly contact the business.',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'A contact center is therefore not simply a larger phone queue. It is an operational platform for managing how customer interactions enter the organization, how they are routed and resolved, how agents and supervisors work, and how the business measures and improves the customer experience over time.',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
id: 'contact-center-implementation',
|
||||||
|
title: 'What Should a Contact Center Implementation Include?',
|
||||||
|
kind: undefined,
|
||||||
|
blocks: [
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'A successful contact center implementation should begin with understanding how the business actually operates, not with configuring queues and licenses.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Before designing the new environment, Queue North reviews the organization’s customer-interaction workflows, internal policies, procedures, business processes, departments, roles, escalation paths, communication channels, reporting needs, and system dependencies.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'The objective is to design the contact center around the organization’s existing operating model so employees make little to no unnecessary change simply to accommodate new software.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Queue North recommends operational changes only when they create a clear business benefit, such as reducing handling time, eliminating duplicate work, lowering cost, improving customer experience, increasing visibility, or enabling a valuable capability that was not possible in the previous environment.',
|
||||||
|
},
|
||||||
|
{ type: 'h3', text: 'Queue North implementation sequence' },
|
||||||
|
{
|
||||||
|
type: 'ol',
|
||||||
|
items: [
|
||||||
|
{
|
||||||
|
text: 'Current-state business and operational discovery.',
|
||||||
|
detail:
|
||||||
|
'Document how the organization currently serves customers, how work moves between departments, who owns each type of interaction, and where operational pain points exist.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: 'Workflow, policy, procedure, and process review.',
|
||||||
|
detail:
|
||||||
|
'Evaluate the internal workflows, policies, procedures, approval paths, escalation rules, service standards, and business processes that influence how customer interactions are handled.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: 'Customer-interaction and channel review.',
|
||||||
|
detail:
|
||||||
|
'Identify why customers contact the organization, which channels they use, how those interactions are handled today, and where customers experience delays, transfers, abandonment, or unnecessary effort.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: 'Department, queue, role, and agent inventory.',
|
||||||
|
detail:
|
||||||
|
'Map departments, teams, supervisors, agents, responsibilities, skills, locations, working models, and ownership of customer-interaction types.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: 'Business-requirement and improvement analysis.',
|
||||||
|
detail:
|
||||||
|
'Separate requirements that must be preserved from processes that could reasonably be improved. Any proposed operational change must have a defined benefit rather than being introduced simply because the new platform works differently.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: 'Call-flow, interaction-flow, and routing design.',
|
||||||
|
detail:
|
||||||
|
'Design routing around the business’s real workflows, customer reasons for contact, skills, departments, priorities, account context, and escalation requirements.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: 'Skills, priority, and escalation planning.',
|
||||||
|
detail:
|
||||||
|
'Define how interactions should be routed, prioritized, overflowed, escalated, or reassigned while preserving the organization’s existing operating rules where appropriate.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: 'Business-hours, after-hours, and exception design.',
|
||||||
|
detail:
|
||||||
|
'Document standard hours, holidays, emergency procedures, closures, on-call workflows, seasonal changes, and exception handling.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: 'CRM and business-system integration review.',
|
||||||
|
detail:
|
||||||
|
'Determine which systems agents and supervisors already use and where integration can reduce duplicate work, improve context, automate updates, or simplify customer handling.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: 'Reporting, KPI, and management requirements.',
|
||||||
|
detail:
|
||||||
|
'Identify what leadership, supervisors, and operations teams need to know in real time and historically, and design reporting around those business questions.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: 'Platform and feature mapping.',
|
||||||
|
detail:
|
||||||
|
'Map the approved operational design to the selected platform’s capabilities, licensing, channels, integrations, AI functions, and administrative tools.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: 'Agent and supervisor workspace design.',
|
||||||
|
detail:
|
||||||
|
'Configure the user experience around the work agents and supervisors already perform, minimizing unnecessary screen changes, duplicate entry, and process disruption.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: 'Platform configuration and integration development.',
|
||||||
|
detail:
|
||||||
|
'Build the queues, routing logic, channels, permissions, reports, integrations, automation, and other approved components.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: 'Functional, workflow, and user-acceptance testing.',
|
||||||
|
detail:
|
||||||
|
'Test not only whether features work technically, but whether real business processes work correctly from beginning to end.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: 'Cutover and migration planning.',
|
||||||
|
detail:
|
||||||
|
'Define migration timing, dependencies, rollback considerations, number or carrier changes, agent readiness, communication plans, and operational continuity.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: 'Agent, supervisor, and administrator training.',
|
||||||
|
detail:
|
||||||
|
'Train users in the context of their actual roles and workflows rather than providing generic platform demonstrations.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: 'Post-deployment validation and optimization.',
|
||||||
|
detail:
|
||||||
|
'Confirm that the implemented environment supports the intended workflows, reporting, routing, integrations, and customer experience, then make targeted adjustments based on real operating results.',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Queue North designs the contact center around how the business operates. The technology must support the organization’s workflows, policies, procedures, and processes, not force the organization to change how it works simply to accommodate the software. Operational changes are recommended only when they create a clear benefit in time, cost, efficiency, visibility, customer experience, or use of a valuable capability introduced by the new solution.',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
id: 'ccaas-8x8-implementation',
|
||||||
|
title: '8x8 Contact Center Implementation and Optimization',
|
||||||
|
kind: undefined,
|
||||||
|
blocks: [
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: '8x8 Contact Center supports voice and digital customer interactions, omnichannel routing, analytics, supervisor tools, AI-assisted capabilities, proactive messaging, outbound workflows, and other customer-experience functions.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Queue North can help customers translate those platform capabilities into an operational design that fits the business.',
|
||||||
|
},
|
||||||
|
{ type: 'h3', text: 'Queue North services may include' },
|
||||||
|
{
|
||||||
|
type: 'ul',
|
||||||
|
items: [
|
||||||
|
'8x8 Contact Center implementation.',
|
||||||
|
'Queue and channel configuration.',
|
||||||
|
'Omnichannel routing.',
|
||||||
|
'Skills and agent-group design.',
|
||||||
|
'Business-hours and after-hours routing.',
|
||||||
|
'Agent and supervisor configuration.',
|
||||||
|
'Analytics and reporting setup.',
|
||||||
|
'Number and telephony planning.',
|
||||||
|
'CRM / business-system integration.',
|
||||||
|
'Testing and cutover.',
|
||||||
|
'Administrator guidance.',
|
||||||
|
'Ongoing support and optimization.',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'image',
|
||||||
|
src: null,
|
||||||
|
alt: '8x8 Contact Center agent and customer experience workspace',
|
||||||
|
caption: '8x8 Contact Center',
|
||||||
|
width: 1600,
|
||||||
|
height: 900,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
id: 'cisco-webex-contact-center',
|
||||||
|
title: 'Cisco Webex Contact Center',
|
||||||
|
kind: undefined,
|
||||||
|
blocks: [
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Cisco Webex Contact Center is a cloud contact center platform supporting voice and digital customer interactions, intelligent routing, agent and supervisor experiences, analytics, AI-assisted workflows, and business-system integration.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Queue North can help evaluate and implement Webex Contact Center as part of a broader Cisco communications or customer-experience strategy.',
|
||||||
|
},
|
||||||
|
{ type: 'h3', text: 'Queue North services may include' },
|
||||||
|
{
|
||||||
|
type: 'ul',
|
||||||
|
items: [
|
||||||
|
'Contact-center discovery and design.',
|
||||||
|
'Voice and digital-channel planning.',
|
||||||
|
'Queue and routing configuration.',
|
||||||
|
'Agent and supervisor setup.',
|
||||||
|
'Integration requirements.',
|
||||||
|
'Reporting and analytics planning.',
|
||||||
|
'Migration and cutover.',
|
||||||
|
'Administrator guidance.',
|
||||||
|
'Ongoing support.',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'image',
|
||||||
|
src: null,
|
||||||
|
alt: 'Cisco Webex Contact Center agent workspace',
|
||||||
|
caption: 'Cisco Webex Contact Center',
|
||||||
|
width: 1600,
|
||||||
|
height: 900,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
id: 'omnichannel-customer-engagement',
|
||||||
|
title: 'Omnichannel Customer Engagement',
|
||||||
|
kind: undefined,
|
||||||
|
blocks: [
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Omnichannel contact center design allows customer interactions from voice and supported digital channels to be managed through a coordinated service model rather than through disconnected tools.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Depending on the selected platform and licensing, channels may include:',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'ul',
|
||||||
|
items: [
|
||||||
|
'Voice.',
|
||||||
|
'Web chat.',
|
||||||
|
'SMS / messaging.',
|
||||||
|
'Email.',
|
||||||
|
'Social or messaging applications.',
|
||||||
|
'Video or elevated-interaction workflows.',
|
||||||
|
'Self-service / virtual-agent interactions.',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
id: 'contact-center-routing',
|
||||||
|
title: 'Contact Center Routing Should Match the Customer Journey',
|
||||||
|
kind: undefined,
|
||||||
|
blocks: [
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Routing is one of the most important parts of a contact center design.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'The objective is not simply to place callers in a queue. A good design considers:',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'ul',
|
||||||
|
items: [
|
||||||
|
'Why the customer is contacting the organization.',
|
||||||
|
'Which team can resolve the request.',
|
||||||
|
'Agent skills.',
|
||||||
|
'Language requirements.',
|
||||||
|
'Customer or account context.',
|
||||||
|
'Business hours.',
|
||||||
|
'Priority customers or interaction types.',
|
||||||
|
'Overflow rules.',
|
||||||
|
'Escalation paths.',
|
||||||
|
'Callback options.',
|
||||||
|
'Self-service opportunities.',
|
||||||
|
'What happens when no agent is available.',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Queue North can document and build routing logic around the actual operating model rather than forcing the organization into a generic queue structure.',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
id: 'contact-center-ai',
|
||||||
|
title: 'How Can AI Be Used in a Contact Center?',
|
||||||
|
kind: undefined,
|
||||||
|
blocks: [
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'AI can assist contact centers with tasks such as customer self-service, interaction routing, agent guidance, conversation summaries, analytics, quality review, sentiment analysis, knowledge assistance, and supervisor insights. The appropriate use depends on the platform, data, workflow, compliance requirements, and the business problem being solved.',
|
||||||
|
},
|
||||||
|
{ type: 'p', text: 'Queue North principle:' },
|
||||||
|
{
|
||||||
|
type: 'callout',
|
||||||
|
text: 'Use AI where it removes friction or improves decisions, not merely because the platform includes an AI feature.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Availability varies by platform, edition, licensing, region, and release status.',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
id: 'contact-center-reporting',
|
||||||
|
title: 'Contact Center Reporting Should Answer Operational Questions',
|
||||||
|
kind: undefined,
|
||||||
|
blocks: [
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'A contact center produces large amounts of interaction data, but dashboards are useful only when the business knows what it needs to measure.',
|
||||||
|
},
|
||||||
|
{ type: 'p', text: 'Reporting requirements may include:' },
|
||||||
|
{
|
||||||
|
type: 'ul',
|
||||||
|
items: [
|
||||||
|
'Interaction volume.',
|
||||||
|
'Service level.',
|
||||||
|
'Average speed of answer.',
|
||||||
|
'Abandonment.',
|
||||||
|
'Handle time.',
|
||||||
|
'Queue performance.',
|
||||||
|
'Agent availability.',
|
||||||
|
'Transfer behavior.',
|
||||||
|
'Channel usage.',
|
||||||
|
'Customer sentiment.',
|
||||||
|
'Quality-management results.',
|
||||||
|
'First-contact resolution where measurable.',
|
||||||
|
'Contact reasons / topics.',
|
||||||
|
'Callback performance.',
|
||||||
|
'Outbound campaign performance.',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Queue North can help define the operational questions first and then configure reporting around the metrics that matter.',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
id: 'crm-integration',
|
||||||
|
title: 'Connect the Contact Center to the Systems Agents Already Use',
|
||||||
|
kind: undefined,
|
||||||
|
blocks: [
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'A contact center becomes more useful when agents can access relevant customer information and update business workflows without moving between disconnected applications.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Depending on the platform and customer requirements, Queue North can help evaluate or build integrations involving:',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'ul',
|
||||||
|
items: [
|
||||||
|
'CRM systems.',
|
||||||
|
'Help-desk / ticketing systems.',
|
||||||
|
'Customer records.',
|
||||||
|
'Screen pops.',
|
||||||
|
'Click-to-dial workflows.',
|
||||||
|
'Interaction logging.',
|
||||||
|
'Case or ticket creation.',
|
||||||
|
'Custom API workflows.',
|
||||||
|
'Queue North custom CRM integration applications, including an application that can identify missed calls associated with open opportunities or leads in the CRM.',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
id: 'contact-center-migration',
|
||||||
|
title: 'What Should Be Reviewed Before a Contact Center Migration?',
|
||||||
|
kind: undefined,
|
||||||
|
blocks: [
|
||||||
|
{ type: 'p', text: 'Before replacing an existing contact center, review:' },
|
||||||
|
{
|
||||||
|
type: 'ul',
|
||||||
|
items: [
|
||||||
|
'Current phone numbers and carrier dependencies.',
|
||||||
|
'Queues and routing logic.',
|
||||||
|
'Agent and supervisor counts.',
|
||||||
|
'Existing channels.',
|
||||||
|
'IVR / self-service flows.',
|
||||||
|
'Recording and retention requirements.',
|
||||||
|
'CRM / help-desk integrations.',
|
||||||
|
'Reports and historical data requirements.',
|
||||||
|
'Workforce and quality workflows.',
|
||||||
|
'Security and compliance requirements.',
|
||||||
|
'Network and endpoint readiness.',
|
||||||
|
'Business-continuity requirements.',
|
||||||
|
'Cutover constraints.',
|
||||||
|
'Training requirements.',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'A migration plan should distinguish between functionality that must be replicated, functionality that should be redesigned, and legacy processes that should not be carried forward simply because they exist today.',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
id: 'when-to-review-your-contact-center',
|
||||||
|
title: 'When Should You Review Your Contact Center?',
|
||||||
|
kind: undefined,
|
||||||
|
blocks: [
|
||||||
|
{ type: 'p', text: 'A review may be worthwhile when:' },
|
||||||
|
{
|
||||||
|
type: 'ul',
|
||||||
|
items: [
|
||||||
|
'Customers wait too long or interaction abandonment is increasing.',
|
||||||
|
'Routing rules have become difficult to manage.',
|
||||||
|
'Supervisors cannot easily see what is happening in real time.',
|
||||||
|
'Reporting does not answer basic operational questions.',
|
||||||
|
'Agents work across too many disconnected applications.',
|
||||||
|
'The organization wants digital channels in addition to voice.',
|
||||||
|
'Remote or distributed agents are difficult to support.',
|
||||||
|
'Existing CRM integration is weak or manual.',
|
||||||
|
'Quality-management processes are inconsistent.',
|
||||||
|
'AI capabilities are being considered without a clear use case.',
|
||||||
|
'The current contract is approaching renewal.',
|
||||||
|
'The organization is consolidating locations, departments, or platforms.',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
id: 'why-queue-north',
|
||||||
|
title: 'Why Queue North Technologies?',
|
||||||
|
kind: 'list',
|
||||||
|
blocks: [
|
||||||
|
{
|
||||||
|
type: 'ul',
|
||||||
|
items: [
|
||||||
|
'8x8 and Cisco contact-center expertise.',
|
||||||
|
'Contact-center discovery and implementation experience.',
|
||||||
|
'Call-flow and routing design.',
|
||||||
|
'UCaaS and CCaaS knowledge in the same organization.',
|
||||||
|
'Custom CRM integration applications.',
|
||||||
|
'Network and infrastructure knowledge beyond the contact-center platform.',
|
||||||
|
'Migration and cutover planning.',
|
||||||
|
'Ongoing managed-support options.',
|
||||||
|
'Direct access to technical resources.',
|
||||||
|
'Veteran-owned and operated.',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
id: 'faq',
|
||||||
|
title: 'Frequently Asked Questions',
|
||||||
|
kind: 'faq',
|
||||||
|
blocks: [
|
||||||
|
{ type: 'h3', text: 'What is CCaaS?' },
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'CCaaS, or Contact Center as a Service, is a cloud-delivered contact center platform used to manage customer interactions, routing, agents, channels, reporting, and related customer-experience workflows.',
|
||||||
|
},
|
||||||
|
{ type: 'h3', text: 'What is the difference between a call center and a contact center?' },
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'A call center is primarily focused on telephone calls. A contact center may manage voice plus digital channels, advanced routing, agent and supervisor tools, analytics, integrations, and other customer-engagement workflows.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'h3',
|
||||||
|
text: 'When does a business need a contact center instead of a normal phone queue?',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'A contact center becomes more useful when the organization needs advanced routing, multiple channels, detailed analytics, agent and supervisor tools, CRM integration, outbound engagement, quality management, or more control over the customer-service operation.',
|
||||||
|
},
|
||||||
|
{ type: 'h3', text: 'What should a contact center implementation include?' },
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'A project may include discovery, routing design, queue and agent planning, channel configuration, integrations, reporting, platform configuration, testing, migration, training, and post-deployment support.',
|
||||||
|
},
|
||||||
|
{ type: 'h3', text: 'Can Queue North implement 8x8 Contact Center?' },
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Yes. Queue North is an 8x8 Certified Partner and can assist with 8x8 Contact Center planning, implementation, routing, configuration, migration, support, and optimization.',
|
||||||
|
},
|
||||||
|
{ type: 'h3', text: 'Does Queue North support Cisco Webex Contact Center?' },
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: "Yes. Queue North supports Cisco communications environments and can help evaluate and implement Cisco Webex Contact Center where it fits the customer's requirements.",
|
||||||
|
},
|
||||||
|
{ type: 'h3', text: 'Can a contact center integrate with a CRM?' },
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Often, yes. The exact integration depends on the contact-center platform, CRM, available connectors/APIs, licensing, and the workflow the business needs.',
|
||||||
|
},
|
||||||
|
{ type: 'h3', text: 'Can AI be added to an existing contact center?' },
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Potentially. Modern contact-center platforms provide AI capabilities for areas such as self-service, routing, agent assistance, summaries, analytics, and quality workflows. Availability and suitability depend on the platform and business requirements.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'h3',
|
||||||
|
text: 'Can Queue North help improve an existing contact center without replacing it?',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Potentially, yes. Queue North can review routing, configuration, reporting, integrations, support, and operational issues before recommending whether a platform replacement is actually justified.',
|
||||||
|
},
|
||||||
|
{ type: 'h3', text: 'Does Queue North provide support after implementation?' },
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Yes. Queue North offers three tiers of ongoing managed support in addition to implementation and migration services.',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
|
||||||
|
related: [
|
||||||
|
{ to: '/services/unified-communications', label: 'business phone and UCaaS solutions' },
|
||||||
|
{ to: '/services/managed-support', label: 'ongoing communications and contact-center support' },
|
||||||
|
{ to: '/services/local-networking', label: 'business network design and support' },
|
||||||
|
{ to: '/services/wireless-access', label: 'business Wi-Fi' },
|
||||||
|
{ to: '/services/consulting-training', label: 'communications consulting and training' },
|
||||||
|
{ to: '/contact', label: 'request a contact center review' },
|
||||||
|
],
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,363 @@
|
||||||
|
// Unified Communications service page content.
|
||||||
|
// Source: owner-approved Unified Communications SEO + AI Search change sheet,
|
||||||
|
// approved 2026-08-28. Customer-facing copy only; website-manager directions,
|
||||||
|
// verification steps and internal-only blocks are excluded.
|
||||||
|
// Leaf module: no imports, no JSX.
|
||||||
|
//
|
||||||
|
// ol item contract, shared by every generated content module: an 'ol' block's items
|
||||||
|
// are EITHER plain strings (a simple sequence) OR objects of the shape
|
||||||
|
// { text, detail } (a step title plus its explanation). Both shapes are valid, and a
|
||||||
|
// block never mixes them. A renderer must normalise before rendering: treat a string
|
||||||
|
// item as { text: item, detail: undefined } and emit detail only when it is present.
|
||||||
|
// This module's implementation sequence uses plain strings because the approved sheet
|
||||||
|
// gives its steps no explanation; the peer module content/contact-center.js uses
|
||||||
|
// { text, detail } because its sheet does.
|
||||||
|
|
||||||
|
export const page = {
|
||||||
|
seo: {
|
||||||
|
title: 'Business Phone & UCaaS Solutions | Queue North',
|
||||||
|
description:
|
||||||
|
'Modern business phone and UCaaS solutions from Queue North Technologies, including 8x8 and Cisco implementation, migration, number porting, deployment, and support.',
|
||||||
|
},
|
||||||
|
|
||||||
|
hero: {
|
||||||
|
h1: 'Business Phone & Unified Communications Solutions',
|
||||||
|
subheading:
|
||||||
|
'Cloud phone, messaging, meetings, and collaboration designed around how your business actually works.',
|
||||||
|
intro: [
|
||||||
|
'Queue North Technologies helps businesses replace fragmented or outdated phone systems with cloud communications designed around their users, locations, workflows, and support requirements. We design, implement, migrate, and support unified communications environments using platforms including 8x8 and Cisco Webex.',
|
||||||
|
],
|
||||||
|
primaryCta: { label: 'Request a Communications Review', to: '/contact#contact-form' },
|
||||||
|
secondaryCta: { label: 'Talk With an Engineer', to: '/contact#contact-form' },
|
||||||
|
},
|
||||||
|
|
||||||
|
sections: [
|
||||||
|
{
|
||||||
|
id: 'business-phone-systems-built-around-the-business',
|
||||||
|
title: 'Business Phone Systems Built Around the Business',
|
||||||
|
kind: undefined,
|
||||||
|
blocks: [
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'A modern business phone system should do more than make and receive calls. It should support how customers reach the organization, how calls move between people and locations, how employees work remotely or on site, and how the system will be supported after deployment.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Queue North designs unified communications environments that can combine:',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'ul',
|
||||||
|
items: [
|
||||||
|
'Business voice.',
|
||||||
|
'Desktop and mobile calling.',
|
||||||
|
'Messaging and business SMS.',
|
||||||
|
'Video meetings and collaboration.',
|
||||||
|
'Auto attendants.',
|
||||||
|
'Ring groups and call queues.',
|
||||||
|
'Multi-site communications.',
|
||||||
|
'Number porting and DID planning.',
|
||||||
|
'Microsoft Teams voice integration where appropriate.',
|
||||||
|
'User and administrator planning.',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
id: 'ucaas-8x8-implementation',
|
||||||
|
title: '8x8 UCaaS Implementation and Support',
|
||||||
|
kind: undefined,
|
||||||
|
blocks: [
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'An 8x8 implementation should include more than licensing and user creation. A successful deployment requires planning for sites, users, phone numbers, dial plans, routing, auto attendants, queues, endpoints, network readiness, migration, testing, and post-cutover support.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Queue North can assist with:',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'ul',
|
||||||
|
items: [
|
||||||
|
'8x8 Work implementation.',
|
||||||
|
'Existing-system migration.',
|
||||||
|
'User and site configuration.',
|
||||||
|
'Number claiming and number porting.',
|
||||||
|
'Auto attendant and call-flow configuration.',
|
||||||
|
'Ring groups and call queues.',
|
||||||
|
'Device and endpoint planning.',
|
||||||
|
'Network-readiness review.',
|
||||||
|
'Administrator guidance.',
|
||||||
|
'Ongoing 8x8 support.',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'image',
|
||||||
|
src: null,
|
||||||
|
alt: '8x8 Work business communications application',
|
||||||
|
caption: '8x8 Work',
|
||||||
|
width: 1600,
|
||||||
|
height: 900,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
id: 'cisco-webex-communications-options',
|
||||||
|
title: 'Cisco Webex Communications Options',
|
||||||
|
kind: undefined,
|
||||||
|
blocks: [
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Cisco Webex can provide calling, messaging, meetings, and collaboration in a common application experience. The correct design depends on the customer\'s existing Cisco environment, cloud strategy, user model, integrations, support requirements, and migration plan.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Queue North also has experience with Cisco Unified Communications Manager environments and can help evaluate whether a cloud, on-premises, or transitional approach is appropriate for the business.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'image',
|
||||||
|
src: null,
|
||||||
|
alt: 'Cisco Webex communications application',
|
||||||
|
caption: 'Cisco Webex',
|
||||||
|
width: 1600,
|
||||||
|
height: 900,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
id: 'phone-system-migration-review',
|
||||||
|
title: 'What Should Be Reviewed Before a Phone-System Migration?',
|
||||||
|
kind: undefined,
|
||||||
|
blocks: [
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Before migrating a business phone system, review the current users, locations, phone numbers, call flows, carrier dependencies, network readiness, emergency-calling requirements, integrations, devices, cutover plan, and support ownership. Problems in any of these areas can cause avoidable disruption even when the new platform itself is working correctly.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'h3',
|
||||||
|
text: 'Queue North implementation sequence',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'ol',
|
||||||
|
items: [
|
||||||
|
'Current-state discovery.',
|
||||||
|
'User and location inventory.',
|
||||||
|
'Phone-number and porting review.',
|
||||||
|
'Call-flow and routing design.',
|
||||||
|
'Network-readiness review.',
|
||||||
|
'Platform configuration.',
|
||||||
|
'Testing and validation.',
|
||||||
|
'Number-port / cutover planning.',
|
||||||
|
'User and administrator training.',
|
||||||
|
'Post-cutover support.',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
id: 'keeping-existing-phone-numbers',
|
||||||
|
title: 'Can Existing Business Phone Numbers Be Kept?',
|
||||||
|
kind: undefined,
|
||||||
|
blocks: [
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'In many migrations, existing business telephone numbers can be ported to the new service. Portability depends on the current carrier, number eligibility, account information, service records, and other carrier requirements.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Queue North can include number inventory, portability review, documentation, port scheduling, and cutover planning as part of an approved migration.',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
id: 'multiple-locations-and-hybrid-teams',
|
||||||
|
title: 'Unified Communications for Multiple Locations and Hybrid Teams',
|
||||||
|
kind: undefined,
|
||||||
|
blocks: [
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Queue North can design communications environments for:',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'ul',
|
||||||
|
items: [
|
||||||
|
'Multiple offices.',
|
||||||
|
'Remote employees.',
|
||||||
|
'Hybrid teams.',
|
||||||
|
'Centralized reception.',
|
||||||
|
'Shared call handling.',
|
||||||
|
'Location-specific business hours.',
|
||||||
|
'Department call queues.',
|
||||||
|
'Mobile and desktop users.',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'The objective is consistent communications without forcing every location to operate as an isolated phone system.',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
id: 'network-readiness',
|
||||||
|
title: 'A Cloud Phone System Still Depends on the Network',
|
||||||
|
kind: undefined,
|
||||||
|
blocks: [
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: [
|
||||||
|
'A UCaaS platform can only perform as well as the network path supporting it. Before a major migration, the business should review internet connectivity, ',
|
||||||
|
{ to: '/services/local-networking', text: 'LAN design' },
|
||||||
|
', ',
|
||||||
|
{ to: '/services/wireless-access', text: 'Wi-Fi' },
|
||||||
|
' where voice is used wirelessly, quality of service, firewall requirements, resiliency, and any site-specific dependencies that could affect call quality or availability.',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
id: 'when-to-review-your-phone-system',
|
||||||
|
title: 'When Should You Review Your Current Phone System?',
|
||||||
|
kind: undefined,
|
||||||
|
blocks: [
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'A review may be worthwhile when:',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'ul',
|
||||||
|
items: [
|
||||||
|
'A contract is approaching renewal.',
|
||||||
|
'Employees rely on disconnected communications tools.',
|
||||||
|
'Calls are frequently transferred incorrectly.',
|
||||||
|
'Customers report difficulty reaching the right person.',
|
||||||
|
'Missed-call or voicemail complaints are recurring.',
|
||||||
|
'Adding users or locations is unnecessarily difficult.',
|
||||||
|
'Support ownership is unclear.',
|
||||||
|
'The organization is paying for unused licenses or features.',
|
||||||
|
'The current system does not integrate well with other business applications.',
|
||||||
|
'A move, acquisition, new location, or major staffing change is approaching.',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
id: 'after-go-live',
|
||||||
|
title: 'What Happens After the New Phone System Goes Live?',
|
||||||
|
kind: undefined,
|
||||||
|
blocks: [
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'A phone-system project should not end at cutover.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Post-deployment work may include:',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'ul',
|
||||||
|
items: [
|
||||||
|
'User issues.',
|
||||||
|
'Routing corrections.',
|
||||||
|
'Number and caller-ID validation.',
|
||||||
|
'Auto-attendant changes.',
|
||||||
|
'Device problems.',
|
||||||
|
'Administrator questions.',
|
||||||
|
'Adoption and training.',
|
||||||
|
'Platform changes as the business evolves.',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Queue North offers ongoing support options so the customer has a defined path for operational help after implementation.',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
id: 'why-queue-north-technologies',
|
||||||
|
title: 'Why Queue North Technologies?',
|
||||||
|
kind: 'list',
|
||||||
|
blocks: [
|
||||||
|
{
|
||||||
|
type: 'ul',
|
||||||
|
items: [
|
||||||
|
'8x8 and Cisco expertise.',
|
||||||
|
'Custom CRM Integration Applications',
|
||||||
|
'Direct access to technical resources.',
|
||||||
|
'Migration and implementation experience.',
|
||||||
|
'Vendor-neutral recommendations.',
|
||||||
|
'Network and infrastructure knowledge beyond the phone platform.',
|
||||||
|
'Ongoing managed-support options.',
|
||||||
|
'Veteran-owned and operated.',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
id: 'faq',
|
||||||
|
title: 'Frequently Asked Questions',
|
||||||
|
kind: 'faq',
|
||||||
|
blocks: [
|
||||||
|
{ type: 'h3', text: 'What is UCaaS?' },
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'UCaaS, or Unified Communications as a Service, combines business calling, messaging, meetings, and collaboration through a cloud-delivered platform.',
|
||||||
|
},
|
||||||
|
|
||||||
|
{ type: 'h3', text: 'What should an 8x8 implementation include?' },
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'An implementation may include discovery, user and site planning, number inventory and porting, call-flow design, platform configuration, device planning, network readiness, testing, cutover, training, and post-deployment support.',
|
||||||
|
},
|
||||||
|
|
||||||
|
{ type: 'h3', text: 'Can Queue North migrate existing business phone numbers?' },
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Queue North can plan and coordinate number porting when the numbers are eligible. Portability depends on the current carrier and account details.',
|
||||||
|
},
|
||||||
|
|
||||||
|
{ type: 'h3', text: 'Do all existing phones have to be replaced?' },
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Not necessarily. Device requirements depend on the selected platform, supported hardware, user needs, and the condition of the existing environment.',
|
||||||
|
},
|
||||||
|
|
||||||
|
{ type: 'h3', text: 'Can 8x8 or Webex support multiple offices and remote users?' },
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Yes, both platforms can support distributed users and locations when the deployment is designed around the organization\'s requirements.',
|
||||||
|
},
|
||||||
|
|
||||||
|
{ type: 'h3', text: 'Can a business phone system integrate with Microsoft Teams?' },
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'In many environments, yes. The correct architecture depends on the existing Microsoft and communications environment and should be reviewed before implementation.',
|
||||||
|
},
|
||||||
|
|
||||||
|
{ type: 'h3', text: 'Does Queue North provide support after implementation?' },
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
text: 'Yes. Queue North offers 3 tiers of ongoing support in addition to implementation and migration services.',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
|
||||||
|
related: [
|
||||||
|
{ to: '/services/contact-center', label: 'contact center and CCaaS solutions' },
|
||||||
|
{ to: '/services/managed-support', label: 'ongoing communications support' },
|
||||||
|
{ to: '/services/local-networking', label: 'business network design and support' },
|
||||||
|
{ to: '/services/wireless-access', label: 'business Wi-Fi' },
|
||||||
|
{ to: '/services/infrastructure-cabling', label: 'structured cabling and infrastructure' },
|
||||||
|
{ to: '/services/consulting-training', label: 'communications consulting and training' },
|
||||||
|
{ to: '/contact', label: 'request a communications review' },
|
||||||
|
],
|
||||||
|
}
|
||||||
|
|
@ -1,23 +1,17 @@
|
||||||
|
// Services, as data. Two of them carry owner-approved long-form copy in
|
||||||
|
// src/data/serviceContent/, which the service page renders in place of its short
|
||||||
|
// layout; the rest keep the short one. See docs/architecture/README.md.
|
||||||
|
import { page as unifiedCommunicationsPage } from './serviceContent/unified-communications.js'
|
||||||
|
import { page as contactCenterPage } from './serviceContent/contact-center.js'
|
||||||
|
|
||||||
export const services = [
|
export const services = [
|
||||||
{
|
{
|
||||||
id: 'unified-communications',
|
id: 'unified-communications',
|
||||||
name: 'Unified Communications',
|
name: 'Unified Communications',
|
||||||
shortDesc: 'Modernize your business communications with seamless integration',
|
shortDesc: 'Modernize your business communications with seamless integration',
|
||||||
homeDesc: 'Stop juggling separate phone, video, and messaging systems. One platform, one bill, zero headaches.',
|
homeDesc: 'Stop juggling separate phone, video, and messaging systems. One platform, one bill, zero headaches.',
|
||||||
fullDesc: `Voice, meetings, and messaging that keep your people connected without adding operational friction.
|
|
||||||
|
|
||||||
As an 8x8 Certified Partner, we have deep expertise in implementing and supporting 8x8 UCaaS solutions, ensuring our customers get the most value from their investment. Our 8x8 expertise includes VoIP implementation, cloud PBX migration, unified communications deployments, and ongoing system support.
|
|
||||||
|
|
||||||
Our solutions include Cisco Webex, Cisco Unified Communications Manager, and 8x8 UCaaS platforms.`,
|
|
||||||
icon: 'message-circle',
|
icon: 'message-circle',
|
||||||
benefits: [
|
page: unifiedCommunicationsPage,
|
||||||
'Seamless voice, video, and messaging integration',
|
|
||||||
'Mobile and desktop app support',
|
|
||||||
'Persistent chat and file sharing',
|
|
||||||
'Presence indicators for real-time visibility',
|
|
||||||
'8x8 UCaaS implementation and migration',
|
|
||||||
'VoIP and cloud PBX setup',
|
|
||||||
],
|
|
||||||
idealFor: [
|
idealFor: [
|
||||||
'Remote and hybrid teams',
|
'Remote and hybrid teams',
|
||||||
'Distributed workforces',
|
'Distributed workforces',
|
||||||
|
|
@ -30,21 +24,9 @@ Our solutions include Cisco Webex, Cisco Unified Communications Manager, and 8x8
|
||||||
name: 'Contact Center',
|
name: 'Contact Center',
|
||||||
shortDesc: 'Deliver exceptional customer experiences with modern contact center solutions',
|
shortDesc: 'Deliver exceptional customer experiences with modern contact center solutions',
|
||||||
homeDesc: 'Your customers reach a real person faster. Lower wait times, happier callers, better reviews.',
|
homeDesc: 'Your customers reach a real person faster. Lower wait times, happier callers, better reviews.',
|
||||||
fullDesc: `Customer engagement built with routing, reporting, and workflow control that support real operational performance.
|
|
||||||
|
|
||||||
As an 8x8 Certified Partner, we deliver enterprise-grade contact center solutions with 99.999% uptime reliability. Our 8x8 expertise includes contact center setup, omnichannel routing, AI-powered agent assistance, and real-time analytics dashboards.
|
|
||||||
|
|
||||||
We support Cisco Webex Contact Center, 8x8 Contact Center, and other leading platforms.`,
|
|
||||||
icon: 'users',
|
icon: 'users',
|
||||||
image: '/assets/modern-call-center.webp',
|
image: '/assets/modern-call-center.webp',
|
||||||
benefits: [
|
page: contactCenterPage,
|
||||||
'Omnichannel customer interactions',
|
|
||||||
'Real-time analytics and reporting',
|
|
||||||
'AI-powered agent assistance',
|
|
||||||
'Scalable cloud infrastructure',
|
|
||||||
'8x8 Contact Center setup and optimization',
|
|
||||||
'99.999% uptime reliability',
|
|
||||||
],
|
|
||||||
idealFor: [
|
idealFor: [
|
||||||
'Customer service teams',
|
'Customer service teams',
|
||||||
'B2C businesses with high volume',
|
'B2C businesses with high volume',
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@ import { services } from '@/data/services'
|
||||||
import { Link } from 'react-router-dom'
|
import { Link } from 'react-router-dom'
|
||||||
import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/Card'
|
import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/Card'
|
||||||
import RelatedLinks from '@/components/content/RelatedLinks'
|
import RelatedLinks from '@/components/content/RelatedLinks'
|
||||||
|
import { ContentSection } from '@/components/content/ContentBlocks'
|
||||||
import { ArrowLeft, ArrowRight, CheckCircle2, Info, Zap } from 'lucide-react'
|
import { ArrowLeft, ArrowRight, CheckCircle2, Info, Zap } from 'lucide-react'
|
||||||
|
|
||||||
const serviceImageAlt = {
|
const serviceImageAlt = {
|
||||||
|
|
@ -39,6 +40,10 @@ const ServiceDetail = () => {
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Owner-approved long-form copy, when this service has any. A service without
|
||||||
|
// it keeps the short layout, so the two shapes coexist page by page.
|
||||||
|
const page = service.page
|
||||||
|
|
||||||
// A service with owner-approved copy carries its own title and description in
|
// A service with owner-approved copy carries its own title and description in
|
||||||
// `page.seo`, and both are emitted verbatim. Everything else composes.
|
// `page.seo`, and both are emitted verbatim. Everything else composes.
|
||||||
const serviceTitle = service.page?.seo?.title ?? `${service.name} | Queue North`
|
const serviceTitle = service.page?.seo?.title ?? `${service.name} | Queue North`
|
||||||
|
|
@ -96,13 +101,20 @@ const ServiceDetail = () => {
|
||||||
<ArrowLeft className="h-4 w-4" aria-hidden="true" />
|
<ArrowLeft className="h-4 w-4" aria-hidden="true" />
|
||||||
Services
|
Services
|
||||||
</Link>
|
</Link>
|
||||||
<h1 className="text-4xl md:text-5xl font-bold mb-6">{service.name}</h1>
|
<h1 className="text-4xl md:text-5xl font-bold mb-6">{page?.hero.h1 ?? service.name}</h1>
|
||||||
<p className="text-xl text-white/75 max-w-3xl leading-relaxed">{service.shortDesc}</p>
|
<p className="text-xl text-white/75 max-w-3xl leading-relaxed">
|
||||||
<div className="mt-8">
|
{page?.hero.subheading ?? service.shortDesc}
|
||||||
<Link to="/contact#contact-form" className="inline-flex h-11 items-center justify-center gap-2 rounded-md bg-white px-5 text-sm font-semibold text-primary-navy hover:bg-section-alt transition-colors">
|
</p>
|
||||||
Request This Service
|
<div className="mt-8 flex flex-wrap gap-3">
|
||||||
|
<Link to={page?.hero.primaryCta.to ?? '/contact#contact-form'} className="inline-flex h-11 items-center justify-center gap-2 rounded-md bg-white px-5 text-sm font-semibold text-primary-navy hover:bg-section-alt transition-colors">
|
||||||
|
{page?.hero.primaryCta.label ?? 'Request This Service'}
|
||||||
<ArrowRight className="h-4 w-4" aria-hidden="true" />
|
<ArrowRight className="h-4 w-4" aria-hidden="true" />
|
||||||
</Link>
|
</Link>
|
||||||
|
{page?.hero.secondaryCta ? (
|
||||||
|
<Link to={page.hero.secondaryCta.to} className="inline-flex h-11 items-center justify-center gap-2 rounded-md border border-white/40 px-5 text-sm font-semibold text-white hover:bg-white/10 transition-colors">
|
||||||
|
{page.hero.secondaryCta.label}
|
||||||
|
</Link>
|
||||||
|
) : null}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -115,6 +127,25 @@ const ServiceDetail = () => {
|
||||||
<div className="grid grid-cols-1 lg:grid-cols-3 gap-12">
|
<div className="grid grid-cols-1 lg:grid-cols-3 gap-12">
|
||||||
{/* Left Column - Main Content */}
|
{/* Left Column - Main Content */}
|
||||||
<div className="lg:col-span-2">
|
<div className="lg:col-span-2">
|
||||||
|
{page ? (
|
||||||
|
<>
|
||||||
|
{/* The approved hero copy opens the page, under the hero band
|
||||||
|
rather than inside it, so the CTAs stay above the fold on a
|
||||||
|
phone. */}
|
||||||
|
{page.hero.intro.map((paragraph, index) => (
|
||||||
|
<p key={index} className="text-lg text-soft-text leading-relaxed mt-4 first:mt-0">
|
||||||
|
{paragraph}
|
||||||
|
</p>
|
||||||
|
))}
|
||||||
|
|
||||||
|
{page.sections.map((section) => (
|
||||||
|
<ContentSection key={section.id} section={section} />
|
||||||
|
))}
|
||||||
|
|
||||||
|
<RelatedLinks links={page.related} className="mt-12" />
|
||||||
|
</>
|
||||||
|
) : (
|
||||||
|
<>
|
||||||
<div className="mb-12">
|
<div className="mb-12">
|
||||||
<h2 className="text-2xl font-bold text-primary-navy mb-4">What This Solves</h2>
|
<h2 className="text-2xl font-bold text-primary-navy mb-4">What This Solves</h2>
|
||||||
<p className="text-lg text-soft-text mb-6 leading-relaxed">
|
<p className="text-lg text-soft-text mb-6 leading-relaxed">
|
||||||
|
|
@ -149,6 +180,8 @@ const ServiceDetail = () => {
|
||||||
{/* Renders nothing for a service with no related links, so the
|
{/* Renders nothing for a service with no related links, so the
|
||||||
pages that have none are unchanged. */}
|
pages that have none are unchanged. */}
|
||||||
<RelatedLinks links={service.related} className="mb-12" />
|
<RelatedLinks links={service.related} className="mb-12" />
|
||||||
|
</>
|
||||||
|
)}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{/* Right Column - Sidebar */}
|
{/* Right Column - Sidebar */}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue