PageSourceSearch

https://vivu.ai/assets/SolutionsSupport-Bxfzb0HG.js

js vivu.ai collected 2026-10-05 13:14:00 UTC 16,613 bytes, 1 lines download raw bytes

1import{j as e,A as o,L as h}from"./index-CyUdN20Q.js";import{F as m}from"./FurtherReading-2KcztaNE.js";import{R as a}from"./primitives-CtExI0_f.js";import{U as l,D as k}from"./scheduling-Bm_jhzXJ.js";import{N as t,F as d,i as c}from"./parts-KlMMQAXf.js";const j=[{q:"Where does the video customers send us live?",a:"Your support system keeps the originals. For search, the clips are uploaded to a Vivu project and indexed once, and each result points back to the clip it came from."},{q:"Does Vivu diagnose the fault or decide the outcome?",a:"No. Vivu returns candidate moments for a query, with their timecodes and the clip they came from. Diagnosis, refunds, and escalation stay with your team."},{q:"What if a customer video has no usable audio?",a:"It is still searchable. Vivu indexes what is on screen as well as what is said — objects, actions, and the text of an error message are signals on their own."}];function n({x:s,y:r,s:x=1}){return e.jsxs("g",{transform:`translate(${s} ${r}) scale(${x})`,fill:"none",stroke:"var(--mk-sketch)",children:[e.jsx("rect",{x:0,y:0,width:30,height:40,rx:4}),e.jsx("line",{x1:10,y1:5,x2:20,y2:5}),e.jsx("path",{d:"M7 24 l7 -9 l6 7 l4 -4"})]})}function v(){return e.jsxs("svg",{className:"mk-sketch",viewBox:"0 0 460 420",width:"100%",role:"img","aria-label":"Sketch of a plain-language query returning moments from customer-sent videos, each with a case identifier and timecode",children:[e.jsx("rect",{x:30,y:18,width:400,height:52,rx:6,fill:"var(--mk-card)",stroke:"var(--mk-sketch)"}),e.jsx("circle",{cx:58,cy:44,r:9,fill:"none",stroke:"var(--mk-sketch)"}),e.jsx("line",{x1:64,y1:51,x2:72,y2:59,stroke:"var(--mk-sketch)"}),e.jsx("text",{x:86,y:49,fontSize:13,fill:"var(--ink)",children:'"hinge cracked at the lid"'}),e.jsx("line",{x1:322,y1:34,x2:322,y2:54,stroke:"var(--accent-1)"}),e.jsx("line",{x1:230,y1:70,x2:230,y2:106,stroke:"var(--mk-sketch)",strokeDasharray:"4 4"}),e.jsx("path",{d:"M225 100 L230 110 L235 100",fill:"none",stroke:"var(--mk-sketch)"}),e.jsx(t,{x:244,y:96,children:"3 CASES · SAME FAILURE"}),e.jsxs("g",{children:[e.jsx("rect",{x:52,y:118,width:356,height:92,fill:"var(--mk-card)",stroke:"var(--mk-sketch)"}),e.jsx("rect",{x:60,y:126,width:112,height:76,fill:"var(--mk-thumb)",stroke:"var(--mk-sketch)"}),e.jsx(n,{x:98,y:144}),e.jsx("text",{x:188,y:144,fontSize:12,fill:"var(--ink)",children:"case_88214"}),e.jsx(t,{x:188,y:162,children:'SPEECH: "it snapped right here"'}),e.jsx(t,{x:188,y:177,children:"VISUAL: hinge · crack · lid"}),e.jsx("rect",{x:318,y:183,width:80,height:21,rx:3,fill:"var(--ink)"}),e.jsx("text",{x:328,y:198,fontSize:11,fill:"var(--bg)",children:"00:00:19"}),e.jsx(d,{x:44,y:112,w:372,h:104})]}),e.jsxs("g",{opacity:.75,children:[e.jsx("rect",{x:52,y:230,width:356,height:78,fill:"var(--mk-card)",stroke:"var(--mk-sketch)"}),e.jsx("rect",{x:60,y:238,width:96,height:62,fill:"var(--mk-thumb)",stroke:"var(--mk-sketch)"}),e.jsx(n,{x:93,y:250,s:.8}),e.jsx("text",{x:172,y:256,fontSize:12,fill:"var(--ink)",children:"case_87905"}),e.jsx(t,{x:172,y:274,children:"VISUAL: hinge · crack"}),e.jsx("rect",{x:318,y:281,width:80,height:21,rx:3,fill:"none",stroke:"var(--mk-sketch)"}),e.jsx("text",{x:330,y:296,fontSize:11,fill:"var(--tsecondary)",children:"00:01:07"})]}),e.jsxs("g",{opacity:.5,children:[e.jsx("rect",{x:52,y:326,width:356,height:78,fill:"var(--mk-card)",stroke:"var(--mk-sketch)"}),e.jsx("rect",{x:60,y:334,width:96,height:62,fill:"var(--mk-thumb)",stroke:"var(--mk-sketch)"}),e.jsx(n,{x:93,y:346,s:.8}),e.jsx("text",{x:172,y:352,fontSize:12,fill:"var(--ink)",children:"case_86630"}),e.jsx(t,{x:172,y:370,children:'ON-SCREEN: "ERROR 42"'}),e.jsx("rect",{x:318,y:377,width:80,height:21,rx:3,fill:"none",stroke:"var(--mk-sketch)"}),e.jsx("text",{x:330,y:392,fontSize:11,fill:"var(--tsecondary)",children:"00:00:44"})]}),e.jsx("line",{x1:10,y1:140,x2:22,y2:140,stroke:"var(--line)"}),e.jsx("line",{x1:16,y1:134,x2:16,y2:146,stroke:"var(--line)"}),e.jsx("circle",{cx:442,cy:300,r:2,fill:"var(--line)"})]})}function y(){return e.jsxs("svg",{className:"mk-sketch",viewBox:"0 0 440 360",width:"100%",role:"img","aria-label":"Sketch of a list of case records with video attachments, the first watched once and the rest greyed out",children:[e.jsx("rect",{x:36,y:24,width:368,height:300,fill:"var(--mk-card)",stroke:"var(--mk-sketch)"}),e.jsx("line",{x1:36,y1:56,x2:404,y2:56,stroke:"var(--mk-sketch)"}),e.jsx("circle",{cx:54,cy:40,r:4,fill:"none",stroke:"var(--mk-sketch)"}),e.jsx("circle",{cx:70,cy:40,r:4,fill:"none",stroke:"var(--mk-sketch)"}),e.jsx(t,{x:296,y:45,children:"CASE RECORDS"}),e.jsxs("g",{children:[e.jsx("text",{x:58,y:92,fontSize:12,fill:"var(--ink)",children:"case_88214"}),e.jsx("rect",{x:168,y:78,width:70,height:19,rx:3,fill:"var(--mk-thumb)",stroke:"var(--mk-sketch)"}),e.jsx("path",{d:"M176 88 l6 -6 l5 5 l4 -4",fill:"none",stroke:"var(--mk-sketch)"}),e.jsx("text",{x:200,y:92,fontSize:9,fill:"var(--tsecondary)",children:"video"}),e.jsx("path",{d:"M300 88 q12 -11 24 0 q-12 11 -24 0",fill:"none",stroke:"var(--accent-1)"}),e.jsx("circle",{cx:312,cy:88,r:3,fill:"var(--accent-1)"}
1),e.jsx(t,{x:334,y:92,rust:!0,children:"×1"})]}),e.jsx("g",{opacity:.34,children:[128,164,200,236,272].map((s,r)=>e.jsxs("g",{children:[e.jsx("text",{x:58,y:s,fontSize:12,fill:"var(--ink)",children:["case_87905","case_87441","case_86630","case_86112","case_85907"][r]}),e.jsx("rect",{x:168,y:s-14,width:70,height:19,rx:3,fill:"var(--mk-thumb)",stroke:"var(--mk-sketch)"}),e.jsx("path",{d:`M176 ${s-4} l6 -6 l5 5 l4 -4`,fill:"none",stroke:"var(--mk-sketch)"}),e.jsx("text",{x:200,y:s,fontSize:9,fill:"var(--tsecondary)",children:"video"})]},s))}),e.jsx("line",{x1:58,y1:292,x2:382,y2:292,stroke:"var(--line)"}),e.jsx(t,{x:128,y:310,rust:!0,children:"WATCHED ONCE. THEN DARK."})]})}function f(){return e.jsxs("svg",{className:"mk-sketch",viewBox:"0 0 440 380",width:"100%",role:"img","aria-label":"Sketch of customer videos from separate cases flowing into one index, where the same visual failure groups into a single cluster",children:[e.jsxs("g",{fontSize:11,children:[e.jsx("rect",{x:22,y:30,width:104,height:40,fill:"var(--mk-card)",stroke:"var(--mk-sketch)"}),e.jsx("text",{x:36,y:55,fill:"var(--tsecondary)",children:"case_88214"}),e.jsx("rect",{x:22,y:94,width:104,height:40,fill:"var(--mk-card)",stroke:"var(--mk-sketch)"}),e.jsx("text",{x:36,y:119,fill:"var(--tsecondary)",children:"case_87905"}),e.jsx("rect",{x:22,y:158,width:104,height:40,fill:"var(--mk-card)",stroke:"var(--mk-sketch)"}),e.jsx("text",{x:36,y:183,fill:"var(--tsecondary)",children:"case_86630"})]}),e.jsx(t,{x:24,y:226,children:"UPLOADED AS SENT. NO TIDYING PASS."}),e.jsx("path",{d:"M126 50 q46 12 68 56",fill:"none",stroke:"var(--mk-sketch)",strokeDasharray:"4 4"}),e.jsx("path",{d:"M126 114 h68",fill:"none",stroke:"var(--mk-sketch)",strokeDasharray:"4 4"}),e.jsx("path",{d:"M126 178 q46 -12 68 -50",fill:"none",stroke:"var(--mk-sketch)",strokeDasharray:"4 4"}),e.jsx("rect",{x:198,y:82,width:100,height:68,fill:"var(--mk-card)",stroke:"var(--ink)"}),e.jsx("text",{x:214,y:108,fontSize:12,fill:"var(--ink)",children:"INDEX"}),e.jsx(t,{x:206,y:126,children:"VISUAL · SPEECH"}),e.jsx(t,{x:206,y:141,children:"ON-SCREEN TEXT"}),e.jsx("path",{d:"M298 116 h34",fill:"none",stroke:"var(--mk-sketch)",strokeDasharray:"4 4"}),e.jsx("path",{d:"M326 111 l10 5 l-10 5",fill:"none",stroke:"var(--mk-sketch)"}),e.jsx("circle",{cx:378,cy:116,r:34,fill:"none",stroke:"var(--mk-sketch)",strokeDasharray:"4 4"}),e.jsxs("g",{fill:"none",stroke:"var(--mk-sketch)",children:[e.jsx("circle",{cx:366,cy:104,r:4}),e.jsx("circle",{cx:390,cy:108,r:4}),e.jsx("circle",{cx:370,cy:126,r:4}),e.jsx("circle",{cx:388,cy:128,r:4}),e.jsx("circle",{cx:378,cy:114,r:4})]}),e.jsx(d,{x:340,y:78,w:76,h:76}),e.jsx(t,{x:294,y:176,children:"ONE FAILURE, MANY CASES"}),e.jsx("rect",{x:60,y:272,width:330,height:46,rx:6,fill:"var(--mk-card)",stroke:"var(--mk-sketch)"}),e.jsx("circle",{cx:84,cy:295,r:8,fill:"none",stroke:"var(--mk-sketch)"}),e.jsx("line",{x1:90,y1:301,x2:97,y2:308,stroke:"var(--mk-sketch)"}),e.jsx("text",{x:108,y:300,fontSize:12,fill:"var(--ink)",children:'"hinge cracked at the lid"'}),e.jsx("path",{d:"M225 318 v18",stroke:"var(--mk-sketch)",strokeDasharray:"4 4",fill:"none"}),e.jsx("path",{d:"M220 332 l5 10 l5 -10",fill:"none",stroke:"var(--mk-sketch)"}),e.jsx(t,{x:236,y:342,children:"MOMENTS, LINKED BACK TO THE CLIP"})]})}function p(){return e.jsxs("svg",{...c,children:[e.jsx("circle",{cx:9,cy:9,r:3,fill:"none",stroke:"var(--mk-sketch)"}),e.jsx("circle",{cx:9,cy:25,r:3,fill:"none",stroke:"var(--mk-sketch)"}),e.jsx("circle",{cx:17,cy:17,r:3,fill:"none",stroke:"var(--mk-sketch)"}),e.jsx("path",{d:"M23 12 a8 8 0 1 1 -0.1 0 M29 23 l3 5",stroke:"var(--accent-1)",fill:"none"})]})}function u(){return e.jsxs("svg",{...c,children:[e.jsx("path",{d:"M4 8 h14 M4 15 h14 M4 22 h14",stroke:"var(--mk-sketch)",fill:"none"}),e.jsx("rect",{x:22,y:11,width:9,height:9,fill:"none",stroke:"var(--accent-1)"}),e.jsx("path",{d:"M18 15 h4",stroke:"var(--accent-1)",fill:"none"})]})}function g(){return e.jsxs("svg",{...c,children:[e.jsx("path",{d:"M4 6 h26 v16 h-14 l-6 6 v-6 h-6 z",fill:"none",stroke:"var(--mk-sketch)"}),e.jsx("path",{d:"M11 14 h9",stroke:"var(--accent-1)",fill:"none"}),e.jsx("path",{d:"M23 11 v6",stroke:"var(--accent-1)",fill:"none"})]})}function w(){return e.jsxs("svg",{...c,children:[e.jsx("rect",{x:5,y:5,width:17,height:22,f
1ill:"none",stroke:"var(--mk-sketch)"}),e.jsx("path",{d:"M9 12 h9 M9 17 h9",stroke:"var(--mk-sketch)",fill:"none"}),e.jsx("path",{d:"M23 21 h7",stroke:"var(--accent-1)",fill:"none"})]})}function i({n:s}){return e.jsx("div",{className:"mk-rule",children:e.jsx("span",{children:s})})}const N=[{tick:"A",icon:e.jsx(p,{}),h:"The same failure across hundreds of cases, in one query",body:"Ask for a visual symptom and get back the cases whose video shows it, instead of waiting for the pattern to grow big enough to appear in what people wrote."},{tick:"B",icon:e.jsx(u,{}),h:"Visual evidence joins the analysis you already run",body:"Whatever you already do with transcripts, categories and customer segments keeps working. The video stops being the one input that sits outside all of it."},{tick:"C",icon:e.jsx(g,{}),h:"Agents and assistants can cite the moment",body:"A timecoded moment from the clip a customer sent is something a person or an assistant can point at, rather than a claim about what a video probably showed."},{tick:"D",icon:e.jsx(w,{}),h:"Evidence, not verdicts",body:"Vivu does not diagnose the fault, decide an outcome, or stand in for an agent's or an engineer's judgement. It returns candidate moments; your team reads them."}],b=[{tag:"In the case",h:"The agent watches the clip",body:"Nothing changes about how a single case gets handled today."},{tag:"After the case",h:"It is uploaded and indexed once",body:"The clip goes into a Vivu project as it is, with no tidying pass first."},{tag:"Across the month",h:"Repeat problems group by what they look like",body:"Ask for a symptom and the cases showing it come back together."},{tag:"Back to product",h:"Timecoded evidence, not a summary",body:"Product and engineering get the moment itself, with the clip it came from."}];function S(){return e.jsx("section",{className:"vz-section vz-cta-block mk-cta",children:e.jsxs("div",{className:"vz-container",children:[e.jsx("h2",{className:"vz-h2",children:"Start free, or bring us the case videos."}),e.jsx("p",{children:"Upload a few case videos on the free plan, or talk to us about the whole case archive."}),e.jsxs("div",{className:"pd-actions",style:{justifyContent:"center"},children:[e.jsx("a",{className:"vz-cta vz-cta--primary",href:o,"data-cta":"support_end",children:"Start free"}),e.jsx(h,{className:"vz-cta vz-cta--secondary",to:"/contact",children:"Contact Sales"})]}),e.jsxs("p",{className:"mk-hero__ctasub",style:{marginTop:"18px"},children:["A demo is ",k,", on your footage. Contact Sales takes three fields and hands you the calendar."]}),e.jsx(l,{style:{marginTop:"10px"}})]})})}function I(){return e.jsxs("div",{className:"vz-page mk-page",children:[e.jsx("section",{className:"vz-section mk-hero",children:e.jsxs("div",{className:"vz-container mk-grid2",children:[e.jsxs(a,{children:[e.jsx("span",{className:"vz-eyebrow",children:"Video search for support and CX teams"}),e.jsx("h1",{className:"vz-h1",children:"The customer already showed you."}),e.jsx("p",{className:"vz-lede",children:"Customers send video when the problem is easier to show than to describe. Vivu indexes those clips, so the same failure turning up across hundreds of cases becomes findable — not just watchable once."}),e.jsxs("div",{className:"mk-hero__cta",children:[e.jsxs("div",{className:"pd-actions",children:[e.jsx("a",{className:"vz-cta vz-cta--primary",href:o,"data-cta":"support_hero",children:"Start free"}),e.jsx(h,{className:"vz-cta vz-cta--secondary",to:"/contact",children:"Contact Sales"})]}),e.jsx("p",{className:"mk-hero__ctasub",children:"Start on the free plan. Demos run live on your own footage."}),e.jsx(l,{style:{marginTop:"8px"}})]})]}),e.jsx(a,{delay:120,className:"mk-grid2__fig",children:e.jsx(v,{})})]})}),e.jsx("section",{className:"vz-section",children:e.jsxs("div",{className:"vz-container",children:[e.jsx(i,{n:"01 / THE PROBLEM"}),e.jsxs("div",{className:"mk-grid2",children:[e.jsxs(a,{children:[e.jsx("h2",{className:"vz-h2 mk-h2",children:"Watched once, then dark."}),e.jsx("p",{className:"vz-prose",children:"A customer films the problem because showing it is easier than putting it into words. One agent watches the clip, resolves the case, and the file is filed against the record. It did its job — once."}),e.jsx("p",{className:"vz-prose",children:"The analysis you run afterwards reads what customers said: calls, chats, emails, surveys, reviews. It does not read what they showed. So the same crack, the same error screen, the same assembly step going wrong can repeat across hundreds of separate cases and only surface once it has grown big enough for the words to catch it."})]}),e.jsx(a,{delay:120,className:"mk-grid2__fig",children:e.jsx(y,{})})]})]})}),e.jsx("section",{className:"vz-section",children:e.jsxs("div",{className:"vz-container",children:[e.jsx(i,{n:"02 / THE FIX"}),e.jsxs("div",{className:"mk-grid2",children:[e.jsxs(a,{children:[e.jsx("h2",{className:"vz-h2 mk-h2",children:"Make the video customers send you searchable"}),e.jsx("p",{className:"vz-prose",children:"Vivu is an AI search layer for the video your customers send you. The clips are uploaded to a Vivu project and indexed once, without anyone reorganising them first."}),e.jsx("p",{className:"vz-prose",children:"It reads what was said, the text of an error on screen, and the objects and actions in the frame. Ask a plain-language question and it returns candidate moments, each with its timeco
1de and the clip it came from."})]}),e.jsx(a,{delay:120,className:"mk-grid2__fig",children:e.jsx(f,{})})]}),e.jsx("div",{className:"mk-cards",children:N.map((s,r)=>e.jsxs(a,{delay:r*70,className:"mk-card",children:[e.jsx("span",{className:"mk-card__tick","aria-hidden":"true",children:s.tick}),s.icon,e.jsx("h3",{children:s.h}),e.jsx("p",{children:s.body})]},s.tick))})]})}),e.jsx("section",{className:"vz-section",children:e.jsxs("div",{className:"vz-container",children:[e.jsx(i,{n:"03 / WHERE IT FITS"}),e.jsxs(a,{children:[e.jsx("h2",{className:"vz-h2 mk-h2",children:"Where Vivu fits in the support workflow"}),e.jsx("p",{className:"vz-prose",children:"Inside a case, nothing changes: the agent watches the clip and closes the ticket. After it, the clip is uploaded to a Vivu project, where it is indexed once and stays searchable. Across a month, repeat problems group by what they look like rather than by how they were described. And what goes back to product is the timecoded moment itself, with the clip it came from."})]}),e.jsx(a,{delay:120,children:e.jsx("ol",{className:"mk-timeline",children:b.map((s,r)=>e.jsxs("li",{className:"mk-step",children:[e.jsx("span",{className:"mk-step__dot","aria-hidden":"true",children:String(r+1).padStart(2,"0")}),e.jsx("span",{className:"mk-step__tag",children:s.tag}),e.jsx("h4",{children:s.h}),e.jsx("p",{children:s.body})]},s.tag))})})]})}),e.jsx("section",{className:"vz-section mk-faq",children:e.jsxs("div",{className:"vz-container",children:[e.jsx(i,{n:"04 / FAQ"}),e.jsx("div",{className:"mk-faq__list",children:j.map(s=>e.jsxs(a,{className:"mk-faq__item",children:[e.jsx("h3",{children:s.q}),e.jsx("p",{children:s.a})]},s.q))})]})}),e.jsx(m,{page:"solutions-support"}),e.jsx(S,{})]})}export{I as SolutionsSupport};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.