Dette er den fuldstændige dokumentation for OpsIQ. Opsætning af produktet, køre support, konfigurere AI, administrere CRM, installere widget, bygge stik, ringe til REST API, modtage webkroge, pakke markedsplads apps, og operere selv-hostede installationer.
Spor sessioner, lande, sider, spor, konverteringer og støtte hensigt i realtid.
AI svar udarbejdet
OpsIQ kan hjælpe med at skrive billetsvar, chat-svar, resuméer og kundemeddelelser.
Webhook handling klar
Tilslut godkendte platformhandlinger for at sikre udløsere med bekræftelse og revisionshistorik.
Anvendelsesområde
Denne håndbog indeholder en oversigt over de vigtigste emner i denne håndbog.
Alt OpsIQ gør, på ét sted: hvordan hver skærm virker, hvordan du forbinder dine egne systemer, og hvordan man bygger oven på det. Start hvor som helst, de sektioner følger samme rækkefølge som admin sidebar.
AnvendelsesområdeHåndbogen er organiseret omkring OpsIQ produkt, efter samme rækkefølge som admin sidebar.
Portal Studio-feltguide
Brug den dedikerede administrator og udvikler guide til Portal arkitektur, sider, komponenter, preview, Hjælp Center, identitet, SCIM, regulerede udgivelser, udvidelser, migreringer og certificering.
Hver skærm i admin: analytics, live chat, billetter, CRM, videnbase, Site Intelligence, kampagner og kunde portal. Hvad hver side gør, hvad tallene betyder, og hvad de skal gøre, når de ser forkert.
Tilslut dine systemer
Websidens widget, e-mail postkasser, indgående og udgående webkroge, og connecter bibliotek til platforme som Shopify, WooCommerce, WHMCS, Zendesk, Stripe, Slack og Gmail.
Byg din egen
Connector Builder til no- code-stik, Handlinger & Triggers hvis du helst ikke vil bruge konnektorer overhovedet, og REST API med hver handling, omfang og fejlkode.
Betjener det
Roller og tilladelser, sikkerhed, cron, diagnostik, sikkerhedskopier, og både hosted og self-hosted implementering.
Hvor skal vi begynde?
1
Hvis du kører OpsIQ dag til dag
Læs skærmsnittene i sidebjælken. Hver åbner med hvad siden er til, så du kan stoppe, så snart du har det du har brug for.
2
Hvis De anvender
Tilføj Indstillinger, Sikkerhed, Diagnostik, Cron og Produktion. Dette er de sektioner, der bestemmer om alt andet fortsætter med at virke.
3
Hvis du er ved at opbygge en integration
Start ved Connectors, derefter Connector Builder, så REST API og webkroge. Læs dem i rækkefølge, og du vil have set alle måder OpsIQ kan tale med et andet system.
💡
To ting ændrer det du ser. Tilladelse til at skjule sider din rolle kan ikke åbne, så et afsnit beskrevet her kan være mangler fra din sidebar. Bed en administrator om at kontrollere din rolle. Og stik bærer en modenhed etiket af produktion, Beta, Preview eller skabelon; den kørende build og dens konnektor manifestation er den myndighed, som en du har, ikke denne side.
Start her
Hvad OpsIQ gør for din virksomhed
OpsIQ er en komplet AI- første business operationsplatform. Den erstatter din analytics, live chat, helpdesk, CRM, SEO toolkit, integration middleware og udvikler platform med en enkelt samlet admin, hvor hvert værktøj deler den samme kundesammenhæng. 8-12 separate SaaS-produkter, du installerer OpsIQ én gang og operere alt fra en skærm.
PlatformenOpsIQ er en platform med én fælles kundekontekst, hver værktøj feeds, og er drevet af, den samme AI-hjerne.
Alt OpsIQ gør · i detaljer
Website analytics og besøgende intelligens
Real- time besøgssporing
Hver side belastning, klik, rulle og navigation begivenhed er fanget i realtid. Se hvem der er på dit websted lige nu, hvilke sider de ser, hvor længe de bruger, og hvor de kom fra, alle uden tredjeparts cookies.
Besøgslog og sessioner
Fuld historie om hver besøgende med enhed, browser, operativsystem, land, by, referrer, UTM parametre, landing side, og identitet opløsning. Sessions gruppe sidevisninger i rejser, så du kan se hele stien en besøgende tager.
Session replay
Tidslinje-stil afspilning af fangede besøgende sessioner. Se præcis, hvad brugerne gjorde: musemoduler, klik, ruller, side overgange, og danne interaktioner. Brug det til at diagnosticere UX spørgsmål, forstå drop- off punkter, og kontrollere konverteringsstrømme.
Levende foder
En real- time strøm af besøgende aktivitet som det sker. Se sidevisninger, chat starter, form indlæg, og intentsignaler opdateres hvert par sekunder. Filter efter land, enhed eller referrer til at fokusere på specifikke trafiksegmenter.
Top sider
Sider rangeret efter besøg, engagement tid, bounce rate, konverteringer og støtte aktivitet. Identificer din højeste-performance indhold og sider, der har brug for forbedring.
Geo intelligens
Land, by og region opdelinger med kort. Enhed og browser distribution, trafik kilde analyse, søgemaskine refrerer tracking, og markedsindtrængning indsigt.
Intenttragt
Spor besøgende intention signaler (prissætning side besøg, gentagne afkast, dokumentation browsing mønstre, og støtte interaktioner) til at identificere besøgende, der er tilbøjelige til at købe, churn, eller har brug for hjælp.
A / B-forsøg
Kør split tests på din hjemmeside direkte fra OpsIQ. Opret varianter, sæt trafikfordeling, definere konverteringsmål og måle statistisk betydning.
JavaScript fejlsporing
Capture client- side JavaScript fejl fra din hjemmeside automatisk. Se fejlmeddelelser, stack spor, berørte browsere, frekvenstal, og hvilke sider udløser dem. Fejlhåndtering problemer uden separat fejlovervågning.
Begivenheder log
Hver tracked event (sidevisninger, brugerdefinerede begivenheder, chatinteraktioner, formularindlæg, køb) i en søgbar, filtrerbar log med fuld metadata.
Salg og ombygninger
Spor ordrer, indtægter, tilbagebetaling, abonnement fornyelser, og tilskrive konverteringer til trafik kilder, kampagner, og besøgende rejser. Indtægtsdashboards med periode sammenligning og trend analyse.
Blade
Højtintense besøgende identificeret af adfærdsmønstre. Score fører baseret på sidebesøg, tid på stedet, returfrekvens, support interaktioner, og brugerdefinerede signaler. Feed fører direkte ind i CRM rørledningen.
Efterretninger for lokaliteten (SEO og indholdsanalyse)
Krabber på byggepladsen
Automatiseret kravle af hele din hjemmeside for at opdage sider, opdage brudte links, finde manglende meta tags, kontrollere billede alt tekst, validere kanonical URLs, og kort dit websted struktur. Skema kravler til at køre dagligt, ugentligt eller på forespørgsel.
Teknisk SEO-revision
Omfattende teknisk analyse: Sidehastighedsscore, mobil reaktionsevne, Core Web Vitals, SSL certifikat status, omdirigerer kæder, duplikeret indhold detektering, kravl dybde analyse, og struktureret datavalidering.
Indhold revision
Evaluere hver side for indhold kvalitet, ordtal, læsbarhed score, nøgleord tæthed, overskrift struktur, intern / ekstern link ratio, og friskhed. Identificer tyndt indhold, duplikerede sider, og indhold huller.
AI- drevet søgning
Semantisk søgning på tværs af hele dit websted indhold. Spørg naturligt sprog spørgsmål om dit indhold og få AI- syntetiserede svar med kildesiden referencer.
SERP-rangsporing
Overvåg dine søgemaskiners placering efter målsøgeord på tværs af Google og andre motorer. Spor position ændres over tid, sammenligne med konkurrenterne, og se hvilke sider rangerer for hvilke vilkår.
Nøgleordsforskning
Oplev søgeord muligheder baseret på dit indhold, konkurrent analyse og søge volumen data. Få forslag til nye indhold emner, langhalevariationer, og indhold optimering mål.
Backlink-analyse
Se hvilke websteder der linker til dig, spore nye og mistede links, analysere ankertekstdistribution og identificere link-building muligheder.
Lokal SEO-net
For virksomheder med fysiske steder: visualisere din lokale søgningssynlighed på tværs af et geografisk gitter. Se hvordan dine placeringer varierer efter placering, afstand fra din virksomhed og søge hensigt.
Google Business Profile-synkronisering
Tilslut din Google Business Profile til OpsIQ. Synkronisér anmeldelser, indlæg, Q & A, fotos og forretningsoplysninger. Administrer din GBP-notering indefra OpsIQ. Svar på anmeldelser, udgive indlæg og overvåge indsigter.
Planlagte rapporter
Automatiseret SEO og analytics rapporter genereret på din tidsplan (dagligt, ugentligt, månedligt). Rapporter omfatter ranking ændringer, trafik tendenser, tekniske problemer fundet, og indhold ydeevne. White- label output til rådighed for agenturer.
AI- drevet support
KundeAI chat
AI besvarer kundespørgsmål på din hjemmeside 24/7 ved hjælp af din viden base, tilsluttede platform data (ordrer, konti, abonnementer), og brugerdefinerede uddannelse prompts. Understøtter flere AI-udbydere: Claude (Anthropic), GPT- 4o (OpenAI), Gemini (Google), og Grok (xAI).
Admin AI assistent
En AI copilot inde i din admin panel, der hjælper dig med at skrive billet svar, udkast kundekommunikation, analysere support tendenser, slå kundedata op på tværs af tilsluttede platforme, og udføre handlinger gennem stikkontakt system.
AI viden jording
AI er baseret på dine videnbaserede artikler, FAQ-indgange, produktdokumentation og tilsluttede platformdata. Det hallucinerer ikke. Det svarer fra din faktiske forretningsinformation eller eskalerer når usikre.
Auto- overgivelse til mennesker
Når AI 'en ikke kan løse et spørgsmål, opdager frustration, eller kunden beder om et menneske, det automatisk afleverer til dit team med fuld samtale kontekst. Konfigurativ tilbagegang / timeout auto-vende tilbage til AI.
AI træningsprompter
Skriv separate instruktion prompts for customer-face AI og admin- facting AI. Control tone, grænser, eskalering regler, forbudte emner, og business-specifik adfærd. Per- workspace konfiguration understøttet.
AI historie og revision
Hver AI samtale er logget med fuld anmodning / svar detaljer, token brug, omkostningssporing, udbyder brugt, og model version. Gennemgå samtaler til at identificere uddannelseshuller og forbedre AI nøjagtighed.
AI-indsigt
Automatisk analyse af AI samtale mønstre. Se fælles spørgsmål, afviklingsrater, aflevering frekvens, kundetilfredshed efter emne, og områder, hvor AI har brug for bedre uddannelse.
Per- workspace AI config
Hver tilsluttet site / arbejdsplads kan bruge sin egen AI-udbyder, model, temperatur, token budget, og uddannelse prompts. En SaaS virksomhed kan bruge Claude for det vigtigste produkt og GPT- 4o for et sekundært mærke.
Administreret AI og BYOK
To AI tilstande: Administreret AI (inkluderet i din plan, nej API nøgle nødvendig) eller medbring din egen nøgle (brug din egen OpenAI/Anthropic/ Google / xAI API nøgle til fuld kontrol over modelvalg og omkostninger). Begge er førsteklasse, hver funktion fungerer med begge tilstande.
AI token budgets and cost controls
Sæt månedlige token budgetter, per-samtale grænser, og lav-balance advarsler. Spor udgifter pr udbyder, pr. arbejdsområde, og pr samtale. Forebyg runaway omkostninger med hårde lofter.
Billetter og helpdesk
Indfødt billetsystem
Fuld helpdesk med afdelinger, prioriteter (lav / medium / høj / presserende), statusser, SLA tracking, interne noter, kundesvar, fil vedhæftede filer og gevindsamtaler.
AI-prøve og automatisk svar
AI automatisk uddeler indgående billetter efter afdeling og prioritet. Aktivér auto- svar for sikre afdelinger. AI-udkast og sender et svar efter en konfigurerbar forsinkelse (standard: 2 minutter), så mennesker kan gribe ind først.
Email-indtagelse
Tilslut en postkasse (Gmail, IMAP eller provider- specifikke) til automatisk at oprette billetter fra indgående e-mails. Svar på billettelefoner opdaterer billettråden.
Billetportal med
Indlejret en customer-vender billet portal på din hjemmeside. Kunderne kan indsende billetter, se deres historie, svare på åbne billetter, og kontrollere status, alle mærkevarer til dit design.
Billetsammenfletning
Sammenfletning af billetter i en enkelt tråd. Sammenflettede billetter viser [Merged] på emnelinjen. Al samtale historie er bevaret i den overlevende billet.
Retur til AI
Efter en menneskelig agent overtager en billet, skal du bruge "Return to AI" til at lade AI genoptage automatisk-svar på denne billet. Nyttigt når den human- nødvendige del er løst, men kunden har opfølgning spørgsmål AI kan håndtere.
Indbakke-copilot
AI- assisteret billethåndtering fra indbakke visning. Copilot foreslår svar, opsummerer samtale historie, anbefaler prioritet / afdeling opgaver, og kan udføre handlinger på tilsluttede platforme.
Chat og realtidsstøtte
Chat indbakke
Real- time kunde chat lykkedes fra en samlet indbakke. Se alle aktive samtaler, kundenidentitet, samtale historie, og AI forslag. Flere agenter kan samarbejde om en samtale.
Proaktive chatregler
Trigger chat-beskeder baseret på besøgsadfærd: tid på side, specifik URL Besøgte, skriftdybde, returantal, exit intention eller brugerdefinerede begivenheder. Eksempel: Vis en help- besked efter 60 sekunder på prissiden.
Chat-widget
En brugervenlig chat widget indlejret på din hjemmeside. Understøtter AI chat, live agent chat, billet indsendelse, viden base søgning, og besøgende identitet. Responsive, tilgængelig, og brandbar.
CSAT-undersøgelser
Indsamle kundetilfredshed ratings efter chat og billet interaktioner. Design undersøgelser med dine egne spørgsmål, vurdering skalaer, og opfølgning prompts. Resultater feed i team ydeevne og AI indsigt.
Postchat-e-mail-undersøgelse
Efter en chat slutter, kan besøgende med en kendt e-mail modtage en mærkevare mail med et AI resumé af hvad der blev håndteret og et enkelt klik "Var det nemt?" Ja / Nej. En gang pr. tråd, signeret singleuse links, hver send logget, og resultatet lander på Feedback side som sit eget signal ved siden af in-chat stjerner.
Feedback identitetsløkke
Hver feedback element, der bærer en person viser dem: navn, e-mail, et klik-gennem til deres fulde kunde rejse og CRM kontakt, og one-click e-mails eller AI- udkast svar baseret på deres faktiske historie.
Skrivning af AI
Separat AI skriftligt assistent for at komponere e-mail udkast, billet svar, meddelelser og kundekommunikation. Bruger sin egen prompt (ikke chat hjerne) til professionel virksomhed skrivning.
AI- Første CRM
CRM-kommandocenter
En enkelt skærm, der viser hele din CRM-tilstand: rørlednings værdi, dealhastighed, kommende opgaver, at- risk tilbud, agent aktivitet og AI anbefalinger. CRM startsiden er dit daglige udgangspunkt.
Kontakter og virksomheder
Administrer kundekontakter med fulde profiler: navn, e-mail, telefon, virksomhed, tags, livscyklusscenen, samtale historie, billet historie, køb historie og brugerdefinerede felter. Link kontakter til virksomheder for B2B forhold management.
Deals og rørledninger
Visual Kanban- stil dealboard med brugerdefinerede stadier. Træk handler mellem faser, sæt værdier, tildele ejere, spore tætte datoer, og se rørledningen værdi på hvert trin. Flere rørledninger understøttes.
AI-aftalecoaching
AI analyserer hver aftale og giver coaching: risikosignaler (gik stille, konkurrent nævnt, budget bekymringer), nextbest- handling anbefalinger, vinde sandsynlighed, og foreslået opfølgning timing.
Prognose og rapporter
Indtægtsprognoser baseret på rørlednings data, historiske tætte rater og dealhastighed. Rapporter omfatter rørledning efter trin, efter ejer, efter kilde, omregningskurser, gennemsnitlig deal størrelse, og salgscyklus længde.
Prospektører (SDR)
AI- drevet prospektering, der identificerer potentielle kunder fra dine besøgende data, blysignaler og tilsluttet platform aktivitet. Foreslår outreach mål, udkast indledende meddelelser, og scorer bly kvalitet.
Opfølgningssekvenser
Automatiseret multi- step opfølgning sekvenser: e-mail, vent, e-post, tjek svar, eskalere. Definer sekvenser for nye ledninger, stagnerede tilbud, efter-køb checkins, og re- engagement kampagner.
Livscyklus og retention
Spor kundens livscyklusstadier (bly, perspektiv, kunde, churned) med automatiserede overgange. Tilbageholdelsesmidlet overvåger for churn signaler og foreslår indgreb.
Datastyringsagent
AI agent, der løbende renser og beriger dine CRM-data: duplikerer kontakter, udfylder manglende felter, validerer e-mails, standardiserer firmanavne og flaglister.
Byg min CRM
Naturligt sprog CRM konfiguration: fortælle AI, hvordan din salgsproces ser ud, og det bygger din rørledning faser, brugerdefinerede felter, deal skabeloner, og automatisering regler.
CRM-sundhedskontrol
Automatisk revision af din CRM-datakvalitet: duplikering af kontakter, tilbud uden næste trin, gamle rørledninger, manglende kontaktoplysninger og datagrunding.
Trust Dial
Trusselsniveau autonomi kontrol for hver CRM AI agent: Autopilot (AI handler uafhængigt), Copilot, (AI foreslår, menneskelige godkendelser) og Manual (AI observerer kun). Sæt dial per agent, per aktionstype, og pr. deal værdi tærskel.
Fire AI-agenter
CRM kører fire specialiserede AI-agenter: Steward (datakvalitet), SDR (prospektering), Gentening (churn prevention) og Analyst (rapportering og indsigt). Hver agent har sin egen Trust Dial indstilling.
Forbindere og integrations
Forbyggede konnektorer
Ready- to- use konnektorer til Shopify, WooCommerce, BigCommerce, Magento 2, PrestaShop, OpenCart, osCommerce, WordPress, WHMCS, Zendesk, Stripe, Amazon SES, Postmark, Resend, SendGrid, Mailgun, Gmail, IMAP, Slack, og Google Business Profile. Hvert stik bringer platformspecifikke AI-handlinger, viden og datasynkronisering.
Connector Builder
Byg brugerdefinerede konnektorer til enhver platform, ingen kode, AI- assisteret, eller fuld kode. Byggeren understøtter REST og GraphQL APIs, OAuth godkendelse kode flow, webhook auto-registrering med Stripe og enkle signatur ordninger, paginering (offset, side, markør, og link-header), liste / fejl transformerer, multi-action sammenhæng, og markedsplads emballage.
AI- assisteret stik authoring
ConnectorBuilderai hjælper dig med at bygge stik: beskrive, hvad du ønsker, og det foreslår handlinger, skriver anmodning håndtere, og kort API svar. Håndterer autentificering, pagination og fejlhåndtering automatisk.
OAuth flow til enhver tilslutning
Generisk in- app OAuth godkendelse flow, der virker med enhver forbindelse. PKCE støtte, site- scoped state management, automatisk token opdatering.OAuth parametre og OpsIQ tager sig af strømmen.
Kapacitetsbusser (bred- og bredforlængelse)
Connectors don't just add platform actions. They can power core features through capability "buses". A connector declares a capability (calendar, enrichment, esign in CRM; local_listing, rank_data in Site Intelligence; web_analytics in Analytics; payment_provider in Payments; email_sync in Mailbox; video_meeting in Comms) and implements its small method set; OpsIQ discovers it via CapabilityRegistry and wires it into the UI, the Customer 360 timeline, and the AI actions. Several connectors can offer the same capability with no lock-in. See connectors/PLATFORM_CONNECTORS.md.
Forinstalleret vs markedsplads tier
Connectors live in one of two tiers. Pre-installed connectors (connectors/) are registry-active out of the box, kept lean to just the keyless reference and the most-used provider per capability (e.g. Google Calendar, Gmail, Google Business Profile). Marketplace connectors (marketplace_connectors/) are discoverable but inert until installed, e.g. Microsoft 365 Calendar, Outlook, DocuSign, Stripe, GA4, SerpApi, Zoom. Every bridge surfaces a marketplace list so the UI and the AI can prompt "install from the marketplace" (notify-to-install) when a capability has no ready provider, never a broken button.
Forbindelsesmarked
Publish your connectors to the OpsIQ marketplace. Package connectors with profile.json, knowledge.json, workflow_recipes.json, and signed archives. Marketplace supports free and paid connectors with multi-source billing.
Forbindelsessignatur
All connectors are cryptographically signed for integrity verification. Signing is checked at install time. Use the resign_all_connectors tool to re-sign after updates.
SmartLookup
Declarative fuzzy-matching system for connector actions. Define lookup rules and OpsIQ matches user queries to platform entities using fuzzyScore and smartRank algorithms. Example: find_country("germ") matches Germany with 88.9% confidence.
Aktionskontrakter
Den almindelige beretning OpsIQ API publicerer 1,312 navngivne handlinger, mens konnektor pakker erklærer deres egen leverandør handlinger med indtastede parametre, autentificering krav, pagineringsregler, og svar transformerer gennem den forenede ActionExecutor.
Koblingsopskrifter
Præ- byggede workflow opskrifter, der kombinerer flere konnektor handlinger i fælles business arbejdsgange. Eksempel: "Når en ny ordre kommer ind på Shopify, oprette en billet, opdatere CRM, og sende en Slack notification".
Viden synkronisering
Forbindere erklærer videnemner, der synkroniserer til AI-vidensbasen. Platformspecifikke hjælpeartikler, opsætningsvejledninger og fejlfindingstrin er automatisk tilgængelige for AI uden manuel viden adgang.
Udvikler platform
REST API
A navngivet JSON API omfatter alle registrerede administratorer JSON operation, medAPI-nøgle autentificering, arbejdsplads isolation, scope, hastighedsbegrænsende, idempotent skriver, OpenAPI, og en genereret Postman samling.
Webhooks
Outbound webkrogs til alle større begivenheder: ordrer, fakturaer, abonnementer, billetter, chats, ledninger, brugerregistreringer og indkøbskurv opgivelse. Async levering via job kø, eksponentiel backoff relry, SSRF beskyttelse, og auto- deaktivere efter 15 fortløbende svigt.
Webhook signering
Every outbound webhook is signed with HMAC-SHA256. Verify signatures on your receiving end to ensure webhook authenticity. Stable event_id for idempotent processing.
Widget SDK
JavaScript SDK til tracking widget med identitetsopløsning, brugerdefineret event tracking, programmatisk chat kontrol, og page- specifik konfiguration. Installer opskrifter for React, Vue, Next.js, WordPress, Shopify og statisk HTML.
Plugins og SDK 'er
Serverside SDK og plugins til fælles rammer. WordPress plugin WHMCS modul, og generiske PHP / Node.js integration biblioteker.
Begivenheder API
Push brugerdefinerede begivenheder ind OpsIQ fra din backend: køb, signups, feature brug, fejl eller enhver forretningsbegivenhed. Begivenheder vises i den besøgende tidslinje og feed til analytics og AI-sammenhæng.
Triggers kogebog
Byg automatiske arbejdsgange udløst af begivenheder: ny billet, chat startet, besøgende identificeret, deal stage ændret, eller brugerdefinerede begivenhed. Triggers udføre stik handlinger, sende webkrogs, opdatere optegnelser, eller underrette dit team.
API -bygmester
Visuel API og webhook builder inde i admin. Indstil endpoints, testanmodninger, inspicer svar, og debug integration uden at forlade OpsIQ.
Gruppe og administration
Rolebaseret adgangskontrol
Tre roller: Ejer (fuld adgang, fakturering, farezone), Full Admin (alle operationer undtagen fakturering og farezone, og Agent (kun tildelte afdelinger, ingen indstillinger adgang). Alle følsomme sider er hårdnakket af rolle.
Teamperformance instrumentbræt
Ejer og Full Administrerende-kun dashboard viser opløsning gange, arbejdsbyrde distribution, håndtere dybde, kanal opdeling, trend analyse, SLA overholdelse, CSAT efter agent, genåbne satser, team rollups, og travleste timer. Opdateret i realtid.
Admin tilstedeværelse og online tracking
Real- time whos- is- online widget i admin navigation. Hjertebeat- baseret tilstedeværelse påvisning (60- anden ping, 300- anden udvidelse, auto- beskære efter 120) Se, hvilke administratorer der er aktive i øjeblikket, og på hvilke sider.
Indstillinger for arbejdsområde
Hvert tilsluttet websted (arbejdsområde) kan have sin egen AI-konfiguration, stik indstillinger, billet afdelinger, branding og operationelle regler. Globale standard kaskade til arbejdsrum, der ikke tilsidesætter dem.
Forvaltning af flere lokaliteter
Administrer flere hjemmesider fra en OpsIQ admin. Hvert websted har sin egen tracking snuppet, besøgende data og konfiguration. Skift mellem sites fra admin navigation.
System til e- mail- skabelon
Registreringsdreven e-mail skabeloner for alle automatiserede meddelelser: billetmeddelelser, chat-udskrifter, velkomstmails, kodeord nulstilles og systemalarmer. HTML skabeloner med live preview, variable chips ({{customer_name}}, {{ticket_id}}) og global layout kontrol.
Import og eksport
Importér kontakter, billetter og videnartikler fra CSV/JSON. Eksportér besøgsdata, analyserapporter og CRM-registreringer. Dataportabilitet for migration mellem systemer.
Sikkerhed, overholdelse og operationer
Forretningsrejser til SSO
OIDC (OpenID Connect) enkelt signal- on med fuld driftstid: opdagelse, tillade, callback, JWKS signatur verifikation, userinfo, domæne allow- liste- notering, JIT providering, og statusvagter. SAML konfiguration støtte.
GDPR og dataoverholdelse
Bygge- i DSAR (Data Subject Access Request) håndtering: eksportere og slette kundedata på tværs af alle systemer. Contact- niveau data sletning dækker sessioner, billetter, chats, CRM-optegnelser, og e-mail logfiler.
IP blokerende og brute- force beskyttelse
Blokspecifik IPs eller varierer fra adgang til dit websted eller admin. Automatisk lockout efter konfigurerbar mislykkedes login forsøg.IP, tidsstempel, og bruger agent.
HSTS og sikkerhedshoveder
HTTP Streng Transport Security, Permissions- Policy headers, og sikker cookie konfiguration. Selvhostede installationer kan tilføje CSP-headere gennem server konfigurationen.
Udgående webshook hærdning
SSRF Guard blokerer webkroge til private / metadata IP intervaller. Async levering forhindrer langsomme slutpunkter fra at blokere din applikation. Auto- deaktivere efter 15 fortløbende fejl forhindrer ressourceaffald på døde endepunkter.
Isolering af arbejdsrummet
Streng dataisolation mellem arbejdsområder. Besøgende, billetter, chats, CRM-poster og AI samtaler er indfanget til deres arbejdsplads. Cross-workspace data lækager forhindres på forespørgselslaget.
Styring af faktureringscyklus
Støtte til månedlige, kvartalsvise, halvårlige, årlige, toårige og levetid fakturering cykler. Valuta normalisering for multi-valuta gateways. FX konvertering på betalingskvittering for nøjagtig indtægtsrapportering.
Cron- og skemalagte automatisering
Byg-i cron system til planlagte opgaver: rapport generation, data oprydning, abonnement fornyelser, AI uddannelse opdateringer, stik syncs, og webhook reles. Sundhed diagnostik med advarselsindikatorer.
Dataopbevaringspolitik
Indstil hvor lange besøgssessioner, chattroner, AI-samtalehistorik og hændelseslogfiler der opbevares. Automatisk oprydning af gamle data til håndtering af opbevaring og overholdelse af opbevaringspolitikker.
Diagnostik og sundhed
System sundhed dashboard viser cron status, database forbindelse, AI udbyder status, stik sundhed, webhook leveringspriser, og opbevaring brug. Advarsler om konfiguration problemer og ydeevne flaskehalse.
Hvem OpsIQ er til
E-handel butikker
Butikker
Spor hver besøgende fra landing til køb. Lad AI svare "Hvor er min ordre?" ved hjælp af live Shopify/WooCommerce/ BigCommerce data. Administrer support billetter med AI auto-svar. Kør en deal pipeline for engros og B2B fører. Attributte indtægter til trafik kilder og kampagner. Monitor indkøbskurv opgivelse med opsving arbejdsgange.
SaaS og software-virksomheder
SaaS
Overvåg forsøg signups og feature adoption med session replay. Spor hvilke dokumentationssider konvertere. Automatisk support med AI jorden i din API docs. Administrer abonnementsindtægter og ekspansionstilbud i CRM. Tilslut din faktureringsplatform (Stripe, WHMCS) for real- time MRR tracking. Brug CRM livscyklusagent til at opdage og forhindre churn.
Agenturer og freelancere
Agenturet
Tilbyd white- label analytics og support portaler til klienter. Spor fører på tværs af flere klientsteder fra en admin. Brug CRM-rørledningen til at styre perspektiver og projektleder. Byg brugerdefinerede konnektorer til klientplatforme ved hjælp af Connector Builder. Generér mærkevarer SEO rapporter med Site Intelligence. Sælge markedsplads konnektioner som værditillæg tjenester.
Hosting og infrastruktur
Hosting
Dybt WHMCS integration med 80+ AI-handlinger for ordreopslag, service management, DNS, og provision. Auto- svar på fælles hosting spørgsmål ved hjælp af videnbase artikler. Spor server status side engagement. Administrer teknisk support billetter med AI triage. Brug fakturering cyklus stige til månedlige gennem levetid hosting planer.
Støtte - tunge virksomheder
Støtte
Fejl 40-70% af gentagne spørgsmål med AI chat baseret på din viden base. Route billetter til den rigtige afdeling med AI triage. Bane team ydeevne med opløsning gange, SLA overholdelse, og CSAT ved agent. Brug skriftligt AI for professionel svar udarbejdelse. Monitor støtte tendenser med AI indsigt.
Markedsføring og SEO-hold
Markedsføring
Full Site Intelligence suite: kravler, tekniske SEO-audit, indholdsanalyse, SERP rank tracking, nøgleord forskning, backlink overvågning og lokale SEO grid. Google Business Profile management. Planlagte white- label rapporter for klienter. A / B test indbygget i sporing widget. Kampagne tildeling på tværs af alle kanaler.
Solo grundlæggere og små hold
Opstartsvirksomheder
Start med blot at spore og chatte, gratis at tilføje. Tilføj derefter billetter, når du får støtte volumen. Tænd CRM, når man begynder at sælge. Tilslut platforme som du vedtager dem. OpsIQ skalaer fra én person, der gør alt til en 50-person operationsteam med RBAC, afdelinger og peragent performance tracking.
Erhvervs- og multibrand
Enterprise
Erhvervspolitik SSO med OIDC for centraliseret autentificering. Multi- workspace isolation for separate mærker eller divisioner. Per- worcspace AI konfiguration med forskellige udbydere og modeller. Custom connector udvikling med markedsplads distribution. Revision stier, GDPR overvågningsværktøjer og datalagringspolitikker.
Hvad OpsIQ erstatter
Google Analytics + Hotjar + Plausibelt
Fuld hjemmeside analytics med besøgende sporing, session replay, side rankings, geo intelligens, intent funnels, konvertering tildeling, begivenheder, A / B eksperimenter, og JS fejlsporing, alle privat-venlige, alle i en platform.
Intercom + Drift + Tidio tilbehør
AI- drevne kundechat med viden jordforbindelse, multi-udbyder AI støtte, auto- overdragelse til mennesker, proaktive chatregler, samtale historie, CSAT undersøgelser, og billetskabelse fra chat.
Zendesk + Freshdesk plus Hjælp til spejder
Indfødt billetsystem med afdelinger, prioriteter, SLA, AI-prøve, auto- svar med konfigurerbar forsinkelse, e-mail indtagelse, billet indlejret, billet sammenfletning, indbakke copilot, og Retur til AI kapacitet.
Hvad er HubSpot + Pipedrive?
AI- første CRM med fire specialiserede AI-agenter (Steward, SDR, retention, Analyst), Trust Dial autonomi kontrol, rørledning bord, deal coaching, prognoser, sekvenser, livscyklusstyring, og naturligt sprog CRM konfiguration.
Hvad er Ahrefs + SEMrush?
Website Intelligence med automatiserede kravler, tekniske SEO revisioner, indholdsanalyse, AI søgning, SERP rank tracking, søgeord forskning, backlinks analyse, lokale SEO grid, og skemalagt white- label rapporter.
Zapier + Make + brugerdefineret middleware
Forbindelse SDK med 25+ pre- build connections, Connector Builder (no- code / AI- assisted / full-code) OAuth flow, webhook auto- registrering, et stort katalog af connector handling definitioner, der bliver eksekverbare kun når den relevante konnektor er installeret, aktiveret, konfigureret og valideret, SmartLookup, markedsplads, og signerede pakker.
Google Business-profiladministrator
Fuld GBP-stik: gennemgang management, post publishing, Q & A ledelse, foto uploads, business info sync, indsigt sporing, og AI- drevne revision svar, alle indefra OpsIQ.
Separat e- mail- skabelonværktøj
Registreringsdrevne e-mail skabeloner med visuel editor, live preview, variable chips, global layout kontrol, og per- event tilpasning til alle automatiserede kommunikation.
Teamstyringsinstrumentbrætter
Bygge- i team ydeevne: Opløsning gange, arbejdsbyrde, SLA overholdelse, CSAT efter agent, genåbne satser, travleste timer, realtids tilstedeværelse sporing, og per- afdeling opdelinger.
GDPR compliance værktøjer
Native DSAR håndtering, data sletning på tværs af alle systemer, samtykke management, tilbageholdelse politikker, og revision stier, indbygget i platformen, ikke boltet på.
To udgaver
Indsættelse af en vært
OpsIQ drives på forvaltet infrastruktur. Produktdrift er den samme; infrastruktur, opdateringer og sikkerhedskopier håndteres af hosting-operatøren.OpsIQ runtime i stedet for marketing eller kommercielle konto strømme.
selvhostede modul
Installér OpsIQ på din egen server for fuld kontrol over data, branding, opdateringer og integreringer. Kræver PHP 8.4+, MySQL 5.7+ eller MariaDB 10.3+, HTTPS og OpsIQ samlet cron. Understøtter WHMCS integration som et addon modul. Fuld datasuverænitet.
Anbefalet læseramme
1
Hurtig start
Følg 30-minuttersopsætningsvejledningen for at få sporet, chatten og grundlæggende AI til at arbejde på din hjemmeside.
2
Dashboard og analytics
Lær at læse dine besøgsdata, opsætte session spil igen, identificere spor og forstå trafikmønstre.
3
Efterretningstjeneste
Kør din første SEO kravl, tjek dit tekniske helbred, og opsætte SERP rang sporing for dine mål søgeord.
4
Billetter og support
Opsætning afdelinger, konfigurere auto- svar med AI, tilslutte e-mail indtagelse, og træne din AI til at håndtere fælles spørgsmål.
5
CRM
Organiser kontakter, bygge din pipeline, konfigurere AI agenter, indstille Trust Dial niveauer, og lad AI coach dine tilbud.
6
Forbindere og udviklerværktøjer
Tilslut din e-handel / fakturering platform, opbygge brugerdefinerede stik, oprette webkroge, og integrere via REST API.
💡
Ny til OpsIQ? Start med Quick Start guiden nedenfor. Du kan have sporing og grundlæggende AI chat kører i under 30 minutter.
Start her
Hurtig start i 30 minutter
Følg disse trin for at få OpsIQ kørende. Hvert skridt bygger på den forrige. Til sidst vil du have besøgende tracking, AI chat og grundlæggende billet support.
Opsætning30-minut sti: installere widget, tilslutte en platform, træne din AI, invitere holdet, derefter gå live.
30-minuttersopsætning
1
Aktivér din licens
Indtast din licensnøgle i OpsIQ admin. Gå til Indstillinger, indtast den licens-nøgle, der er leveret til denne installation, og klik på Aktivér. Du bør se et grønt "Active" skilt.
2
Sæt din virksomheds identitet
Gå til Indstillinger og udfylde dit firmanavn, industrien, tidszone, standard valuta, og support timer. Denne information bruges af AI når du besvarer kundespørgsmål og ved analytics for timezone- aware rapporter.
3
Vælg en AI-udbyder
Gå til AI konfiguration og vælg din udbyder. Indstillinger: Claude (Anthropic), GPT- 4o (OpenAI), Gemini (Google), eller Grok (xAI). API tasten hvis du bruger din egen nøgle, eller bruge Managed AI hvis tilgængelig på din plan. Klik på "Test forbindelse" for at verificere.
4
Installér sporings kontrol
Go to Connected Sites, copy the tracking snippet, and paste it before the closing </body> tag on your website. Visit your site in a private browser, then check the Live Feed in OpsIQ. You should see yourself as a visitor within 15 seconds.
5
Tilslut din platform
Hvis De bruger Shopify, WooCommerce, WHMCS, eller en anden understøttet platform, gå til Connectors, finde din platform, indtaste legitimation, og klik på Test Connection. Dette giver AI adgang til bestillingsdata, kundeprofiler og support kontekst.
6
Inviter dit hold
Gå til Team, klik på Invitation, indtast deres e-mail og rolle (Ejer, Full Admin, eller agent). Agenterne kan kun få adgang til afdelinger, du tildeler dem til. Ejere og Full Administratorer se alt.
Den hurtigst mulige sti (5 minutter)
Trin 1: Installer widget
Kopiér slangen fra Connected Sites og indsæt den på din hjemmeside. Dette giver dig sporing med det samme.
Trin 2: Aktivér AI
Gå til AI konfiguration, vælge en udbyder, indtaste din nøgle, og gemme. AI chat er nu aktiv på din hjemmeside.
Færdig
Du har nu besøgende tracking og AI chat. Du kan tilføje billetter, CRM, og stik senere.
Dag 2: Gør det nyttigt
Tilføj viden
Gå til videnbase og tilføje 5-10 artikler om dine mest almindelige spørgsmål. AI bruger disse til at besvare kunderne præcist.
Opret afdelinger
Gå til billetter og oprette mindst 2 afdelinger (fx "Salg" og "Support"). Tildel team medlemmer til hver.
Skriv din AI-prompt
Gå til AI-træning og skrive en Kunde AI prompt, der beskriver din virksomhed, tone, og eskalering regler.
Test en samtale
Åbn din hjemmeside i en privat browser og chatte med AI som kunde. Tjek, at svarene er nøjagtige og tone er rigtigt.
Uge 1: Byg dine operationer
Forbind e- mail
Oprette en postkasse (Gmail, IMAP, eller en udbyder stik) så kundee-mails automatisk oprette billetter.
Sæt automatisk svar op
Aktivér billetten automatisk - svar for sikre afdelinger. Indstil en 2- minutforsinkelse, så mennesker kan gribe ind først.
Gennemgå analytics
Tjek Dashboard dagligt. Se på besøgsantal, bounce rate, topsider og salg, hvis sporing er tilsluttet.
Start din CRM
Åbn AI CRM og lad OpsIQ import kontakter fra dine tilsluttede platforme. Gennemgå rørledningen bord.
Måned 1: Optimér
Anmeldelse AI historie
Tjek AI Historie ugentligt. Kig efter forkerte svar, mistede spørgsmål og muligheder for at tilføje viden.
Tilføj proaktive regler
Opret en regel: hvis en besøgende er på prissiden for 60+ sekunder, vise en chatbesked spørger om de har brug for hjælp.
Byg en konnektor
Hvis du bruger en platform, der ikke har en build- in stik, skal du bruge Connector Builder til at oprette en.
Sæt netkroge op
Tilslut OpsIQ til dine interne værktøjer ved hjælp af udgående webkroge til billet, chat og salgsarrangementer.
Kan jeg springe AI 'en over og bare bruge sporing?+
Ja. AI-udbyderen er valgfri. OpsIQ fungerer som en ren analytics og billetsystem platform uden AI. Du kan aktivere AI senere, når du er klar.
Kan jeg springe stik og tilføje dem senere?+
Ja. Connectorer berige AI med platformspecifikke data, men OpsIQ virker uden dem. Start med sporing og chat, og tilslut derefter platforme efter behov.
Hvad hvis jeg ikke har en hjemmeside endnu?+
Du kan stadig bruge OpsIQ til billetter, CRM og team samarbejde. Sporingskontrollen er valgfri. Tilføj den når din hjemmeside er klar.
Hvordan ved jeg om kontrollen er installeret korrekt?+
Besøg din hjemmeside i en privat / inkognito browser. OpsIQ Live Feed. Du bør se dit besøg vises inden 15 sekunder. Hvis ikke, så tjek: (1) er den snippet indsat korrekt, (2) er lokalitetsnøglen korrekt, (3) er ad blokkere eller CSP headers blokerer scriptet.
Start her
Komplet produktkort
OpsIQ er ikke en funktion. Det er en operatør admin, en hjemmeside widget, en AI support lag, en billet / helpdesk system, en fuld CRM med fire AI agenter, en Site Intelligence suite, en konnektor platform med markedsplads, og en udvikler overflade. Her er hver komponent det indeholder.
Operatør admin
Dashboard, live feed, besøgende log, sessioner, session replay, top sider, geo intelligens, intentfunnel, begivenheder log, A / B eksperimenter, JS fejlsporing, salg og konverteringer, ledninger, AI CRM (kommandocenter, kontakter, virksomheder, tilbud, pipeline bord, deal coaching, prognose, prospektering, sekvenser, livscyklus, data steward, Bygge min CRM, CRM config, CRR sundhed, CRM API), billetter, chat inbox, proaktive regler, CSAT undersøgelser, e-udkast, postkasser, AI konfiguration, AI-uddannelse, AI historie, AI indsigt, viden base, stik, Connector Builder, markedsplads, netværk, team, funktioner, design, software, teknologi, hardware, software og software.
Command center, kontakter, virksomheder, tilbud, pipeline bord med drag- and-drop, AI deal coaching (risikosignaler, nextbest- handling, win sandsynlighed), indtægter prognoser, prospektering agent (SDR), automatiseret opfølgning sekvenser, livscyklus og opbevaring management, data steward agent (dedup, berigelse, validere), opbygge min CRM (naturligt sprog setup), CRM konfiguration, CRM- sundhedstjek, Trust Dial (Autopilot / Copilot-manual per agent), fire specialiserede agenter (Steward, SDR, retention, Analyst), og CRM API med netkroge.
Site Intelligence-pakke
Automatiseret site kravler, teknisk SEO revision (hastighed, mobil, Core Web Vitals, SSL, omdirigerer, strukturerede data), indholdsrevision (ordoptælling, læsbarhed, nøgleord tæthed, overskrift struktur), AI- drevne semantisk søgning, SERP rank tracking på tværs af motorer, søgeord forskning med mulighed scoring, backlink analyse og overvågning, lokal SEO grid visualisering, Google Business Profile sync (anmeldelser, indlæg, Q & A, fotos, indsigt), planlagte rapporter (dagligt / ugentligt / månedligt), og white- label PDF produktion til agenturer.
AI og automatisering
Kunde AI chat (multi-udbyder: Claude, GPT- 4o, Gemini, Grok), admin AI assistent, AI viden jordforbindelse, auto-overdragelse med konfigurerbar return, per- workspace AI konfiguration, administreret AI og BYOK modes, token budgetter og omkostninger kontrol, AI historie revision spor, AI indsigt analyse, billet AI triage, billet auto-svar med forsinkelse, skrivning AI (separat prompt), og admin indbakke copilot.
Forbindere og integrations
25+ præ- byggede konnektorer (Shopify, WooCommerce, BigCommerce, Magento2, PrestaShop, OpenCart, osCommerce, WordPress, WHMCS, Zendesk, Stripe, Amazon SES, Postmark, Resend, SendGrid, Mailgun, Gmail, IMAP, Slack, Google Business Profile), Connector Builder (no- code / AI- assisted / full- codes), generisk OAuth flow med PKCE, connect markedsplads med betalt distribution, konnektor signering og verifikation, SmartLookup fuzzy matching, et stort katalog af HTTP handling definitioner, hvis tilgængelighed afhænger af stik installation, enablement, konfiguration og validering, viden synkronisering, og workflow opskrifter.
Business identitet, AI konfiguration per arbejdsområde, sporingsindstillinger, sikkerhed (HSTS, Permissions-Policy, IP blokerende, brute- force beskyttelse), RBAC (Ejer / Full Admin / Agent), team management og invitationer, team performance dashboard, admin tilstedeværelse sporing, e-mail skabelon system (registry- drevet, visuelle editor, variable chips), undersøgelse designer, domæne viden, billet indlejret konfiguration, branding, data retention politikker fakturering cyklus forvaltning (månedligt gennem levetid), valuta normalisering, import / eksport, diagnostik, cron automatisering, og fare zone.
Sikkerhed og overholdelse
Erhvervspolitik SSO (OIDC med JWKS-verifikation, JIT-hensættelser) SAML konfiguration GDPR/DSAR håndtering (eksport og sletning på tværs af alle systemer), sletning af data pr. kontakt, samtykkestyring, isolering af arbejdsområdet (streng Query- lag scoping), revisionsspor, fejlslagne login-sporing IP blokerende, udgående webhook SSRF vagt, og datalagring politikker.
Udbyderbro
Administreret AI proxied through OpsIQ udbyder URL, Website Intelligence udbyder opkald, licens validering, sundhedsrapporter, PDF rendering, og data eksport, alle dirigeret gennem den konfigurerede udbyder endpoint, ikke direkte leverandør API opkald fra din server.
Hver admin side
Dashboard
Hovednet
Dagligt kommandocenter: trafikoversigt, levende besøgstal, salgsoversigter, support kø dybde, AI aktivitet advarsler og quick-action genveje.
Levende foder
Analyse
Real- time besøgende stream: sidevisninger, chat starter, form indlæg, og intentsignaler opdateres hvert par sekunder med land, enhed, og referrer filtre.
Besøgslog
Analyse
Komplet besøg poster: enhed, browser, OS, land, by, referrer, UTM params, landing side, identitet, og fuld sideview historie.
Sessioner
Analyse
Rejsegrupperet visning: sideflow, tid på side, skriftdybde, konverteringssti og exit-side for hver besøgssession.
Session replay
Analyse
Tidsplan afspilning af optagne begivenheder: muse bevægelse, klik, ruller, side overgange, og danne interaktioner for UX diagnose.
Top sider
Analyse
Sideperformance ranking: besøg, engagement tid, bounce rate, konverteringer, støtte interaktioner, og trend retning.
Geo intelligens
Analyse
Geografiske rapporter: land / by sammenbrud med kort, enhedsdistribution, browser-andel, trafikkilder og markedspenetration.
Intenttragt
Analyse
Opførsel af hensigt sporing: prisbesøg, returfrekvens, doc browsing, støtte interaktioner, og brugerdefinerede signaler med konvertering sandsynlighed.
Begivenheder log
Analyse
Søgetabel hændelseshistorie: sidevisninger, brugerdefinerede begivenheder, chats, køb, formular indlæg med fuld metadata og filtrering.
A / B-forsøg
Analyse
Split test: oprette varianter, tildele trafik, definere mål, måle betydning, og erklære vindere, alle indefra OpsIQ.
Indtægtsinstrumentbrættet: ordrer, fornyelser, tilbagebetalinger, henførsel efter kilde, kampagneindsats, periodisering og trendanalyse.
Blade
Salg
Lead management: scoring, kildetildeling, CRM-status, kontaktoplysninger, adfærdssignaler og rørledningsføring.
AI CRM
CRM
Full CRM: kommandocenter, kontakter, virksomheder, tilbud, rørledning bord, coaching, prognose, prospektering, sekvenser, livscyklus, data steward, og sundhed.
Billetter
Støtte
Støtte indbakke: afdelinger, prioriteter, SLA tracking, AI-triage, auto-svar, interne noter, fil vedhæftede filer, fusionering og status management.
Chat indbakke
Støtte
Live samtaler: AI og menneskelig chat, overdragelse, samarbejde, samtale historie, kundeidentitet, og CSAT samling.
E-mail-kladder
Støtte
E-mail håndtering: indgående post til billetter, AI- assisteret svar sammensætning, skabelon valg, og postkasse konfiguration.
AI- konfiguration
AI
Udbyderopsætning: vælg Claude / GPT- 4o /Gemini/ Grok, indtast API nøgle eller aktivere administreret AI, sæt model, temperatur og token budgetter per arbejdsområde.
AI-træning
AI
Hurtig authoring: customer-facting og admin- face prompts, eskalering regler, tone retningslinjer, forbudte emner, og grænse konfiguration.
AI historik
AI
Samtalekontrol: fuld anmodning / svar logs, token brug, omkostninger pr. samtale, udbyder, model version, og løsning resultat.
AI-indsigt
AI
Mønsteranalyse: fælles spørgsmål, opløsertal, afslutningsfrekvens, tilfredshed efter emne og identifikation af uddannelsesafstand.
Videnbase
AI
AI træningsindhold: artikler, FAQ poster, produkt docs, konnektor viden, og brugerdefinerede poster. Semantisk og søgeord søgning efter AI jordforbindelse.
Webstedshåndtering: tracking snuppet, site nøgle, widget konfiguration, domæneindstillinger og per- site arbejdsområde isolation.
Hold
Indstillinger
Brugerstyring: invitere medlemmer, tildele roller (Ejer / Full Admin / Agent), indstille afdelings adgang, og administrere tilladelser.
Holdets ydeevne
Indstillinger
Ops målinger: Opløsning gange, arbejdsbyrde, SLA overholdelse, CSAT efter agent, genåbne satser, travleste timer, og trend analyse.
Indstillinger
Indstillinger
Konfiguration: business identity, AI setup, tracking, sikkerhed, branding, retention, e-mail skabeloner, fakturering, import / eksport, diagnostik, og fare zone.
Licens
Indstillinger
Plan management: licensstatus, planfunktioner, brugsmålinger, fornyelse dato, og opgradering / nedgradering muligheder.
Start her
Vejledt efter opstigning
På on-boarding turen bliver en ny installation til et fungerende OpsIQ arbejdsområde og kan lades tilbage og genoptages uden at miste fremskridt.
ProduktskærmOnboarding viser hvert opsætningsområde, dets nuværende tilstand og næste handling at fuldføre.
Anbefalet sekvens
Licens: validere certifikatet og bekræfte, at arbejdsområdet er aktivt.
AI-udbyder: vælge udbyder / model, indtaste legitimation og køre forbindelsen test. AI kan blive sprunget over hvis arbejdsstedet vil i første omgang bruge analytics og billetter.
Virksomhedsidentitet: indstille navn, branche, beskrivelse, brugervenlig-vendt tone og mærke detaljer, der anvendes af widget og AI.
Forbindelse: aktivere mindst én ekstern platform, når OpsIQ har brug for ordrer, kunder, billetter, e-mail eller andre platform kontekst.
Site og kontrol: oprette webstedet / arbejdsstedet, kopiere websitets nøgle og verificere et privat- browser besøg i Live Feed.
Team og rute: invitere administratorer / agenter, oprette afdelinger, indstille e-mail routing og bekræfte meddelelser præferencer.
Go- live-check: test chat, en billet, stik sync, cron, udgående e-mail, webkroge og sikkerhedsheaders.
Rejsebutikkerne færdiggørelse per arbejdsområde. Returnering til Onboarding bør vise afsluttede trin i stedet for at tvinge en genstart.
Start her
Admin- navigation og tilladelser
OpsIQ sidebjælken er permission- aware. Dette kort forklarer, hvor hvert operationelt område bor, og hvorfor en side ikke kan ses for hver administrator.
ProduktskærmSidebjælkegrupperne OpsIQ efter arbejdsområde; individuelle links vises kun, når den nuværende rolle kan bruge dem.
Støtte
Billetter, team e-mail platform, CSAT, Hjælp Center og chatbot strømme.
CRM
De daglige salgsflader: CRM Home, Command Center, kontakter, rørledning, prognose, livscyklus, prospektering, segmenter, leaderboard, deal godkendelser, data steward, vækstværktøjer og aktiviteten stream.
Automatisering
Aftendrevne arbejdsgange, livscyklusregler og omregningsmål.
Markedsføring
Opsøgende, proaktive budskaber, meddelelser, Promotion Studio, Survey Studio og push kampagner og guidede ture.
Analyse
Rapport overflader først - Analytics Hub, AI indsigt, salg, kunder, ledninger, tragte, A / B tests, session replay, brugerdefinerede dashboards og planlagte rapporter - med den rå besøgende, session, side, geografi og begivenhed logs i en Raw Data-afsnit.
Standalone sider
Webstedet Intelligence, Team Performance og Feedback sidder uden for grupperne som direkte poster.
Integrationer
Forbindere, handlinger og udløsere, postkasser, udkast, e-mail indstillinger, indgående endepunkter, udgående webkroge og API nøgler.
Arbejdsrums grundlæggende (generel, team, websteder, sprog), derefter kollapse undersektioner: AI Brain (instruktioner, konfiguration, evaluering, historie), CRM Opsætning (bygherre, brugerdefinerede felter, bly scoring, sundhed), Data & Health (diagnostik, eksport) og komme i gang (on-boarding, hjælp).
Sider en rolle kan ikke åbne er skjult fra sidepanelet. Sider den nuværende plan ikke omfatter ophold synlige med en Opgradering tag og åbne en in- app opgraderingsskærm.
Direkte ruter er stadig kontrolleret serverside. At gemme et sidebar link er ikke sikkerhedsgrænsen: enhver beskyttet handling skal passere sin tilladelse og arbejdsområde kontrol.
Analyse
Analytisk hub
The Analytics hub bringer support, chat, AI, besøgende og agent rapportering i en datafilteret arbejdsrum med bærbare resultater.
ProduktskærmAnalytics Hub viser et datointerval, metriske kort og faner for Support, Chat, AI, Besøgende og Agent ydeevne.
Filtre og kontroltavler
Brug et forudindstillet eller en brugerdefineret fra / til række, derefter genopfriske at genopbygge hvert kort og diagram for samme periode.
Eksportér CSV eksportere det aktive analysesynspunkt frem for et screenshot.
Workspace scoping er automatisk; skiftende websteder ændrer den underliggende datasæt.
Hvad hver fane måler
Støtte: billetter oprettet / lukket / afventende, første svar, opløsning, first-kontakt resolution, SLA, og prioritet / afdeling / status opdelinger.
Chat: sessioner startet, AI resolutioner, eskalationer, opgivelse, håndtere tid, meddelelser pr. session, og AI / menneskelige / alle CSAT.
AI: gennemsnitlig tillid, lav-konfidensrate, triage nøjagtighed, feedback, viden deformation, token / cache brug, og de elementer, der har brug for gennemgang.
Besøgende: trafik- og forholdstendenser for den valgte periode.
Agent: arbejdsbyrde, hastighed, lukning og foranstaltninger til tilfredshed.
Brug Analytics Hub til cross-team gennemgang; bruge de dedikerede Besøgende, Billetter, CSAT, AI Historie og Team Performance sider, når du har brug for record-niveau undersøgelse.
Analyse
Dashboardet
Dashboardet er din daglige kommandocentral. Det viser trafik, salg, support belastning, AI aktivitet, og konvertering indikatorer i én visning. Åbn den hver morgen for at forstå, hvad der skete natten over, og hvad der har brug for opmærksomhed i dag.
DashboardDen virkelige Overblik: OpsIQ Intelligence panel op top (vælg en analyse og det skriver det) over KPI widgets du arrangere dig selv.
Dashboard kort forklaret
Levende besøgende
Antallet af personer på din hjemmeside lige nu. Dette opdaterer hver 15 sekunder (konfigurerbar). En besøgende er "aktiv" hvis de indlæste en side inden for den aktive tærskel (standard: 90 sekunder).
Unik besøgende
Hvor mange forskellige mennesker besøgte din hjemmeside i det valgte datointerval. OpsIQ identificerer besøgende ved en kombination af browser fingeraftryk, cookies og (hvis tilgængelig) bekræftet identitet.
Ny vs returnering
Nye besøgende ser dit websted for første gang. Returnering besøgende har været set før. En høj returnering forhold betyder, at dit indhold bringer folk tilbage. En meget lav returnering ratio kan betyde, at du ikke bevarer interessen.
Afvisningsfrekvens
Procentdelen af besøgende, der forlod efter visning kun én side. En bounce rate over 70% på landingssider normalt betyder, at siden ikke opfylder de besøgende forventninger, forkert indhold, langsom belastning, eller dårlig mobil oplevelse.
Gennemsnitlig tid på side
Hvor længe besøgende bruger på hver side i gennemsnit. Meget korte gange (under 10 sekunder) på indhold sider tyder indholdet er ikke engagerende. Meget lange gange på kassen sider kan indikere forvirring.
Trusler blokeret
IPadresser, der OpsIQ identificeret som potentielt skadelig baseret på trussel scoring, brute kraft forsøg, eller manuelle blokke. Klik for at se den blokerede IPs liste.
Salg i dag / denne uge / denne måned
Indtægter fra forbundne salgskilder (Shopify, WooCommerce, Stripe, osv.). Hvis salget viser nul, kontrollere, at din platform stik er tilsluttet og synkronisering.
Trend diagram
En linjegraph, der viser antallet af besøgende i det valgte datoområde. Søg efter mønstre: trafikpropper (kampagner, presseomtale), dips (weekender, helligdage) og vedvarende tendenser.
Top kilder
Hvor dine besøgende kommer fra: direkte, Google, sociale medier, e-mail kampagner, henvisning sites. Brug dette til at forstå, hvilke marketingkanaler der arbejder.
Topbrowsere
Chrome, Safari, Firefox, Kant, og andre. Hvis en browser har usædvanlig høj bounce rate, kan du have en CSS eller JavaScript kompatibilitetsspørgsmål.
Timelønnet vartegn
Et gitter, der viser besøgsaktivitet pr. time i døgnet og ugedag. Brug dette til at beslutte, hvornår du skal planlægge support skift, hvornår at sende meddelelser, og hvornår du kan køre kampagner.
Nylige besøgende
De sidste få besøgende med land, side, enhed og kilde. Nyttig for hurtig spot- checks under kampagner.
Brug af datointervalfilteret
Klik på dato plukker øverst til højre for Dashboard. Presets: I dag, i går, Sidste 7 dage, Sidste 30 dage, Denne måned, Sidste måned, Brugerdefineret område. Alle dashboard kort og diagrammer opdateres, når du ændrer området. Datointervallet er i din konfigurerede tidszone (sæt i Indstillinger).
Bearbejdede eksempler
Bounce rate spike undersøgelse
Scenarie:
Your bounce rate jumped from 45% to 78% this week. What happened?
Hvad skal man gøre:
Check: (1) Ændrede en specifik landingsside sig? Gå til Top Sider og sortere efter starthastighed. (2) Har en kampagne sendt trafik til den forkerte side? Tjek Top Kilder for nye henvisere. (3) Har siden brudt på mobil? Tjek browser opdeling for mobile bounce rate. (4) Er det bot trafik? Tjek Trusler tælleren og besøgende detaljer for mistænkelige mønstre.
Nul besøgende på instrumentbrættet
Scenarie:
The dashboard shows 0 live visitors even though your website is getting traffic.
Hvad skal man gøre:
Check: (1) Er tracking widget installeret? Se din hjemmeside kildekode og søge efter OpsIQ script. (2) Er nøglen på webstedet korrekt? Sammenlign data- site- tasten i scriptet med nøglen i Connected Sites. (3) Er en CDN eller cache servering en gammel side uden scriptet? Ryd din CDN cache. (4) Er en annonce blocker eller CSP header blokerer scriptet? Tjek browseren konsol for blokerede anmodninger.
Læsning af timesvartegn
Scenarie:
Your heatmap shows heavy activity between 10am-2pm on weekdays but nothing on weekends.
Hvad skal man gøre:
Dette er et B2B trafikmønster. Dine besøgende arbejder fagfolk browsing i løbet af forretningstider. Konsekvenser: (1) Planlæg støtte personale til hverdage åbningstider. (2) Send e-mail kampagner Tuesday- Torsdag morgen. (3) Ugentlige vedligeholdelsesvinduer er sikre. (4) Overvej at tilbyde live chat kun i myldretiden.
Trafikstigning fra ukendt kilde
Scenarie:
You see a sudden spike of 500 visitors in one hour from an unknown referrer.
Hvad skal man gøre:
Gå til besøgende og filter ved tidsvinduet. Tjek: (1) Er de rigtige besøgende eller bots? Se på session varighed, sider set, og browser mangfoldighed. (2) Hvis virkelige, hvilken side lander de på? (3) Kontroller referencen URL. Nogen kan have knyttet til dig fra Reddit, Hacker News, eller en populær blog. (4) Hvis det er bot trafik, kontrollere Trusler og overveje at blokere IP rækkevidde.
Hvorfor er min besøgstælling forskellig fra Google Analytics?+
OpsIQ tæller besøgende forskelligt. Det bruger browser fingeraftryk og cookies, mens GA bruger en anden cookie model. Bot filtrering, ad blocker satser, og script loading orden kan også forårsage forskelle. 10-20% varians er normal.
Kan jeg indføje instrumentbrættet i et andet værktøj?+
Dashboardet er designet til OpsIQ admin. Ved ekstern rapportering, brug REST API til at trække analytics data og vise det i dit eget instrumentbræt eller BI værktøj.
Hvad betyder "trusler" skranken?+
Det tæller. IP adresser, der OpsIQ har markeret eller blokeret baseret på trusselsscoring, gentagne fejlbehæftede logins eller manuelle blokke. Klik på tælleren for at se detaljer og administrere blokke.
Analyse
Besøgslog
Den besøgende log viser hvert besøg på dine sporede hjemmesider. Hver række er en side belastning fra én besøgende. Brug det til at undersøge individuel besøgende adfærd, finde kampagne trafik, og diagnosticere tracking spørgsmål.
BesøgslogDen virkelige besøgende log: filter efter dato, søgning og enhed, derefter læse hvert besøg af IP/ e-mail, placering, kilde, enhed og tid, trusler markeret med rødt.
Hvad hver række viser
IP -adresse
Besøgende IP adresse. Anonymeret hvis IP anonymisering er aktiveret i Indstillinger. Klik for at se alle besøg fra dette IP.
Land og by
Detekteret fraIP adresse ved hjælp af GeoIP-data. Kræver MaxMind GeoLite2 database eller Cloudflare geo headers. Viser "Ukendt" hvis GeoIP ikke er konfigureret.
Side URL
Den side, den besøgende indlæste. Klik for at se den fulde URL. Lang URLs er afkortet i tabellen visning.
Henviser
Hvor den besøgende kom fra før landing på dit websted. "Direkte" betyder ingen referrer (bogmærker, indtastede URLs, nogle app links).
Enhed og browser
Besøgende enhed type (desktop, mobil, tablet) og browser (Chrome, Safari, Firefox, osv.). Parsed fra User- Agent header.
Dato og klokkeslæt
Når siden var indlæst, i din konfigurerede tidszone.
Kundeidentitet
Hvis den besøgende identificeres (via id-token eller login), vises deres navn eller e-mail. Ellers vises som anonym.
Filtre
Datointerval
Filtrerbesøg til en bestemt tidsperiode. Standard: sidste 7 dage.
Søg
Søg efter IP adresse, side URL, referrer, land eller kunde e-mail.
Kilde
Filtrér efter trafikkilde: Direkte, Organisk, Social, Henvis, Betalt, Email.
Enhed
Filtrer efter skrivebord, mobil eller tablet.
Kun nye
Vis kun første gang besøgende, der aldrig er blevet set før.
Bearbejdede eksempler
Find besøgende fra en specifik kampagne
Scenarie:
You launched a Google Ads campaign with UTM parameter utm_source=google&utm_medium=cpc&utm_campaign=summer-sale. How do you find those visitors?
Hvad skal man gøre:
I Besøgsloggen skal du bruge søgefeltet og skrive "sommer-salg". Søgechecks henviser til URLs og side URLs, så UTM parametre vil matche. Du kan også filtrere efter Kilde = Betalt for at indsnævre yderligere.
Find en kunde, der rapporterede et problem
Scenarie:
A customer emailed saying "your checkout page was broken yesterday around 3pm." How do you find their session?
Hvad skal man gøre:
Søg efter deres e-mail adresse i Besøgsloggen. Hvis de var logget ind, vil deres identitet vise sig. Sæt datoområdet til i går. Kig efter besøg for at tjekke sider omkring kl. 15. Klik på deres session for at se den fulde side flow og eventuelle JavaScript fejl.
Detektér en loop-hitter eller scrafer
Scenarie:
You notice an IP address has 500+ visits in one hour, all to the same page.
Hvad skal man gøre:
Dette er sandsynligvis en bot, skraber, eller brudt script. Gå til Besøgslog og søge efter IP. Check: (1) Er alle besøg på samme side? (2) Er brugeragenten en kendt bot? (3) Er sessionen altid varighed 0 Hvis bekræftet som en bot, gå til sikkerhed og blokere IP.
Besøgslog vs sessioner vs Live feed
Besøgslog
Rå sidebelastninger. En række per side visning. Bedste for: undersøge specifikke sider, finde trafik fra specifikke kilder, diagnosticere tracking problemer.
Sessioner
Grupper sidevisning i rejser. En række pr. besøg session. Bedste for: forstå brugerflow, måling sessionsvarighed, identificere konverteringsstier.
Levende foder
Real- time aktivitet. Viser besøgende i øjeblikket på dit websted. Bedste for: overvågning kampagner i gang, spotting high- intention besøgende, ser supportmuligheder.
Hvorfor ser jeg mine egne besøg i loggen?+
OpsIQ spore alle besøg som standard. For at udelukke din egen trafik, tilføje dine IPadresse til de udelukkede IPs liste i Indstillinger > Sporing.
Hvorfor viser en besøgende "Ukendt" land?+
GeoIP opslag kræver enten Cloudflare geo headers (automatisk hvis du bruger Cloudflare) eller en MaxMind GeoLite2 database fil. Tjek Indstillinger > GeoIP sti for at sikre databasefilen eksisterer og er læsbar.
Hvor længe opbevares besøgsdata?+
Besøgsdata opbevares i opbevaringsperioden indstillet i Indstillinger (standard: 90 dage). Derefter bliver gamle optegnelser automatisk renset af cron- retentionjobbet.
Analyse
Sessioner
Sessions gruppe flere sidevisninger fra samme person til en enkelt rejse. Mens Besøgende log viser individuelle side belastninger, Sessioner viser dig, hvordan folk bevæger sig gennem din hjemmeside fra landing til exit.
SessionerDen virkelige Session Log: hver besøgende rejse som en række (IP, land, enhed, kilde, varighed og sider) med risikable sessioner markeret med rødt.
Hvordan sessioner fungerer
En session starter når en besøgende indlæser deres første side. Den fortsætter som de navigerer til flere sider. En session slutter, når den besøgende er inaktiv i sessionstimeperioden (standard: 30 minutter) eller lukker deres browser. Den samme person vender tilbage efter timeout skaber en ny session.
Hvad hver session viser
Første side
Landingssiden, hvor den besøgende indtastede dit websted. Dette fortæller dig, hvilket indhold der tiltrækker folk.
Sidste side
Exit side, hvor den besøgende venstre. Hvis exit siden er ofte prissætningen side, kan de besøgende sammenligne dig med konkurrenter.
Side antal
Hvor mange sider den besøgende har set i denne session. Flere sider betyder normalt mere engagement, men det kan også betyde at den besøgende er tabt.
Varighed
Total tid fra første side belastning til sidste aktivitet. Sessioner med 0 sekunder er bounces (enkelt sidevisning, ingen yderligere interaktion).
Kilde
Trafikkilden til denne session (direkte, Google, social, henvisning osv.).
Land
Detected land fra den besøgendes IP adresse.
Bounce
Om den besøgende forlod efter visning kun én side. Bundede sessioner har en rød indikator.
Omregning
Om den besøgende har gennemført en tracked conversion event (køb, tilmelding, formular indsendelse) under denne session.
Filtre
Søg
Søg efter IP, e-mail, side URL, eller referere inden for sessioner.
Type
Filtrer af nye besøgende (første session nogensinde) eller Returnerer besøgende.
Kilde
Filtrér efter trafikkilde.
Land
Filtrér efter land for at se sessioner fra en bestemt region.
Trusler / unddragne
Filter der kun viser hoppede sessioner eller sessioner markeret som trusler.
Bearbejdede eksempler
Profil en kunde med høj værdi
Scenarie:
A customer just made a large purchase. You want to understand their journey before buying.
Hvad skal man gøre:
Søg efter deres e-mail i sessioner. Se på alle deres sessioner: (1) Hvor mange gange besøgte de, før de købte? (2) Hvilke sider så de? (3) Brugte de chat eller åbnede en billet? (4) Hvad var den samlede tid fra første besøg til at købe? Dette fortæller dig den typiske købsrejse for høj-værdi kunder.
Detektér login fra et nyt sted
Scenarie:
A customer usually logs in from Nigeria but you see a session from Russia.
Hvad skal man gøre:
Søg efter kundens e-mail i sessioner. Sammenlign det land, som de seneste sessioner har fundet sted. Hvis en session pludselig vises fra et usædvanligt land, kan det være lovlig rejse eller en kompromitteret konto. Tjek: (1) Var der et mislykket login forsøg før den succesfulde? (2) Gjorde IP ændre inden for samme session? Flag det til gennemgang, hvis mistænkelig.
Hvad er forskellen på en session og en besøgende?+
En besøgende er en person (eller browser). En session er et besøg fra den pågældende person. Den samme besøgende kan have mange sessioner over tid. Sessioner udløber efter timeout periode.
Hvordan identificerer OpsIQ de besøgende, der vender tilbage?+
OpsIQ bruger en kombination af cookies, browserfingeraftryk og bekræftede identitetstokens. Hvis en besøgende rydder sine cookies og ikke er logget ind, vil de fremstå som en ny besøgende.
Analyse
Levende foder
Live Feed viser besøgende i øjeblikket på din hjemmeside i realtid. Det opdateres automatisk hver 15 sekunder (konfigurerbar). Brug det under kampagner, produkt lancerer, og travle supportperioder for at se, hvad der sker lige nu.
Levende foderSe, hvem der er på dit websted dette andet og hvad de gør, forfriskende automatisk hver 15 sekunder.
Sådan virker det
Live Feed meningsmålinger din server på den konfigurerede opdateringsinterval. Hver række viser en besøgende i øjeblikket på dit websted: deres nuværende side, land, enhed, kilde, sessionsvarighed og sidetal. Grønne højdepunkter indikerer ny aktivitet siden sidste opdatering. Klik på alle besøgendes rækker for at se deres fulde sessionsdetaljer.
Indstillinger
Genopfrisk interval
Hvor ofte live feed opdateringer. Standard: 15 sekunder. Lavere værdier (5-10s) give hurtigere opdateringer, men bruge flere serverressourcer. Højere værdier (30-60s) er lettere på serveren, men mindre real- tid.
Aktivt tærskelbeløb
Hvor længe en besøgende anses for at være "aktiv" efter deres sidste sidebelastning. Standard: 90 sekunder. Hvis en besøgende indlæser en side og derefter læser det for 2 minutter uden at klikke, de forsvinder fra live feed efter tærsklen.
Pause knap
Klik på Pause for at stoppe auto- genopfriske. Nyttigt, når du ønsker at læse detaljer uden listen opdatering. Klik på Genoptag for at genstarte.
Bearbejdede eksempler
Spot en varm bly under en kampagne
Scenarie:
You are running a product launch. A visitor just viewed your homepage, then features, then pricing, and is now on the checkout page.
Hvad skal man gøre:
Dette er højintention adfærd. I live feed: (1) Klik på den besøgende for at se deres session. (2) Hvis de starter en chat, AI vil have deres fulde rejse sammenhæng. (3) Hvis de forlader uden at købe, de bliver et spor i Leads side. (4) Overvej at skabe en proaktiv regel for at vise en chat besked, når besøgende nå checkout.
For mange besøgende fra samme IP
Scenarie:
You see 20 visitors from the same IP address, all on different pages.
Hvad skal man gøre:
Dette kan være: (1) Et kontor med fælles internet. Tjek, om besøgene ligner virkelige mennesker (forskellige sider, rimelige sessionsvarighed). (2) En bot eller skraber. Tjek, om sessioner er meget korte (0-1sekunder) eller rammer sider systematisk (3) En belastningsprøve. Hvis du kører automatiserede tests, udelukker IP fra sporing.
Hvorfor live feed viser 0 besøgende, når mit websted har trafik?+
Check: (1) Er widget script installeret på dit websted? (2) Er lokalitetsnøglen korrekt? (3) Er den aktive tærskel overskredet? (4) Bruger besøgende aggressive annonceblokkere, der blokerer for sporingsscriptet?
Kan jeg filtrere live-feed efter land eller enhed?+
Live feed viser alle aktive besøgende. Til filtrerede visninger, skal du bruge Besøgslog eller sessioner sider med deres filter muligheder. Live feed er bevidst enkel for real- time overvågning.
Analyse
Top sider
Top Sider viser, hvilke sider på din hjemmeside får mest trafik. Det rangerer sider ved besøg, engagement, konverteringer og støtte aktivitet. Brug det til at identificere dit bedste indhold, finde underpræsterende sider, og opdage sider, der genererer supportspørgsmål.
Top siderDine sider rangeret efter trafik og engagement, så du kan spotte top indhold og sider, der genererer støtte.
Hvad hver side viser
Side URL
Den fulde URL sti. Lignende sider (fx, produktvarianter) grupperes hvis gruppering er aktiveret.
Visninger
Samlet antal gange denne side blev indlæst i det valgte datointerval.
Unik besøgende
Hvor mange forskellige mennesker har set denne side (en person, der ser den samme side to gange tæller som 1 unik).
Afvisningsfrekvens
Procentdel af besøgende, der forlod dit websted efter kun at have set denne side. Høj bounce på landing sider = problem. Høj hoppe på "tak" sider = normal.
Gennemsnitstid
Hvor længe besøgende bruger på denne side i gennemsnit. Meget kort = ikke at læse. Meget lang på en formular side = forvirring.
Chat starter
Hvor mange chatsamtaler blev startet fra denne side. High chat starter på en produktside betyder, at varebeskrivelsen kan være uklar.
Understøttelseskort
Hvor mange supportbilletter blev skabt af besøgende, der var på denne side. Høj billetpris = potentielle UX eller indhold problem.
Bearbejdede eksempler
Find sider der kører support- spørgsmål
Scenarie:
Your support team keeps getting questions about shipping. Which page is failing?
Hvad skal man gøre:
Sortér Top Sider ved "Support billetter" eller "Chat starter" faldende. Kig efter produkt eller forsendelse sider med høje tællinger. Siden med de mest supportspørgsmål har sandsynligvis uklart information. Fix sideindholdet og overvåge, om support spørgsmål falder.
Find sider med høj exit rate
Scenarie:
You want to know where people leave your site most often.
Hvad skal man gøre:
Sortere ved at hoppe sats faldende. Ignorer sider, der naturligt exit punkter (tak sider, bekræftelse sider). Fokus på sider, som bør holde besøgende engageret: produktsider, priser, funktioner. Disse har brug for bedre calls- to- action eller klarere indhold.
Hvorfor viser en side 0 visninger, selvom jeg ved, at det får trafik?+
Check: (1) Er tracking widget installeret på denne specifikke side? Single-page apps måske ikke brand sidevisninger på ruteændringer. (2) Er siden udelukket i tracking indstillinger? (3) Er en CDN servering af en cachet version uden tracking script?
Analyse
Geo intelligens
Geo Intelligence viser, hvor dine besøgende kommer fra efter land, by, enhed og kilde. Brug det til at forstå dine geografiske markeder, beslutte sprogstøtte, planlægge regional markedsføring, og opdage mistænkelige trafikmønstre.
GeoCity in New York USAHvor dine besøgende kommer fra (efter land, by og enhed) til at størrelse markeder og spotte usædvanlig trafik.
Hvad du ser
Top lande søjlediagram
De øverste lande rangeret efter besøgstælling. Klik på et land for at bore ned til City- niveau data.
Landets doughnut
Synsopdeling af trafikken efter land.
Samlet landefortegnelse
Hvert land med besøgende i den valgte periode, viser besøgsantal, sessionstal, bounce rate og omregningskurs.
By bore- down
Klik på et land for at se, hvilke byer i landet har flest besøgende.
Hvordan GeoIP detektering virker
OpsIQ registrerer besøgsplacering på to måder: (1) Cloudflare geo headers. Hvis dit websted er bag Cloudflare, landedetektion er automatisk og præcis (2) MaxMind GeoLite2 database. Download den gratis database og konfigurere stien i Indstillinger. City- niveau detektion kræver Geolite2- City databasen, ikke kun landedatabasen.
VPN og proxytrafik
Besøgende, der bruger VPN 'er, vil synes at komme fra VPN- serverens placering, ikke deres virkelige placering. Dette er ved design. OpsIQ kan og bør ikke forsøge at omgå VPN 'er. Hvis du ser usædvanlige land mønstre, overveje, at 10-20% af besøgende kan bruge VPN 'er.
Bearbejdede eksempler
Uventet landtrafik
Scenarie:
You run a US-only business but 30% of traffic is from India.
Hvad skal man gøre:
Check: (1) Er disse reelle besøgende? Se på sessionsvarighed og sider set. Meget korte sessioner med høj bounce = sandsynligvis bots. (2) Finder de dig via Google? Tjek referenten. (3) Kan de være potentielle kunder på et nyt marked? Hvis trafikken er ægte og engageret, overveje at tilføje Indiaspecifikke priser eller indhold.
Beslutning om sprogunderstøttelse
Scenarie:
You want to know if you should translate your site into Spanish.
Hvad skal man gøre:
Se på Geo Intelligence side. Hvis Spanish- talende lande (Spanien, Mexico, Colombia, Argentina osv.) tilsammen repræsenterer mere end 10% af din trafik med lave hoppe satser, oversættelse er værd at overveje. Også kontrollere: gør besøgende fra disse lande konvertere til samme priser som dit primære marked?
Regional støtte skiftplanlægning
Scenarie:
You need to decide support team hours for different time zones.
Hvad skal man gøre:
Brug timebaseret heatmap (på Dashboard) kombineret med Geo Intelligence. Hvis 40% af din trafik er fra Europa og 35% Hvis du arbejder fra USA, skal du have dækning for begge tidszoner.Heatmap viser præcis, hvornår hver region er mest aktiv.
Land med besøg, men ingen ordrer
Scenarie:
Germany shows 500 visitors this month but zero sales.
Hvad skal man gøre:
Undersøg: (1) Er de hoppende på prissiden? Måske er din prisfastsættelse ikke konkurrencedygtig for dette marked. (2) Skiber du til Tyskland? Tjek om din forsendelsesside nævner Tyskland. (3) Er din checkout tilgængelig i EUR? Valuta mismatch forårsager opgivet check outs. (4) Er disse besøgende fra en enkelt kilde, der kan være lav- hensigt trafik?
Hvorfor viser en besøgende "Ukendt" land?+
GeoIP er ikke konfigureret. Enten opsættes Cloudflare (som tilføjer geo headers automatisk) eller downloader MaxMind GeoLite2 databasen og indstille filstien i Indstillinger > GeoIP- sti.
Kan jeg blokere trafikken fra bestemte lande?+
OpsIQ blokerer ikke for hvert land. Brug din webserver eller Cloudflare firewall regler for landbaseret blokering.OpsIQ fokuserer på synlighed, ikke adgangskontrol på netværksniveau.
Analyse
Intenttragt
The Intent Funnel klassificerer besøgssessioner efter, hvad de synes at være forsøger at gøre: gennemse, forskning, sammenligne, købe, få støtte, eller forlade. Brug det til at forstå balancen af hensigt på dit websted og identificere, hvor besøgende falder ud.
IntenttragtSessioner klassificeret efter hensigt (gennemse, forskning, sammenligne, købe), så du kan se præcis hvor folk falder.
Intensive kategorier
Browsing
Besøgende kigger sig omkring. Korte sessioner, få sider, ingen specifikke mål opdaget.
Forskning
Besøgende læse produkt / funktion sider, docs, eller blog indhold. Længere tid på side, flere indhold sider.
Sammenligning
Besøgende ser priser, plan sammenligning eller feature tabeller. Ofte vender tilbage besøgende.
Køb
Besøgende på checkout, vogn eller signup sider. Høj hensigt. Dette er dine konverteringsmuligheder.
Støtte- søgning
Besøgende på hjælpsider, kontaktsider eller start chat.
Hoppende
Besøgende, der forlod efter en side.
Hvordan man læser tragten
Fortolkning af tragten
Scenarie:
1,000 visitors viewed Pricing. 270 opened chat. 92 started checkout. 64 paid. 18 opened support tickets.
Hvad skal man gøre:
Prisliste side er stærk nok til at skabe hensigt. Chat er vigtigt i køberstien: 27% af prissætning besøgende engagere sig med chat, før de køber. Support billetter efter kassen kan indikere aktivering eller betaling forvirring. Action: (1) Sikre AI chat svar prisspørgsmål godt. (2) Undersøg 18 post-checkout support billetter til fælles spørgsmål.
Tidsfiltre
Brug datointervallet til at sammenligne intentionsmønstre på tværs af perioder. For eksempel sammenligne Black Friday uge til en normal uge. Du bør se et spike i "Købe" hensigt og muligvis "Support- søger" hvis dine kampagner skabt forvirring.
Hvordan klassificerer OpsIQ hensigt?+
OpsIQ ser på siden URLs, session adfærd, og tidsmønstre. Prissætning sider signalsammenligning intention. Checkout sider signal køber hensigt. Hjælp / kontakt sider signal støtte hensigt. Klassificeringen er heuristic- baseret, ikke AI- drevet.
Kan jeg tilpasse intention kategorier?+
Ikke i øjeblikket. Kategorierne er bygget-i baseret på almindelige web adfærd mønstre. Brugerdefineret hensigt klassificering er på køreplanen.
Analyse
Kromner, retention og stier
Byg brugerdefinerede rejser fra side eller begivenhed trin, måle kohort fastholdelse og opdage stier besøgende oftest tage gennem et websted.
ProduktskærmEn brugerdefineret tragt viser hver side / begivenhed trin, de resterende besøgende og konverteringsprocent.
Krydderier i form af blomstergrifler / støvfang
Opret en navngivet tragt med 2 til 8 side eller begivenhed trin. Indstil konverteringsvinduet i timer; en besøgende tæller kun, når de bestilte trin forekommer inde i dette vindue. Brug droppet mellem trin til at vælge hvor man kan inspicere replay, fejl, sidehastighed eller beskeder.
Tilbageholdelse
Tilbageholdelse grupper besøgende i ugentlige kohorter og viser, hvor mange tilbage. 6, 8 eller 12 week horisont. Hold kohortedefinitionen stabil, når du sammenligner udgivelser eller kampagner.
Stier
Stier viser de mest almindelige sidesekvenser. Vælg en sti længde fra 2 til 5 sider til at holde resultatet læseligt. Brug det til at finde uventede omveje, fælles udgange og indhold, der gentagne gange går forud for konvertering.
Brugerdefinerede tragte er analytiske definitioner, ikke automatiseringer. For at reagere på et afsluttet trin, skal du oprette en konvertering mål, segment, udløser eller workflow.
Analyse
Session replay
Session Replay lader dig se en tidslinje for, hvad en besøgende gjorde på dit websted: hvilke elementer de klikkede, hvordan de rullede, hvor de svævede, og hvad de skrev (med følsomme felter maskeret). Brug det til at diagnosticere UX problemer, kontrollere fejlrapporter, og forstå kundeforvirring.
Session replayReplay præcis hvad en besøgende gjorde: klik, ruller, skrive (følsomme felter maskeret), på en tidslinje scrubber.
At finde den rigtige session
Fra siden Sessioner, se efter sessioner med rapporterede problemer, high page tæller uden konvertering, eller sessioner fra kunder, der har indgivet supportbilletter. Klik på genafspilningsikonet for at åbne tidslinjen visning.
Hvad spil viser
Tidslinje
En vandret bjælke, der viser begivenheder over tid. Klik hvor som helst på tidslinjen for at hoppe til det øjeblik.
Sidenavigation
Hver side belastning vises som et segment på tidslinjen. Du kan se den nøjagtige sti, besøgende tog.
Klik
Klik begivenheder vises som prikker på tidslinjen og som højdepunkter på siden genopbygning.
Rulning
Rul dybden er sporet, så du kan se hvor langt ned besøgende læse.
Form interaktion
Feltfokus og indtastning registreres. Tekstinput i adgangskode og følsomme felter er som standard maskeret.
Privatliv og maskering
Session replay masker følsomme formularfelter som standard. Adgangskodefelter, kreditkortindgange og felter markeret med data-opsiq-maske registreres aldrig. Du kan indstille yderligere maskeringsregler i Indstillinger > Tracking. Hvis din compliance politik kræver det, kan du deaktivere reafspille helt.
Diagnosticering af en brudt udtjekning
Scenarie:
A customer says "I tried to buy but the button did nothing."
Hvad skal man gøre:
Find deres session på siden Sessions (søg via e-mail). Åbn genafspilningen.1) Har de klikke på den rigtige knap? (2) Har en JavaScript fejl opstår? (Tjek siden med JS Fejl for den tid.) (3) Har siden genindlæst eller vist en fejlmeddelelse? (4) Var et krævet felt tomt? Genafspilningen viser præcis, hvad der skete.
Hvor meget opbevaring genspiller session brug?+
Replay data vokser med trafikvolumen. Brug retentionsindstillinger til automatisk at rydde op gamle replay-data. For high-traffic sites, overveje en kortere genspils opbevaring periode (fx 30 dage) til at styre lagring.
Kan besøgende fravælge at spille igen?+
Hvis "Respect Do Not Track" er aktiveret i Indstillinger, registreres besøgende med DNT-overskrifter ikke. Du kan også udelukke specifikke sider fra at genspille i sporingsindstillingerne.
Analyse
Begivenheder log
The Events Log viser hver begivenhed, at OpsIQ har optaget: sidevisninger, klik, chat starter, billet kreationer, salg, og brugerdefinerede begivenheder. Brug det til debug-integreringer, kontrollere webhook levering, og forstå rækkefølgen af handlinger.
Begivenheder logEn tidslinje over alt OpsIQ -records (sidevisninger, chats, salg, webkrogs, brugerdefinerede begivenheder) til fejlsøgning og revision.
Bygning i events (automatisk)
pageview
Fyret hver gang en sporet side belastninger. Inkluderer URL, titel, referrer og tidsstempel.
chat.started
Fyret når en besøgende åbner chatkontrollen og sender deres første besked.
chat.message
Fyret for hver besked i en chat samtale (både besøgende og AI / agent).
ticket.created
Fyret, når en ny supportbillet er oprettet (fra chat, e-mail, widget eller admin).
ticket.replied
Fyret, når et svar tilføjes til en billet.
order.completed
Fyret, når et køb er gennemført gennem en tilsluttet platform.
form.submitted
Fyret når en sporede formular indsendes (hvis formularsporing er aktiveret).
identify
Fyret, når en besøgende identificeres via et identitetstegn.
security.login_failed
Fyret, når et login forsøg mislykkes.
Brugerdefinerede begivenheder
Du kan sende brugerdefinerede begivenheder fra din hjemmeside eller server til OpsIQ. Brugerdefinerede begivenheder er nyttige for sporing af handlinger, der er specifikke for din virksomhed: klik på knappen, brug af funktionen, videospil, downloads osv.
JavaScript · brugerdefineret begivenhed fra browser
// Send a custom event from the browser
window.OpsIQ = window.OpsIQ || [];
window.OpsIQ.push(["track", "plan_selected", {
plan: "pro",
billing: "annual",
value: 99
}]);
Filtrér med specifikke begivenhedsnavne: sidevisning, chat. started, ticket. created osv.
Datointerval
Vis begivenheder fra en bestemt tidsperiode.
Søg
Søgeresultater efter søgeord (URL, e-mail, begivenhedsegenskabstal).
Hvor længe er der gået?+
Begivenheder følger retentionspolitikken som er angivet i Indstillinger. Standard: 90 dage. Højværdibegivenheder (køb, sikkerhedshændelser) kan indstilles med længere retention.
Kan jeg bruge begivenheder i A / B eksperimenter?+
Ja. Når du opretter et eksperiment, vælger du en konverteringsbegivenhed. Enhver bygnings-i eller brugerdefineret begivenhed kan bruges som konvertering mål.
Analyse
A / B-forsøg
Eksperimenter lader dig teste to versioner af en side eller funktion og måle, som man udfører bedre. OpsIQ spor indtryk, konverteringer, og statistisk betydning.
A / B-forsøgKør to varianter, se konverteringer og statistisk betydning, og erklære vinderen.
Hvordan eksperimenter virker
1
Opret et eksperiment
Giv det et navn, definere din primære metrisk (konvertering begivenhed), og indstille varianter (kontrol og test).
2
Kør det
OpsIQ tilfældigt tildeler besøgende til varianter og sporer deres adfærd. Må ikke ændre eksperimentet, mens det kører.
3
Læs resultaterne
Efter nok data er indsamlet, kontrollere konfidensniveau.95% tillid betyder, at du kan være 95% Jeg er sikker på, at forskellen er reel, ikke tilfældig chance.
Eksperimentstater
Udkast
Oprettet, men endnu ikke startet. Du kan stadig redigere varianter og målinger.
Kører
Aktivt at tildele besøgende til varianter. Rediger ikke mens du kører.
Færdiggjort
Nået statistisk betydning eller blev manuelt stoppet. Resultater er endelige.
Arkiveret
Resultaterne er blevet gennemgået, og forsøget er ikke længere nødvendigt på den aktive liste.
Bedste praksis
Definér din metrisk før lanceringen
Beslut hvad du måler før start. Valg af en metrisk efter at se resultater introducerer bias.
Ekskl. intern trafik
Tilføj dit holds IP adresser til udelukkelseslisten, så personalets besøg ikke skæve resultater.
Løb længe nok
Stop ikke et eksperiment efter 100 besøgende. Du har brug for hundredvis eller tusindvis af besøgende per variant for pålidelige resultater.
Test en ændring ad gangen
Hvis du ændrer overskriften OG knappens farve, vil du ikke vide, hvilken ændring forårsagede forbedringen.
Registrer din beslutning
Efter eksperimentet slutter, bemærk hvilken variant der vandt og hvorfor du valgte at gennemføre det.
Hvor mange besøgende skal jeg bruge til et gyldigt eksperiment?+
It depends on the baseline conversion rate and the effect size you want to detect. As a rule of thumb: at least 500 visitors per variant for a 20% effect size. For smaller effects, you need thousands.
Kan jeg køre flere eksperimenter på samme tid?+
Ja, men vær forsigtig. Hvis to eksperimenter påvirker den samme side, kan deres resultater interagere. Det er sikrere at køre eksperimenter på forskellige sider eller funktioner samtidigt.
Analyse
JavaScript fejl
JavaScript Fejl indsamler klient- side fejl fra din hjemmeside besøgende. En brudt knap, en mislykkedes API call, eller en manglende ressource dukker op her. Brug den til at finde og rette fejl, der påvirker virkelige kunder.
JS fejlRigtige besøgende rammer brudt kode overflade her (besked, kilde, browser og hvor ofte), så du kan løse hvad der betyder noget.
Hvad hver fejl viser
Fejlmeddelelse
JavaScript fejltekst (fx "TypeError: Kan ikke læse egenskaber for udefinerede").
Side URL
Hvilken side fejlen opstod på.
Browser og enhed
Hvilken browser og enhed type så fejlen. Nogle fejl er browser- specifikke.
Stack- spor
Kodestedet hvor fejlen opstod. Klik for at udvide hele stack sporet.
Første set
Da denne fejl første gang dukkede op.
Sidst set
Når denne fejl senest opstod.
Tælling
Hvor mange gange denne fejl er blevet registreret.
Berørte sessioner
Hvor mange forskellige besøgssessioner oplevede denne fejl.
Prioritering af fejl
Ikke alle JavaScript fejl kræver øjeblikkelig opmærksomhed. Prioritér ved: (1) fejl på kritiske sider (checkout, tilmelding, login), (2) fejl med høje sessionstal, (3) fejl, der dukkede op for nylig (mulig regression fra en kode ændring), (4) fejl på din egen kode (ikke tredjeparts scripts).
Fastsættelse af en brudt udtjekningsknap
Scenarie:
The JS Errors page shows "TypeError: Cannot read properties of undefined (reading submit)" on /checkout, affecting 45 sessions this week.
Hvad skal man gøre:
Det betyder: 45 virkelige kunder kunne ikke fuldføre check out. Trin: (1) Åbn siden i den samme browser / enhed kombination. (2) Åbn browser konsol og reproducere fejlen. (3) Kontroller stack spor for at finde den nøjagtige linje kode. (4) Fix fejlen, implementere og overvåge fejltallet går til nul.
Er OpsIQ fange fejl fra tredjeparts scripts?+
Ja. OpsIQ indfanger alle JavaScript fejl på siden, herunder fejl fra analytics scripts, chat widgets og annonce scripter. Filtrér efter URL i stack sporet til at fokusere på din egen kode.
Hvordan udelukker jeg kendte harmløse fejl?+
Man kan ikke undertrykke specifikke fejl i OpsIQ, men du kan filtrere listen efter side URL eller fejlmeddelelse. Retter eller ignorerer fejl fra browserudvidelser (de viser ofte som fejl fra ukendte kilder).
Salg
Salg og ombygninger
Salgssporing forbinder din butik eller fakturering platform til OpsIQ, så du kan se indtægter sammen med besøgende adfærd. Hvert køb tilskrives en besøgende rejse, så man ved, hvilke sider, kampagner og kanaler drev indtægter.
SalgDen virkelige salgsskærm, indtægter op toppen, derefter Nylige indkøb (dato, kunde, platform, beløb), hver tilskrives sin trafik kilde.
Salgsdashboard
Dagens salg
Indtægter fra ordrer afsluttet i dag. Forfrisker med hver ny ordre begivenhed fra din tilsluttede platform.
Denne uge / denne måned / i alt
Indtægter, der er aggregeret i perioden. Tilbagebetalinger fratrækkes disse totaler.
Trend diagram
Linjediagram, der viser daglig omsætning i det valgte datointerval. Kig efter toppe (kampagner) og fald (problemer, sæsonbestemt).
Top konvertering kilder
Hvilke trafikkilder fører til de fleste køb. "Direkte" købere ofte bogmærke dit websted. "Google" købere fandt dig gennem søgning.
Nylige køb
De seneste ordrer med kunde e-mail, beløb, valuta og elementer købt.
Platformopsætningsvejledninger
Shopify
Go to Connectors > Shopify. Create a custom app in your Shopify admin (Settings > Apps and sales channels > Develop apps). Grant scopes: read_orders, read_customers, read_products. Copy the Admin API access token. In OpsIQ, enter your store domain (e.g., your-store.myshopify.com) and the access token. Click Test Connection. If successful, enable webhook sync for real-time order notifications.
WooCommerce
Gå til forbindelser >WooCommerce. i din WordPress admin, gå til WooCommerce> Indstillinger > Avanceret > REST API. Opret en nøgle med læse / skrive tilladelse. Kopiér forbrugernøglen og forbruger hemmelighed. OpsIQ, indtast dit websted URL, forbrugernøgle, og forbruger hemmelighed. Klik på Test Connection.
Hvad er BigCommerce?
Gå til Connectors > BigCommerce. I din BigTrade admin, gå til Avancerede Indstillinger >API Konti. Opret en V2 / V3 API Konto med læseplads for ordrer, kunder og produkter. Kopiér adgangskoden, klientens id, og API sti. Indtast dem i OpsIQ og test.
Magento 2
Gå til Connectors > Magento. I din Magento admin, gå til System > Integrationer. Opret en ny integration med API Ressourceadgang til Salg, Kunder og Katalog. Aktivér integrationen og kopiér adgangstavlen. Indtast den i OpsIQ med din Magento base URL.
PrestaShop
Gå til Connectors > PrestaShop. I din Prestashop admin, gå til Avancerede parametre > Webservice. Aktivér webtjenesten og oprette en ny nøgle. Giv adgang til ordrer, kunder og produkter. Kopiér nøglen og indtast den i OpsIQ med din butik URL.
OpenCart
Gå til Connectors > OpenCart. Generér API legitimation fra dit OpenCart admin panel. Indtast API URL, brugernavn, og nøgle i OpsIQ. Forbindelsen bruger OpenCart 's REST API for ordre- og kundedata.
osCommerce
Gå til Connectors > osCommerce. Indstil databaseadgang eller API legitimation som dokumenteret i connector settings. osCommerce integration typisk kræver direkte databaseadgang eller en brugerdefineret API modul.
Stripe
Gå til forbindelser > Stripe. Kopiér din Stripe begrænset API nøgle fra Stripe instrumentbrættet (Udviklere >API taster). Nøglen har brug for læse adgang til Kunder, afgifter, fakturaer og abonnementer. Indtast det i OpsIQ. Indstil webhook endpoint for realtids begivenheder.
Brugerdefinerede / andre platforme
Brug REST API eller webkroge til at sende salgsbegivenheder fra enhver platform. Send order. completed events med kundens e-mail, beløb, valuta og elementer. Se afsnittet Begivenheder API for nyttelast format.
Forståelse af din salgstragt
Top konvertering kilder
Viser hvilke kanaler der bringer betalende kunder. 1000 besøgende og 50 salg, det vil sige en5% konverteringsrate. Hvis e-mail bringer 200 besøgende og 30 salg, dvs. 15%. E-mail er mere effektiv per besøgende.
Restitutionsbeløb
Refinansierede ordrer spores separat. De reducerer din nettoindtægt totaler. Hvis refunderingsrater er høje fra en bestemt kilde, trafikken kan være lav kvalitet.
Valuta håndtering
OpsIQ gemmer den oprindelige transaktionsvaluta og beløb. Multivalutavirksomheder se indtægter i hver valuta. Normaliseret rapportering bruger den konfigurerede vekselkurs.
Bearbejdede eksempler
100 besøgende, nul salg
Scenarie:
Your pricing page gets 100 visitors per day but zero conversions.
Hvad skal man gøre:
Undersøg: (1) Brug Session Replay på prissætning side besøgende. Se, hvordan de interagerer med prissætningen tabellen. (2) Tjek Top Sider for prissætningen side bounce sats og tid-on- side. (3) Check Chat samtaler fra prissætning side besøgende. Hvilke spørgsmål stiller de? (4) Sammenlign din prissætning side til konkurrenter. (5) Prøv et A / B eksperiment med forskellige priser layouts.
Tildeling af en marketingkampagne
Scenarie:
You sent an email campaign with UTM tags. How do you measure its revenue impact?
Hvad skal man gøre:
Gå til Salg og filter ved kilden. Søg efter kampagnen UTM parameter. Du vil se: (1) Hvor mange besøgende kom fra e-mailen. (2) Hvor mange omregnet til salg. (3) Samlede indtægter, der er afsat til kampagnen (4) Sammenlign med den samme periode før kampagnen.
Hvorfor viser Sales nul, selvom min butik har ordrer?+
Check: (1) Is the platform connector connected and healthy? Go to Connectors and check the status. (2) Is webhook sync enabled? If using polling, is the cron job running? (3) Does the connector have the right API scopes? For Shopify, you need read_orders.
Hvordan tildeler OpsIQ et salg til en besøgende?+
Når en ordre kommer ind via stikket, matcher OpsIQ kundens e-mail til en kendt besøgende. Hvis den besøgende blev sporet før købet, er salget tilskrives deres besøgende rejse, herunder trafik kilde, landing side, og session historie.
Kan jeg manuelt tilføje salg?+
Du kan sende salgsarrangementer via REST API eller webkroge fra ethvert system. Begivenhedsformatet er dokumenteret i Events API afsnit.
Salg
Blade
Leads er besøgende eller kunder, der viser køb eller støtte hensigt. OpsIQ registrerer automatisk fører baseret på adfærd: prissætning sidebesøg, returbesøg, chat interaktioner, checkout starter, og høj engagement. Brug den Leads side til at prioritere opfølgning og fodre din CRM-rørledning.
BladeDen virkelige Leads skærm, high- intention besøgende som et søgbart bord (IP/ e-mail, placering, enhed, kilde, tid på stedet) med top kilder og lande.
Hvad der fører til det
Prisfastsættelsesbesøg
Besøgende, der ser din prissætning eller planer side er aktivt overvejer et køb.
Besøg på hjemkomststedet
Besøgende, der kommer tilbage flere gange er engageret, men endnu ikke konverteret.
Chat interaktioner
Besøgende, der starter en chat, søger aktivt hjælp, enten før-køb eller efter-køb.
Checkout starter
Besøgende, der når checkout side, men ikke fuldføre købet.
Indlæg
Besøgende, der indsender en kontaktformular, demo anmodning eller signap form.
Højsidet engagement
Besøgende, der ser mange sider med lang sessionstid er dybt forskningskrævende.
Blydetailpanel
Klik på et hvilket som helst spor for at se deres fulde profil:
Identitet
Navn, e-mail, virksomhed hvis kendt. Anonyme spor viser IP og placering.
Sessioner
Alle sessioner fra dette bly med sideflow, varighed og kilde.
Sider set
Hver side de besøgte, beordret af rekognoscering.
Kilde
Hvordan de fandt dig: økologisk, betalt, social, henvisning, direkte.
Blyscore
A0-100 score baseret på adfærd intensitet, recoence, og side hensigt.
CRM-status
om dette spor er blevet tilføjet CRM som en kontakt eller aftale.
Salgstips
AI- genereret forslag om, hvad der skal gøres næste (fx "Besøgte prissætning 3 gange · overveje proaktiv outreach").
Højværdi- blyskilt
Førere med en score over 80 få et "High Value" skilt. Det er dine hotteste udsigter. Prioritize dem for outreach, proaktiv chat eller CRM rørledning indgang.
Bearbejdede eksempler
Arbejde med et varmt bly
Scenarie:
A lead viewed your pricing page 3 times in 2 days, started a chat asking about enterprise plans, but has not purchased.
Hvad skal man gøre:
Dette er en høj hensigt. Trin: (1) Kontroller deres ledende detaljer for virksomheds- og rolleinformation (2) Gennemgå chatudskriften for specifikke behov og indvendinger. (3) Opret en aftale i CRM med de indsamlede oplysninger. (4) Tildel en opfølgningsopgave for et salgsholds medlem. (5) Hvis de vender tilbage til prisfastsættelsessiden, kan den proaktive chatregel udløse en personlig besked.
Konvertering af anonyme spor til CRM-kontakter
Scenarie:
You have 50 anonymous leads with high scores but no email addresses.
Hvad skal man gøre:
Indstillinger: (1) Opret en proaktiv regel, der tilbyder en rabat eller ressource download i bytte for e-mail på high- intention sider. (2) Brug chatkontrollen til at bede om e-mail, når anonyme besøgende starter en samtale. (3) Tilføj en identitet token til din login / tilmelding sider, så returnering besøgende er automatisk identificeret.
Ja. I CRM-konfiguration kan du tilføje lead-scoring regler, der øger score baseret på specifikke søgeord, begivenheder, kilder eller sidemønstre.
CRM
Din CRM · start her
OpsIQ sender en fuld AI- første CRM, der fanger kundesandhed, renser data, scorer fører, trænere tilbud, prognoser indtægter og handler, med hjemmeside intelligens, støtte, billetter, produkter og betalinger som én levende graf. Hver AI handling er indkøbt, forklarlig, reversibel og approvalskontrolleret.
AI CRMEn AI- første CRM kører af fire specialagenter, og en Trust Dial, der bestemmer, hvor meget de gør alene.
CRM-sider oversigt
AI CRM (Kommandocenter)
Start her
Din daglige hjem skærm: omsætning puls, hvad AI fundet, hvad det gjorde, godkendelse kø, næste træk, agent sundhed, og ROI.
Kontakter
Hovednet
Folk og virksomheder i din CRM. Søg, filter, score og administrere profiler.
Rørledning
Hovednet
Visuel deal board med drag- and-drop stadier, vinde sandsynlighed, og AI coaching.
Prognose og rapporter
Hovednet
Board- grade prognoser: forpligtet, sandsynligt, bedste tilfælde, med konfidensintervaller og nøjagtighed sporing.
Livscyklus
Hovednet
Hvor hver kunde står: aktiv, i fare, ekspansion klar, fornyelse skyldig, eller churning.
Byg min CRM
Konfiguration
Beskriv din CRM-opsætning på almindelig engelsk. OpsIQ genererer en reversibel plan og anvender den ved godkendelse.
CRM-sundhed
Ops.
Selv- check side: schema, agenter, ruter, AI handlinger, og levende data tæller.
Hvordan OpsIQ holder dig sikker
Spørg før handling
AI forslag gå til godkendelse kø. Du godkender, redigere eller afvise hver enkelt. Intet sker uden dit ord.
Overskriv aldrig
Når AI foreslår en ændring, det viser den aktuelle værdi og den foreslåede værdi. Human- indtastede data har herkomst beskyttelse.
Alt er reversibelt.
Hver AI handling er optaget i tidsskriftet. Du kan fortryde enhver ændring med et klik.
Forklarende
Hver AI anbefaling viser sin begrundelse og de datakilder, den brugte. Ingen sort boks.
- Helt ny?
1
Åbn AI CRM
Klik på AI CRM i venstre navigation. Kommandocentret viser din nuværende tilstand.
2
Kontrollér CRM-sundheds
Åbn CRM-sundhed for at verificere skemaet, agenter og ruter er klar.
3
Importér kontakter
Hvis en tilslutning er aktiv (Shopify, WHMCS, osv.), bliver kontakterne importeret automatisk. CSV eller oprette manuelt.
4
Opret en rørledning
Gå til Pipeline og oprette din første rørledning med faser (fx, bly, Kvalificerede, Forslag, forhandling, Won, Lost).
5
Tilføj din første aftale
Opret en aftale fra en kontakt, indstille beløb og scenen, og lad Deal Coach guide dig.
Skal jeg bruge CRM 'en?+
Nej. CRM er valgfri. OpsIQ fungerer perfekt som en tracking + support + AI platform uden CRM. Aktivér den, når du er klar til at styre salg og kundeforhold.
Kan CRM-systemet fungere uden stik?+
Ja. Du kan oprette kontakter og tilbud manuelt. Connectorer beriger CRM med platformsdata (ordrer, abonnementer, billetter), men er ikke påkrævet.
Hvad er Trust Layer?+
Trust Layer er det sikkerhedssystem, der styrer hvad AI kan gøre. Copilot-tilstand (standard): AI foreslår, menneskelige godkender. Autopilot mode (opt- in): Al virker automatisk på lav risiko, reversible operationer.
CRM
AI CRM-hjemmeskærmen
Kommandocentralen er din daglige briefing, og åbner den hver morgen for at se hvad der skete, hvad der skal gøres.
KommandocenterDet virkelige kommandocenter: skift mellem Prognose, Win rate og Pipeline, og arbejde AI forslag kø, godkende eller afvise de tilbud, fase bevæger sig og opgaver, det foreslår.
Hvad kommandocentret viser
Dagens numre
Pipeline værdi, tilbud vundet / tabt, nye spor, aktive tilbud og indtægter tendens, et øjebliksbillede af din nuværende tilstand.
Hvad OpsIQ fundet
AI- opdagede indsigt: stagnerede tilbud, at- risk konti, nye muligheder, data kvalitet spørgsmål, og markedssignaler.
Hvad OpsIQ gjorde
Handlinger AI har taget (i Autopilot) eller foreslået (i Copilot.): sceneforskud, score opdateringer, kontakt berigelse, og opgaveskabelse.
Nødvendig godkendelse
Queue of AI forslag venter på din beslutning. Hver viser den foreslåede handling, ræsonnement og beviser. Godkend, rediger eller afviser.
Næste træk
AI- rangeret liste over 10 vigtigste ting at gøre i dag: følge op på en hot deal, kontrollere en at- risk konto, forske et nyt spor osv.
Hjælpens status
Sundhed af AI agenter: Capture, Data Steward, Deal Intelligence, Dee Coach, SDR, Gentention. Green = kører, rav = har brug for opmærksomhed, rød = fejl.
Resultater
ROI tracking: tilbud påvirket af AI, tid gemt, nøjagtigheden af forudsigelser, og sammenligning med manuelt CRM arbejde.
Workflow for briefing om morgenen
1
Læs dagens numre
Tjek rørledningen sundhed og indtægter tendens. Er du på sporet i denne måned?
2
Ryd godkendelseskø
Gennemgå hvert AI forslag. Godkend sikre handlinger, redigere hvor det er nødvendigt, afvise dårlige forslag.
3
Tjek hvad OpsIQ fandt
Læs AI indsigt. Er nogen tilbud i fare? Er der nye muligheder?
4
Arbejd på næste flyteliste
Start med den øverste prioritet. AI har rangeret disse ved uopsættelighed og potentielle indvirkning.
Optagelse efter fritid
Scenarie:
You were away for a week. What happened while you were gone?
Hvad skal man gøre:
Åbn kommandocentralen og tjek: (1) "Hvad OpsIQ gjorde "viser alle AI handlinger under dit fravær. (2) "Skal godkendes" viser forslag, der venter på din gennemgang. (3) "Hvad OpsIQ fandt "fremhæver presserende punkter. (4) Sæt instrumentbrættets datointerval til din fraværsperiode for at se tendensen.
CRM
Kontakter, virksomheder og aftaler
CRM organiserer dine forretningsforbindelser i fire objekter: Kontakter (mennesker), Virksomheder (organisationer), tilbud (indtægtsmuligheder) og opgaver (opfølgningshandlinger).
CRM-objekterFire kerneobjekter (kontakter, virksomheder, tilbud og opgaver) knyttet til en tilsluttet kundechef.
Kontakter
Hvad er en kontakt
En person i din CRM. De kan være en kunde, et perspektiv, en partner eller et bly. Kontakter har en e-mail, navn, selskab, tags, livscyklusscenarie og hotness score.
Finde kontakter
Brug søgelinjen til at finde ved navn, e-mail, virksomhed eller tags. Brug filtre: livscyklus stadie, bly score, kilde, land, seneste aktivitetsdato, tildelt ejer.
Kontaktprofil
Klik på en kontakt for at se deres fulde profil: personlig info, virksomhed, tilbud, aktiviteter, billetter, chats, besøg på hjemmesiden, lead score og AI indsigt.
Hottness score
A0-100 score beregnet ud fra adfærdssignaler: hjemmesidebesøg, e-mail engagement, chat interaktioner, købshistorik og recount. Højere = varmere.
Virksomheder
... flere billetter...
Kontakt-virksomhed linking
Kontakter er knyttet til virksomheder via e-mail domæne eller manuel tildeling. En virksomhed kan have mange kontakter.
Varer
Hvad er en aftale?
En indtægtsmulighed. Deals har en titel, beløb, rørledning, scene, vinde sandsynlighed, lukkedato, tildelt ejer, og tilknyttede kontakter / selskab.
Vind sandsynlighed
En procentdel chance for at vinde handlen. Sæt manuelt eller beregnet af AI baseret på dine historiske win data. Driver den vægtede prognose.
Aftalens sundhedstilstand
Grøn (sund), gul (i risiko) eller rød (gået i stå). Baseret på aktivitet recount, fase varighed, og engagement signaler.
Opgaver
Hvad er en opgave
En opfølgning-up handling tildelt en person. Opgaver har en titel, forfaldsdato, prioritet, type (opkald, e-mail, møde, andet), og knyttet kontakt / aftale.
AI- genererede opgaver
AI skaber opgaver automatisk, når det registrerer noget har brug for opmærksomhed: opfølgning på en blokeret aftale, reagere på en at- risk konto, forskning et nyt spor.
Finde varme spor
Scenarie:
You want to see all high-score contacts in the UK who have not been contacted recently.
Hvad skal man gøre:
Gå til kontakter. Filter efter: Blyscore > 80, Land = Storbritannien, seneste aktivitet > 7 Det her er dine hotteste forsømte spor.
Oprettelse af en aftale fra en kontakt
Scenarie:
A contact just expressed interest in your enterprise plan during a chat.
Hvad skal man gøre:
Åbn kontaktprofilen. Klik på "Opret handel". Indtast titlen på handlen (fx, "Acme Corp - Enterprise Plan"), beløb, rørledning og fase (f. eks. "Kvalificeret"). Sæt den nære dato og tildele det til dig selv. Deal Coach vil begynde at spore denne mulighed.
CRM
Rørledningen (din deal board)
Pipeline er et visuelt bræt, hvor tilbud bevæger sig gennem faser fra venstre mod højre. Træk og slip kort til at fremme tilbud. Hvert kort viser dealens beløb, vinde sandsynlighed, og sundhedstilstand.
RørledningDen virkelige rørledningsskærm: levende statistik (åben værdi, vægtet prognose), en AI Accepter kø for foreslåede tilbud, og drag- and-drop bord.
Brug af rørledningen
1
Vis dine tilbud
Rørledningen viser alle aktive tilbud som kort arrangeret i kolonner (trin). Hver søjle header viser den samlede værdi af tilbud i det pågældende stadium.
2
Træk til forspring
Træk et kort til næste trin. Vindersandsynligheden og tæller opdateringen med det samme. Hvis flytningen mislykkes (valideringsfejl), falder kortet tilbage til sin oprindelige position.
3
Kontrollér kortskilte
Grøn badge = sund (seneste aktivitet, på sporet). Amber = i risiko (aftagende, har brug for opmærksomhed). Rød = gået i stå (ingen aktivitet for længe).
4
Klik for detaljer
Klik på et kort for at åbne deal detaljer panel med kontakter, aktiviteter, Deal Coach korte, og hurtige handlinger.
Godkendelseskø
AI forslag vises i godkendelsen kø øverst på pipeline side. Hvert forslag viser, hvad AI ønsker at gøre, hvorfor og beviserne. Du kan:
Godkendt
Accepter forslaget som - er. Handlingen løber gennem Trust Layer og registreres i tidsskriftet.
Redigér
Ændre forslaget, før det godkendes. For eksempel ændre den foreslåede fase eller justere beløbet.
Afvis
Afslå forslaget. AI lærer fra afslag til at gøre bedre forslag i fremtiden.
Vind sandsynlighed forklaret
Win sandsynlighed kan indstilles manuelt eller beregnes af AI. Når AI beregner det, det bruger en model uddannet på dine egne lukkede tilbud (vundet og tabt). Hvis du ikke har nok historiske data, AI bruger stadie standard sandsynlighed. Sandsynligheden driver den vægtede prognose: a $10,000 deal at 30% Sandsynligheden bidrager $3,000 til den "sandsynlige" prognose.
Flytte en aftale til Won
Scenarie:
A customer signed the contract and paid.
Hvad skal man gøre:
Træk kort til "Won" scenen. OpsIQ vil: (1) Markér handlen som lukket-vundet. (2) Opdatér prognosen. (3) Tilføj en "Won" aktivitet til tidslinjen. (4) Hvis konfigureret, udløse en webhook begivenhed (crm.deal.won). (5) Opdater kontakt livscyklusscenen til "Kunden".
Spotting af faste aftaler
Scenarie:
You want to find deals that have been in the same stage for too long.
Hvad skal man gøre:
Kig efter røde (stilstands) skilte på rørledningen. Disse tilbud har ikke haft nogen aktivitet i længere tid end den indstillede rådnetærskel (indstillet i CRM Configuration > Pipelines). Klik på hver stoppet aftale for at se Deal Coach 's anbefaling til reaktivering.
Må jeg få flere rørledninger?+
Ja. Gå til CRM Configuration > Pipelines for at skabe yderligere rørledninger. Fælles brugstilfælde: separate rørledninger til nye forretninger vs. fornyelser, eller til forskellige produkter / tjenester.
Hvad sker der, når jeg trækker en aftale til "Lost"?+
Aftalen er markeret som lukket-tabt. Du vil blive bedt om at miste grund. Handlen fjernes fra det aktive bræt, men kan findes i den lukkede handel filter. Kontakten forbliver i CRM.
CRM
Aftale coaching
The Deal Coach analyserer hver aftale og giver dig en kort med sundhedsstatus, risikosignaler, nøglepersoner, en kvalifikation checklist, møde prep, og foreslået næste handlinger. Alt er indkøbt. Træneren viser hvilken billet, chat eller aktivitet hvert krav kommer fra.
Deal coachTræneren flag hvorfor en aftale kan glide (hvert signal citerer sin kilde) og hænder dig det næste skridt at tage.
Hvad træneren fortæller dig
Sundhedsmæssig forklaring
Hvorfor handlen er sund, i fare eller gået i stå. Specifikke signaler: dage i scenen, sidste kontaktdato, aktivitetsniveau, konkurrent nævner, protestancemønstre.
Signaler
Categorized into: indsigelser rejst, konkurrent nævner, prisforhandlinger, støtte risikoindikatorer, fornyelse / ekspansion signaler. Hvert signal links til sin kilde (chat udskrift, billet, e-mail, aktivitet).
Champion og blocker kort
Hvem hjælper handlen (mester) og hvem er imod (blocker). Baseret på interaktionsanalyse og kontaktroller.
Kejserliste for kvalifikationer
SECTlisten MEDDICC eller BANT (konfigurerbar) viser, hvilke kvalifikationskriterier der er opfyldt, og hvilke der mangler.
Mødeforberedelse
Før et planlagt møde udarbejder træneren en kort dagsorden, nøglepunkter at dække, spørgsmål, risici at tage fat på, og materialer til forberedelse.
Besvar og ring planer
Foreslåede næste besked eller kaldescript baseret på den aktuelle handel tilstand og seneste interaktioner.
Bevisets tidslinje
Hver påstand træneren gør links til en kilde: et billetnummer, chat udskrift ID, aktivitet dato, eller hjemmeside besøg.
Hvordan man bruger træneren
1
Læs det korte
Åbn enhver aftale og rulle til Deal Coach sektion. Læs sundhedstilstanden og nøglesignaler.
2
Tæt kvalifikationskløfter
Kontrollér tjeklisten for kvalifikationer. Hvis "Economic Buyer" mangler, skal du planlægge at identificere og engagere budgetindehaveren.
3
Retsakter om forslag
Træneren foreslår konkrete næste handlinger. Klik for at oprette en opgave, udkast til en e-mail eller planlægge et møde, alle dirigeret gennem godkendelsen kø.
Forberedelse af et stort møde
Scenarie:
You have a meeting with a prospect tomorrow about a $50,000 deal.
Hvad skal man gøre:
Åbn handlen og læs Forhåndsafsnittet. Det viser: (1) Nøglepunkter baseret på de seneste interaktioner. (2) Indsigelser de rejste i chatten sidste uge. (3) Konkurrent de nævnte i en støtte billet. (4) Spørgsmål om deres tidslinje. (5) Risikofaktorer, der skal håndteres proaktivt. Brug dette kort til at forberede en fokuseret, bevisbaseret dagsorden.
Forstå, hvorfor en aftale er i fare
Scenarie:
The pipeline shows a red badge on a deal you thought was going well.
Hvad skal man gøre:
Klik på aftalen og læse Deal Coach sundhed forklaring. Det kan sige: "Denne aftale har været i forslag fase for 22 dage (tærskel: 14). Sidste kontakt var 11 for dage siden. Den primære kontakt åbnede en supportbillet om data migration bekymringer 5 dage siden (billet # T -892). Forslag: adressere migration bekymring og planlægge en opfølgning opkald. "Nu ved du præcis, hvad der skal rettes.
CRM
Prognose og rapporter
Board- grade prognoser med en forsvarlig rækkevidde, deal-niveau ændre forklaringer, og nøjagtighed sporing, så du kan bevise og forklare dine numre.
PrognoseKommitte, best- case og rørledning på et øjeblik, AI- vægtet ved handel sundhed, med nøjagtighed spores, så du kan forsvare det.
Prognosekategorier
Udpeget
Dealer med 80% eller højere gevinstsandsynlighed. Det er dine mest sandsynlige gevinster. Dette bør være din forventede minimumsindtægt.
AI- vægtet sandsynlighed
Alle åbne tilbud vægtet med deres AI- beregnede vindersandsynlighed. Dette er den mest realistiske forudsigelse af, hvad du vil lukke.
I bedste fald
Alle åbne tilbud til fuld værdi. Dette er den maksimale mulige indtægt, hvis alt går perfekt (det sjældent gør).
Tiltrolighedsinterval
En 80% Sandsynlighedsbånd viser det realistiske område. Eksempel: "Du vil sandsynligvis lukke mellem $45,000 og $72,000 i dette kvartal ".
Hvad ændrede sig og hvorfor
Prognosen omfatter ugens-over-uge ændring tildeling. Når din prognose falder ved $15,000 rapporten forklarer præcist, hvilke aftaler der forårsagede ændringen: "Deal A smuttede til næste kvartal ($8,000), Deal B tabt ($5,000), Deal C reduceret i værdi ($2,000)."
Nøjagtighed tracking
Prognose for den forventede udvikling
Mean Absolute Percentage Error: how far off your forecasts have been historically. Lower is better. A MAPE of 15% means your forecasts are typically within 15% of actual results.
Kalibrering af vindsandsynlighed
Brier-score, der måler hvor godt sandsynligheden for at vinde stemmer overens med de faktiske resultater. Hvis aftaler med 70% sandsynlighed rent faktisk vinder _70% af gangene, er kalibreringen god.
Ugentlige snapshots
OpsIQ fanger et øjebliksbillede af din prognose hver uge (via cron). Over tid kan du se, hvordan din prognose nøjagtighed forbedres.
Ruller og advarsler
Omstilling på per- stadie
Hvor mange handler der flyttes fra hvert trin til det næste. Hvis 80% gå fra Kvalificeret til Forslag, men kun 20% Når du går fra forslag til forhandling, kan dine forslag have brug for arbejde.
Per- source-gevinsthastighed
Hvilke ledende kilder producerer de fleste gevinster. Invester mere i højvindskilder.
Per- ejer ydeevne
Hvordan hvert salgshold udfører: tilbud vundet, rørlednings værdi, gennemsnitlig deal størrelse, win rate.
Advarsler
Sandsække (urealistisk lave sandsynligheder), overbegå (urealistiske høj) og engageret-risiko (high-sandsynlighed tilbud viser stall signaler).
Forståelse af et prognosefald
Scenarie:
Your quarterly forecast dropped from $180,000 to $155,000 since last week.
Hvad skal man gøre:
Åbn siden med prognoser og tjek "hvad der ændrede sig". Rapporten viser: "Acme Corp deal ($15,000) flyttet til Lost, konkurrent valgt. Beta Inc deal ($8,000) tæt dato skubbet til næste kvartal. Ny aftale med Gamma LLC ($3,000) tilføjet i denne uge. "Nettoændringen er -$20,000 + $3,000 = -$17,000, forklarer faldet fra $180K til $163K (med de resterende $8K forklares ved sandsynlighedsjusteringer på andre tilbud).
CRM
Finde nye forretninger
Den Prospecting Agent hjælper dig med at finde og forske potentielle kunder. Beskriv din ideelle kunde, tilføje målvirksomheder, og lad AI forskning, score, og udkast til first-touch outreach.
ProspekteringSDR agenten finder målselskaber, scorer dem på plads og udskriver førstehåndsopsøgende til din anmeldelse.
Opsætning af tid på åbent tidspunkt
1
Beskriv din ideelle kunde
Gå til CRM Configuration > Prospecting. Beskriv din ideelle kunde profil (ICP): målindustrier, virksomhedens størrelse, jobtitler, geografisk fokus, produkt- match vilkår, og minimum fit score. Eksempel: "B2B SaaS virksomheder med 50-500 ansatte i USA / Storbritannien, der sælger udviklerværktøjer, med en VP af Salg eller chef for vækst som den primære kontakt ".
2
Tilføj målvirksomheder
Indtast virksomhedens domæner eller navne, du ønsker at forske. Du kan også lade AI foreslå virksomheder baseret på din ICP.
3
Gennemgå forskningsresultater
AI beriger hver virksomhed med tilgængelige data: størrelse, industri, tech stack, seneste nyheder, og fit score med forklaring.
4
Godkend outreach
For god- fit virksomheder, AI udkast en personlig førstehåndsmeddelelse. Gennemgå og godkende i køen.
Tilpasningsscoring
Hver udsigt får en0-100 fit score baseret på fem faktorer:
ICP-fit
Hvor godt virksomheden matcher din ideelle kunde profil (industri, størrelse, placering).
Hastesignaler
Er der beviser for, at de har brug for dit produkt nu? Jobstillinger, tech ændringer, klager over konkurrenter.
Budgetproxy
Virksomhedens størrelse, finansieringsstadiet og indtægtsindikatorer tyder på, at der er budgetmæssigt til rådighed.
Produktmatch
Hvor relevant dit produkt er for deres virksomhed baseret på industri og teknologi.
Støtteform
Om du kan betjene denne kunde effektivt (tidszone, sprog, kompleksitet).
Forskning af en målvirksomhed
Scenarie:
You want to evaluate whether acme.com is worth pursuing.
Hvad skal man gøre:
Tilføj acme.com til prospektlisten. AI 'en returnerer: Fit score 78/100 Grunde: B2B SaaS 120 medarbejdere, US- baseret, for nylig hyret en VP af Salg (uopsættelighed signal), bruger konkurrent X (produkt match). Købe signaler: besøgte din prissætning side to gange i sidste måned (fra hjemmeside sporing). Bedste kontakt: [email protected] (VP of Sales). Udpegede åbner refererer deres seneste leje og prissætning sidebesøg.
CRM
Automatisk opfølgning sekvenser
Sekvenser automatisere multi- step follow- up: en blanding af e-mail, vent, opgave, opkald og webhook trin, der kører automatisk efter du godkender den første send.
SekvenserAutomatiseret multitrins opfølgning (e-mail, vent, e-post, opgave) som du godkender først og et svar stopper automatisk.
Hvordan sekvenser virker
1
Opret en sekvens
Definér trinene: e-mail, vent 3 dage, e-post, vent 5 dage, opgave (ring hvis ingen svar), e. Hvert e-mailtrin har en skabelon du kan tilpasse.
2
Tilmeld kontakter
Tilføj kontakter til sekvensen. AI kan også foreslå tilmelding fra prospektering resultater.
3
Automatisk udførelse
Skridt køre automatisk på tidsplanen. Hvis en kontakt svarer på et hvilket som helst punkt, rækkefølgen pauser automatisk.
4
Sporresultater
Se åbne priser, svarsatser, omregningskurser og afabonnenter pr. trin. Brug dette til at optimere din sekvens.
Replik forståelse
Når en kontakt svar, AI klassificerer svaret:
Positiv
Interesseret, ønsker at tale. Sequence pauser, opgave skabt til opfølgning.
Indsigelse
Har bekymringer, men ikke afvise. Sekvence pauser, opgave skabt med indsigelser detaljer.
Afmeld
Ønsker at stoppe med at modtage beskeder. Kontakt er undertrykt permanent.
Ikke nu
Interesseret, men timing er forkert. Sekvenser, snooze opgave skabt.
Forkert person
- Ikke den rette kontakt.
Støtte
Et supportspørgsmål, ikke et salgssvar.
Antispambeskyttelse
Opt- out håndtering
Afmeld anmodninger bliver hædret øjeblikkeligt og kontakten er undertrykt fra alle fremtidige sekvenser.
Maksimal 1 besked pr. kontakt per dag. Forebygger overvældende individuelle mennesker.
Håndtering af over- cap
Skridt, der overstiger den daglige cap er udsat til næste dag. De bliver aldrig droppet eller sprunget over.
Hvad sker der, hvis en kontakt åbner en supportbillet under en sekvens?+
Sekvensen holder automatisk pause. Support tager prioritet over outreach. Sekvenset kan genstartes manuelt efter supportproblemet er løst.
Kan I A / B-testsekvenserne trin?+
Ikke direkte inden for sekvenser, men du kan oprette to sekvenser med forskellige beskeder og sammenligne deres resultater.
CRM
Vækstværktøjer
En side under CRM, der holder vækstmotoren: tilbagevendende indtægter (MRR / ARR), produktkataloget, lead-capture formularer, booking links og ledende routing. Alt her skriver direkte ind i CRM-formularen, så en formular indsendelse eller et booket opkald er en kontakt med historien, ikke en række i et regneark.
Hvad der bor på siden
Indtægter
Indtægter
MRR og ARR projiceret fra din rigtige fakturering hovedbog. Abonnementer er grupperet fra betalinger per platform, faktureringscyklussen udledes af betalingshuller, og et abonnement bortfalder, når en betaling er forsinket forbi 1.5 gange sin cyklus. Kunder link til CRM-kontakter automatisk, når hovedbogen bærer deres e-mail.
Produktkatalog
Katalog
En kilde til sandhed for hvad du sælger. Citater trække navn og liste pris fra kataloget, og accepterede citater rulle op i omsætning efter produkt. Products arkiv, de aldrig slette.
Blyindfangningsformer
Fangst
Hver formular får en hostet side plus en iframe integreret kode for dit eget websted. Indlæg bliver kontakter, ejeren får en meddelelse, og din routing regler tildele føringen.
Booking links til værelser
Skemalægning
Del et link, lad udsigter vælge en gratis slot. Slots respektere arrangørens arbejdstid, tidszone og eksisterende møder. En booking skaber mødet, e-mails udsigten en bekræftelse og underretter organisatoren.
Blyruditering
Routing
Territoriale regler kører først, derefter felt regler (matche et felt som land eller kilde), derefter rund- robin på tværs af din rep pool. Det ruter KONTAKTS og DEALS både, uanset dealens status: en vundet aftale stadig har brug for en ejer til provision tildeling, kontoansvar og opfølgning, og i ejer eller team synlighed tilstand en ubody record er usynlige for alle men en manager. Records skabt ved automatisering (en connect salg, chat, en import) bærer ingen interaktiv skaberen, så de er dirigeret af de samme regler om oprette snarere end venstre ejerløs. Alt, der allerede har en ejer er aldrig ombytte.
Opret din første formular
1
Åbne vækstværktøjer
Gå til CRM, derefter vækstværktøjer, så Lead-capture danner sektion.
2
Navn og vælg felter
Skriv et navn og en kommaadskilt feltliste, for eksempel navn, e-mail, telefon, besked. E-mail er altid påkrævet.
3
Del eller indlemmet
Kopiér det hostede link til at dele det hvor som helst, eller kopiere den indlejrede kode og indsætte den i en side på din hjemmeside.
4
Watch fører ankomme
Hver indsendelse er en CRM-kontakt med en formular. Indsendt aktivitet, en ejermeddelelse og automatisk routing.
💡
Offentlige indfangningssider bruger din arbejdsrums egen adresse. Cloud-arbejdsrum bruger deres tildelte underdomæne (virksomhed.opsiq Hjælp), så linket altid løser de rigtige data.
Bygge- og anlægsvirksomhed
Bots ser succes, du ser ingenting
En skjult honningkrukke felt lydløst smider bot indlæg.
Begrænset sats
Ti indlæg pr. time pr IP adresse på tværs af formularer og bookinger.
Samtykke forbliver ærlig
Indgivelse af en formular giver ikke markedsføringstilladelse. Kun et udtrykkeligt samtykke afkrydsningsfelt gør.
Ingen dobbeltbooking
En slot er gen- valideret mod en ny tilgængelighed check i øjeblikket af booking.
Hvor kommer de tilbagevendende indtægtsdata fra?+
Fra samme handel hovedger din Sales side bruger, fodret af fakturering stik. Brug re-sync fra fakturering efter tilslutning af en ny platform.
Kan jeg bruge formularerne uden en hjemmeside?+
Ja. Hver formular har en hostet side på din egen adresse, der virker standalone, med eller uden JavaScript.
CRM
Messaging Hub (SMS og WhatsApp)
Et stik, op til tyve gateways. Tilslut SMS og WhatsApp-udbydere du faktisk bruger, markere et som standard, og vælg nogen af dem, når du sms 'er en kontakt. Samtykke kontrolleres af CRM før der kontaktes en gateway.
Sæt det op
1
Aktivér stikket
På siden med forbindelser, åbnes messaging Hub (SMS og WhatsApp) og aktiveres.
2
Tilføj en udbyder
I samme skuffe eller i CRM Growth Tools, skal du vælge en gateway fra dropdown (Twilio, Vonage, Termii, Meta WhatsApp Cloud, Infobip og mere), indsætte sin API legitimation og forbinde. Du kan tilføje flere, herunder den samme gateways to gange med forskellige konti.
3
Wire webhook
Hver udbyder post viser sin egen webhook URL med en kopiknap. Indsæt det i gateways delivery-rapport og indbound- message indstillinger for at få leveringsstatus og svar tilbage i OpsIQ.
4
Send fra en kontakt
Åbn en kontakt og brug SMS eller WhatsApp-knappen. Hvis mere end én udbyder understøtter kanalen, kan du vælge mellem en vælger; ellers bruges standarden.
Samtykke kommer først
Kun givet samtykke
Ukendt samtykke er ikke samtykke. En send nægter medmindre SMS samtykke udtrykkeligt gives. WhatsApp rider det samme samtykke.
Ikke-kontakt vinder altid
Et ikke-kontaktflag blokerer alle kanaler, uanset hvad der er indstillet.
Hædret undertrykkelse
Kontakter på undertrykkelseslisten bliver aldrig sendt.
Afslag nævner deres årsag
En blokeret send fortæller dig præcis hvorfor, så du kan reparere data i stedet for at gætte.
For udviklere: webhook-kontrakten
URL form
https://your-address/opsiq/cron/messaging_webhook.php?sk=SITE_KEY&e=ENTRY_ID&t=TOKEN. Per- entry token er minted, når udbyderen er tilsluttet og aldrig roterer på redigere.
Formater forstået
Twilio form posts (MessageStatus/MessageSid for delivery, Body/From for inbound), Meta WhatsApp Cloud JSON (statuses and messages, including the hub.challenge subscription handshake), and a generic JSON shape: {"type":"delivery","message_id":"...","status":"delivered"} or {"type":"inbound","from":"+234...","body":"..."}.
Virkninger
Leveringsrapporter stempler den opsøgende hovedbog række, der bærer udbyderens meddelelse id som leveret eller sendt. Indgående meddelelser matcher kontakten med telefonnummer inde i arbejdsrummet, jord som en message. received aktivitet, og markere samtalen svarede.
Fejltilstand
Forkert eller manglende token svar 403. Ukendt nyttelast tælles og ignoreres, aldrig fatal, så en forkert konfigureret gateway kan ikke bryde endepunktet.
Hvilke gateways er understøttet?+
Twilio, Vonage, Plivo, MessageBird, Sinch, Infobip, Telnyx, ClickSend, Termii, Africa 's Talking, BulkSMS, Textlocal, Meta WhatsApp Cloud, 360dialog, SMSAPI, Gupshup, Kaleyra, D7 Networks, Hubtel, og en brugerdefineret HTTPS webhook for noget andet.
Er legitimation sikker?+
Valgs-knappen gemmes krypteret i stikkontakten og er aldrig ekko tilbage til browseren. Edit af en indgang med en tom hemmelighed holder den gemte én.
Kan AI sende beskeder?+
Ja, gennem registrerede handlinger, der kræver bekræftelse og køre den samme samtykke gate. AI kan også liste tilsluttede udbydere til at forklare, hvad der er tilgængelige.
CRM
Beholder og voksende kunder
Livscyklusstyring hjælper dig med at beskytte eksisterende indtægter. Hver konto får en churn risiko score, et helbred score, en udvidelse score, og en anbefalet succes playbook.
LivscyklusKunder bevæger sig gennem on-boarding, aktiv, risiko og fornyelse, hver scoret for sundhed og ekspansion med en playbook.
Lifecycle board
Stage kort
Visuel tavle, der viser hvor hver konto står: Bly, Prospect, Opportunity, Customer, Expansion, Reneural, In risk, Churned.
Risikokonti
Konti markeret med høj churn risiko. Hver viser den øverste driver (støtte spike, inaktivitet, betalingsfejl) og en anbefalet gemme spil.
Udvidelsesmuligheder
Konti, der viser tegn på villighed til at købe mere: høj brug, feature anmodninger, plan forespørgsler.
Fornyelser
Konti med kommende fornyelsesdatoer. Sorteret efter risikoniveau og indtægtsværdi.
Hvordan OpsIQ registrerer churn risiko
Churn-risikoen beregnes ud fra flere sammensmeltet signaler:
Loginfrekvens, brug af funktioner, sidebesøg, API opkald.
Billesignaler
Fejlede betalinger, forfaldne fakturaer, nedgradering anmodninger, annullering side besøg.
Spillebøger
Gem spil
For risikokonti: nå ud proaktivt, tage fat på bekymring, tilbyde støtte, eskalere om nødvendigt.
Fornyelse
For kommende fornyelser: Bekræft tilfredshed, gennemgang brug, nutidsværdi, tilbyde incitament hvis det er relevant.
Udvidelsesspil
For ready- to- grow konti: nuværende opgraderingsmuligheder, dele succeshistorier, demonstrere ROI.
Adoptionsspil
For underudnyttelse konti: tilbyde uddannelse, dele bedste praksis, aktivere funktioner, de ikke bruger.
Spotting churn før det sker
Scenarie:
A customer who normally logs in daily has not logged in for 2 weeks, and they opened 3 support tickets this month.
Hvad skal man gøre:
Lifecycle board flag denne konto som "På Risiko" med drivere: inaktivitet (14 dage siden sidste login) og støtte spike (3x normal billet volumen). Anbefalet spil: proaktiv opsøgende opkald til at forstå, hvad der sker. Er der et produkt problem? Evaluerer de konkurrenter? Tidlig intervention kan gemme kontoen.
CRM
Hold dine data rene
Data Steward agenten finder og løser automatisk problemer med datakvalitet: duplikater, manglende felter, uoverensstemmelser og dårlige optegnelser.
DataforvalterSteward-agenten holder din CRM ren, finder duplikater, huller, dårlige optegnelser og dårlige formater, der fastsætter godkendelsen.
Stewarden foreslår at sammenlægge: holde rekorden med mere aktivitet, sammenflette de andre rekordhandler og aktiviteter. Gennemgå forslaget, justere det overlevende displaynavn om nødvendigt, og godkende. Begge records historie bevares i den fusionerede kontakt.
CRM
Byg min CRM
Byg min CRM kan du beskrive din CRM opsætning på almindelig engelsk. OpsIQ genererer en valideret, reversibel plan og anvender den ved godkendelse. Ingen kodning, ingen manuelt indstillingsklik.
Byg min CRMBeskriv din virksomhed på almindeligt engelsk; OpsIQ udarbejder hele CRM (stadier, felter, segmenter) og anvender den ved godkendelse.
Sådan virker det
1
Beskriv hvad du vil
Skriv en plain-engelsk beskrivelse af din CRM setup. Eksempel: "Opret en fornyelse rørledning med faser: Kommende, Kontakt, Forhandle, Reneged, Lost. Score fører højere, når de ser prissætning to gange".
2
Gennemgå planen
OpsIQ viser en preview af, hvad det vil skabe: rørledning, faser, fase sandsynligheder, scoring regler, livscyklusregler. Gennemgå hvert element.
3
Anvend
Klik på Anvend for at udføre planen. Hver ændring registreres som et bundt du kan fortryde med ét klik.
4
om nødvendigt rulles tilbage
Hvis noget ikke er rigtigt, skal du klikke på Fortryd for at vende hele bundtet tilbage. Din CRM vender tilbage til sin tidligere tilstand.
Hvad du kan bygge
Rørledninger og etaper
Opret navngivne rørledninger med brugerdefinerede stadier, standard sandsynligheder, og rådne tærskler.
Regler for arbejdsgang
Boost ledende resultater baseret på adfærd: "Score højere, når de ser priser", "Scor lavere, når man besøger karrieresider".
Regler for livscyklus
Automatisk fremme livscyklusstadier: "Flyt til SQL, når de anmoder om en demo", "Flyt hen til Kunden, når handlen er vundet".
Brugerdefinerede felter
Tilføj felter til kontakter, tilbud eller virksomheder: tekst, nummer, dato, vælg, afkrydsningsfelt, URL, e-mail.
Kejserliste for kvalifikationer
Definer MEDDICC eller BANT checklisten Deal Coach kvaliteter mod.
Etablering af en fornyelsesrørledning
Scenarie:
You manage SaaS subscriptions and need a pipeline for renewals.
Hvad skal man gøre:
Type: "Opret en fornyelsesrørledning. 90 Dage ud (10%), 60 Dage ud (25%), kontakt (40%), forhandlinger (60%), genoprettet (100%), Churned (0%). Sæt rådnetærsklen til 14 dage ". OpsIQ genererer planen, du gennemgår den, og klik på Anvend. Rørledningen vises på din Pipeline side med det samme.
Hvad hvis jeg beskriver noget, der ikke er muligt?+
Bygherren genererer kun handlinger, den ved hvordan man validerer. Hvis du beder om noget uden for dens muligheder (f. eks. "Integrer med min brugerdefinerede API"), vil den afvise anmodningen og forklare, hvad den kan gøre i stedet.
Kan jeg ændre på tingene?+
Ja. Hver Build My CRM handling er fanget som en reversibel bundt. Gå til CRM Health > Skift historie for at se alle bundter og fortryde nogen af dem.
CRM
Opsætning af din CRM på din måde
Manuel CRM konfiguration for hold, der foretrækker at klikke over skrive. Alle indstillinger, som Bygge min CRM kan skabe, er også tilgængelige som traditionelle formfelter.
Rørledninger og etaper
Opret, omdøb, ombestil og slet rørledninger og trin. Sæt standardvindenergien pr. fase. Indstil rådnetærsklen (dage uden aktivitet før en aftale er markeret "gået i stå").
Brugerdefinerede felter
Tilføj felter til tilbud, kontakter eller virksomheder. Felttyper: tekst, nummer, dato, vælg (dropdown med foruddefinerede indstillinger), afkrydsningsfelt, URL, e-mail. Brugerdefinerede felter vises på objektets profil og i filtre.
Kejserliste for kvalifikationer
Definer tjeklisten deal Coach bruger til at evaluere tilbud. Vælg MEDDICC, BANT eller et brugerdefineret sæt af kriterier. Hvert element kan markeres kræves eller valgfrit.
Regler for livscyklusscenariet
Definer automatiske trin overgange: når en kontakt opfylder en betingelse (synspunkter prissætning, indsende en formular, foretager et køb), deres livscyklus fase forskud automatisk.
Regler for bedømmelse af leadscoring
Boost eller reducere lead scores baseret på adfærd. Eksempler: "Viewed pricing side = +15 point "," Downloadet whitepaper = +10 point "," Besøgte karrieresider = -5point. "Minimum optælling kan sættes (fx," skal se prissætning mindst 2 gange ".
Gemt visninger
Opret navngivne filter + sortkombinationer til kontakter, tilbud eller virksomheder. Del visninger med dit team. Sæt en standardvisning pr. objekttype.
Tilføjelse af en regel om blyscoring
Scenarie:
You want contacts who view your pricing page twice or more to get a higher score.
Hvad skal man gøre:
Gå til CRM Configuration > Foretrukne regler. Klik på Tilføj regel. Sæt: Event = "pageview", URL indeholder = "/pricing", Minimum count =2, Score boost = +20. Gem. Næste gang scorer kører, kontakter der matcher denne regel vil få +20 til deres hovedscore.
CRM
CRM Health-kontrol
CRM Health er en selvdiagnostisk side, der kontrollerer din CRM er sat op korrekt og kører problemfrit.
SundhedsundersøgelseEn one-page CRM revision: en samlet sundhed score plus en checkliste over, hvad der er sat op rigtigt og hvad der stadig har brug for opmærksomhed.
Hvad det kontrollerer
Ordninger
Databaserne findes og har de rigtige kolonner. Hvis en migration blev overset, vil CRM Health markere det.
AI-agenser
Alle CRM-agenter (Capture, Data Steward, Deal Intelligence, osv.) er registreret og sunde. Green = kører, rav = har brug for opmærksomhed, rød = fejl.
Ruter
CRM API ruter og AJAX endpoints er registreret og kan kaldes.
AI-aktioner
CRM action kataloget er registreret i Action Registry. Hvis der mangler handlinger, CRM Health selv heler ved at genregistrere dem.
Antal levende data
Samlede kontakter, virksomheder, tilbud, opgaver, aktiviteter og arrangementer. Nyttig til at kontrollere import og løbende dataindsamling.
Efter opsætningscheck
Efter første gang CRM opsætning, åbne CRM sundhed og kontrollere alle kontroller er grønne. Hvis nogen er gule eller røde, skal du klikke på elementet for en diagnostisk forklaring og foreslået rettelse.
Hvor ofte skal jeg tjekke CRM Health?+
Tjek efter første opsætning, efter større opdateringer, og når CRM adfærd synes forkert. CRM Health selv heler mange problemer (som manglende handling registreringer) bare ved at åbne siden.
CRM
CRM-forbindelser til udviklere
CRM udsætter en komplet offentlig REST API og udgående webkroge, så det passer til enhver stak uden manuel eksport.
API endepunkter
Godkendelse
API key (Authorization: Bearer opq_...) with scope crm.read or crm.write. POST to /api/v1.php with action and site_key.
Fyret, når en aftale bevæger sig til et andet stadium.
crm.deal.won
Fyret, når en aftale er lukket som vundet.
crm.deal.lost
Fyret, når en aftale er lukket som tabt.
crm.task.created
Fyret når en ny opgave er oprettet (manuel eller AI- genereret).
crm.outreach.reply
Fyret, når en udsigt svarer på en sekvens e-mail.
crm.agent.proposal_created
Fyret, når en AI-agent laver et forslag til godkendelse kø.
All webhook events are HMAC-signed and retried on failure. Subscribe a URL in Settings > Webhooks, or poll crm.events.list with since_id for a durable change feed.
Synkronisering af CRM-kontakter til Google Sheets
Scenarie:
You want every new CRM contact to appear in a Google Sheet for your marketing team.
Hvad skal man gøre:
Sæt en webhook abonnent til crm. contact. created. Ret det til en Google Apps Script-app eller en Zapier webhook URL. Lasten inkluderer kontaktnavn, e-mail, firma, lead score og kilde. Dit script tilfalder en række til Google Sheet for hver ny kontakt.
CRM
Segmenter
Segmenter gemmer genanvendelige kontaktfiltre til CRM-visninger, outreach, kampagner og andre auditor- bevidste værktøjer.
ProduktskærmSegment editoren kombinerer betingelser, viser live match-tællingen og lader operatøren vælge et levende filter eller fastgjort snapshot.
A levende segment Genberegning af aktuelle data, når de anvendes. fast snapshot fryser den nuværende medlemsliste, som er nyttig, når et outreachaktivpublikum ikke må ændres efter godkendelse.
Vælg ALLE når hver tilstand skal matche eller Anything når en betingelse er nok. Gennemgå levende tal før du gemmer. System segmenter kan være synlige, men beskyttet mod almindelig redigering.
CRM
Blyscoring
Lead- scoring regler forvandle adfærd og profil signaler til en konsekvent score, som salg og automatisering kan bruge.
ProduktskærmBlyscoring viser aktive regler, rullende vindue og den positive eller negative score ændring hver regel gælder.
AI regel builder kan vende en sle- engelsk instruktion til en struktureret regel. Hver regel bør stadig revideres før aktivering: bekræfte aktiviteten eller søgeord, minimum tæller, rullende vindue og score ændring.
Positive og negative regler kan eksistere side om side. Rescore arbejdsområde efter materialeregelændringer, så eksisterende kontakter evalueres under den nye model. Scorer kan fodre segmenter, routing, prospektering og arbejdsgange betingelser.
CRM
Salgsleaderboard
Leaderboardet sammenligner repræsentanter med kvotemængde, vandt indtægter, provision og åben rørledning for den udvalgte måned.
ProduktskærmDen månedlige leaderboard rangerer salgsrepræsentanter samtidig holde vundet indtægter, provision og åben rørledning synlig.
Kvoteopnåelse er kun meningsfuld, når hver repræsentant har en nuværende kvote og handler har den korrekte ejer, beløb, valuta og tæt status. Brug leaderboard til coaching og anerkendelse, ikke som den eneste kvalitetsforanstaltning; parre det med deal sundhed, aktivitet og prognose nøjagtighed.
CRM
Godkendelse af en aftale
Aftalegodkendelser kræver, at manager sign-off før høj værdi tilbud kan markeres vundet.
ProduktskærmI godkendelsespolitikken er der fastsat to værditærskler, og køen viser verserende, godkendte og afviste beslutninger.
Aktivér politik og sæt niveau 1 og niveau 2 tærskelværdier. En tærskel på 0 deaktiverer dette niveau. Når en ikke-leder forsøger at vinde en aftale på eller over tærsklen, OpsIQ skaber en godkendelse anmodning i stedet for lydløst at ændre scenen.
Ledere og fulde administratorer er ikke blokeret af politikken. Enhver beslutning bør bevare den anmodende, godkendelse, tid og grund til audit.
CRM
Regler for livscyklus
Livscyklusregler flytter automatisk kontakter mellem faser, når deres aktuelle data matcher en gemt tilstand.
ProduktskærmLivscyklusregler vurderes efter prioritet; den første matchende regel ændrer kontaktstadiet.
Hver regel har en kilde fase, destination stadium, aktivt flag, prioritet og segment- stil filter. Den planlagte livscyklus job evaluerer højere prioriteter først og stopper efter den første kamp for en kontakt.
Regler skal være gensidigt forståelige. Undgå to aktive regler, der kan flytte den samme kontakt i modsatte retninger under samme kørsel. Test filteret mod et segment, før det aktiveres.
CRM
CRM-aktivitetsstrøm
Workspace aktivitet stream kombinerer kunde og operationelle begivenheder, så teams kan undersøge, hvad der skete uden at åbne hvert modul.
ProduktskærmAktiviteten stream interleaves chat, billet, e-mail, webhook, konvertering og anomali begivenheder med filtre og paginering.
Filtrér efter hændelsestype, dato, kontakt- eller kundetilstand (herunder betalende kunder). Foderet er en read model af indspillet aktivitet; det erstatter ikke kildebilletten, samtalen, handlen eller konnektor record. Åbn den linkede record før du tager en følsom handling.
CRM
Arbejdsgange
Workflows reagerer på en begivenhed og køre en bestilt række af handlinger, herunder forsinkede trin genoptages med cron.
ProduktskærmEt workflow-løb viser dens udløsende, afsluttede handlinger, venteforsinkelse og næste skridt.
Opret en workflow ved at vælge udløseren, tilføje trin i rækkefølge og gør det muligt. Forsinkelser gemmes, ikke holdes af en browser anmodning; den forenede cron genoptager due workflowet kører.
Build- in startskabeloner omfatter velkommen efter tilmelding, post- køb Thanks- you og demo bekræftelse. Klone en skabelon, erstatte sine modtagere / indhold, derefter teste med en kontrolleret rekord før bred aktivering.
Design handlinger, der skal være idempotent. Et forsøg igen må ikke sende duplikerede penge-flytte anmodninger eller oprette duplicate poster.
Støtte
Billetter
Billetter er din formelle support kanal. De har afdelinger, prioriteter, SLA mål, vedhæftede filer, interne noter, og fuld samtale threading. Billetter kan ankomme fra OpsIQ admin, billet form / montering, e-mail indtagelse, chat eskalering, connector, eller API.
BilletterHver billet bærer sin prioritet, afdeling, SLA timer og fuld tråd, og AI kan udarbejde svaret for dig.
Hvordan en billet flyder
1
Billetvarer
En kunde sender en besked via e-mail, chat eskalering, billet isat, eller admin skaber en. Billetten får et unikt ID (fx, T-12345).
2
Forsøg
AI læser emnet og kroppen, tildeler prioritet (Low / Normal / High / Urgent), foreslår en afdeling, og registrerer følelser. Dette sker automatisk, hvis triage er aktiveret.
3
Svar
En agent åbner billetten, læser sammenhængen (kunde profil, platform data fra konnektorer, tidligere billetter), og skriver et svar. AI kan udarbejde svaret, og agenten redigerer før afsendelse.
4
Luk
Når problemet er løst, lukker agenten billetten. Kunden underrettes. Hvis kunden svarer efter lukning, åbner billetten automatisk igen.
Per- billet handlinger
Skift afdeling
Flyt billetten til en anden afdeling (f. eks. fra General til Billing). Nyttigt, når den oprindelige routing var forkert.
Tildel agent
Tildel billetten til et bestemt team medlem. Den udpegede agent ser billetten i deres "My ticket" visning.
Tilføj intern note
Skriv en note synlig kun for personalet. Brug til: undersøgelsesresultater, tilbagebetaling grunde, ingeniørmæssig kontekst, tidligere forpligtelser. Interne noter aldrig vises for kunderne.
Flet billetter
Kombiner duplikerede billetter fra samme kunde. Den sammenlagte billet emne får en [MERGED] tag. Alle beskeder fra begge billetter bevares i den overlevende billet.
Annulleret respons
Indsæt en præ- skriftlig svarskabelon. Variabler som {{customer_name}} og {{ticket_id}} automatisk udskiftes.
AI omskrive
Lad AI forbedre dit udkast til svar: justere tone, kortere / forlænge, fastsætte grammatik, eller oversætte. Du gennemgå resultatet før du sender.
Ændr prioritet
Sæt til lav, normal, høj eller hurtig. Prioriteret påvirker SLA timere og sortere orden.
Ændr status
Sæt til åben, afventende, venter på kunden, genoplivet eller lukket.
Arbejdede eksempel: håndtering af en ulykkelig kunde
Kundemail: "Jeg blev opkrævet to gange for mit abonnement"
Scenarie:
Subject: Double charge on my account
Body: Hi, I just checked my bank statement and I see two charges of $49.99 from your company dated June 3. I only have one subscription. Can you please refund the duplicate charge? This is really frustrating.
Hvad skal man gøre:
Step 1: AI triage assigns Priority: High, Department: Billing, Sentiment: Frustrated.
Step 2: Agent opens the ticket. The connector panel shows the customer's Stripe charges, confirmed two charges on June 3.
Step 3: Agent adds an internal note: "Confirmed duplicate charge in Stripe. Transaction IDs: ch_xxx and ch_yyy."
Step 4: Agent drafts a reply: "Hi [Name], I can see the duplicate charge and I'm processing a refund for the second transaction right now. You should see $49.99 back in your account within 3-5 business days. I'm sorry for the inconvenience."
Step 5: Agent triggers the refund action through the Stripe connector (with confirmation).
Step 6: Agent sends the reply and sets status to Resolved.
Afdelinger
Opret afdelinger i Indstillinger > Billetter > Afdelinger. Fælles afdelinger: General, Billing, Teknisk, Salg, Misbrug, Onboarding. Hver afdeling kan have forskellige auto-svar regler, AI viden og team opgaver.
Hi {{customer_name}},
Thanks for reaching out. I checked the details and here is what I found:
{{response_details}}
If you need anything else, just reply to this ticket and I will be happy to help.
Best regards,
{{agent_name}}
{{department_signature}}
Feltstiftelse
Når en kunde sender det samme spørgsmål flere gange (via e-mail og chat eller to separate e-mails), kan du flette duplikater sammen. Gå til billetten, klik på Merge, vælg den anden billet til at flette. Den overlevende billet får alle beskeder fra begge billetter. Den fusionerede billets emne får et [MERGED] mærke for at angive, at den blev kombineret.
Prioriteret og godkendt af SLA
Lav
Ikke- presserende spørgsmål, feature anmodninger, generel feedback. Mål første svar: 24 timer.
Normal
Standard support spørgsmål. Mål første svar: 8 timer.
Høj
Påvirkning af kundens forretning. Mål første svar: 4 timer.
Hasteforanstaltninger
Service ned, sikkerhedshændelse, tab af data, fakturering fejl. Mål første svar: 1 time.
SLA-timere starter, når billetten er oprettet og pause, når status er "venter på Kunden". Hvis SLA 's mål ikke overholdes, bliver billetten fremhævet og eventuelt eskaleret.
Kan kunderne se interne noter?+
Aldrig. Interne noter er strengt personale-kun. De vises ikke i kundens billet portal, e-mail meddelelser, eller nogen customer-vender overflade.
Hvad sker der, når en lukket billet bliver besvaret?+
Billetten åbner automatisk igen og vender tilbage til den aktive kø. Holdet får besked om det nye svar.
Kan jeg låse en billet for at forhindre yderligere svar?+
Ja. Brug Lock Tråd mulighed for at forhindre både kunde og AI i at tilføje nye svar. Nyttig for løst tvister eller lukkede undersøgelser.
Støtte
Service Studio: SLA, statusflow og kvalitet
Kontrolrummet for, hvordan din supportoperation opfører sig: SLA-politikker med eskaleringsstiger, virksomhedskalendere, en tvungen statusstrøm, CSAT-indstillinger og virksomhedens funktion skifter. Åbn den fra Billetter side (Service Studio knappen i operationsbaren).
SLA-politikker
Hver ny billet får et første- svar og en opløsning deadline fra den mest specifikke aktive politik: afdeling + prioritet slår afdeling, slår prioritet, slår standard. Deadlines pause automatisk, mens en billet sidder i afventning eller på hold.
Eskaleringsstiger
I stedet for én overtrædelse kan en politik definere op til seks trin: for eksempel advare modtageren på 75% af vinduet, alarm managers på 100%, forflyt til en navngivet agent på 150% Hvert trin affyrer præcis én gang pr. billet.
Arbejdstider og kalendere
Med åbningstider på, SLA ure kun brænde i arbejdstiden, så en billet åbnet fredag aften ikke er brudt af lørdag. Opkaldt kalendere (tidszone, dage, timer, ferie) kan knyttes til individuelle politikker for hold i forskellige regioner.
Statusstrøm
A fra / til matrix begrænser hvilken status ændringer admins kan gøre, med en Zendesk- stil forudindstillet. Automation, indgående e-mail og customer- oprindede billetsvar er altid fritaget, så en streng matrix aldrig kan blokere rørledningen.
Godkendelser
Agenterne anmoder om signatur- off på en billet (refunderinger over en tærskel, politiske undtagelser). En navngivet approver eller enhver Full Administrator beslutter med en note; rekvisitter kan aldrig godkende deres egen anmodning.
Billetforhold
Link billetter som relateret, duplikeret, forældre / barn eller blokering; split svar ud til en ny linked billet (den omvendte af fletning, uden at maile kunden); følg billetter til in-app meddelelser, og eventuelt CC follower e-mail adresser på udgående svar.
Levende indbakke og kollisioner
Med real- time indbakken aktiveret, nye billetter og svar vises for agenter inden for få sekunder gennem den eksisterende notifikationsstrøm. På en billet, agenter se hvem der ellers ser og få en advarsel banner, når en holdkammerat allerede skriver et svar. En one-click Claim knap tildeler billetten til dig selv.
Al- bevidst routing
Routing regler kan matche på AI triage signaler: prioritet, kategori, følelser og eskalering risiko, plus indtastede custom-field værdier fra din portal anmodning formular. Regler ved hjælp af disse betingelser forblive hvilende indtil funktionen er aktiveret.
💡
Hver virksomhed skifte skibe OFF. At tænde en i Service Studio → Kvalitet & Automation er opt- in; forlader dem holder adfærd identisk med før opgraderingen.
Hvorfor kan en kunde stadig genåbne en lukket billet, når min matrix forbyder lukket → åben?+
Den matrix kun regulerer ADMIN handlinger. Customer- oprindede svar, e-mail-svar og automatisering er bevidst fritaget, så en streng politik kan aldrig låse kunder ud eller bryde rørledningen.
Erstatter SLA stiger den gamle brudsag?+
Nej. Politikker gemt med en enkelt brud handling holde arbejder uændret. En stige erstatter den enkelte aktion kun på politikker, hvor du definerer trin.
Støtte
Billet automatisk svar og eskalering
Auto- svar lader AI reagere på nye billetter automatisk. Eskalering flytter billetter til en anden afdeling, når AI registrerer specialiserede behov. Begge funktioner arbejde på tværs af indfødte billetter og email- oprettet billetter.
Auto- svarNye billetter får en kort forsinkelse (så mennesker kan hoppe i), derefter en AI svar fra din viden, sendt eller i kø som et udkast.
Hvordan virker automatisk svar
1
Billetvises
En ny billet er skabt fra enhver kilde (e-mail, chat, portal, API).
2
Skemasvar
OpsIQ venter på den indstillede forsinkelse (standard: 2 Dette giver menneskelige agenter en chance for at reagere først.
3
Første svar vinder
Hvis en menneskelig agent svarer under forsinkelsen, auto- svar er annulleret. Hvis ikke, AI genererer et svar.
4
Generér og send
AI læser billetten, kontrollerer videnbasen, konnektor sammenhæng og kundehistorie, derefter skriver et svar. Svaret sendes (eller i kø som en udkast til gennemgang, afhængigt af indstillinger).
Hvordan eskalering virker
1
Indstil afdelinger
Sæt hvilke afdelinger der kan modtage eskalationer (fx kan Billing eskaleres fra Generelt, Teknisk kan eskalere fra Generelt).
2
Klassificere billetten
Før auto-svar, AI klassificerer billetten hensigt: fakturering, teknisk, tilbagebetaling, misbrug osv.
3
Flyt om nødvendigt
Hvis billetten er i overensstemmelse med en eskaleringsafdeling, flyttes billetten.
4
Generér i ny stemme
Svaret genereres ved hjælp af destinationsafdelingens viden og AI uddannelse.
Opsætning reference
Auto- svar aktiveret
Master switch. Tænd for at aktivere AI automatisk-svar på billetter.
Tilladte afdelinger
Hvilke afdelinger kan modtage automatisk svar. Start med lavrisiko afdelinger (Generelt, Salg) før du aktiverer fakturering.
Forsinkelse
Hvor lang tid at vente, før AI svarer (i sekunder). Standard: 120 sekunder (2minutter).0for øjeblikkelige svar.
Forsinkelsesskema
Muligt indstille forskellige forsinkelser for business timer vs. efter timer.
Stop med admin svar
Hvis en menneskelig agent svarer først, annullere auto- svar. Standard: til.
Eskalering aktiveret
Aktivér automatisk afdelingsrouting baseret på billettehensigt.
Eskaleringsafdelinger
Hvilke afdelinger billetter kan optrappes til.
Eskaleringsstatus
Hvilken status der skal indstilles når du eskalerer (f. eks. Åbn, afventende).
Eskaleringsnote
Om der skal tilføjes en intern note, som forklarer årsagen til eskaleringen.
Email- oprettet billetter
Billetter oprettet fra e-mail (via mailbox afstemning eller MX- pipeed levering) følger de samme auto- svar og eskaleringsregler. AI 's svar sendes som en e- mail reaktion til kunden. E-mail udkast gå til udkast kø for gennemgang, hvis konfigureret.
Vil AI automatisk besvare faktureringsspørgsmål?+
Kun hvis du aktiverer auto- svar for faktureringsafdelingen. Vi anbefaler at starte med auto- svar til fakturering og kun gør det muligt, når du har trænet AI med omfattende faktureringsviden og testet grundigt.
Hvad hvis AI giver et forkert svar?+
Hvis en kunde svarer siger, at svaret var forkert, bør en menneskelig agent gribe ind. Anmeld AI historie for at forstå, hvorfor AI gav det forkerte svar, så opdatere videnbasen eller AI uddannelse for at forhindre det i at ske igen.
Kan jeg gennemgå auto- svar, før de sendes?+
Ja. Sæt leveringstilstanden til "draft" i stedet for "Autosend". Autosvar-udkast vil blive vist i Kladderne kø for menneskelig gennemgang, før du sender.
Støtte
Billetportal med
Billetportalen kan du tilføje en billet management interface til enhver hjemmeside. Kunder kan se deres billetter, oprette nye, og svare, alle uden at indtaste OpsIQ admin.
Sådan virker detBilletportal med
Tre indlejrede varianter
Inline inkl.
Renders billet portal inde i en div på din side. Portalen tager hele bredden af sin container.
Flydende kontrol
Viser en flydende knap, der åbner billetten portal i et panel. Svarende til en chat widget.
Autentificeret
Kræver en signeret identitet token. Kunderne se kun deres egne billetter.
For bekræftet tilstand, skal din server generere en signeret identitet token. Denne token fortæller OpsIQ hvem kunden er, så de kun ser deres egne billetter.
Søgebar, status- filtreret liste. En "Afventer dig" fremhæve flag billetter holdet har besvaret.
Gevindudveksling
Fuld samtale visning med rig tekst, vedhæftede filer og tidsstempler.
Udkast til automatisk lagring
Kundeudkast svar er automatisk gemt, så de ikke mister arbejde, hvis de navigerer væk.
Live vallevirksomhed
Kontrolmålinger for nye svar hver ~12 sekunder.
Løs / genåbn
Kunderne kan løse eller genåbne deres egne billetter med et enkelt klik.
✅
Interne medarbejdernoter vises ALDRIG til kunderne i billetten, hvilket er en hård sikkerhedsgrænse.
Støtte
Chat indbakke
Chat Indbakken er hvor dit team styrer live kundesamtaler. Det viser aktive chats, tildelte samtaler, AI- håndterede chats og arkiveret historie.
Chat indbakkeEn indbakke til hver live chat, samtaleliste, tråden med AI udkast på tap, og fuld besøgende + CRM sammenhæng.
Håndtering af samtaler
Aktive chats
Samtaler i øjeblikket er i gang. Green dot = kunde skriver eller for nylig aktiv.
AI- håndteret
Samtaler hvor AI 'en reagerer. Du kan til enhver tid overtage ved at klikke på "Deltag".
Tildelt mig
Samtaler, der er tildelt dig.
Venter
Samtaler, hvor kunden venter på et svar.
ArkivQShortcut
Afsluttede samtaler. Søges efter søgeord, dato og kunde.
Aflevering fra AI til menneske
Når du overtager en samtale fra AI, skal du følge disse tre regler:
1
Greet personligt
"Hej, det er Sarah fra supportholdet".
2
Referenceramme
"Jeg kan se, at du spurgte om din ordreseddel".
3
Sæt forventninger
Fortæl kunden, hvad der sker nu. "Jeg undersøger dette nu og vil have et svar til dig i et par minutter".
Slå AI til / fra pr. samtale
Brug AI skifte til toppen af hver samtale. Når AI er på, den AI genererer svar. Når slukket, kun menneskelige agenter kan svare. AI husker samtalen sammenhæng, selv når slået fra og tilbage på.
Afgang i tilstand / ud af timer
Indstil åbningstider i Indstillinger. Uden for åbningstider kan AI: (1) Fortsætte med at reagere på kunder, (2) Vis en "væk" besked og oprette en billet til opfølgning, eller (3) Deaktivér chat fuldstændigt og vis billetten. Vælg den adfærd, der passer til din supportmodel.
Håndtering af hårde samtaler
1
Bevar roen
Matcher ikke kundens følelsesmæssige intensitet. Anerkend deres frustration uden at være defensiv.
2
Indsamle fakta
Før du svarer, indsamle de relevante oplysninger: bestillingsdetaljer, kontostatus, tidligere billetter.
3
Eskalat tidligt
Hvis situationen omfatter refusioner, juridiske trusler, misbrug eller sikkerhed eskalerer til et seniorholdmedlem i stedet for at forsøge at håndtere det alene.
Kan jeg få team chat (agent til agent)?+
Ja. Brug interne noter i en samtale til at kommunikere med andre agenter. Disse noter er aldrig synlige for kunden.
Hvad sker der, når jeg lukker en snak?+
Samtalen flytter til arkivet. Hvis kunden sender et nyt budskab senere, oprettes en ny samtale.
Støtte
Meddelelseskanaler
Connect WhatsApp, Facebook Messenger, Instagram DM, Telegram og LINE så de meddelelser kunder allerede sende dig ankommer i samme indbakke som din hjemmeside chat, besvaret af den samme AI assistent.
Hver kanal opfører sig identisk én gang tilsluttet: en kundebesked bliver en samtale i chatindbakken, din AI assistent svarer det ved hjælp af den samme viden og instruktioner som din hjemmeside chat, og enhver agent kan tage over. Intet om din AI har brug for konfigurering pr. kanal.
Hvordan forbinder ser ud
Facebook Messenger & Instagram
Et klik. Åbn forbindelser → Facebook Messenger & Instagram DM, klik på Connect, login med Facebook-konto, der forvalter din side, og vælg siden. Instagrams kommer med det, når din side har en Instagramms professionel konto knyttet.
WhatsApp
Et klik hvor din udbyder tilbyder det: åbne Messaging Hub-stik og bruge Connect WhatsApp, derefter følg Meta 's guidede sign- up for at vælge eller oprette dit WhassApp Business nummer. Ellers indsætte legitimation fra nogen af 20 gateways.
TelegramCity in Ontario Canada
To minutter. Besked @ BotPater i Telegram, send/newbot,vælge et navn og et brugernavn, der slutter i "bot", og indsætte den token, det giver dig i Telegram stik.OpsIQRegistrer webhook for dig.
LINJE
Create a Messaging API channel at developers.line.biz, paste the Channel secret and access token, then copy the webhook URL shown in OpsIQ into LINE and switch its own auto-replies off.
SMS
Tilføj en udbyder (Twilio, Vonage, Termii og andre) i messaging Hub med dens legitimations- og afsender nummer.
✅
Hvert stik viser sine egne trin-by-step instruktioner inde i skuffen, herunder præcis hvad de skal kopiere og hvor. Du har aldrig brug for udvikler legitimation for one-klik muligheder.
Tænder en kanal
Forbindelse af en kanal starter ikke. Gå til Settings → Client Chat → Advanced → Messaging Channels, tænde for master skifte og derefter den enkelte kanal. Hver kanal har sin egen AI auto- svar kontakt, så du kan pilot på en før åbning af resten.
1
Forbind kanalen
I Connectors, ved hjælp af instruktionerne i den connector skuffe.
2
Test af forbindelsen
Klik på Test. Det gør en reel opkald til udbyderen og fortæller dig, hvad der er galt, hvis noget er.
3
Aktivér meddelelseskanaler
Indstillinger→Client Chat→Avanceret. Tænd hovedkontakten, derefter kanalen.
4
Send dig selv en besked
Fra en anden konto, bestil din side, nummer eller bot. Det skal vises i chat- indbakken inden for få sekunder og få et AI svar.
Svar på vinduer
Beskeder platforme begrænser, hvor længe en virksomhed kan svare efter en kunde skriver. OpsIQ viser den resterende tid på hver samtale og håndhæver reglen for dig.
WhatsApp
24 timer fra kundens sidste besked. Derefter kan du kun sende en godkendt skabelon, som du konfigurerer i samme Avanceret fane.
Messenger & Instagram
24timer for normale svar; agenter kan svare op til7dage senere under Meta 's humanagent godtgørelse.
Telegram, LINE, SMS
Ingen platform- påtvunget vindue.
⚠️
Hvis et svar mislykkes, fordi vinduet lukket, samtalen viser hvorfor. Dette er en platform regel, ikke en OpsIQ grænse.
Fælles spørgsmål
Kan kunderne se, at en AI svarede?+
Kun hvis du fortæller dem. Svaret kommer fra din side, nummer eller bot præcis som et menneskeligt svar ville. Din AI instruktioner styre tonen, og om det identificerer sig selv.
Kan en agent overtage midt-samtale?+
Ja. Åbn samtalen i chatindbakken og klik på Deltag. AI stopper, du skriver, og kunden ser en kontinuerlig tråd på deres side.
Hvad hvis jeg afbryder en kanal?+
Brug Afbryd forbindelsen på stikket. Brevhistorikken holdes; nye breve skal simpelthen stoppe med at ankomme, og platformen får besked om at holde op med at sende dem.
Kan to arbejdsrum bruge den samme Facebook-side?+
Nej. En side tilhører et arbejdsområde ad gangen. Forbindelse et andet sted flytter den, og det første arbejdsrum stopper med at modtage beskeder, så frakoble bevidst snarere end gentilslutte andre steder.
Støtte
Rigtige chatsamtaler
Disse eksempler viser, hvordan en veluddannet Kunde AI skal håndtere fælles scenarier. Brug dem til at teste din AI-træning og identificere huller.
10 samtaleeksempler
1. Afleverer kundespørgsmål om ordre
Scenarie:
Customer: Hi, I placed an order 3 days ago and haven't received any shipping notification yet. Order #ORD-5523.
Hvad skal man gøre:
AI bør: (1) Slå op ordre # ORD -5523 gennem stikket. (2) Rapportér den aktuelle status og tracking info hvis tilgængelig. (3) Hvis ordren er forsinket, skal du bekræfte forsinkelsen og give en estimeret tidslinje (4) Opfinde IKKE en shipping status, hvis stikket ikke har en.
2. Prospekt spørger om priser
Scenarie:
Customer: How much does your Pro plan cost? Do you offer annual billing?
Hvad skal man gøre:
AI bør: (1) Svar fra videnbasen med aktuelle priser. (2) Forklar forskellen mellem månedlig og årlig fakturering (3) Hvis svaret ikke er i videnbasen, skal du sige det og tilbyde at forbinde dem med salg (4) Opfinde IKKE prissætning, der ikke er i videnbasen.
3. Vred kunde krævende refusion
Scenarie:
Customer: This is ridiculous! Your product does not work and I want my money back NOW.
Hvad skal man gøre:
AI bør: (1) Anerkend frustrationen roligt. (2) Spørg efter ordrenummer eller e-mail. (3) Forklar tilbagebetalingsprocessen. (4) Opret en supportbillet eller eskalere til en menneskelig agent. (5) Lover IKKE en tilbagebetaling, der kræver menneskelig godkendelse.
4. Dobbeltfaktureringskanttilfælde
Scenarie:
Customer: I was charged twice this month. My bank shows two charges of $29.99.
Hvad skal man gøre:
AI bør: (1) Bekræft bekymringen. (2) Indsamle de relevante oplysninger (e-mail, dato for gebyrer). (3) Forklar, at fakturering spørgsmål kræver menneskelig gennemgang. (4) Opret en billet til fakturering med detaljerne. (5) Sæt prioritet til High.
5. Multisprogkunde
Scenarie:
Customer: Bonjour, je voudrais savoir si vous livrez en France?
Hvad skal man gøre:
AI bør: (1) Svar på kundens sprog, hvis dette sprog er understøttet. (2) Svar på spørgsmålet om levering til Frankrig fra videnbasen. (3) Hvis sproget ikke understøttes, skal du svare på standardsproget og nævne hvilke sprog der er tilgængelige.
6. Diskussion efter lukketid
Scenarie:
Customer: Hello, is anyone there? I need help with my account.
Hvad skal man gøre:
AI bør: (1) Hvis konfigureret til efter-timer AI, svar og assist. (2) Hvis after- hours skaber billetter, siger: "Vores team er i øjeblikket offline. Jeg har skabt en support billet til dig, og nogen vil følge op på i løbet af forretningstider". (3) Angiv billetnummeret.
7. Forhåndskøb sammenligning shopper
Scenarie:
Customer: How does your product compare to [Competitor X]?
Hvad skal man gøre:
AI bør: (1) Beskriv dit produkts styrker faktuelt. (2) Må IKKE nag konkurrenten. (3) Hvis der er en sammenligning side i videnbasen, link til det. (4) Hvis kunden spørger om funktioner, du ikke har, være ærlig.
8. Kunden ønsker en anbefaling
Scenarie:
Customer: I run a small online store with about 100 orders per month. Which plan is right for me?
Hvad skal man gøre:
AI bør: (1) Spørg om nødvendigt at afklare spørgsmål (f.eks., hvilke funktioner der betyder mest) (2) anbefale en plan baseret på videnbasen (3) Forklar, hvorfor den plan passer til deres behov (4) Nævn, at de kan starte med en mindre plan og opgradere senere.
9. Kunde, der forsøger at få en uautoriseret rabat
Scenarie:
Customer: I saw online that you give 50% discounts. Can I have one?
Hvad skal man gøre:
AI bør: (1) Polært forklare aktuelle kampagner, hvis nogen findes. (2) Opret eller lov IKKE rabatter, der ikke er i videnbasen. (3) Hvis kunden fortsætter, tilbyde at forbinde dem med salgsholdet.
10. Kunden har brug for hjælp til en funktion
Scenarie:
Customer: How do I export my data? I can't find the export button.
Hvad skal man gøre:
AI bør: (1) Giv trin-for-trin instruktioner fra videnbasen. (2) Inkludér den nøjagtige side sti og knap placering. (3) Hvis funktionen kræver en specifik plan, skal det nævnes (4) Hvis funktionen ikke findes, være ærlig og foreslå alternativer.
Støtte
Chat routing og eskalering
Når en live chat har brug for en rigtig person, AI besvarer to spørgsmål: hvilket team ejer denne samtale, og hvem der skal informeres. Begge er konfigureret i Indstillinger, Client Chat, Support Flow, under AI routing afdelinger.
Valg af hvilke afdelinger AI kan bruge
De to kasser på dette panel er en whitelist. Afdelinger flyttet til højre er de eneste AI kan rute til eller åbne billetter i. Alt venstre til venstre er usynligt for det, selv om afdelingen eksisterer og er bemandet. Start smal og tilføje afdelinger som du personale dem.
💡
Hvis ingen afdeling er aktiveret overhovedet, OpsIQ falder tilbage til arv routing på tværs af hver afdeling, det kan finde. Behandl det som et sikkerhedsnet, ikke en konfiguration valg.
Hvem modtager eskaleringen
Dette er den del, de fleste mennesker forventer at konfigurere og behøver ikke at. Når AI eskalerer en chat, OpsIQ e-mails de personer, der er knyttet til denne afdeling. Du styre denne liste én gang, på Team og afdelinger side, og både billet eskalering og chat eskalation følge det.
Medlemmer af afdelingsteamet
Hver aktiv admin knyttet til afdelingen modtager deres egen kopi. Suspenderet og deaktiveret konti er sprunget over.
Primær admin
Bruges, når der ikke er nogen holdmedlemmer, så en eskalation stadig når frem til nogen.
Ingen knyttet
Levering er ikke muligt. Rutepanelet markerer, at afdelingen i rødt og AI fortæller ikke besøgende et menneske blev anmeldt.
⚠️
En afdelings egen e-mail adresse er bevidst aldrig bruges som modtageren. Denne adresse er afdelingens indgående billet postkasse, den ene indkommende post matches mod at åbne billetter. En eskalering sendt der ville blive pired tilbage i som en ny billet snarere end at nå en person.
- Hele afdelingen.
Præcis en afdeling bærer catch- all mark. Det modtager chats AI kunne ikke trygt sted, og det er en sidste udvej snarere end den normale sti.
1
Ryd signaler vinder
Billing formulering går til en fakturering afdeling, hosting og fejl formulering til en teknisk en, køber ordlyd til salg.
2
AI klassifikatoren forsøger næste
Hvis nøgleord er inkonklusive, modellen læser samtalen og vælger fra de aktiverede afdelinger.
3
Så er det hele på plads.
Først når begge kommer op tom, catch- alle afdeling modtager chatten.
4
Salgsvagten
Hvis catch- all er en salgsafdeling og den besøgende viste ingen købssignal, OpsIQ søger støtte eller teknisk afdeling i stedet, så almindelige support spørgsmål ikke akkumuleres i Salg.
Hvad er det, den besøgende får at vide?
Hvis eskalering email går ud, AI fortæller den besøgende holdet er blevet underrettet. Hvis det ikke kan gå ud, Al siger noget ærligt og inviterer dem til at efterlade meddelelsen i chatten i stedet. Det vil ikke hævde et menneske blev advaret, når ingen e-mail blev sendt.
Panelet siger "ingen at underrette" for en afdeling+
Ingen er knyttet til det. Åbn Team og afdelinger, vedhæfte mindst én aktiv admin, derefter genindlæs indstillingerne side. Panelet læser live.
Kan vi snakke om eskalationer et andet sted end holdet?+
Ja. En brugerdefineret adresse, som tidligere er gemt til en afdeling, tilsidesætter stadig holdlisten. Nye opsætninger bør sætte folk på afdelingen i stedet, så der er et enkelt sted at vedligeholde.
Hvorfor var min kamp sprunget over?+
Kontroller om det er en salgsafdeling. Hvis det er, og den besøgende viste ingen købssignal, OpsIQ ruter til en support eller teknisk afdeling med vilje.
Støtte
e-mail-postkasser og udkast
OpsIQ kan oprette forbindelse til e-mail-postkasser for automatisk at oprette billetter fra indgående e-mails og sende svar som e-post. Det giver også AI- udarbejdet svar til menneskelig gennemgang.
E- mailTræk e-mail ind over IMAP (eller videresendelse), slå hver til en gevindret billet, og lad AI udkast svaret for gennemgang.
Forbindelse af en postkasse
Protokol
IMAP (de fleste udbydere), Gmail API (Google Workspace), eller Microsoft Graph (Outlook 365).
I cPanel > e-mail-konti, klik på din e-mailadresse for IMAP indstillinger.
2
Indtast i OpsIQ
Vært: normalt mail.yourdomain.com eller dit serverværtsnavn, port: 993 (SSL) eller 143 (STARTLLS), brugernavn: fuld e-mail adresse.
AI e-mail udkast
Når auto- svar er indstillet til "draft" tilstand, AI genererer svar udkast, der vises i træk kø. Du kan:
Revision
Læs udkastet og tjek for nøjagtighed.
Redigér
Ændr tekst, tone eller indhold før afsendelse.
Send
Godkend udkastet og send det som et e-mail svar.
Kassér
Udkastet udgår, hvis det ikke er hensigtsmæssigt.
Send automatisk
Hvis tilliden er høj nok og autosend er aktiveret, sendes udkast automatisk efter en konfigurerbar forsinkelse.
Hvorfor konverteres e-mails ikke til billetter?+
Check: (1) Er postkassen forbundet og sund? Kig efter grøn status i e-mail > Postkasser. (2) Er cron job kører? E-mail afstemning kræver cron. (3) Bliver e-mailen filtreret eller flyttet til en anden mappe end INBOX?
CSAT måler billet og chat tilfredshed, overflader ulykkelige svar og sammenligner AI og menneskelige resultater.
ProduktskærmCSAT-siden kombinerer scorekort, detractor follow- up, kommentarer, afdelings og agentopdelinger og chat feedback.
Billetundersøgelser er planlagt efter lukning (normalt 24 time senere). Et positivt respons er en score på4eller 5. Brug detractor kø for scorer af 1 eller2og læse billetten / samtalen, før du kontakter kunden.
Chat feedback rapporteres separat for AI- løst og humanhåndteret samtaler. Lave stikprøvestørrelser bør ikke anvendes til ranking agenter eller modeller.
Støtte
Team e-mail udsendelser
Email Platform-siden lader en autoriseret operatør sende en one-time besked til alle aktive agenter, udvalgte agenter eller en afdeling og gennemgå send historie.
ProduktskærmTeamkomponisten viser publikum, emne, besked og tidligere leveringshistorik.
Denne side er for interne operationelle meddelelser, ikke kundemarketing. Vælg det mindste korrekte publikum, preview navne og adresser, derefter sende. Levering bruger den konfigurerede udgående e-mail sti og registrerer resultatet.
Støtte
Postkasser, levering og indadgående e-mail
Indstil hvordan OpsIQ sender e-mail, forvandler indgående beskeder til billetter og beviser at afsenderdomænet er klar.
ProduktskærmEmail indstillinger kombinerer udgående routing, Fra identitet, postkasse indtagelse, leveringsmuligheder kontrol og test e-mail.
Udgående e- mail
Fulde administratorer kan vælge den foretrukne e-mail stik; OpsIQ falder tilbage til konfigureret SMTP/ mail levering når det er relevant. Indstil en genkendelig Fra navn / adresse, send en test og tjek 24-time succes / fiasko målinger.
Postkasser
En IMAP postkasse har brug for et navn, e-mail adresse, målafdeling, vært, port, sikkerhedstilstand, brugernavn, adgangskode, mappe, valgstat og certificeringsvalideringsvalg. Brug Poll nu til at kontrollere indtagelse, før de venter på cron.
Øjeblikkelig rørføring
På samme server kan et postrør passere den rå RFC822-besked direkte. En ekstern mail- server kan POST meddelelsen til det beskyttede indgående endpoint ved hjælp af sin token. Begge stier indtaster den samme dobbelt-, tråde- og ticket- routing rørledning.
Levering
SPF / DKIM / DMARC-kontrollen er vejledende dokumentation for det konfigurerede Fra domæne. Et grønt tjek garanterer ikke placering af indbakke, men der bør rettes op på en fejl før afsendelse af produktionsmeddelelser.
Støtte
Støtte Portal Studio
Støtte Portal Studio designs og udgiver den brugervenlige support oplevelse uden at kræve eksterne billedaktiver.
ProduktskærmPortal Studio viser en lydhør preview sammen tema, navigation, viden, billet, assistent, form, sidefod og CSS -kontroller.
Brug skabelonen som udgangspunkt, og opstil derefter tema, layout, navigation, viden søgning, billet form, assistent, fod, mærke, billet adfærd, brugerdefinerede CSS og generelle indstillinger.
Støtte
Knudepunkter
Den viden-hul kø indsamler kundespørgsmål AI kunne ikke besvare trygt, så holdet kan forbedre dækningen.
ProduktskærmHulkøen rækker savnede eller lav-tillid spørgsmål og sporer, om holdet har løst dem.
Åbn et hul for at læse det oprindelige spørgsmål og den nærliggende samtale, derefter vælge den rigtige rettelse: opdatere en eksisterende artikel, oprette en ny viden artikel, tilføje en business fact, rette stik data eller ændre eskalering instruktioner. Markér det løst først efter en evaluering eller reel test returnerer et acceptabelt svar.
Støtte
Status side administration
Statusadministrationen siden kommunikerer service sundhed og hændelser ved hjælp af komponenter, aktuelle tilstande og opdateringer.
ProduktskærmStatusadministration indeholder en liste over komponenter og hændelser, så operatørerne kan offentliggøre klare, tidsstemplede serviceoplysninger.
Brug komponentstater konsekvent. Når en hændelse påvirker kunder, udgive en indledende meddelelse, tilføje tidsstemplede opdateringer som fakta ændre sig, og lukke med en kortfattet opløsning resumé. Brug ikke statussiden som en intern debug log; følsomme diagnostik hører til i OpsIQ og server logs.
AI
Indstil din AI
AI Configuration er hvor du vælger din AI udbyder, model og omkostningsstyring. OpsIQ understøtter flere udbydere: Claude (Anthropic), GPT- 4o (OpenAI), Gemini (Google), og Grok (xAI). Du kan bruge din egen API nøgle (BYOK) eller Managed AI, hvis tilgængelig på din plan.
Indstil AIVælg Administreret AI eller din egen nøgle, skal du vælge en model for hastighed vs dybde, og cap månedlige udgifter med et token budget.
Valg af udbyder
Anmeldt af Claude (Anthropic)
Stærk ræsonnement, forsigtig med fakta, god til at følge komplekse instruktioner. Modeller: claude- sonnet -4-20250514, klaude...3.5-sonnet. Bedste for: support samtaler, tekniske spørgsmål, detaljeret analyse.
GPT- 4o (OpenAI)
Hurtig, kreativ, god generel viden. Modeller: gpt- 4o, gpt-4o-mini. Bedste for: hurtige svar, kreative skrivning, brede videnspørgsmål.
Gemini (Google)
God til faktuelle spørgsmål, flersproget support. Modeller:gemini-2.0-flash,gemini-1.5-pro. Bedste for: flersproget støtte, faktuelle opslag.
Du giver din egen API nøgle fra udbyderen. Du betaler leverandøren direkte. Fuld kontrol over model valg og brug.
Managed AI
AI leveres som en del af din OpsIQ - Nej. API nøgle nødvendig. Anvendelse er afmålt mod din plans AI kredit balance.
Opsætning af trinvis trin
1
Gå til AI - indstilling
I OpsIQ admin, navigere til Indstillinger > AI konfiguration.
2
Vælg udbyder
Vælg din AI udbyder fra dropdown.
3
Indtast API - tasten
Hvis De bruger BYOK, indtast din API tasten. For Administreret AI, dette håndteres automatisk.
4
Vælg model
Vælg den specifikke model der skal bruges. Mindre modeller er hurtigere og billigere. Større modeller giver bedre kvalitet svar.
5
Prøvningsforbindelse
Klik på "Test-forbindelse" for at verificere API -tasten og modellen virker. Et grønt checkmark betyder succes.
6
Gem
Klik på Gem for at aktivere din AI-konfiguration.
Omkostningskontrol
Månedligt budget
Sæt en maksimal månedlig forbrug på AI tokens. Når budgettet er nået, AI funktioner yndefuldt nedgradering (kortere svar, ingen auto-svar) snarere end at stoppe helt.
Grænse for menighedstegn
Maksimale tokens per enkelt samtale. Forhindrer løbske samtaler fra at forbruge overdreven kreditter.
Alarm med lav balance
Når din AI kreditsaldo falder under tærsklen (standard: 50,000 tokens), en advarsel vises i admin. Sæt dette i AI konfiguration.
Konfiguration af arbejdsområde
AI konfiguration er per- arbejdsområde. Hvis du håndterer flere steder, kan hvert arbejdssted bruge en anden udbyder, model og budget. Arbejdsområdet arver globale standardværdier medmindre overskridelsen. For at indstille per arbejdsrum: skifte til arbejdsrummet, så gå til AI konfiguration og gemme indstillinger der.
Henter API nøgler
Anthropic (Claude)
Gå til console.anthropic.com > API Nøgler > Opret nøgle. Kopiér tasten startende med "sk- ant-".
OpenAI (GPT)
Gå til platform.openai.com > API Nøgler > Opret ny hemmelig nøgle. Kopiér nøglen startende med "sk-".
Google (Gemini)
Gå til aistudio.google.com > Hent API Lav en nøgle til dit projekt.
xAI (Grækenland)
Gå til console.x.ai > API Opret og kopiér din nøgle.
Test din AI-opsætning
Scenarie:
After entering your API key, click "Test connection." You should see a green checkmark and a sample response from the AI.
Hvad skal man gøre:
Hvis prøvningen ikke lykkes: (1) Kontroller, at API tasten er korrekt (ingen ekstra mellemrum) (2) Kontroller, at din konto har fakturering oprettet med udbyderen. (3) Kontroller, at modelnavnet er gyldigt. (4) Hvis du bruger Managed AI, kontrollere din licens er aktiv.
Hvilken udbyder er bedst?+
Der er ingen enkelt bedste udbyder. Claude er fremragende til support samtaler. GPT- 4o er hurtig og alsidig. Gemini håndterer flere sprog godt. Prøv hver eneste og se, hvilke der giver de bedste resultater for din specifikke brug sag.
Kan jeg skifte udbyder senere?+
Ja. Skift leverandør og API -nøgle til enhver tid. Eksisterende samtale historie er bevaret. AI vil bruge den nye udbyder til alle fremtidige samtaler.
Hvad sker der, når jeg løber tør for kreditter?+
AI nedbrydes yndefuldt: svar bliver kortere, auto-svar pauser, og admin viser en lav balance advarsel. Kernesporing, billetter, og CRM fortsætter med at arbejde uden AI.
AI
Smartere & billigere kundechat
Et sæt opt- in kontroller, der gør din kunde chat enten smartere (det årsager på tværs af en kundes konto som en menneskelig agent) eller billigere (det sender AI mindre, eller svar i færre trin). Hver kontrol er slukket som standard og uafhængig, at slå en til aldrig ændrer nogen anden adfærd. De fleste lever under Indstillinger > Client Chat > Behaviour; nogle få er på Opsætning af din AI og Train din AI.
Smarter-svar (agent mode)
En normal chatbot besvarer et spørgsmål fra et kig op. Agent-tilstand på, kan assistenten foretage flere read- only konto kontrol i en enkelt tur og krydshenvisning dem, fx "har jeg åbne billetter, og er min balance nok til min næste fornyelse?" besvares i et svar med math gjort. Det kun gør for verificerede kunder på grund eller tilbagebetaling spørgsmål; alt andet kører den normale single- svar sti.
Agent-tilstand
Op til et par read- only lookups per tur, krydsrefereret før du svarer. Tænd når du har en tilsluttet platform (WHMCS, Shopify, Stripe, Zendesk osv.). Off = dagens single-lookup adfærd, uændret.
Tænkning dybde for agent svar
Hvor svært modellen grunde på komplekse sving (lav / medium / høj). Start på Lav; de fleste supportspørgsmål håndteres godt der.
Agentmodel
Pins en stærkere model bare for komplekse agent drejninger, så hverdagen chat forbliver på en let, billig model og kun de hårde sving betale for dybde. Blank = din normale customer-chat model.
Plan forude · one-pass svar (beta)
Et lille planlægningstrin afgør hvilke opslag der skal trækkes, og om videnbasen er nødvendig, så besvarer du i et enkelt hovedopkald i stedet for flere trin. En sub- skifte under Agent tilstand. Den kan ikke aktiveres medmindre Agent mode er tændt. Samme svarkvalitet, færre opkald på multipart spørgsmål.
Samtale og forståelse
Long- contalking memory (beta)
Holder en kort løbende oversigt over ældre beskeder (navne, billet / faktura numre, beløb, beslutninger) så assistenten forbliver konsekvent på tværs af meget lange chats uden at genstarte hele udskrift. Bedste for support- tunge, lange tråde; par med Agent mode.
Typo-tolerance
Læser små typoer ("mine åbne billetter", "ubetalte fakturaer") som de planlagte ord, så den rigtige information findes i stedet for at gå glip af. Fungerer med hver tilsluttet platform. Off som standard; nyttigt for mobil-tunge chat.
Kontokonteksten for lean
Kun lægger kundens konto snapshot, når spørgsmålet er faktisk om deres konto (balance, fakturaer, billetter, tjenester), springer det på generelle spørgsmål. Klipper omkostninger uden tab af kvalitet. Assistenten kan stadig hente kontoen live, når en tur har brug for det.
Omkostningsbesparelser
Spring viden søgning efter hilsener (beta)
"Hej", "tak" og "ok" udløser ikke en viden- base søgning, disse svar aldrig bruge det. Enhver besked med reelt indhold stadig søger som normalt.
Længste svar tilladt (tokens)
Caps hvor længe et enkelt svar kan være. Replik længde er den dyreste del af et opkald, så en fornuftig cap (omkring 500 for støtte) er den eneste mest effektive chat omkostningskontrol. Kun sænker din globale grænse, aldrig hæver det.
På Indstil din AI
Tænkning dybde (kunde & admin chat)
Hvor meget modellen tænker før svar (minimal til høj). Hold kunde chat på minimal / lav for hastighed; reservere højere indstillinger for analyse og admin copilot.
Per- AI model (per job)
Hver AI overflade (live chat, billet udkast, resuméer, analyse, admin copilot, kampagner, site intelligens og mere) kan køre på sin egen model. Lys, hvor hastighed betyder noget, stærk, hvor kvalitet er afgørende. Blank på en overflade = udbyder standard for dette job.
Admin chat omkostningsstyring
Den admin copilot kan holde en afgrænset arbejdshukommelse og indlæse kun de værktøjer et spørgsmål har brug for (magert værktøj) i stedet for hvert værktøj hver tur.
På Train din AI
Komprimeringsinstruktioner
Dine instruktioner sendes på hver tur, så deres længde er en tilbagevendende omkostninger. Knappen Compress omskriver en slot for at sige det samme med færre ord. Det nægter omskrivning, hvis det ville droppe enhver {variable} eller regel, og rapporterer hvad den beskyttede, så det aldrig lydløst ændrer mening.
"Hvad der allerede er i hjernen" (Det)
Viser hvad OpsIQ allerede ved om din virksomhed per slot, så du kan slette alt, hvad du var gentage i dine egne instruktioner.
💡
Hvor går pengene hen? For kort support chat input (instruktioner + konto data + historie, sendt hver tur) normalt koster mere end den korte svar, caching og lean kontekst hjælpe de fleste der. For længe genereret indhold output dominerer. Reply-længde cap og en lavere tænkende dybde betale ud der. Se Sæt din AI til at holde hurtig cachning på, hvilket gør den store gentagne del af hver slå billigt.
Ændrer disse hvordan chatten allerede svarer?+
Nej. Hver kontrol er slukket som standard og uafhængig. At tænde en, tilføjer kun sin opførsel; at slukke den returnerer chatten til præcis hvordan det fungerede før.
Hvilken ordre skal jeg tænde dem for?+
Kør hverdagschat på en lys model og pin en stærkere Agent model. Derefter, hvis du har en tilsluttet platform, aktivere Agent mode, derefter Plan forude, så Long- samtale hukommelse. Derefter læne sammenhæng, skip-KB- for- hilsner, og et svar cap. Endelig komprimere dine instruktioner. Se et par rigtige chats efter hver ændring.
Admin Agent kit: web søgning, runbooks, missioner, filoverførsel
Admin AI chat er en arbejder ingeniør, ikke bare et spørgsmål boks. Det kan forske rettelser på nettet, holde et bibliotek over dine operationelle procedurer, patrulje dine servere på en tidsplan, og flytte filer. Det meste af dette drives ved at bede om det i chat; den ene ting du konfigurerer op foran er, hvilken web søgemaskine det bruger, på Opsætning din AI side.
Websøgning
Indbygget
Agenten søger på nettet efter dokumenter, fejlmeddelelser og aktuelle oplysninger, mens det virker. Ud af boksen bruger dette DuckDuckGo, som ikke behøver nogen nøgle og ingen opsætning.
Runbogs
I chat
Et gemt bibliotek af dine procedurer ("hvordan vi gør X her"). Agent skriver en ned efter nagle et vanskeligt job og følger det næste gang, så know-hvordan overlever slutningen af chatten.
Tjenesterejser
Skemalagt
Planlagt read- only patruljer. "Hver morgen, kontrollere diskplads og fejlloggen og fortælle mig." Resultater ankommer på din admin klokke.
Filoverførsel
I chat
Bed om en logfil og få et privat download link, eller har en fil kopieret fra en tilsluttet server til en anden. Begge begrænset på 5 MB.
Admin Agent websøgning (på Opsæt din AI)
Søgeudbyder
Hvad agent web søgning bruger. Standard er DuckDuckGo: keyless, gratis, arbejder på hver installation. Brave Search, Tavily og Serper.dev (Google resultater) normalt vender tilbage bedre resultater, men hver har brug for en API nøgle fra denne udbyder. Hvis en keyed udbyder mislykkes af nogen grund (dårlig nøgle, kvote brugt op, netværk problemer), at søgning falder tilbage til DuckDuckGo automatisk, så søgningen aldrig går mørk.
Søg efter API nøgle
Nøglen til din valgte udbyder, kun nødvendig for Brave, Tavily eller Serper. Når gemt er det maskeret og aldrig vises på siden igen; indsætte en ny til at erstatte den. En keyed udbyder bliver kun aktiv, når både udbyderen og dens nøgle gemmes.
Runbogs
Når agenten lige har arbejdet igennem et job, som du vil have udført på samme måde igen, så sig "save that as a runbook called nightly-cleanup" (gem det som en runbook kaldet natlig oprydning). Fra da af ser den runbogen ved navn i hver session, og når du beder om jobbet ved navn (eller beskriver det), henter den trinnene frem og følger dem.
💡
En runbook er vejledning, ikke et gratis pass. Når agenten følger en, går hvert skridt, der ville ændre en server stadig gennem din nuværende tilladelse tilstand og viser de sædvanlige godkendelseskort. En runBook kan aldrig omgå en godkendelse.
Tjenesterejser
En mission er en tilbagevendende job agenten kører på sin egen: time, dagligt på et sæt time, eller ugentligt på en fastsat dag. Missioner er read- kun ved design. De kan læse servere, data og internettet, men de kan aldrig ændre noget; de undersøger og rapporterer. Når en mission slutter, resultaterne lander som en meddelelse på din admin klokke. Sig "køre morgenen patrulje nu" til at udløse en på forespørgsel, eller bede agenten om at liste, pause eller fjerne missioner.
⚠️
Missioner kører fra OpsIQ cron, så det skal være sat op (se Cron og automatisering). En one-off "køre det nu" fra chat værker selv mellem cron runs på de fleste servere.
Flytning af filer
Spørg efter en fil ("få mig dagens fejllog fra webserveren") og agenten faser det og svar med et privat download link. Linken virker kun for signed- in admins og udløber efter omkring en dag. Filer er begrænset på 5 MB; for noget større, bede agenten til at komprimere eller trimme det på serveren først.
Agenten kan også kopiere en enkelt fil mellem to forbundne servere, igen op til 5 MB. Skriften på destinationen behandles som enhver anden ændring den gør: i ask mode du får et godkendelseskort først, er den eksisterende fil sikkerhedskopieret, og kopien er reversibel. For sikkerhed, filindholdet gen- læses fra kilden i det øjeblik kopien anvendes, ikke taget fra chatten.
AI
Træn din AI
AI Træning er, hvor du underviser OpsIQ hvordan man opfører sig. Du skriver prompts, der definerer personlighed, grænser, viden fokus og eskalering regler.
Tog AITræn AI som en ny leje, Kunde og Admin manualer skrevet på almindeligt engelsk (tone, altid, aldrig), grundfæstet i din KB.
To uddannelsesområder
KundeAI-prompt
Kontrollerer hvordan AI taler til dine kunder i chatkontrollen. Dette er den vigtigste prompt for at komme rigtigt.
Admin AI prompt
Kontrollerer, hvordan AI hjælper din admin team i operatøren dashboard. Dette håndterer interne forespørgsler og handling udførelse.
Skrivning af en stor kunde AI prompt
Din kunde AI prompt bør dække disse områder:
1
Identitet
Hvem er AI? Giv det et navn, en rolle og personlighed. Eksempel: "Du er Luna, en venlig og kyndig kundesupport assistent for Acme Store".
2
Tone og stil
Hvordan skal det kommunikere? Eksempel: "Vær professionel, men varm. Brug simpelt sprog. Undgå jargon. Hold svar koncise (2-3 stk. max) ".
3
Viden grænser
Hvad skal det vide og ikke kender? Eksempel: "Du kender til vores produkter, priser, forsendelse, og returpolitik. Du ved IKKE om konkurrerende produkter eller interne virksomhedens beslutninger".
4
Eskaleringsregler
Hvornår skal det give videre til et menneske? Eksempel: "Eskalere til en menneskelig agent, når: kunden beder om en tilbagebetaling, nævner juridiske foranstaltninger, rapporterer et sikkerhedsspørgsmål, eller stiller det samme spørgsmål tre gange".
5
Ting at aldrig gøre
Hårde grænser. Eksempel: "Aldrig love restitutioner. Aldrig dele interne prissætning formler. Aldrig gøre op produktfunktioner, der ikke eksisterer. Aldrig give medicinsk, juridisk eller finansiel rådgivning".
Eksempel på prompts
Eksempel kunde AI prompt · online butik
You are Aria, a friendly customer support assistant for TechGear.
PERSONALITY:
- Warm and professional
- Concise (2-3 paragraphs max per response)
- Use simple language, no jargon
- If unsure, say so honestly
KNOWLEDGE:
- Our products: laptops, accessories, software subscriptions
- Pricing: as listed in the knowledge base
- Shipping: free over $50, 3-5 business days standard, 1-2 days express ($12)
- Returns: 30-day money-back guarantee, must be in original condition
ESCALATION (hand off to human):
- Refund requests over $100
- Account security concerns
- Legal threats or complaints
- Customer explicitly asks for a human
NEVER DO:
- Promise specific delivery dates (say "estimated")
- Share discount codes not in the knowledge base
- Make up product specifications
- Give financial or legal advice
Eksempel kunde AI prompt · hosting selskab
You are Atlas, an AI assistant for CloudHost web hosting.
TONE: Technical but accessible. Assume the customer has basic web knowledge.
KNOWLEDGE:
- Shared hosting, VPS, dedicated servers
- cPanel, DNS, SSL, email configuration
- WordPress, Joomla, Drupal installation
- Common error codes and troubleshooting
ESCALATION:
- Server outages affecting multiple customers
- Data loss or security breach reports
- Billing disputes over $50
- Complex migration requests
BOUNDARIES:
- Do NOT access customer servers or databases
- Do NOT change DNS records or passwords
- Always recommend the customer makes changes themselves
- For code issues, suggest steps but clarify you cannot debug their application
Raffinering af din prompt over tid
1
Start med grundlæggende
Start med identitet, tone og nøglegrænser. Forsøg ikke at dække alt på dag et.
2
Anmeldelse AI Historie ugentligt
Læs samtaler, hvor AI gav forkerte eller suboptimale svar.
3
Opdatér prompten
Tilføj specifikke regler for tilbagevendende problemer. Eksempel: hvis AI holder lovende restitutioner, tilføje "Aldrig love en refusion. Sig du vil eskalere til fakturering team".
4
Tilføj viden
Hvis AI 'en ikke kan besvare et spørgsmål, tilføje svaret på videnbasen i stedet for at forsøge at passe alt i prompten.
⚠️
Hold din prompt under 2,000 ord. Overly lange spørgsmål kan forvirre AI og øge token omkostninger. Sæt detaljerede oplysninger i videnbasen i stedet.
Hvad er forskellen mellem den hurtige og videnbasen?+
Den prompt definerer personlighed, grænser og regler. Kundskabsbasen giver faktuelle oplysninger (produktdetaljer, priser, politikker). AI læser begge, men den hurtige former adfærd, mens KB giver svar.
Kan jeg få forskellige forspring for forskellige afdelinger?+
Den prompt er per- arbejdsplads. Hvis du har brug for forskellige AI-adfærd for forskellige afdelinger, bruge videnbasen til at give department- specifikke oplysninger og nævne afdeling sammenhæng i din prompt.
AI
AI historik
AI Historie viser hver samtale, som AI har haft med kunder og administratorer. Brug det til at revidere AI ydeevne, finde forkerte svar, og identificere uddannelseshuller.
AI historikHver AI tur (chat, billet udkast, admin handling) logget med den nøjagtige prompt, svar, varighed og resultat.
Hvad hver samtale viser
Dato og klokkeslæt
Da samtalen skete.
Kundeidentitet
Navn og e-mail, hvis kendt, ellers IP og land.
Kanal
Chat widget, billet auto-svar, e-mail udkast, eller admin AI.
Meddelelser
Fuld udskrift af samtalen: kundemeddelelser og AI svar.
Brug af token
Hvor mange tokens samtalen forbrugt. Høj symbolsk brug kan indikere AI giver alt for verbose svar eller samtalen gik i cirkler.
Foranstaltninger
Alle handlinger AI udført under samtalen (slog op ordre, oprettet billet, osv.).
Bedømmelse
Hvis CSAT er aktiveret, kundens tilfredshed rating for denne samtale.
At finde problemer
Søg efter nøgleord
Søg efter specifikke emner for at se, hvordan AI håndterer dem. Eksempel: Søg efter "refund" for at kontrollere, om AI er i overensstemmelse med din refunderingspolitik.
Filtrér efter rating
Vis kun lavvurderede samtaler for at fokusere på utilfredse kunder.
Filtrér efter kanal
Vis kun billetten auto- svar til audit automatiske svar adskilt fra chat.
Sortér efter møntværdi
High- token samtaler kan indikere problemer: AI rablende, går i cirkler, eller undlader at besvare spørgsmålet.
Ugentlig revision
1
Tjek samtaler med lav kvalitet
Var det et videnhul, et toneproblem eller et forkert svar?
2
Tjek top- token samtaler
De kan indikere forvirring. Var AI gentage sig selv? Har det ikke forstået spørgsmålet?
3
Opdatering af uddannelse
For videnhuller, tilføje artikler til videnbasen. For adfærdsproblemer, opdatere AI prompt. For tilbagevendende forkerte svar, tilføje eksplicitte korrektionsregler.
Finde videnspalter
Scenarie:
You search AI History for "installation" and find 15 conversations where the AI said "I do not have specific installation instructions for this product."
Hvad skal man gøre:
Dette betyder, at din viden base mangler installationsguider. Opret videnbaserede artikler for hvert produkt installation trin. Efter tilføjelse af dem, test ved at stille AI-installationsspørgsmål.
AI
AI-indsigt
AI Insights analyserer automatisk konversationsmønstre og overflader, der kan gøres til genstand for handling: fælles spørgsmål, tilfredshedstendenser, videnhuller og eskaleringsmønstre.
AI-indsigtDen virkelige Intelligence Hub: en AI- skrevet Dagens kort, Smart Alerts for anomalier, on- demand bly scoring og side analyse, og 14-dag trafikmønster.
Hvad indsigt viser
Top spørgsmål
Den oftest stillede spørgsmål. Hvis "Hvordan nulstiller jeg min adgangskode?" er #1, din viden base har brug for en fremtrædende password reset guide.
Tilfredsstillende tendenser
CSAT scorer over tid. Er AI tilfredshed forbedre eller faldende? Pludselig dråber kan indikere en viden base ændring, der brød noget.
Opløsningsrate
Hvilken procentdel af samtalerne løser AI uden menneskelig indgriben? En sats over 70% Det er godt. 50% betyder, at den kunstige intelligens har brug for mere træning.
Eskaleringsårsager
Hvorfor samtaler får overdraget til mennesker. Almindelige grunde: kunde anmodet menneske, AI kunne ikke besvare, følsomme emne, fakturering problem.
Knudepunkter
Emner, hvor AI ofte siger "Jeg ved det ikke" eller giver lav- tillid svar.
Gennemsnitlig samtalelængde
Hvor mange beskeder per samtale. Meget lange samtaler (10+ meddelelser) kan indikere AI er ikke at forstå spørgsmålet.
Brug af indsigt til at forbedre
Scenarie:
AI Insights shows that 23% of escalations are "Customer asked about warranty" and the AI could not answer.
Hvad skal man gøre:
Dette er et klart videnhul.1) Skriv en omfattende garanti artikel i videnbasen dækker alle garantibetingelser, krav proces, og udelukkelser. (2) Opdater AI-prompt til reference garanti oplysninger. (3) Monitor AI Insights næste uge for at se, om garanti eskaleringer falder.
AI
Admin AI spilbog
The Admin AI (Spørg OpsIQ) hjælper dit team med at håndtere OpsIQ fra admin dashboard. Du kan bede det om at slå data op, forklare funktioner, sammenfatte billetter, og udføre platform handlinger.
AI- administratorFortæl admin AI, hvad du ønsker på almindelig engelsk; det foreslår den nøjagtige handling (scoped, reversibel, revideret) og venter på din bekræftelse.
Hvad admin AI kan gøre
Slå data op
Spørg: "Vis mig alle billetter fra [email protected]"eller" Hvad er status for orden # ORD-5523?"
Sammenfatning
Spørg: "Summarisér de sidste 10 billetter" eller "Hvad er de øverste support spørgsmål i denne uge?"
Forklar funktioner
Spørg: "Hvordan konfigurerer jeg automatisk svar?" eller "Hvad betyder bounce rate kort?"
Udfør handlinger
Spørg: "Opret en billet til [email protected] om fakturering "eller" Luk billet T -12345"
Platformforespørgsler
Spørg: "Hvor mange besøgende fik vi i går?" eller "Hvad er vores indtægter denne måned?"
Eksempel på samtaler
Opstilling af en kunde
Scenarie:
Admin asks: "Find customer [email protected] and show me their recent activity"
Hvad skal man gøre:
AI ser op på kunden på tværs af alle tilsluttede datakilder: besøgende sessioner, billetter, chat samtaler, ordrer og CRM kontakter. Det returnerer en oversigt over seneste aktivitet med links til hvert element.
Få et dagligt resumé
Scenarie:
Admin asks: "What happened today?"
Hvad skal man gøre:
AI opsummerer: "I dag du havde 245 besøgende (op 12%), 8nye billetter (3 er løst af AI),2nye ordrer i alt $198, og1chat eskalering om en forsendelsesforsinkelse ".
Gennemførelse af en handling
Scenarie:
Admin asks: "Change ticket T-5523 priority to Urgent"
Hvad skal man gøre:
AI bekræfter: "Jeg vil ændre billet T-5523 prioritet fra Normal til Hastende. Dette vil påvirke SLA timer. Bekræft?" Du bekræfter, og handlingen er udført.
💡
Admin AI udfører kun handlinger, der er registreret i Action Registry. Det kan ikke opfinde handlinger eller adgangssystemer uden OpsIQ.
AI
KundeAI-scenarier
Dette afsnit dækker fælles customer-vender AI scenarier med forventet adfærd og uddannelse tips.
Kunde AIEt bibliotek af rigtige kundespørgsmål og præcis, hvordan AI skal håndtere hver, at teste din uddannelse og finde huller.
Scenario-bibliotek
Undersøgelse af ordrestatus
Scenarie:
Customer: "Where is my order #12345?"
Hvad skal man gøre:
Forventet AI adfærd: (1) Slå ordren op gennem platformen stik. (2) Rapport om status (behandling, forsendelse, levering). (3) Inkludér tracking nummer hvis tilgængelig. (4) Hvis ordren er forsinket, skal du bekræfte og give estimeret tidslinje (5) Opfinde aldrig tracking information.
Anmodning om nulstilling af adgangskode
Scenarie:
Customer: "I forgot my password and cannot log in"
Hvad skal man gøre:
Forventet AI adfærd: (1) Giv adgangskoden nulstille trin fra videnbasen. (2) Inkludér nulstille link eller side sti. (3) Nævn, at nulstille e-mail kan tage et par minutter. (4) Foreslår at tjekke spam mappe. (5) Hvis kunden stadig ikke kan nulstille, eskalere til et menneske.
Anbefaling om funktion
Scenarie:
Customer: "Can you add dark mode to the mobile app?"
Hvad skal man gøre:
Forventet AI adfærd: (1) Tak for forslaget. (2) Forklar, hvordan anmodninger om funktioner håndteres (logget, revideret, prioriteret). (3) Lover du ikke at funktionen vil blive bygget. (4) Hvis en lignende funktion findes, nævne det.
Afgiftskonflikt
Scenarie:
Customer: "I was charged but my service is not working"
Hvad skal man gøre:
Forventet AI adfærd: (1) Bekræft frustrationen. (2) Kontroller servicestatus, hvis det er muligt. (3) Eskalere til fakturering afdeling med alle detaljer. (4) Lover du ikke en tilbagebetaling. (5) Sæt billet prioritet til High.
Off- topic spørgsmål
Scenarie:
Customer: "What is the weather like in London today?"
Hvad skal man gøre:
Forventet AI adfærd: (1) Polært omdirigerer. "Jeg er din [Firma] støtte assistent og kan hjælpe med spørgsmål om vores produkter og tjenester. For vejr information, prøv en vejrtjeneste" (2) Spørg, om de har et produkt spørgsmål.
Hvordan tester jeg kunde AI adfærd?+
Åbn din hjemmeside i en privat / inkognito browser og chatte med AI som kunde. Prøv fælles spørgsmål, kant sager, og modstridende scenarier. Tjek, at AI følger dine hurtige regler og bruger videnbase indhold korrekt.
AI
AI videnbase
The Knowledge Base er et bibliotek af artikler, som AI bruger til at besvare spørgsmål. Når en kunde spørger noget, AI søger videnbasen for relevante artikler og bruger dem til at generere en præcis, jordbaseret svar.
VidenbaseCrawl dit websted og importere docs i videnbasen; AI henter de rigtige stykker og svar, grundfæstet og citeret.
Sådan virker det
1
Kunden stiller et spørgsmål
"Hvad er din returpolitik?"
2
AI søger videnbasen
OpsIQ finder artiklen "Returneringspolitik" ved at matche søgeord og semantisk betydning.
3
AI genererer et svar
AI læser artiklen og skriver en natursprog svar baseret på artiklen indhold.
4
Kunden får et præcist svar
Svaret er baseret på din politik, ikke AI 's generelle træningsdata.
Oprettelse af gode artikler
Et emne pr. artikel
Skriv en separat artikel for hvert emne: returpolitik, forsendelsespriser, kontoopsætning, nulstilling af adgangskode. Kombinér ikke uafhængige emner.
Skriv som en FAQ
Start med det spørgsmål, kunder stiller, og giv derefter svaret. Dette hjælper AI matche spørgsmål til artikler.
Vær specifik
"Returnering skal indledes inden for 30 dage levering" er bedre end "Vi har en returpolitik".
Inkludér kanttilfælde
Hvad med internationale afkast? Hvad med digitale produkter? Hvad så med varer købt til salg? Dække undtagelserne.
Hold den aktuel
Gennemgå artikler kvartalsvis. Slet forældede oplysninger. Opdatér prissætning, politikker og procedurer, når de ændrer sig.
Startartikler du skal skrive
Forsendelse og levering
Forsendelsesomkostninger, leveringstider, sporing, international forsendelse og håndtering af forsinkelser.
Returnering og tilbagebetaling
Returvindue, betingelser, proces, tilbagebetaling tidslinje, og undtagelser.
Kontostyring
Adgangskode nulstilles, e- mail- ændring, kontosletning og dataeksport.
Prissætning og fakturering
Planbeskrivelser, faktureringscyklus, betalingsmetoder, fakturaer og valuta.
Produktvejledninger
Sådan bruger du hvert produkt eller hver funktion. Trin- stap instruktioner med screenshots.
Fejlfinding
Fælles problemer og løsninger. Fejlmeddelelser og deres rettelser.
Kontaktoplysninger
Forretningstider, supportkanaler, svartider og eskaleringsstier.
Retlig og retlig overholdelse
Databehandling, vilkår for service, anmodninger om GDPR data.
Kendingsviden
Hver stik kan bidrage med viden til AI. Når en forbindelse er aktiveret, dens build- in videnartikler (produktkatalog, fælles spørgsmål, platform- specifikke fejlfinding) er automatisk tilgængelig for AI. Du kan skifte konnektor viden på eller fra pr connector indstillinger.
Token-budgettet
Videnbasen har et konfigurerbart token loft (standard: 32,000 tokens), der styrer hvor meget viden sammenhæng er sendt til AI per samtale. Hvis din videnbase er meget stor, AI vælger de mest relevante artikler inden for dette budget. Øg loftet, hvis AI ikke finder relevante artikler; reducere det, hvis du ønsker at reducere token omkostninger.
Hvor mange artikler skal jeg have?+
Start med5-10 artikler, der dækker dine mest almindelige spørgsmål. Tilføj mere som du identificerer huller gennem AI Historie og AI Insights. De fleste virksomheder har brug for 20-50 artikler til omfattende dækning.
Kan jeg importere artikler fra et andet system?+
I øjeblikket er artikler oprettet manuelt i OpsIQ. Du kan kopiere-paste indhold fra eksisterende FAQ 'er, hjælpe centre eller dokumenter.
Hvad format skal artikler være i?+
Almindelig tekst fungerer bedst. AI forstår naturligt sprog bedre end struktureret HTML eller markdown. Skriv som du ville forklare til en kunde.
AI
AI evaluering og Watchtower
Evalueringssæt gør kritiske kundespørgsmål til gentagelige test for svarkvalitet, citater, eskalering og handlingssikkerhed.
ProduktskærmAI Evaluation lister gyldne test tilfælde, krævede adfærd, nyeste resultater og planlagte Watchtower kører.
Fulde administratorer kan oprette evalueringssæt med en hurtig, forventet kildemærkning, nødvendige citater, human- bekræftelsesregler, eskalering forventninger og forbudte handlinger. Kør et sæt direkte, tør- køre det, eller genafspille valgte historie.
Vagttårnet planer dagligt eller ugentligt kontrollerer gennem cron og kører et afgrænset antal tilfælde (op til otte pr skemalagt pass). Anmeldelse fejl sammen med udbyder / model, hurtig version, viden version, aktioner foreslået og omkostninger før ændring af produktionsadfærd.
AI
Sprog og oversættelse
Sprog håndterer oversat brugervenlig tekst og adfærd, der anvendes, når OpsIQ følger en kundes sprog.
ProduktskærmSiden Sprog viser kildesproget, oversatte sprog, udkast / live stat og customer-sprog adfærd.
OpsIQ oversætter operator- indtastet brugervendt tekst. Sæt kildesproget korrekt, før du laver oversættelser, tilføje målsprog, derefter gennemgå udkast før publicering. "Følg kundesprog" styrer svarsproget; oversætte widget interface styrer sine knapper, etiketter og systemtekst.
Oversættelse omfang kan være udkast-kun eller live. Må ikke stole på maskinoversættelse for juridiske, tilbagebetaling, sikkerhed eller sikkerhedstekst uden menneskelig gennemgang.
Hvert sted, der holder din egen formulering er anført med sin meddelelse tæller: klient chat beskeder, kampagner, proaktive meddelelser, chatstrømme, guidede ture, meddelelser, teaser bobler og Undersøgelser og formularer. Undersøgelsens overflade dækker hver offentliggjort undersøgelse helt: titel, hvert spørgsmål, alle svar muligheder, knapper, velkommen og tak-du kopiere, side krom og udfald sider. Nøglerne er bundet til spørgsmålet ID og optionsværdien, så ombestilling af spørgsmål eller indstillinger aldrig mister en oversættelse, og omformulering en meddelelse gen- oversætter kun denne besked. Offentliggjorte live undersøgelser tilbydes som standard; udkast slutter sig når du udvider omfanget.
Postchat e-mail undersøgelsen følger det sprog, som den besøgende faktisk chattede på, forudsat at sproget er et du tilbyder her; ellers bruger det dit systemsprog. Dens seks redigerbare felter oversættes også på denne side, og adfærden har sin egen kontakt i klient- chat- indstillinger.
Billet- og portalmeddelelser dækker den faste tekst operatører type en gang og hver kunde derefter modtager på det ene sprog: billetten anerkendelse, de åbnede, lukkede og feedback bekræftelser, per- afdeling signaturer og portalen velkommen linje. (AI auto-svar behøver ikke noget af dette, det allerede svar på kundens sprog.) Email kunder på deres eget sprog aktiveret i OpsIQ Skrivning, billet e-mail løser modtagerens sprog i denne rækkefølge: det sprog, de valgte i portalen eller Hjælp Centre (transporteres på billetten), lokaliteten på deres kontakt record, derefter det sprog de skrev i, detekteres lokalt ved script range og markør ord, uden eksternt opkald. Kun sprog valgt på Sprogsiden er nogensinde anvendes, så funktionen er inert indtil sprog tilføjes. HTML email wrapper er bevidst ikke oversat: det er markup, ikke prose. Stafffacing e-mail (meddelelser, afdeling advarsler, analytiker briefinger, planlagte rapporter, den ugentlige digest) bruger altid systemet sprog.
Støtte
Hjælp center
Dit Help Center er et selvserv hjælpesite bygget fra de artikler du publicerer. Kunderne kan læse og søge i det på sin egen offentlige side, og lige inde i chatkontrollen, så de kan finde svar på sig selv, før de nogensinde åbner en samtale. Alt i det kommer fra din videnbase, så det samme indhold, der giver din AI også beføjelser til din offentlige hjælp.
Hvor dine kunder ser det
Dens egen offentlige side
Et rent, søgbart hjælpested på /help.php. Kunder gennemse efter kategori, søge og åbne enhver artikel. Du kan give det dit eget navn og stil.
Inde i chat- widget
Et link til chatkontrollen, så kunderne kan søge i dine artikler uden at forlade chatten. Hvis de stadig har brug for en person, er de et tryk på fra at starte en samtale.
Tænd for den
1
Åbn siden med Hjælp
Gå til Config, then Help Center i din admin og slå til Aktivér offentligt hjælpecenter.
2
Giv det et navn og et kig
Sæt navnet på Hjælp Center, som vises i overskriften og browserfanebladet, og vælg en visuel stil. Du kan slå den øverste navigation fra for en ren side uden menu.
3
Udgiv nogle artikler
Intet viser, før du udgiver artikler til det. Den næste del dækker hvordan.
Udgiv artikler til hjælpecentret
Artikler lever i din videnbase. En artikel vises i Hjælp Center, når det er offentliggjort og markeret offentligt. Der er et par måder at gøre dette:
Udgiv en artikel
Åbn artiklen, markér den offentliggjort, og slå muligheden for at vise den i Hjælp Center.
Udgiv alt på én gang
Brug Udgiv alle knap til at trykke hele dit publicerede sæt til Hjælp Center i et klik, i stedet for at gøre dem en ad gangen.
Omdan FAQ 'er til artikler
Har du allerede FAQ 'er? Udgiv alle til at hjælpe til at gøre dem til hjælp artikler, så de sidder sammen med alt andet.
Importér en eksisterende vidensbase
Flytter fra en anden hjælp skrivebord? Importér KB knappen på fanebladet Artikler bringer en eksisterende videnbase ind for dig. Du har tre måder at pege det på dit indhold:
Indsæt en URL
Giv det adressen på din nuværende hjælp center. Hvis den anerkender platformen (for eksempel Zendesk) det læser den nøjagtige kategori træ fra denne platform. Ellers kravler stedet og genopbygger strukturen fra siderne, importerer kun de rigtige artikler og springer login, priser og kontakt sider.
Vælg en tilsluttet app
Hvis en platform allerede er tilsluttet dette arbejdsområde, og den har et videngrundlag, dukker den op i et nedkastningssystem under Importér fra en tilsluttet app. Vælg det og importere, ingen URL eller adgangskode behov. App 'en er kun angivet, når den er tilsluttet og sat op.
Upload en CSV
Ingen live site at pege på? Upload et regneark med title, category, og body Søjler. Parent / Child i kolonnen vedrørende kategori til opbygning af indlejrede kategorier.
Uanset hvilken måde du vælger, får du en forhåndsvisning først: de artikler den fandt, grupperet efter kategori, hver med et afkrydsningsfelt så du kan slippe alt hvad du ikke ønsker. Intet gemmes før du klikker på Importér. Fortryd den samlede import med et enkelt klik, eller Gensynkronisering en URL eller forbundet-app import senere for at trække i nye og ændrede artikler.
💡
Udviklere: enhver forbindelse kan annoncere sin viden base til denne dropdown ved at erklære en kb_capabilities blokken i dens settings.json (type kb_sourcemed adapter og a base_template). Se afsnittet om forbindelser og reference til platformstik.
Organiser med AI
En ryddelig hjælp center er let at gennemse og lettere at søge. Organiser med AI knappen gør rydning for dig. I et klik læser det dine offentliggjorte artikler, sortere dem i fornuftige kategorier, og tilføjer tags. Det skaber en kategori, når den har brug for en, genbruger en kategori der allerede passer, og springer noget du allerede har organiseret, så du kan køre det igen når som helst du tilføjer nye artikler. Lad AI organisere i underkategorier i Help Center indstillinger og det kan også fil artikler under indlejret Parent / Child kategorier, som er praktisk lige efter import af en videnbase, der havde undersektioner.
💡
Kategorier giver kunderne en måde at gennemse, og tags skarpere søgning på både den offentlige side og i widget. Du kan omdøbe eller flytte ting bagefter. AI giver dig et stærkt udgangspunkt, ikke en opsætning du er fanget med.
Hjælpe Center inde i din chat widget
Du kan vise Hjælp Center lige inde i chatkontrollen, så folk søger svar, før de giver besked. I dine chat widget indstillinger, vælge hvor hjælpelinket vises:
I overskriften
Et lille hjælpe- ikon øverst i kontrollen.
Nederst
Et tekstlink under meddelelsesfeltet, for eksempel "Gennemse hjælpecenter". Du kan ændre ordlyden.
Begge steder
Vis det i overskriften og nederst for den mest synlige.
Hjælpen link har sin egen farvekontrol under widget udseende indstillinger. Lad det være tændt Ingen til at matche din affyrings farve, eller vælge en Fast farve eller Gradient. Hele hjælpeferien følger dit widget tema, så det altid ligner en del af dit mærke.
Sæt din hjælp center på din egen web-adresse
Ud af boksen din hjælp center allerede har en ren, delt adresse af sin egen (for eksempel /help/your-help-center). Du kan gå et skridt videre og tjene det under din eget domæne, så kunder og søgemaskiner se det som en del af dit mærke, for eksempel yourdomain.com/help eller help.yourdomain.com. Alt arbejder på dit domæne: links, billeder, søgning og artiklen ratings.
Under dit hovedwebsted
I Konfiguration, derefter Hjælp center, åben Indlejret tab og finde "Vis din hjælp center på din egen web-adresse". Vælg din setup (Cloudflare, Nginx eller Apache), kopiere den ready- made blok, og indsætte det i dit websted. Hver indstilling har en Opsætningsguide knap ved siden af det med de nøjagtige trin.
På et underdomæne
Foretag en foreløbig vurdering af de enkelte projekter. help.yourdomain.com? Det samme panel har en underdomæne mulighed. På Cloudflare er et subdomæne den mest pålidelige rute, og det giver dig en ren adresse med intet efter det.
💡
Brug Cloudflare? Det kun kører sin arbejder på en adresse, der er proxyed gennem Cloudflare(den orange sky). Dit hoveddomæne ofte peger lige på din hjemmeside, så en regel placeret på hoveddomænet kan stille og roligt gøre noget. Den pålidelige måde er en proxyed subdomæne som help.yourdomain.com. Opsætning guide fører dig gennem den ene DNS record og ruten.
✅
Godt for SEO. Når din hjælp center er på dit eget domæne, søgemaskiner indeksere dine artikler under dit mærke. Hver side erklærer sin korrekte adresse og sitemap lister dem, så den samme artikel aldrig indekseres to gange.
💡
Brug af in- widget hjælp link også? I chat kontrol indstillinger "Åbn i hjælpcenter", indstille Hvor linket går til Dit eget hjælpecenterdomæne og indtast den samme adresse. Derefter disse artikel links åbne på dit domæne samt, ikke på OpsIQ -adressen.
Se hvordan hele dit hjælpcenter klarer sig
Ud over enkeltartikelafstemninger har hjælpecentret sin egen analytics. Slå det til i Help Center indstillinger, og det registrerer roligt, hvordan folk bruger din hjælp: de mest-viste artikler, hvad de søger efter, og søgninger, der kom tilbage tomme (en ready- made to- write liste), at arbejde ud besøgende land og enhed på egen hånd, så det ikke behøver chat widget installeret til at rapportere. Hvert nummer vises for both steder din hjælp vises, den offentlige side og in-widget hjælp, samt kombineret, så du kan se, hvor meget hver enkelt faktisk bruges.
💡
Analytics forbliver slukket, indtil du tænder den, og du kan have besøgende IP adresser anonymiseret. Intet er registreret, før du vælger i.
Vælg hvad der vises på hver del af siden
Hver sektion af Hjælp Center (kategorierne på hjemmesiden, de populære artikler, artikellisten på en kategori side og mere) har sin egen enkle regel. For hver enkelt kan du vise eller skjule det, og vise all a sat nummer, the senesteeller kun dem, du feature med en stjerne. Når en regel hætter en liste, kunderne stadig får et "Vis alle" link, så intet er virkelig ude af rækkevidde.
Du bestemmer også, hvordan de nyttige stemmer ser: skjult, en venlig forhold som "12 af 14 fandt denne hjælpsomme, "eller almindelige tommelfingre tæller. En minimumm- stemmer indstilling stopper en brand- ny artikel viser en akavet"0ud af0".
Se hvilke artikler der virker
Hver artikel viser en Var det her en hjælp? prompt. Hvert ja eller nej tælles pr. artikel, så du kan se på et øjeblik hvilke artikler der besvarer spørgsmål godt og hvilke der skal omskrives. Gentagne stemmer fra samme besøgende ignoreres, så tællingerne forbliver ærlige.
Tekst og etiketter
Du kan ændre overskrifterne og etiketterne på Hjælp Center for at matche din stemme. Lad alle felter være blanke, og det falder tilbage til en fornuftig standard, så du kun redigere den formulering, du faktisk ønsker at ændre.
✅
Hjælpe Center deler et bibliotek med din AI. Hver artikel du udgiver her er det samme indhold AI bruger til at besvare chats og billetter, så forbedre den ene forbedrer den anden.
Fælles spørgsmål
Skal jeg skrive separat indhold til Hjælp Center?+
Nej. Det er bygget fra de samme videnbase artikler AI allerede bruger. Udgiv en artikel én gang, og det kan tjene begge dele.
Må jeg holde nogle artikler interne?+
Ja. Kun artikler, du udgiver og markerer offentlige vises i Hjælp Center. Alt upubliceret forbliver ude af det.
Vil kunderne stadig kunne nå en person?+
Ja. Kontrollinket hjælper med at sidde et hank væk fra at starte en samtale, så selv-tjene aldrig fanger nogen.
Vækst og SEO
Webstedet Intelligence (SEO suite)
Website Intelligence er OpsIQ's bygning-i SEO og search- synlighed suite. Det kravler dit websted som en søgemaskine, spor hvor du rangerer, research søgeord, ure backlinks og konkurrenter, scanner din lokale korttilstedeværelse, kontrollerer sidehastighed, og gør det hele til customer-klar rapporter, med en AI analytiker, der forklarer hvad man skal fastsætte og kan udarbejde rettelser. Det er en premium funktion; når aktiveret det vises som Site Intelligity i sidebar. Hvert domæne data forbliver adskilt, crawls, rankings og rapporter aldrig blande mellem domænerne.
EfterretningstjenesteWebsite Intelligence overblik: en site- sundhed score fra den seneste kravl, live søgeord rank tracking, en organ- klik tendens, og tretrins løkke: kravle, spore, lad AI udkast rettelser.
Kør en kravl · start her
En kravl er OpsIQ besøger dine sider den måde, en søgemaskine ville, at finde tekniske spørgsmål: brudte links, manglende titler, tyndt indhold, langsomme sider, indeksering problemer.
1
Start kravlen
På Oversigten, klik for at starte en kravl. OpsIQ køer det og arbejder gennem dine sider i baggrunden; en status indikator viser fremskridt.
2
Læs rapporterne
Når det er færdigt, åbne spørgsmål og sidelisten. Hvert problem er grupperet efter sværhedsgrad, så du tackle de største gevinster først.
3
Lad AI hjælpe
AI analytiker producerer en plain-sprog kort over, hvad der er galt, og hvorfor det betyder noget, og kan generere foreslåede rettelser du gennemgå, før du anvender.
Hvilke spor af efterretninger på webstedet
Kravler og lokalitetssundhed
Scanner dine sider for tekniske SEO spørgsmål og lister hver side med sine problemer. Retur når som helst, eller planlægge det.
Ranksporing
Tilføj de søgeord, du holder af; OpsIQ kontrollerer, hvor dit websted rangerer og sporer bevægelse over tid.
Nøgleordsforskning
Oplev nye søgeord ideer til at målrette, med AI nøgleord træner til at hjælpe prioritere.
Tilbagekoblinger
Se hvem der linker til dig, opdater listen og desavow links du ikke ønsker at blive tilknyttet dit websted.
Konkurrenter
Tilføj konkurrentdomæner og sammenligne din synlighed mod deres, med en AI konkurrent analyse.
Lokal (kort) gitter
Scan local- listing synlighed på tværs af et geografisk gitter for at se, hvor du dukker op på kortet, plus Google Business Profile værktøjer.
Sidehastighed
Kør side- hastighed kontroller, så du kan fastsætte langsomme sider, der skader placeringer og konverteringer.
AI-indhold
Generér indhold briefinger og udkast rettet mod de søgeord, du er målrettet.
Rapporter
Byg printbare, customer-ready rapporter af alt ovenfor.
Tilslut Google for nøjagtige data
To Google-stik gør estimater til reelle tal:
Google-søgekonsol
Søg
Træk de præcise forespørgsler, klik og indtryk Google-rapporter til dit websted, kort din ejendom, og overflade ranking muligheder direkte fra Googles egne data.
Google Analytics 4
Trafik
Medbring dine trafik- og forlovelsesdata sammen med dine SEO-data, så rapporter viser synlighed og adfærd sammen.
Planlagte genopfriskninger & hvidetikerrapporter
Du behøver ikke at køre alt i hånden. Planlagte genopfriskninger re- run kravler, rank kontrol, søgeord kontroller, backlink forfriskninger, local- grid scanninger og rapport generation på en kadence (dagligt eller ugentligt afhængigt af plan og volumen). Disse kører gennem OpsIQ cron, se Cron og automatisering sektion. Genererede rapporter eksport som printable, customer- ready dokumenter: agenturer sende hver klient en regelmæssig SEO opdatering, og fordi hvert domæne data er adskilt, hver klient kun ser deres egne.
✅
Nogle site Intelligence funktioner kalder eksterne dataudbydere og AI gennem OpsIQ er konfigureret udbyder. De arbejder ud af boksen, når suiten er aktiveret for din plan.OpsIQ cron kører (se Cron og automatisering).
Skal jeg tilføje noget til mit websted for SEO sporing?+
Crawls, rank tracking, nøgleord forskning og backlinks arbejde uden at røre dit websted. For trafik og nøjagtige søgedata, tilslut Google Search Console og GA4.
Kan jeg spore mere end et domæne?+
Ja. Tilføj hvert domæne separat; deres kravler, placeringer og rapporter forbliver helt isoleret fra hinanden.
Hvor tit skal jeg kravle?+
Ugentlig er masser for de fleste steder; kravl på efterspørgslen efter et stort indhold eller struktur ændring. Sæt en tidsplan, så du aldrig glemmer.
Vækst og SEO
Auto- Implementation (SEO-agent)
Auto- Implementering er den del af Site Intelligence, der faktisk anvender rettelser crawl og AI analytiker anbefale, i stedet for kun at rådgive dig. Agent virker strengt fra hvad Site Efterretninger allerede fundet (det kan aldrig opfinde en ændring) og går hver fix gennem samme sikre loop: en dry- run preview, din per- step godkendelse, live skrive, et automatisk snapshot, og en re- craw, der beviser open- issue tal gik ned. Det er en Managed- AI- eneste funktion; det vises som Auto-Implement (raket) handling inde i Site intelligens sektion, og det er slukket indtil du tænder det.
Auto- ImplementérHvordan en session kører: agenten lister de rettelser Site Intelligence allerede anbefales, viser en dry- run diffs af hver én, anvender dem, du godkender over SSH eller hostet API, snapshots før hver skrive, og re- kravler for at bevise den åbne-problem tæller faldt.
Hvad kan det ændre
Agent kun nogensinde anvender rettelser, at Site Intelligence (eller AI analytiker) allerede anbefalet til dette domæne. På tværs af de understøttede platforme, der dækker:
Server- indstillingsfil
sitemap.xml, robots. txt og omdirigerer, kanoniske og header regler i htaccess (Apache / LiteSpeed) eller nginx config.
Omdirigerede kæder
Kollaps en multi-hop omdirigering kæde ned til en enkelt hop lige til den endelige URL, inde i samme forvaltede htaccess blok, så hastighed og link værdi stoppe utæt gennem ekstra humle.
Page <head>
Manglende eller svage sidetitler, metabeskrivelser, kanoniske tags og strukturerede data (skema) blokke.
WordPress SEO
Yoast, Rank Math og SEOPress titler & meta, og billede alt tekst, anvendt gennem WP-CLI på SSH sti eller REST API på den hostede sti.
WordPress strukturerede data
Tilføjelser JSON-LD (schema) til sider, der mangler det. SSH sti en lille administreret hjælper (et must-use plugin) udskriver markup, så det virker med eller uden en SEO plugin; på den hostede sti din SEO-plugin bærer det.
Interne forbindelser
Tilfører et relevant internt link inde i eksisterende WordPress indhold til at redde forældreløse sider og forbinde relaterede indlæg. Et link pr side, aldrig inden for en overskrift, et eksisterende link eller en kortkode, og altid godkendt af dig først.
Thin- side indhold omskriver
Tegninger fuld erstatning indhold for tynde sider (tændt af en kravl mulighed, se nedenfor). Hvert udkast er revideret og godkendt af dig, før noget publicerer, og det gamle indhold holdes, så det kan gendannes.
Sidecache (WordPress)
Tænder på W3 Total Cache side caching, når kravlen finder hastighedsproblemer og at plugin er installeret, så siderne tjener hurtigere.
Shopify SEO
Produkt og samling SEO titler & beskrivelser, side og blog- artikel SEO, plus 301 omdirigerer, gennem Shopify Admin API.
Webflow SEO
Per- side SEO titel og meta beskrivelse gennem Webflow Data API v2.
Webstedet Intelligence Indstil panel for et domæne (dets crawl indstillinger) har to muligheder, der bestemmer hvor meget agenten lines op for dig forud for tid. Begge er slukket som standard og begge bruge AI kredit, så du tænder dem kun, når du ønsker at arbejde gjort for dig.
Auto- prepare AI rettelser efter hver kravl
Hver kravl også skriver den konkrete fix indhold (titler, meta beskrivelser, alt tekst, skema, omdirigerer) for hvad det fandt, så rettelser er klar til at gennemgå og anvende det øjeblik kraven slutter i stedet for at blive genereret senere på efterspørgslen. Bruger AI kredit på hver kravle.
AI indhold omskriver (tynde sider)
Agenten kan udarbejde fuld erstatning indhold for tynde sider. Intet er nogensinde offentliggjort på egen hånd: hvert udkast vises som en ændring, du gennemgår side om side og godkende eller afvise, det tidligere indhold holdes så det er reversibelt, og det er begrænset til et par sider per pass. Bruger AI kredit pr. draft.
💡
Begge muligheder kun forberede og udkast arbejde. Hver ændring stadig går gennem den samme per- trin godkendelse, snapshot og rollback som enhver anden rettelse, så at tænde dem aldrig sætter noget levende af sig selv.
To måder, det forbinder
SSH / SFTP sti
Selvstyret
For websteder på din egen server, agenten forbinder over SSH/SFTP ved hjælp af legitimation du gemmer, redigerer serveren config og side filer direkte, og kører WP- CLI for WordPress. Bedste, når du har shell adgang og ønsker fuld kontrol af filer.
Hosted-API sti (nej SSH)
Ingen skal
For platforme, der ikke tillader SSH, agenten arbejder udelukkende gennem en embedsmand API konnektor WordPress (REST + application Passwords), Webflow (Data API v2) og Shopify (Admin API). Intet er installeret på værten.
💡
Wix og Squarespeed har ingen offentlig SEO- skrive API, så på disse platforme Auto- Implement kører i rådgivende tilstand: det viser dig den nøjagtige ændring at gøre (den præcise titel, meta eller indstilling) for dig at anvende med hånden. Alt andet er read- kun og sikker.
Tænd for konnektorer
Agent når hver platform gennem en konnektor:
Indbygget
Shopify og WordPress konnektorer med OpsIQ, bare aktivere dem under Connectors og tilføje butik / site legitimation.
Fra markedspladsen
Webflow, Wix og Squarespace installation fra Connectors → Marketplace, derefter tilslutte på samme måde.
Hvordan en session kører
1
Vælg rettelser
Åbn Auto- Implementér (raket) fra Site Intelligence sektionen. Det viser de problemer Site Efterretninger allerede fundet, at det kan fastsætte på dette domæne.
2
Vis forhåndsvisning af hver ændring
For hver fix agent viser en dry- køre diffs (præcis hvad det vil skrive) før noget rører den levende site.
3
Godkend trin for trin
Du godkender (eller springer over) hver ændring individuelt. Intet anvendes uden din udtrykkelige go- forward på det trin.
4
Det skriver, så snapshots
Ved godkendelse agenten gør live skifte over SSH eller den hostede API og gemmer et øjebliksbillede først, så enhver ændring kan rulles tilbage.
5
Bevis det, live
Som det gælder hver ændring agent straks gen- kontrollerer, at præcis side og viser en per- trin "fast levende" dom, så du ser hver fastsætte jord på den levende side, som det sker. Til sidst det om- kravler hele webstedet og bekræfter open- problem tæller faldet.
Sikkerheds- og faktureringsarbejde
Kun SEO
Agenten kan kun gøre, hvad Webstedet Intelligence anbefalede for dette domæne. Det kan ikke foretage vilkårlige ændringer på dit websted eller server.
Godkendelse af per- trin
Hver skrive er forudvist som en diffs og anvendes kun efter du godkender, at specifikke trin.
Snapshot & tilbagekaldelse
Et øjebliksbillede gemmes før hver skrivning, så enhver ændring kan vendes tilbage.
Levende per- step proof
Hver ændret side er re- kontrolleres det øjeblik, det er skrevet og får en "fast live" dom, så et fix bekræftes mod den levende side med det samme, ikke kun i lukning re-craw.
Indholdet er aldrig auto- publiceret
Interne links og thin-side indhold omskriver er højere-effekt, så de altid vises til dig for godkendelse og anvendes aldrig automatisk, uanset tilstand du kører.
Kun managed - AI
Auto- Implement kører på Administreret AI; det blokeres, når et arbejdsområde bruger sine egne (BYOK) nøgler.
Fakturering
AI tokens regningen normalt som du bruger dem, plus en flad per- use gebyr per Auto- Implementér session, begge trukket fra samme Managed- AI kredit.
✅
Auto- Implementér er slukket som standard. Aktivér det på AI konfigurationssiden (Auto- implementeringskort) og sørg for at stikket til din platform er tilsluttet først.
Ændrer det noget uden at spørge?+
Nej. Hver ændring er fremvist som en dry- run diffs og anvendes kun efter du godkender det nøjagtige trin. Et øjebliksbillede gemmes før hver skrive, så du kan rulle tilbage.
Skal jeg bruge SSH adgang?+
Ikke på WordPress, Shopify eller Webflow De arbejder gennem deres officielle APIs uden adgang til skallen. SSH er kun en af de to stier, der bruges, når du vil have agenten til at redigere server config og filer direkte på din egen server.
Hvordan ved jeg, det virkede?+
Efter anvendelse af de godkendte rettelser agent re@-@ kravler webstedet og viser open- problem tæller før og efter, så du kan bekræfte rettelser reduceret problemerne.
Vil det omskrive eller offentliggøre side indhold på sin egen?+
Nej. AI indhold omskriver er slukket, indtil du tænder dem i kravl muligheder, de er begrænset til et par tynde sider per pass, og hvert udkast vises for dig for side- by- side godkendelse før noget publicerer. Det tidligere indhold holdes, så en omskrivning kan altid vendes tilbage.
Må jeg bruge den med mine egne AI nøgler?+
Nej. Auto- Implementering er Managed- AI kun og blokeres under BYOK. Det regninger AI tokens normalt plus en flad per-use gebyr pr. session, fra samme Managed-AI kredit.
Vækst og engagement
Undersøgelse Studio
Survey Studio er arbejdsstedet for at skabe redigerbare undersøgelser, der kan leveres som en rig standalone side, websidekontrol eller inline-integration. Det aktuelle produkt giver også hostede links, underskrevne udkast til previews, private invitationer, QR deling, respons browsing og survey- scoped analytics. Websitets widget er et leveringsvalg; det er ikke definitionen af en undersøgelse.
⚠️
Current- versus- målgrænse: premium skabelse og forhåndsvisning oplevelse, Connector Builder survey kapacitet, og Survey-ejede udbyder registreringsdatabasen / sundhed grænse er tilgængelige nu. Undersøgelse Studio stadig har brug for den uafhængige multi-implementering arkitektur, signed-token undersøgelse Identitet Gateway, målretning / variabel ledninger, CRM Outreach sende flow og indtastet surveys.* API.
Opret en undersøgelse
1
Vælg hvordan folk vil tage det
Den nuværende guide tilbyder Standalone side & link, Website widget og Inline inmarge. Den godkendte målstrøm begynder med undersøgelse type og senere tilføjer CRM e-mail, privat- link og QR implementeringer som førsteklasses valg.
Det nuværende katalog har klar redigerbare startere grupperet efter formål. Valg af skabelon skaber et kopieret udkast: ændring af din undersøgelse ændrer ikke startdatoen eller en anden undersøgelse.
4
Tilpas eller hurtig gennemgang
Tilpas åbner alle spørgsmål, design, adfærd og levering kontrol. Hurtig gennemgang åbner det samme udkast ved den endelige bruger- view check. Intet publicerer eller sender automatisk.
Levering valg og nuværende adfærd
Standalone side & link
En lydhør mærkevare side med sin egen URL. Brug private invitationer og udløb, når hver modtager har brug for et kontrolleret link. QR deling point på denne hostede oplevelse.
Webstedskontrol
Den migrerede arv kanal. Det kan bruge side, geografi, enhed, besøgende, dato, prøveudtagning, nedkøling, besøg og kvoteregler. Det er stadig bakkes op af arve- widget bro mens implementering arkitektur er bygget.
Inline inkl.
En lydhør undersøgelse placeret inde i en side, portal, produkt eller hjælp center. Det kræver ikke Promotion Studio.
E- mail
I dag kan Studio generere invitation HTML og private links. Ende- to- end sende fra CRM kontakter / segmenter, med samtykke, undertrykkelse, planlægning, forsøg og respons korrelation, er den godkendte CRM Outreach integration mål.
Virksomhedens design og forhåndsvisning
Undersøgelsessider har Survey- ejede temaer og sidelayout familier, lydhør kontrol, velkommen og færdiggørelse kopi, og en underskrevet udkast preview. Forhåndsvisning designer er fuld bredde under editoren, ikke en smal side skinne. Det bruger den virkelige hosted runtime i en sandboxed ramme og understøtter desktop, tablet og telefon bredder; preview trafik skriver ikke svar eller analytics.
💡
Undersøgelse Studio er uafhængig af Promotion Studio. Runtime målretning, identitet, aktiver, rendering og analytics skal Survey- own. Promotions indhold må kun genbruges via en eksplicit one-time kopi / import, der skaber løsrevet undersøgelse data; senere Promotionsedits må ikke have nogen effekt.
Det fulde formprodukt
Uafhængige deployeringer
Levende
En undersøgelse kan have separat versioneret side, widget, inkl, CRM e-mail, privat- link og QR installationer, hver med sin egen tilstand, design, publikum og analytics. Hver undersøgelse kan holdes på pause, deaktiveret eller slettet.
CRM-outreach og -kampagner
Levende
Byg et verificeret publikum fra CRM segmenter og Survey- stand stik, fastfryse det i en uforanderlig version, udstede en underskrevet invitation hver, og sende gennem den fastlåste udgående e-mail-forbindelse med per- invitation levering bevis.
Feltsæt og validering
Levende
Skydere, billede valg, fil upload, underskrift, adresse, telefon, overskrifter og rig tekst, med min / max længde, e-mail /URL/ antal forudindstillinger, brugerdefineret fejltekst og per- spørgsmål prefill URL parametre.
Logic, formler, resultater
Levende
OG / OR tilstand grupper, grenregler, en sikker formel motor over svar, og score bands, der bærer deres egen result side: en scoret quiz lander på sin dom.
Sprog, kiosk, præfill
Levende
En besøgende sprog dropdown liste kun sprog med rigtige oversættelser, kiosk tilstand for delte tabletter (større mål, auto- reset, ingen omdirigerer), en prefill link builder, og redigerbare secure- badge og sidefod tekst.
Version A / B-prøvning
Levende
Udgiv en udfordrer version på enhver implementering med en trafik split. Besøgende tildeles behændigt, svar stemples med den version faktisk serveret, og sammenligningstabellen viser svar, afslutning og middelværdi score per version. Forfremme vinderen i et enkelt klik.
Ugentlig fordøje
Levende
En ugentlig e-mail med de sidste 7 undersøgelsesdage KPI 'er, de travleste undersøgelser, Feedback pulsen og den seneste AI briefing, sendt gennem det fastlåste outbound stik. Indstil det i Levering Centre, Automation.
Styring
Levende
Per- survey adgang lister begrænse hvem kan redigere, offentliggøre eller slette en undersøgelse. Publicere godkendelse (four-eyes) kræver en anden admin til at frigive den nøjagtige udkast; redigering nulstiller godkendelsen. Udkast aktie links lade en anmelder se det rigtige udkast uden logning i.
Udvikler platform
Levende
Kontrakt om tilslutning 2.2, indtastede undersøgelser. * og feedback. * aktioner på api/ v1, kanonisk undersøgelse. * begivenheder, holdbare signerede webkroge med Slack og Google Sheets relæformater, og one- svar PDF eksport.
Vækst og engagement
Analytics og Feedback er forskellige produkter
Undersøgelse Analytics forklarer, hvordan en undersøgelse i sig selv er at nå folk og udføre. Feedback forklarer, hvad kunderne sagde på tværs af alle tilladte kilder, og hvad virksomheden bør gøre ved det. De to produkter linker til hinanden, men ikke dele eller overskrive analytisk sandhed.
Analytics
Det måler egnethed, eksponering, udløser adfærd, starter, afslutning, opgivelse, spørgsmål og grenfriktion, timing, implementering / kampagne / version resultater og runtime pålidelighed.
Feedback Overblik & indbakke
En permission- bevidst kronologisk feed for afsluttede Survey svar, arv widget feedback, chat og billet CSAT, billetsvar feedback, kunde AI- svar ratings, videnbase nyttige stemmer og godkendte eksterne / brugerdefinerede kilder.
Analyse af feedback
Analyserer kundebetydning: oprindelige måletrends, emner/temaer, følelser, intentioner, presserende behov, anmodninger, klager, ros, rejse-/produkt-/service-/teamsegmenter, kritikere og slutresultater.
Databesiddelse
Undersøgelse svar forbliver autoritative i Survey opbevaring. Feedback gemmer en genopbyggelig kilde reference og afledte signaler, derefter belastninger tilladt dokumentation på efterspørgslen. En afsluttet undersøgelse respons bliver højst et Feedbackelement.
⚠️
Den aktuelle Feedback side har stadig en Survey svar browser og en separat arv widget indbakke, og dens AI totaler endnu ikke bruge den fulde normaliserede kildemodel. Den samlede Oversigt / Indbakke / Analytics / Kilder & sundhed design er implementeringsmålet.
NPS, CSAT, CES, stjerner, tommelfingre og hjælpsomhed skal altid bevare deres oprindelige metode, skala, prøve, dato vindue og nævner. De må aldrig kombineres i et uforklarligt gennemsnit.
Vækst og SEO
Promotionsstudio
The Promotion Studio forvandler din hjemmeside til en konverteringsmotor. Design pop- ups, bannere, slideins, top / bund barer, fuldskærmsovertagelser, inline blokke og endda landbaserede omdirigeringer, derefter vise den rigtige besked til de rette besøgende på det rigtige tidspunkt. Alt leveres gennem OpsIQ widget allerede på dit websted, så der er intet ekstra at installere. Du designer og gemme kampagner når som helst; de viser kun, når du publicerer dem, og studiet er tændt for dit arbejdsrum.
PromotionsstudioDen visuelle designer: en blok palette til venstre, din kampagne på lærred (her en personlig kupon pop- up ved hjælp af en {first_name} token), og målretning + udgive panel til højre.
Det store billede
Kampagne
Hvad
En forfremmelse: en pop- up, banner, bar, slide- in, full-screen, inline blok eller geo- omdiriger. Hver har et mål: salg, bly, sign-up, chat, undersøgelse, annoncering.
Design & versioner
Hvordan
Du bygger udseendet i den visuelle editor. Hver gemme skaber en ny version, så du altid kan rulle tilbage. Intet er nogensinde tabt.
Målsætning
Hvem
Hvem ser det: land, side, enhed, trafik kilde, returnering vs nye, tidsplan, og (med en forbindelse) din logged- i kunderne.
Triggere
Hvornår
Når det vises: straks, ved forsinkelse, på rulle, på exit- intention, når tomgang, på et klik, efter N-sider, eller fra chat / billet aktivitet.
Analyse
Resultater
Live indtryk, clicck- through, konverteringer, en drop- off tragt, land / side / enhed splits, A / B vindere og en AI indsigt.
Start din første forfremmelse i 5 trin
1
Start fra en skabelon eller blank
Åbn Promotion Studio og klik på New kampagne, eller vælg en ready- made design fra Templates galleriet.
2
Design det
Træk i blokke, overskrifter, tekst, knapper, billeder, badges, statistik, countdowns, formularer, kuponer, videoer, ratings, spinhjul. Style farver, gradienter og 3D effekter med skyderne. Eksempel Desktop / Tablet / Mobile, og brug Gratis flytte til at placere noget hvor som helst.
3
Personliggør det
Type tokens som {first_name}, {country} eller {company} til enhver tekst. Ved show- tid bliver de den besøgendes virkelige værdier.
4
Målsætning & udløser
Vælg hvem der ser det (land, side, enhed, publikum) og når det skyder (forsinkelse, rulle, exit- intention). Lad en regel blank for at betyde alle.
5
Tjek, og udgiv derefter
Klik på Check for en hurtig præ-lancering scanning, og derefter Publiser. Det går live inden for få sekunder og begynder at indsamle analytics.
Blokke du kan bygge
Indhold
Hovednet
Kurs, afsnit, liste, citat, billede, ikon, skilt, stat, divider og mellemrum, byggesten af enhver meddelelse.
Opkald til handling
Hovednet
Knapper med rigtige handlinger: åbne et link, starte en chat, oprette en billet, kopiere en kupon, eller hoppe til en side.
Nødhjælp & indfangning
Præmie
Nedtællingstider, formularer (e-mail / telefon / tekst), kupon afslører og video indlejringer.
Kolonner, statuslinjer, social andel, sociale beviser tickers, ja / nej to-trin, quizzer og 3D effekter, tilt, glød, parallax, glassmorfisme.
Personaliseringstokens
Skriv en af disse i overskrifter, afsnit, knapper, skilte, statistik, lister eller citater. De erstattes med besøgendes live detaljer det øjeblik forfremmelsen vises (altid renset for sikkerhed):
Tilgængelige tokens
From the visit: {country} {city} {device} {page_path} {utm_source} {referrer}
From your CRM: {first_name} {last_name} {email} {company} {segment} {lifecycle_stage}
From a connector: {balance_due} {unpaid_invoices} (logged-in customers only)
Målretning
Land & placering
Vis kun i (eller skjul fra) udvalgte lande, byer eller tidszoner via GeoIP. Great for regionale-specifikke tilbud eller en geo- omdiriger.
Sider og URLs
Begræns til visse sider ved hjælp af ligemænd / start- med / indeholder / regex, og udelukke sider også.
Enhed
Desktop, tablet eller mobil, f. eks. en slank bar på mobil, en modal på skrivebordet.
Besøgstype
Ny, returnerer, kendt (i din CRM) eller anonym; CRM segmenter, livscyklus fase, bly score eller browser sprog.
Trafikkilde
By UTM (utm_source, utm_campaign) or referring site, e.g. only visitors from a specific ad.
Skema & hyppighed
Start / slut datoer, time- of- dag vinduer, og hvor ofte en person kan se det (per session, per dag, efter de lukker / klik / konvertere).
A / B-trafikopdeling
Vis en procentdel af besøgende og køre varianter head- to- head; den samme person altid ser den samme variant.
Publikum (logged- in)
Med en stikkontakt aktiveret, mål ved live account tilstand, f. eks. kunder med ubetalte fakturaer, eller aktive abonnenter.
Triggere
Vælg hvordan forfremmelsen vises: Umiddelbart efter en forsinkelse, på rulledybde, på exit- intention, når tomgang, på et klik på et element, efter en række sider ses, på form- opgive, eller fra chat / billet aktivitet. Udviklere kan fyre en fra deres egen kode med window.OpsIQPromo.fire('event').
Mållogged- i kunder (konnektorer)
Dette er, hvad der gør OpsIQ kampagner specielt: tilslutte en platform som WHMCS (eller enhver forbindelse, der understøtter publikum) og studiet kan målrette besøgende ved deres live account tilstand.
1
Aktivér en audiensconnector
Under Connectors, aktivere en, der udsætter publikum fakta (WHMCS gør ud af boksen). Kunderne er anerkendt sikkert, når de logges ind på platformen, OpsIQ Jeg stoler aldrig på en skrivemaskine i e-mail.
2
Tilføj en publikumsregel
I kampagnens målretning > Publikum, kræver logged- in og tilføje regler som ubetalte fakturaer > = 1, abonnement er past-due, eller konto kredit > 0.
3
Personliggør med deres data
Brug tokens såsom {first_name} eller {balance_due}. En "Du har en forfalden faktura" påmindelse skriver sig selv.
✅
Publikum målretning er fejlsikret: hvis stikket ikke kan bekræfte en kendsgerning (eller den besøgende er ikke logget på), viser forfremmelsen simpelthen ikke, så et billing- målrettet tilbud aldrig når den forkerte person. Opbygning af din egen stik? Se "Promotion målgruppe" nedenfor.
Forbundet handel (studio superpower)
Produktkort fra din butik
Levende data
En Produkt blok trækker reelle elementer (navn, pris, salgspris, billede, link) direkte fra WHMCS, WooCommerce, Shopify er OpsIQ fakturering. Tik "Hold frisk" og kortet opdaterer sin pris fra platformen hver time, mens offentliggjort.
Overkurs ved emission
Kuponrente
En kupon blok kan skabe den reelle rabat kode i din butik, det øjeblik du offentliggør, så koden en besøgende afslører altid fungerer ved kassen.
Orderssandhedens indtægter
Tilskrivning
Real ordrer fra dine platforme er matchet tilbage til kampagner time (ved kupon kode anvendes eller af lead 's e-mail), så de indtægter, du ser er fra faktiske salg, ikke skøn.
Reelt socialt bevis
Tillid
Den social- bevis ticker kan føre med ægte nylige ordrer ("Ada bestilt Starter Plan · 2h siden"), fornavn og element kun, aldrig e-mails eller beløb.
Eksperimenter og rejser
A / B varianter & auto- vinder
Split trafik på tværs af design varianter; lad studiet fremme den statistiske vinder automatisk, eller hånd trafik til bandit optimering, som skifter besøgende mod hvad konverterer som dokumentation kommer i.
Opløftning af udholdenhedComment
Reserve et stykke af besøgende, der ikke ser noget, så du kan bevise kampagnen selv forårsager elevatoren.
Segmentvarianter
Forskellige indhold per publikum på SAME-kampagnen (mobile besøgende, store vogne, returnerende kunder), hvert segment får sin egen version.
Udløsningsforsøg
Varianter kan også teste, hvornår: øjeblikkelig vs forsinket versus exit- intented, målt hoved til hoved.
Rejse (lænke)
Mål efter hvad nogen gjorde med en anden kampagne ("så kampagne A, men ikke konvertere") til at bygge multi-step fremme sekvenser.
Teaser
En lille pille besøgende kan genåbne efter lukning af kampagnen, så en lukket popup er aldrig gået for evigt.
Vide hvad der skete
Klik på heatmap
Designer
I designeren, skifte heatmap til at male rigtige besøgende klik over hver blok af dit design.
Steptragt
Krydderier i form af blomstergrifler / støvfang
Multitrins kampagner viser præcis, hvor folk falder af, skærm for skærm.
Sammenlign kampagner
Studie
Sæt op til fire kampagner side om side (indtryk, klik, konverteringer), bedste værdi fremhævet.
Ugentlig historie & digest
AI
Hver mandag en fordøje lander i dine meddelelser; 📖 Weekly historie knappen skriver et slea- sprog resumé med næste trin, når du ønsker en.
Arbejde komfortabelt
AI copilot & ideer
Chat med design copilot til at redigere lærred ("gøre overskriften haster, tilføje en nedtælling"), få kampagne ideer fra dine egne trafikdata, oversætte en kampagne pr. land, eller auto- fix en lav designscore.
Import af mærkesæt
En kommando læser din hjemmeside og foreslår dine rigtige mærkefarver og skrifttyper; gemme og hver picker fører med dem.
Krydderier i form af blomstergrifler / støvfang
Skridt blokke få ægte per- screen redigering: faner for hver skærm, tilføje eller ombestille skærme, og forhåndsvisningen følger langs.
Navngivne versioner og tilstedeværelse
Navn vigtige versioner ("Start kandidat"), gendanne nogen af dem, og se en advarsel, når en holdkammerat redigerer den samme kampagne.
Enhedsstrip- linealer
Se skrivebord, tablet og mobil side om side i én visning; slå pixel linealer til for præcis placering.
Hosted side & kanaler
Hver kampagne kan også være en standalone hosted side for bios og QR-koder, en e-mail drop sekvens for fanget ledninger, eller et one- klik web- push udkast.
Virksomhedens sikkerhed
Udgiv fryservinduer (omdøbnings- frostperioder), en nødpause-alle switch, godkendelser, revisionsspor og version rollback.
Skal jeg tilføje kode til mit websted?+
Nej. Forfremmelser leveres af samme OpsIQ kontrol du allerede har installeret. Design, publicere, gjort.
Vil besøgende se den samme pop- op igen og igen?+
Nej. Sæt frekvenshætter (pr. session / per dag, eller stop efter nogen lukker, klikker eller konverterer).
Hvem kan udgive?+
Udgivelse, pause, arkivering og rulning tilbage er begrænset til arbejdsrumsejere og fulde administratorer. Ethvert team medlem kan oprette og designe udkast.
Vækst og SEO
Forfremmelsesdesigner
Promotion Designer er en lydhør blok redaktør for bygning, gennemgang, versioning og offentliggørelse af en kampagne oplevelse.
ProduktskærmDesignerens samlede lærred, udstyrspreviews, blokke, personaliseringsvariabler, kommentarer og versionshistorie.
Brug blokke til at komponere oplevelsen, få vist hver understøttet viewport og indsætte godkendte personalisationsvariabler. Anmeld kommentarer og AI- media provenance før lanceringen. Gemning skaber versioner, så et tidligere design kan inspiceres eller gendannes.
Vækst og SEO
Forfremmelsesskabeloner
Skabeloner giver et søgbart, kategoriseret startgalleri til Promotion Studio kampagner.
ProduktskærmTemplate galleriet filtrerer premium layouts og anvender arbejdsrumsmærkefarver, når en skabelon bliver et udkast.
Søg eller filter efter kategori, indlæse yderligere resultater, få vist den komplette oplevelse, og vælg derefter Brug skabelonDen nye kampagne er stadig et udkast og kan ændres i Promotion Designer før offentliggørelsen.
Vækst og SEO
Analyser af salgsfremmende foranstaltninger
Fremme analytics forbinder indtryk og klik til konverteringer, publikum kontekst, connect handling resultater og kampagne læring.
ProduktskærmPromotion analytics viser overskrifter ydeevne, publikum og udløser opdelinger, fører eksport og connector handling resultater.
Læs indtryk, klik-gennem hastighed og konverteringer sammen. Bryd resultaterne ned efter land, side, udløser og enhed; eksport fanget fører når det er nødvendigt. Connector handling resultater viser, om den lovede opfølgning faktisk kørte. AI indsigt og læring resuméer bør behandles som hypoteser for at validere, ikke automatisk bevis.
Vækst og SEO
Bekendtgørelser
Meddelelser udgive en meddelelse i widget notification område med valgfri målretning, tidsplan og kalde til handling.
ProduktskærmThe Nouncement editor indeholder indhold, TCL, publikum, segment, side regel, aktive datoer og visuel stil.
Vælg alle besøgende, signed-i besøgende eller nye besøgende; eventuelt indsnævre publikum med en kontakt segment og side regel. Sæt aktivitet-fra / aktivit-til datoer og et aktivt flag. Premium stil presets og farver ændre præsentation, men ikke erstatte klart indhold.
Vækst og SEO
Push-kampagner
Push kampagner sende browser meddelelser til abonnerede besøgende, efter at de har forladt webstedet.
ProduktskærmPush komponisten viser abonnementsmængde, indhold, medier, handlinger, målregler og tidsplan.
Indstil Web Push-tasterne først under webPush indstillingerne. En kampagne kan omfatte titel, krop, ikon, heltbillede, skilt, TTA og op til to handlingsknapper; der er en vedvarende meddelelse tilbage indtil den besøgende interagerer.
Målgruppe efter publikum, valgfrit kontaktsegment og sideregel. Gem et udkast, skemalæg det eller send det straks. Brug abonnementet og klik på målinger for at vurdere nå frem til. HTTPS og en korrekt hostet servicetjeneste er påkrævet på indlejrede tredjeparts sites; se Web Push på tredjeparts websteder.
Privatliv
Cookie samtykkestudie
Cookie Consent studio designer cookie banner dine besøgende ser, definerer hvad der tæller som vigtigt for din virksomhed, anvender den rigtige adfærd for hver besøgendes region, og (afgørende) faktisk håndhæver samtykke så analytics og marketing tags ikke køre indtil den besøgende accepterer. Banneret leveres gennem OpsIQ widget allerede på dit websted. Det er en premium design studie; banneret viser kun når du skifter samtykke til dit arbejdsområde.
Cookie samtykkeTilmeldingsbanneret som besøgende ser det: din formulering, dine kategorier (afgørende er altid på, resten er den besøgendes valg), og Accepter / Afvis / Indstillinger, med per- kategori håndhævelse bag det.
Studiefanerne
Design
Vælg fra et stort bibliotek af banner designs og en fuld farve system (gennemsigtig, solid eller gradient) til at matche dit mærke.
Stil
Fine- tune formulering, knap etiketter, policy links, banner position, og hvor længe et valg huskes.
Kategorier
Definer dine egne cookie kategorier og den formulering besøgende se. Du beslutter, hvad der er vigtigt. Essential er altid på; alt andet er deres at tillade eller afvise.
Cookies (scanner)
Scan dit websted og lad OpsIQ AI automatisk registrere hver cookie og tracker, kategorisere det, og skrive en play- sprog formål. Dette beføjelser indstillinger tabellen og auto-blokering.
Lov og region
Vælg, hvordan samtykke opfører sig ved lov (nedenfor), og slå gruppe- domæne deling, Google Consent Mode v2, og re-samtykket intervaller.
Analyse
Se statistik over direkte samtykke fra reelle besøgsvalg (accepter satser efter kategori), der er kodet til dit arbejdsområde.
Få loven til at virke automatisk
Auto efter område
Smart
EU / UK besøgende får opt- in (intet ikke-essentielle kører, indtil de accepterer); amerikanske besøgende får Opt- out med en "Må ikke sælge eller Del" valgmulighed. OpsIQ beslutter per besøgende efter placering. Anbefalet.
Opt-in overalt
Streng
Streng GDPR for alle besøgende, intet ikke-afgørende indtil de accepterer.
Opt- ud overalt
Lempeligt
Tags køre, medmindre den besøgende vælger.
Browser Global Privacy Control (GPC) og Do- Not- Track (DNT) signaler er honoreret uanset tilstand du vælger.
Hvordan håndhævelse faktisk stopper indfangning
Samtykke her er ikke kun et banner.
- Fuldbyrdelse af kategori. Når en besøgende nægter at tage en kategori, stopper OpsIQ matchende fangst, med analytics off, analytic tracking virkelig ikke køre, ikke bare visuelt.
- Du blokerer dine egne mærker. Tag et tredjeparts script for at forblive inert indtil dets kategori er givet. OpsIQ aktiverer det det øjeblik den besøgende samtykker, og aldrig før.
Autoblokering- et tredjepartstegn
<!-- This tag stays dormant until the visitor grants the "marketing" category -->
<script type="text/plain" data-opsiq-consent="marketing"
src="https://example.com/ads-pixel.js"></script>
💡
Google Consent Mode v2 (fanebladet Law & Region) udsender de rigtige gtagg- signaler fra hver besøgendes valg, så GA4 og Google Ads adlyder samtykke nationelt. De fleste websteder behøver ikke IAB TCF, det er kun for websteder, der kører IAB- rammekontrolannoncer.
Del samtykke på tværs af dine websteder
Slå gruppe- domæne deling til, så en besøgende, der accepterer på et af dine websteder, ikke bliver spurgt igen på de andre i denne arbejdsgruppe. Deres valg går over for det antal dage du sætter. Sluk for den for streng per- domain samtykke. Cookie Consent par med Privacy & Compliance side, som holder samtykke-bogen (bevis for hver tilskud og tilbagekaldelse).
Stopper det at nægte analytikere?+
Ja. Per- kategori håndhævelse stopper matchende fangst ved kilden. Det er ikke et kosmetisk banner.
Har jeg brug for en udvikler?+
Nej til banneret. Det skibe gennem widget. Kun auto-blokere din egen tredjeparts tags har brug for en engangs markup ændring på disse tags (vist ovenfor).
Hvor er beviset en besøgende indvilligede i?+
På siden om beskyttelse af personlige oplysninger og overholdelse: en søgbar samtaleseddel for hvert tilskud og tilbagekaldelse ved kontakt, kanal, handling og dato.
Vækst og SEO
Proaktive meddelelser
Proaktive meddelelser når automatisk ud i det øjeblik en besøgendes adfærd matcher en regel, før de spørger. Du bygger hver som regel med tre dele: hvad der skal ske, hvornår det skal brand, og hvor ofte. Alt leveres gennem OpsIQ widget allerede på dit websted.
ProaktivHver proaktiv regel er tre valg: hvad sker der (chat, banner, tour, push, e-mail, webhook), hvornår (betingelser), og hvor ofte (køle ned).
De tre dele af en regel
1
Hvad skal der ske (handling)
Vis en chat boble eller on- side banner, starte en Guided Tour, sende et web push eller e-mail, tildele til en afdeling, eller affyre en webhook. Tokens som {{visitor_name}} og {{page_title}} blive virkelige værdier.
2
Når det skal affyres (betingelser)
Smal hvem udløser det: side /URL, tid på siden, rulle dybde, bly score, vender tilbage vs nye, tomgang. Uden betingelser, reglen brande for hver besøgende. Tilføj mindst én til at målrette det. Betingelser kombinere med OG.
3
Hvor ofte (hyppighed)
Sæt en nedkøling så den samme person ikke bliver forpestet, f. eks. én gang pr. session eller én gang dagligt. Hver regel har en on / off status.
⚠️
Arbejdsområdet skifte "Kør tid / tomgang regler time" lader serverside handlinger (e-mail, tryk, webhook, tildele) brand på en tidsplan for kendte kontakter, der ikke i øjeblikket er på siden, så du kan "email inaktiv hot leads" automatisk. Det har brug for OpsIQ cron kører. Lad det være ud, hvis du kun ønsker live on- page nudges.
Vil den skyde for alle?+
Kun hvis du tilføjer ingen betingelser. Tilføj mindst én betingelse (side, lead score, returnering...) til at målrette de rigtige besøgende.
Hvordan forholder det sig med strømme og ture?+
De arbejder sammen: en proaktiv regel kan starte en Guided Tour, og en Chatbot Flow kan udløses af en proaktivt regel. Start med en enkelt chat- message regel, derefter lag de andre på.
Vækst og SEO
Chatbot-strømme
Chatbot Flows script forgrener samtaler inde i din chat- kontrol (hilsner, nøgleord svar, guidede stier) uden kode. Et flow er et sæt forbundne trin (noder): du stiller et spørgsmål, den besøgende vælger en mulighed, og strømmen sender dem ned matchende gren. Kun Aktive strømme kører på dit websted.
Sådan virker detChatbot-strømme
Strømmen mod AI 'et, når du skal bruge
Brug en gennemstrømning
Når stien er forudsigelig og du ønsker det identisk hver gang: booking trin, en returnerer guiden, en "hvilken plan?" vælger, indsamle en e-mail før aflevering. Flows aldrig improvisere.
Brug AI
Når spørgsmål er åbne-sluttede ", virker dette med min setup?". Kundechatten AI svarer fra din uddannede viden. En flow kan aflevering til AI (eller et menneske) på ethvert trin.
Triggere
Hilsen
Kører som åbningsmeddelelsen, når en besøgende først åbner chatten.
Nøgleord
Kører når den besøgende skriver et ord du har angivet (fx refundering, pris, annuller).
Efter detaljer / efter forsinkelse
Starter når kontaktoplysninger er delt, eller et sæt tid ind i samtalen.
På chatafslutning / proaktiv
Kører som chatten wraps op (fx en rating), eller startes af en Proactive Message regel.
Byg en i fire trin
1
Opret strømmen
Klik på Ny Flow, navn det, vælg en udløsertype (og søgeord hvis Nøgleord), gemme. Det starter slukket.
2
Åbn lærredet
Klik på Redigér Canvas. Den visuelle builder, hvor du tilføjer trin (beskeder, spørgsmål med knapper, grene) og tilslut dem.
3
Tilføj grene og en hånd- off
For hvert valg, tegne en gren til næste trin. Slutstier ved at løse, give til AI, eller overføre til et menneske.
4
Aktivér det
Klik på Aktivér. Flowet går live i din widget med det samme. Deaktivér når som helst uden at miste designet.
Erstatning af AI 'en?+
Nej. De kører side om side. Brug strømme til forudsigelige stier og AI for åbne-sluttede spørgsmål; en strøm kan altid give ud til enten.
Vækst og SEO
Vejlede ture
Guidede Tours er trin-by-step walkgennemwiths, der peger på dele af din side med talefboble og en spotlight, vejlede en besøgende gennem onboarding eller en ny funktion. De er fuldt tematiseret og bygget i en visuel designer med en live preview. En tur kører kun, når det er markeret Aktiv.
Sådan virker detVejlede ture
Hvordan en tur er bygget
Trin
Hvert trin er rettet mod et element og viser en boble med din tekst. Tilføj så mange stop som walkthrough behov og bestille dem.
Præsentation og tema
Start fra et forudindstillet eller designe din egen boble (farver, gradienter, spotlight) med en levende forhåndsvisning til højre.
Udløsningsmiddel
Muligvis linke en Proactive Regel, så turen auto- starter, når det regel brande (fx en tilbagevendende besøgende første dashboard besøg).
Aktiv skifte
En tur er berettiget til at køre kun mens Aktiv er afkrydset. Afkryds for at tage det ned uden at slette det.
Byg en i fire trin
1
Ny rundvisning
Klik på Ny Guidet Tour, navngiv det, og eventuelt linke en Proaktiv Regel, så den starter automatisk.
2
Tilføj trin
Tilføj hvert stop: Vælg det element, den peger på, og skriv bobleteksten. Ombestil indtil stien flyder.
3
Design det
Vælg en forudindstillet eller stil boblen selv. Live preview viser præcis, hvad besøgende ser.
4
Aktivér
Tik Aktiv og gem. Turen kan nu køre, på egen udløser, eller startede med en Proactive Message regel.
Hvordan starter ture?+
På egen udløser, eller via en Proactive Message regel "Guidet tour" handling, så du beslutter, hvilke besøgende se hvilken tur og hvornår.
Vækst og SEO
Omregningsmål
Konverteringsmål forvandler en aktivitet, du holder af (et indadgående webhook-arrangement, en chat-besked, en billetløsning) til en registreret konvertering med fuld tildeling. Når aktiviteten brænder, logger OpsIQ en konvertering mod kontakten og binder den tilbage til de kampagner, segmenter og kilder, der førte dertil.
Sådan virker detOmregningsmål
Definer et mål i tre trin
1
Vælg udløseraktiviteten
Klik på Ny konvertering mål. Vælg den aktivitet type, der tæller som en konvertering, eller brug en Quick- start forudindstillet, Stripe køb, Demo booket, Nyhedsbrev signiup eller Abonnement startet.
2
Navn og sæt en værdi
Give the conversion a name (purchase, demo_booked, signup) and optionally a fixed value and an attribution window.
3
Gem
Gem og aktivér. Fra da af, når aktiviteten brænder, OpsIQ registrerer en konvertering mod kontakten med tildeling til de foregående rører.
✅
Mål er allerede koblet ind i indadgående webkroge: ethvert mål, hvis udløser matcher en indgående begivenheds type brande automatisk det øjeblik begivenheden lander. Brug Indgående Webkrogs side til at tilslutte Stripe, Calendly eller ethvert system, der kan POST JSON.
Hvad kan være en konvertering?+
Enhver registreret aktivitet: en indgående webhook begivenhed (payment. happened), en chat e-mail capture, en billet opløsning, noget på kontakttidslinjen.
Analyse
Brugerdefinerede dashboards
Brugerdefinerede Dashboards lader dig bygge dit eget billede af de målinger, der betyder noget, i stedet for kun at stole på den standard Oversigt. Tilføj de widgets du ønsker, trække og ændre størrelse dem ind i layout, gemme det, og dele det med dit team.
Brugerdefinerede dashboardsByg dit eget bræt: Tilføj KPI, diagrammer og listekontroller, træk og ændr dem i det layout du ønsker, og del det med holdet.
Byg en i tre trin
1
Tilføj kontroller
Klik på Tilføj kontrol og vælg metrisk eller diagram du ønsker at spore. Gentag for alt hvad du vil på brættet.
2
Arranger layout
Træk kontroller for at ændre position og trække deres kanter til at ændre størrelse. KPI 'er på tværs af toppen, diagrammer nedenfor.
3
Gem & del
Gem instrumentbrættet og del det med dit team, så alle ser de samme numre.
✅
Hold separate bestyrelser for særskilte job (en "daglige blik" bord med levende tæller, og en "månedlige gennemgang" bord, med trend diagrammer), så hver forbliver fokuseret.
Vækst og SEO
Outreach-kampagner
Outreach is OpsIQ's1:1og bulk e-mail motor: komponere en personlig besked eller køre en kampagne til et CRM segment, med svar detektering, send- time kontrol, åbne / klik sporing, en tracking pixel og one-klik afmeld. Det er godkendt og CAN- SPAM / CASL kompatibel.
Opsøgende arbejdeOutreach motoren: send1:1eller køre kampagner til et segment, spor åbner og svar, og holde sig kompatibel med build- in afmeld og svar detektion.
De fire faneblade
Komponist
Skriv en personlig1:1e-mail med {tokens} fra kontakten og CRM.
Kampagner
Send til et CRM-segment, planlagt eller nu, med hætter og sendtidskontrol.
Skabeloner
Genanvendelige meddelelsesskabeloner for gentagne outreach.
Svar
Svar på detektering registrerer svar og automatisk stopper opfølgning til alle, der svarede.
Hvordan en kampagne kører
1
Vælg et publikum
Vælg et CRM-segment (eller upload en liste). Undertryk og samtykke anvendes automatisk.
2
Sammensæt
Skriv beskeden med personlighedstegninger; forhåndsvisning mod en rigtig kontakt.
3
Skema & send
Send nu eller på det bedste tidspunkt. En sporing pixel optegnelser åbner; klik og svar er tildelt.
✅
Outreach er consent- og suppression- gated, omfatter en one-klik afmeld på hver send, og følger CAN- SPAM / CASL. Svar automatisk stoppe yderligere opfølgning.
Analyse
Planlagte rapporter
Planlagte rapporter e-mail et valgt metrisk sæt til udvalgte modtagere på en tidsplan (dagligt, ugentligt eller månedligt) som en printbar, white- label PDF. Sæt det én gang og rapporten lander i indbakker automatisk gennem OpsIQ cron.
Planlagte rapporterSæt en rapport én gang (metrisk sæt, område, tidsplan, modtagere) og OpsIQ e-mails en white- label PDF automatisk på din kadence.
Opstil en rapport
1
Vælg hvad du skal sende
Vælg det metriske sæt (trafik, SEO, salg, support...) og et datointerval.
2
Sæt tidsplan og modtagere
Daglig, ugentlig eller månedlig, på et tidspunkt du vælger, til en eller flere e-mail-modtagere.
3
Gem
Gem og aktivér. Rapporten genererer og e-mails selv på tidsplanen, ingen manuelt trin.
💡
Planlagte rapporter kører gennem OpsIQ cron, hvis en rapport ikke ankommer, bekræfte cron kører (se Cron og automatisering).
Privatliv
Privatlivets fred og overholdelse
Den Privacy & Compliance side er det eneste sted at vise en revisor, du håndterer personlige data ansvarligt: samtykke-bogen, admin adgang log, dine data residency og opbevaring politik, og en ready- to- print DPA, i én tabbed visning.
Privatlivets fred og overholdelseEn auditor-ready screen: en søgbar samtykke hovedbog (tilskud / tilbagekøb af kanal), en adgang log over hvem rørte data, residence / retention indstillinger, og en printable DPA.
De fire faneblade
Samtykke regnskabsbog
En søgbar registrering af hver samtykke tilskud og tilbagekaldelse, ved kontakt, kanal (e-mail, push, SMS, in- widget), handling, kilde og dato. Din dokumentation en kontakt aftalt (eller trak).
Adgangslog
Hvem på dit team set, redigeret, eksporteret, slettet eller messaged en kontakts data, med admin, kontakt, handling, angivne årsag og IP. Præcis hvad en regulator beder om.
Beboelsesforhold & fastholdelse
Declare hvor dette arbejdsrums data lever, indstille hvor mange dage aktivitet rækker holdes (0 = forever), og registrere din dataansvarlig og DPO.
DPA skabelon
En printbar Databehandling Addendum, der udfylder din controller, adresse, DPO, residency og retention. Udskriv eller gem som PDF.
✅
Privatliv og overholdelse par med Cookie samtykke studiet (som indsamler samtykke) og eksport side (som producerer datakopi til en DSAR). Se også Cron og automatisering for natlig opbevaring oprydning.
Connectorer
Forbind dine platforme
Forbindelsesforbindelse OpsIQ til eksterne platforme: e-handel butikker, faktureringssystemer, betalingsprocessorer, e-mail udbydere og brugerdefinerede APIs. Når forbundet, AI kan slå op ordrer, kundedata, abonnementer og meget mere, og tage handlinger med din godkendelse.
Sådan virker detConnectorer
Skibe med OpsIQ
Disse er til stede det øjeblik, du installerer og behøver kun deres legitimation.
WHMCS
Fakturering
Web hosting fakturering: kunder, tjenester, billetter, fakturaer, domæner, servere.
Lokale virksomheder: anmeldelser, indlæg, Q & A, indsigt. Bruger OAuth.
Google Kalender
Produktivitet
Kalendere og begivenheder. Bruger OAuth.
GmailogIMAP
E- mail
Postkasser: indgående og udgående post, adressebogssynkronisering.
SendGrid
E- mail
Email levering: sende e-mails og administrere skabeloner.
Postgeværer
E- mail
E-mail levering: sende e-mails via Mailgun.
Slack, Telegram, LINE, X DM
Beskeder
Beskeder kanaler for indgående og udgående samtaler.
Metakanaler
Beskeder
Facebook Messenger, Instagram DM og WhatsApp.
Webstedet Intelligence (GA4, søgekonsol)
Analyse
Analytics og søgedata til SEO -suiten.
Website berigelse og CRM import
CRM
Selskabsberigelse og import af bulk-kunder.
Fås fra markedet
Disse er publicerede pakker, ikke en del af installationen. Installer en fra Connectors, Marketplace og det kopieres i mappen live connects, hvorefter den opfører sig præcis som dem ovenfor.
Underskrift, prospektering, søgning og analytics data.
Webflow, Wix, Squarespace
Markedssted
Website platforme.
💡
Forbindelseslisten bevæger sig som pakker bliver offentliggjort. Den autoritative liste for DIR installation er siden for forbindelser: hvad der er angivet der er hvad runtime opdaget, og fanebladet Marketplace viser hvad du kan tilføje.
Installation af en stikforbindelse
1
Gå til forbindelseskanal
Naviger til forbindelser i admin sidebar.
2
Find stikket
Gennemse listen eller søgningen. Forbindelser grupperes efter kategori.
3
Aktivér det
Klik på stikket og slå til / fra Aktivér.
4
Indtast legitimation
Udfyld de krævede felter: API nøgle URL, tokens osv. Hvert stik har specifikke krav dokumenteret i sit indstillingspanel.
5
Prøvningsforbindelse
Klik på "Test Connection". Et grønt resultat betyder, at stikket kan nå den eksterne platform. Et rødt resultat viser fejlen.
6
Indstil funktioner
Vælg hvilke funktioner der skal aktivere: vidensynkronisering, webhook sync, AI-handlinger. Ikke alle stik understøtter alle funktioner.
Hvad konnektorer giver dig
AI-sammenhæng
AI kan slå kundedata, ordrer, abonnementer og meget mere gennem stikket. Når en kunde chatter, AI har reelle platform data til reference.
AI-sammenhæng (konnektor forfattere)
Din connections ContextProvider feeds ticket- AI en read- only konto oversigt over billetten ejer. customer_id når kendt; ellers, på billetten auto- svar, hvor ctx flag customer_trust_email er sandt, slå kontoen op ved customer_email (den verificerede billet afsender). Fjernplatforme afsløre en /context/customer-by-email endepunkt og stikket kalder det. Dette er, hvad der gør AI citere en reel balance / faktura i stedet for at sige "venligst logge ind". Ær operatørens dataklasse togles (customer_sections, customer_allow_credit) og holde sig strengt read- kun, aldrig udsende hemmeligheder.
Kundemappe (konnektor forfattere)
Dit konnektor IdentityProvider feeds tre universelle billet opslag: lookupCustomerById() (kundekort) lookupCustomerServices() (produkt- / serviceskema), og listCustomers($query,$limit): "Søg kunde eller skriv e-mail" picker på den indfødte Compose- New- Ticket formular. Returnér rækker af {id, external_id, name, email, company, phone, platform, platform_label}. Fjernregel: hvis dine kunder bor i en anden database eller service, hente dem over din platforms API inden for disse metoder, aldrig læse det andet systems tabeller direkte (i OpsIQ DB de er tomme pladsholdere, hvilket er grunden til en lokal læse returnerer en tom plukker). Gate den eksterne sti på din konfigurerede API URL; holde en lokal læst kun som en same-DB fallback.
Email- pipede billetter, detektion og routing (connector forfattere)
Når indkommende e-mail bliver en native billet, OpsIQ registrerer afsenderen ved at ringe lookupCustomerById(0, ['email'=>$sender]) på tværs af hver stik; den første match "ejer" kunden og dens platform Kuglen er stemplet på ticket.created begivenhed som _pipe_owner_platform Så en WHMCS-kunde e-mail åbner en billet i WHMCS (WHMCS nummerering, der er gengivet som én), mens en ukendt afsender forbliver en indfødt gæst. Hvis din konnektor spejler indfødte billetter på sin egen platform, Deres ticket.created - og det er vigtigt at få fat i: if (array_key_exists('_pipe_owner_platform',$payload) && $payload['_pipe_owner_platform'] !== '<your-slug>') return;. Nøglen er fraværende på ikke-pipede (chat / manuel / AI) billetter, så dem spejl som før. Per- afdeling kontrol bor under Team & Departments → Åbne billetter via e-mail (Alle / Kunderne kun / Off).
Handlinger
AI kan udføre handlinger gennem stikket: oprette billetter, opdatere ordrer, annullere abonnementer, alle med din godkendelse gennem Trust Layer.
Hvis din platform er vært for en videnbase, skal du erklære en kb_capabilities bloker ind settings.json (type kb_source) og din forbindelse vises i Hjælp Center editor Importér KB → Import fra en tilsluttet app dropdown når det er aktiveret og konfigureret i arbejdsrummet. Det er deklarativ, ingen metode til at implementere: navngiv en build- in adapter (zendesk for exact- tree Help Center API, eller crawl for alle KB-steder) og en base_template som https://{subdomain}.zendesk.com, som OpsIQ udfylder fra din konnektor gemte indstillinger. Valgs aldrig forlade serveren; browseren sender kun connector slug. For at understøtte en ny platform, tilføje en opsiq_kb_<platform>_manifest() adapter og referencenavn. connectors/PLATFORM_CONNECTORS.md §5.
Webhooks
Nogle konnektorer registrerer webkroge med den eksterne platform for real- time begivenhed meddelelser (nye ordrer, billet opdateringer, osv.).
Salgssporing
E-handel stik fodre indtægter data i Sales dashboard for tildeling og analytics.
💡
Konnektorer er workspace- scoped. Hvert arbejdsrum kan have forskellige konnektorer aktiveret med forskellige legitimationsoplysninger.WHMCS workspace bruger WHMCS konnektor Shopify workspace bruger Shopify konnektor.
Kan jeg bruge flere stik på én gang?+
Ja. Du kan have Shopify for ordrer og Stripe for betalinger i samme arbejdsområde. AI sammenfletter data fra alle aktiverede konnektorer.
Hvad hvis min platform ikke er opført?+
Brug Connector Builder til at oprette en brugerdefineret stik for enhver platform med en REST API. Eller tjek markedspladsen for communitysbuild-konnektorer.
Virker stik med selvhostede OpsIQ?+
Ja. Forbindere arbejder identisk i både cloud-udgaver og selvhostede udgaver.
Connectorer
Salgs- og faktureringskonnektionskontrakt
Hver handelskonnektor bruger den samme platform- neutral event kontrakt. WHMCS er referencens implementering, men SaaS Bridge, butikker, betalingsudbydere, markedsplads-stik og Connector Builder pakker skal overholde de samme regler.
Hvad hver handel stik skal offentliggøre
En autoritativ regnskabsfører
Publish realised economic events to opsiq_sales_events through CommerceEventRegistry::normalize(). Do not build a connector-specific Sales table or make core analytics query a remote platform directly.
Stabil kildeidentitet
platform is the connector registry slug, such as whmcs, shopify or opsiq_saas. traffic_source contains verified acquisition attribution when supplied; otherwise use that same slug as the fallback. Store identifiers, not display labels. OpsIQ resolves the friendly connector name in the UI.
Idempotens
event_id must be deterministic. Map at least one immutable order_ref, invoice_ref or subscription_ref so webhook retries and backfills update the same event instead of creating duplicate sales. service_ref identifies the affected product or service instance when one exists.
Kildetidsstempel
occurred_at is the payment or economic-event time reported by the source platform. Never replace historical payment dates with the import time.
Penge og FX
Send kildebeløbet og en gyldig ISO-valuta på tre bogstaver. Hvis indstillingen af forbindelsesforbindelsen tillader OpsIQ FX konvertering, konverterer rapportering til den arbejdsrums rapporteringsvaluta; ellers rapporterer bevarer butikken eller faktureringsplatformen valuta. Forbindelseskoden må ikke være hardcode for en rapporterende valuta eller vekselkurs.
Erkendence- baseret livscyklus
Brug ny, fornyelse, opgradering, tilbagebetaling, kredit eller ukendt. Klassificere fra faktura grund, abonnement eller service forhold, line- element type, eller en anden autoritativ kilde felt. Et gentagne køb af den samme kunde er ikke automatisk en fornyelse.
Salgsgrænse
Kun positive betalte nye, fornyelse, opgradering eller lovligt ukendte handelsindtægter hører til i Sales & Conversions. Restitutioner indberettes af refundering og nettoindtægt analytics. Kontokredit, tegnebog top- ups, token top- up og Tilføj fonde forbliver billing- hovedbogholderi begivenheder og aldrig tælle som salg, konverteringer, ordrevolumen, eller salgsindtægter.
CRM forbliver adskilt
CRM-aftaler repræsenterer rørledninger og handel. De er ikke kommercielle-platform salg medmindre en tilsluttet fakturering eller butik platform udsender den realiserede betalte ordre eller faktura gennem denne kontrakt.
Afledte fremskrivninger
opsiq_conversions and dashboard summaries are compatibility projections rebuilt from the ledger. Connectors must not treat a projection as the financial source of truth. Contract revisions can re-evaluate derived rows without deleting the underlying billing history.
Grænse for fjernplatform
A remote connector reads its platform through the configured authenticated API. It must never depend on same-server database tables. The exact authenticated domain site_key is supplied by ConnectorRegistry and must be applied to every ledger write and backfill. Workspace or group scope is read-time aggregation only; it must never broaden stored event ownership.
When Sales and billing is enabled in Connector Builder, map amount, currency, source status and source date, plus at least one order, invoice or subscription reference. Map lifecycle_type when the API exposes authoritative lifecycle evidence. The generated SalesIngest passes every row through the same CommerceEventRegistry normalizer used by built-in and marketplace connectors.
⚠️
Kreditter og Add-fonde er bevidst bevaret til fakturering historie, kundebalance sammenhæng og regnskabsbog analyse. Udelukkelse dem fra Salg sletter dem ikke; det forhindrer dem kun i at oppuste handel ydeevne.
livscyklustype afgør, hvad der bliver en CRM-aftale
lifecycle_type er ikke et analytikermærke. OpsIQ læser det for at afgøre, om et salg kommer ind i CRM-rørledningen, så alle salgsforbindelser træffer en beslutning om, hvorvidt det har til hensigt eller ej.
ny
Åbner en lukket-vundet aftale (ny virksomhed).
fornyelse, opgradering
Optaget som tilbagevendende indtægter. Ingen new- business deal - fornyelser konvertere på en anden sandsynlighedskurve og blande dem korrumperer begge prognoser.
tilbagebetaling, kredit
Åbner aldrig en aftale, i enhver tilstand. Penge returneres til en kunde er ikke en sejr.
udeladt / ukendt
Kun indtægter. Salget er registreret, men aldrig når rørledningen.
Et salg, en hovedbog række: identitet er den SALE, ikke begivenheden
Matchende event_id og indsætte dig selv. event_id is platform:eventName:externalId, som svarer "har vi allerede behandlet denne levering" og kan ikke svare "har Vi allerede registreret dette salg". En platform, der annoncerer en betaling to gange - som invoice.paid og igen som payment.completed - Mints to id 'er og lander de samme penge to gange, med intet at kollidere og intet at advare.
💡
Found on the reference install: six invoices with three ledger rows each, from three code paths using three different event_id schemes. They all carried 0.00 so no total looked wrong, and any later process restoring real amounts would have counted one payment three times.
Ring til den delte skrive i stedet. Core beregner salget forretningsidentitet (sale_fingerprint), matcher en eksisterende række på det, bevarer den oprindelige event_id om opdatering og filtre til rigtige kolonner:
Den eneste understøttede måde at skrive salgshovedbogen på
fakture. paid, payment. completed og sale. compleed for en faktura deler et fingeraftryk og opdaterer en række.
Restitutionsbeløb forbliver adskilte
Penge går ud er en anden kendsgerning end penge kommer ind. En tilbagebetaling af en faktura holder sin egen identitet, så det kan aldrig overskrive betalingen det vender tilbage.
Ingen reference, intet fingeraftryk
En række uden ordre, faktura, abonnement eller service reference får ingen fingeraftryk overhovedet, så to ikke-forbundne rækker aldrig kolliderer bare fordi begge mangler et id.
Referencegrænse
invoice_ref, then order_ref, then subscription_ref, then service_ref — strongest first, so one sale keeps a stable identity.
Bogføringen er vedhæftet: omskriv aldrig et salg
En tilbagebetaling, en annullering eller en rettelse er en ny dated entry. Aldrig mutere rækken det retter. Omskrivning af en betaling til en tilbagebetaling ser ryddeligt og bryder tre ting på én gang:
Det ødelægger bruttoindtægterne
Bruttosalg og refusionssats ophører med at være separable - og refusionssatsen er den metrisk, tilbageførslen findes at informere.
Det bogfører den omvendte i den forkerte periode
En tilbagebetaling i marts af et januar salg skal reducere marts. Omskrivning januar rækken lydløst genopretter en lukket periode.
Det bryder revisionssporet
En regnskabsbog registrerer, hvad der skete på et tidspunkt. Rettelser er kontra- poster, hvilket er hvordan dobbelt-post bogholderi har fungeret i fem århundreder.
Så en konnektor rapporterer om tilbageførsel i stedet for at anvende den: return refunded_at og refund_amount ved siden af salgsets egen livscyklus, og lad opkalderen skrive refunderingen som sin egen række dateret da refusionen skete. De to kan aldrig kollidere, fordi salget fingeraftryk adskiller en tilbagevenden fra et salg.
💡
Det samme princip gælder for beløb. Må ikke "reparation" en gemt beløb til platformens aktuelle værdi: en faktura afviklet fra konto kredit lovligt registreret 0 på betalingstidspunktet, og pengene blev allerede registreret, når kunden toppet op. Gendannelse af pålydende tæller det to gange.
Klassifikationskontrakten
OpsIQ bestemmer livscyklussen once, in \OpsIQ\Commerce\SaleLifecycleClassifier. En konnektor erklærer kun, hvilken af dens egen platform ord betyder hvad, ved at gennemføre \OpsIQ\Connectors\SalesLifecycleConnectorInterface::salesLifecycleVocabulary(), og derefter kalder den delte klassifikator. Må ikke gen- implementere ræsonnementet.
Afsløring af ordforråd, uddelegere afgørelsen
public static function salesLifecycleVocabulary(): array
{
return [
'credit' => ['addfunds'], // adds balance, sells nothing
'upgrade' => ['upgrade'], // resizes an existing commitment
'recurring' => ['hosting', 'domainrenew'], // continues something owned
'acquisition' => ['domainregister'], // obtains something new
'recurring_prefixes' => ['domainaddon'], // families that grow over releases
];
}
$lifecycle = \OpsIQ\Commerce\SaleLifecycleClassifier::classify([
'explicit' => $platformSaidSo, // wins outright when present
'line_types' => $types, // your platform's own line/item types
'vocabulary' => self::salesLifecycleVocabulary(),
'is_order' => $cameFromANewOrder,
'is_refunded' => $moneyWentBack,
]);
💡
Precedence is fixed and shared: explicit, then refunded/cancelled, then credit, then upgrade, then is_order, then recurring, then acquisition, then unknown. Upgrade sits above the order check because platforms raise an order for upgrades too; recurring sits below it because the first invoice of a new subscription carries a recurring line type. On an ambiguous non-order sale the classifier leans to revenue and away from the pipeline.
Afslør hele platformens ordforråd
Dette er den fiasko, der koster mest og ser mindst forkert. WHMCS -stik matchede ['hosting','addon','domain'] - en liste der lyder som komplet. WHMCS udsender ikke en bare Domain type for rigtige domænelinjer; det udsender DomainRegister, DomainRenew, DomainTransfer, PromoHosting, PromoDomain, DomainAddon* og UpgradeAlle faldt forbi listen til unknown: 1,288 fakturaer, tre år, ingen fejl og ingen loglinje.
Hver ny kunde importerer deres historie gennem en stik-backfill, så en klassificering bug påvirker ikke et arbejdsområde - det påvirker alle arbejdspladser, der nogensinde onboards gennem denne forbindelse, i det øjeblik de først ser på deres rørledning. Tag ordforråd fra platformens dokumentation eller en tælling af levende data, og matche voksende familier ved prefix så en søskende ingen har set endnu klassificerer med sine slægtninge i stedet for at forsvinde.
💡
En praktisk kontrol: tælle hvor mange af dine egne rækker lander på ukendt. Et sundt salgsstik klassificerer næsten alt. En stabil strøm af ukendte er næsten aldrig data, du ikke har - det er et ordforråd stikket aldrig lært at læse.
Udlejning importeret historie
Hver afsendt OpsIQ salgsforbindelse gennemfører dette — WHMCS, Shopify, WooCommerce, osCommerce, SaaS Bridge, Stripe, BigCommerce and Magento 2. Treat it as expected, not optional: a customer imports their old records on day one, so a classification fix that cannot reach that history only helps people who signed up afterwards. Implement \OpsIQ\Connectors\SalesLifecycleRepairInterface::reclassifySale() ved hjælp af hvad per- record hente din stik allerede har. tools/crm_backfill_sales_lifecycle.php derefter reparerer din konnektor importerede historie uden per- connector kode: tør køre som standard, bakker sig op og kontrollerer rækken tæller før skrivning, reversibel gennem en fortryde hovedbog, og det skriver aldrig en mislykkedes læst som et svar.
💡
Hvis din forbindelse ikke kan gen- læse tidligere optegnelser - et webhook- only stik kan - må du ikke stube metoden. En stub, der vender tilbage ukendt, er værre end ingen implementering: en backfill ville omskrive gode rækker som uklassificeret og rapportere succes. Implementér kun ordforrådsgrænsefladen.
💡
Detailed package references remain available in connectors/CONNECTOR_EVENTS.md and connectors/PLATFORM_CONNECTORS.md in self-hosted source distributions.
Connectorer
Rejsebegivenhedskontrakt
Journey Intelligence accepterer en platform- neutral begivenhed kuvert fra browseren widget, build- in stik, SaaS Bridge, markedsplads pakker og Connector Builder output. Platform- specifikke navne er oversat i kanten; tragt, tildeling og site Intelligens kode forbruger kun kanoniske begivenheder.
Isolering og tillidsgrænse
Præcis peer- domæne nøgle
Every event is bound to the authenticated domain site_key. A connector must take that key from ConnectorRegistry or its authenticated endpoint, never from an untrusted request body. Domains keep separate records; a domain group is a read-time aggregate only.
Idempotent identitet
event_id is required for connectors and must be deterministic for the same native event. Retries, webhooks and backfills update one event rather than duplicate a journey or sale.
Indfødt plus kanonisk navn
Preserve source_event_name for evidence and troubleshooting, then map it to event_name_canonical. Core analytics must never branch on a connector slug.
Serverbeviser vinder
Browser observation kan starte eller infundere en rejse. Autentificerede konnektor begivenheder bekræfte signiup, login, betaling, køb, fornyelse, tilbagebetaling og andre terminalresultater. En gyldig site- bundet korrelationsmelodi er den stærkeste join; en ugyldig token afvises og dens indbyggede ID 'er ikke er betroet.
Privatliv
Send kun id 'er og felter, der er nødvendige for den angivne rejse. Respekt samtykke, maskering og opbevaring indstillinger. Aldrig placere legitimation, kortdata, autentificering hemmeligheder eller private message organer i egenskaber.
Brug det smalste sandfærdige navn. Understøttede familier inkluderer engagement side / TTA begivenheder; konto signiup, login, MFA og adgangskode nulstillet; bly og form faser; produkt, vogn, checkout, betaling, køb, abonnement, fornyelse og tilbagebetaling; promotion indtryk og konverteringer; help- center, chat og billet begivenheder; sikkerhedshændelser; og navngivne brugerdefinerede begivenheder. Typiske terminalnavne er account.signup.succeeded, account.login.succeeded, lead.form.succeeded, commerce.payment.succeeded, commerce.purchase.completed, commerce.subscription.renewed og commerce.refund.completed.
Browserindkøring, bekræftelse og opgivelse
Kontrollen kan arbejde uden en konnektor ved at observere sidestruktur, formulere handlinger, DOM resultater og besøgende rejse log. Denne dokumentation forbliver eksplicit klassificeret som observeret eller udledes. En konnekse tilføjer autoritativ server bekræftelse og kan korrelere det til den samme browser forsøg. Abandinux er først gemt som kandidat; det bliver opgivet kun efter inactivity vindue i UI og kun når der ikke senere opsving eller succes eksisterer.
Tildeling og indtægter
Attribution foretrækker en gyldig underskrevet korrelationsværdi, derefter en nøjagtig rejse, forsøg, session eller handel reference, så den samtykkede identitet graf, og endelig en afgrænset adfærd match. Uovertruffen salg forbliver utilskrives. Multi- touch hovedgæringsvægte skal samlede 1. Website Intelligence tildelt indtægter læser denne bog; kreditter, tegnebog top- ups, token top- op og Tilføj fonde er aldrig købe konverteringer. Connector FX adfærd forbliver kontrolleret af denne konnektor indstilling.
⚠️
Attributionsmodel, lookback vinduer, direkte-trafik håndtering, minimal tillid, opsigelse timeout og tragt definitioner er UI politik. Forbindelseskode må ikke hardcode dem.
Declare kun kapaciteter pakken virkelig leverer. Connector Builder validerer kortlægningen og genererer den samme platform- neutral adapter, der anvendes af first-party pakker. Journey indtagelse accepterer en begivenhed eller et afgrænset parti af 100 gennem det genererede autentificerede integration endpoint.
💡
Handelsregnskabsbogen er fortsat den finansielle kilde til sandhed. Handels- to- rejse broen udgiver serverbekræftede resultater og afstemmer tildeling efter den eksisterende idempotent hovedbogholderi upsert, så en betaling aldrig bliver to salg.
Connectorer
Hvordan AI-handlinger virker
Hver forbindelse erklærer et sæt af handlinger: ting AI kan gøre gennem den eksterne platform. Handlinger er broen mellem "AI siger" og "AI gør".
AI-aktionerEn anmodning bliver en erklæret handling (skrevet læse / skrive / slette), der er permission- check-, bekræftet, derefter udført og rapporteret.
Handlingens livscyklus
1
Kunden beder om noget
"Cancel my subscription." The AI identifies this requires the "cancel_subscription" action.
2
AI kontrollerer tilladelser
Er denne handling tilladt? Er den aktiveret? Har den nuværende bruger den rigtige rolle?
3
AI samler parametre
Handlingen har brug for et abonnement ID. AI ser det op fra kunden kontekst eller spørger kunden.
4
Bekræftelse
For destruktive eller højeffekthandlinger, AI beder om bekræftelse før udførelse.
5
Gennemførelse
Handlingen kalder den eksterne platform API.
6
Resultat
AI rapporterer resultatet til kunden.
Aktionstyper
Læs handlinger
Look up data without changing anything. Examples: list_orders, get_customer. Safe, no confirmation needed.
Skriv handlinger
Create or modify data. Examples: create_ticket, update_order. May require confirmation.
Opdaget i handlinger.json, generisk API kalder defineret deklarativt.
Kapacitetsmærker
Optional per-action "capability" field in actions.json, a connector-neutral class tag (e.g. "tickets" for a ticket read/lookup, "ticket_create" for opening a ticket). OpsIQ gates the whole class uniformly across every connector: ticket reads drop out of the AI when the operator turns off AI Ticket Awareness, and ticket creation is reserved for OpsIQ's own composer (so a connector's create tool can't duplicate it). Declare it and your connector conforms. OpsIQ never needs to know your action names. The Connector Builder exposes it as a Capability dropdown per action.
Kodeaktioner
Gennemført i PHP i connector klassen. Fuld kontrol over logik.
Eksempel på handlingsdefinition
{
"lookup_order": {
"label": "Look up an order",
"description": "Find an order by ID or email",
"method": "GET",
"endpoint": "/admin/api/2024-01/orders.json",
"params": {
"order_id": { "type": "string", "label": "Order ID" },
"email": { "type": "email", "label": "Customer email" }
}
}
}
Connectorer
Byg en konnektor
Connector Builder kan du oprette en komplet stik til enhver platform med en REST API. Ingen kodning kræves for grundlæggende konnektorer.
Byg en konnektorPeg bygherren på enhver REST API. Sæt auth, base URL og handlinger, teste det, og udgive en arbejdsforbindelse.
Komplet udbyder API dækning
Hver genereret API connector kan afsløre separate Native API Læs og indfødt API Skriv handlinger. Kurerede handlinger er fortsat foretrukne; indfødte handlinger dækker udbyder endpoints tilføjet senere. Runtime understøtter REST, GraphQL, JSON, formular XML, rå og flerdelte kroppe, afgrænset paginering API-version headers og idempotens, mens du holder legitimation inde i workspace connector indstillinger.
⚠️
Markedets pakker er indkøbt fra /marketplace_connectors såvel som bundtet /connectors. Forøg pakkeversionen, regenerér kontrakten og dokumentationen, kør overensstemmelsesprøvninger, og skriv derefter på ny og udgiv den nye version af markedspladsen.
Comment
Guiden har seks trin, vist som faner over toppen. Du kan hoppe mellem dem frit, og Gem udkast i foden holder dit arbejde på ethvert tidspunkt.
1
Identitet og profil
Name, slug, description and icon, then choose a contract profile: Standard API, Commerce, Helpdesk, Mailbox, Site Intelligence, SaaS Bridge, Local PHP Platform, or Platform with no API when the platform serves nothing callable and OpsIQ has to install a bridge. The profile selects a complete capability starting point; you can still adjust individual capabilities.
2
Autorisation
Vælg autentificeringsmønstret som platformen bruger og udfyld sine felter. Indtast også rigtige testdata her: de bruges til forbindelsestesten på næste trin, og de gemmes ikke efter du har udgivet dem.
3
Test
Indtast API base URL og et verificér endpoint, derefter køre en live-tilslutning test ved hjælp af legitimation fra trin 2. Gør dette, før du definerer nogen handlinger, hvis aut eller base URL er forkert, hver handling du skriver bagefter ville mislykkes af samme grund, og du ville være debugging den forkerte ting.
4
Handlinger
Definer hver operation: navn, HTTP metode, endpoint sti, parametre, respons felt kortlægning, og de pålidelighed indstillinger beskrevet nedenfor. Du kan køre hver handling individuelt mod den levende API fra dette trin.
5
Triggere
Kortlæg webhook-events din platform sender på OpsIQ begivenheder, så ting, der sker på din platform kan begynde at arbejde i OpsIQ.
6
Gennemgang, virksomhedskontrakt og offentliggørelse
Review every action, trigger and capability. Enterprise profiles expose the generated queue, worker, hook, migration, ticket-mirror, attachment and conflict contract before publishing. Publishing writes the package into /connectors/<slug>/.
⚠️
Publishing kører IKKE konformsuiten. Publisher kun validerer guiden form og udsender advarsler, der ikke blokerer. Den fulde suite - manifestere, kapacitetfiler, identitetstoken kontrakt og broch- snippet kontrol - kører, når du trykker på Dry- run, og igen på installationstidspunktet. Tryk på Dry-køre før du sender, hver gang.
Hvad udgivelse gør, at formularen ikke viser dig
Fem adfærd generatoren overraske folk. Ingen er en fejl; alle af dem vil koste dig en eftermiddag, hvis du møder dem ved et uheld.
One question decides the passthrough: does the platform serve an API?
Answer it in step 1 by picking the data-access mode (or the "Platform with no API" profile). API mode declares native_api and emits the <slug>_api_call passthrough. Bridge mode declares platform_bridge instead and STRIPS native_api even if an older spec carried it, so the manifest, the generated class and the expertise docs cannot disagree. ai_brain_aware is added either way.
SILENCE MEANS "it has an API"
The Builder follows your answer; it does not work the truth out for itself, and the default when nothing is said is API mode. So a no-API platform must ACTIVELY say so — pick the "Platform with no API" profile, set data access to bridge, or tick platform_bridge; any one of the three is enough and they cannot contradict each other. Skip the question on a platform with no API and you are back to the old failure: a dead <slug>_api_call the model keeps reaching for. This used to be stamped unconditionally, so the trap is now escapable rather than gone.
Forbindelsestesten er standard for at få /ping
Hvis du lader verifikationsstien være tom, skriver bygherren /ping ind i det genererede stik og ind i profilen.json's test blok. Næsten ingen rigtig platform tjener den rute, så Test Connection mislykkes med HTTP404på hver installation og læser som en kunde forkert konfiguration snarere end en pakke defekt. Sæt en verificering sti, at din platform faktisk svar. For en bro stik, pege det på din egen diagnostiske endpoint - det beviser hele kæden i et opkald: broen er indsat, de vigtigste kampe, og broen kan nå databasen.
Re-publishing still overwrites your hand-edits
Capabilities now follow the data-access answer, so those no longer drift. Everything else generated still does: edit ContextProvider.php or any other emitted file and the next publish replaces it. The one protected exception is the bridge file — the wizard only overwrites a bridge carrying its own marker, so a hand-written one is left alone.
Genudgivelser sletter filer
Un- kryds en kapacitet og den næste udgivelse fjerner sin udbyder-fil. Hand- edits til enhver genereret fil - ContextProvider.php frem for alt - overskrives uden varsel. Kopiér tilpasninger ud først, eller tage ejerskab af pakken ved at slette.opsiq- Bygmester.json(hvorefter guiden ikke længere vil håndtere det).
release_status is always preview
The wizard has no control for it. A package meant to ship as production must have release_status changed by hand in settings.json — and that edit breaks the signature, so re-sign afterwards.
Underskriften beviser integritet, ikke oprindelse
Byggerpakker er signeret med denne installations egen symmetriske nøgle. Det registrerer manipulation. Det beviser ikke hvem der skrev pakken, og enhver installation som holder den samme nøgle kan producere den samme signatur. Behandl en lokalt underskrevet pakke som selvsigneret.
Slug kollisioner er kun kontrolleret i et træ
Udgivelse nægter en kugle, der allerede eksisterer under/connectors/.Det ser ikke på/marketplace_connectors/,så en håndskrevet førstepartipakke med den samme kugle kan ende i skyggen.
💡
Guiden har ikke et viden- authoring trin. En viden fil, der beskriver din platform er genereret for dig fra navnet, beskrivelsen, aut type og handlinger, du definerede, og det er indlæst i AI, når stikket er aktiveret.
Definition af en handling (trin 4)
Hver handling har følgende indstillinger. Kun de første fire er nødvendige; resten kontrol, der kan køre det, og hvor omhyggeligt.
Aktionsnøgle og etiket
The key is what the AI calls; the label is what a human reads. Keys are namespaced with your connector slug automatically, so two connectors can both have a "list_orders" without colliding.
HTTP-metode
- Get, POST, PUT, PATCH eller DELETE.
URL sti
Påsat basen URL. Brug {name} f.eks. for pladsholdere /opportunities/{id}/stage
Parametre
For hver parameter vælger du også, hvor den går: organ, path, query eller sidehoved. En sti parameter fylder en {placeholder}; en forespørgsel parameter er vedlagt til URL.
Responsmaping
Sig hvilket felt i JSON svar betyder hvad, som er kundens navn, som e-mail, som det er den samlede ordre. Dette er hvad lader AI læse din platforms data snarere end gætte på det.
Hvem kan bruge det?
Dit team (admin AI), signed-in kunder (kunde chat), både, eller skrive assistent. Kundehandlinger kører kun for signed - i kunden, og identitetsfelter er låst til dem automatisk, så en kunde ikke kan spørge om en anden.
Kræver bekræftelse
Et menneske skal godkende, før handlingen løber.
Destruktiv
Markerer handlingen som sletning eller ændring af tilstand. Bruges til at advare, før den kører.
Krævet tilladelse
The admin must hold this permission for the AI to run the action on their behalf; full administrators always pass. Choose from manage_integrations, manage_general, manage_billing, manage_sales_bridge, manage_knowledge, manage_appearance, manage_behavior, manage_permissions, manage_dangerzone, reply_to_chats, escalate_to_ticket, send_agent_email, or none, meaning any authenticated admin.
Beskrivelse / AI-antydning
Valgfrit, men værd at skrive. Det fortæller AI, når man skal nå til denne handling, for eksempel "Brug dette, når admin beder om at ændre en aftale fase". Et godt vink er forskellen mellem en handling AI bruger korrekt og én det ignorerer.
Kapacitet
Optional class tag, either tickets (a ticket read or lookup) or ticket_create (opens a ticket). Tagging lets OpsIQ gate the whole class at once, for example, hiding ticket reads when an operator turns AI ticket awareness off.
Listesti
Valgfrit. For endepunkter der returnerer en liste, den stiplede sti til array, for eksempel data eller data. items
Fejlsti
Valgfrit. Et kropsfelt, hvis tilstedeværelse betyder opkaldet mislykkedes, for eksempel errormessage, nyttigt for APIs at returnere HTTP 200 på fiasko.
Kør det
Hver handling kan køres mod den levende API fra dette trin, så du kan løse en forkert sti eller felt navn før nogen andre bruger det.
⚠️
Write actions are protected by default. Any action using POST, PUT, PATCH or DELETE starts out requiring the manage_integrations permission og human bekræftelse før det kører. Dette er bevidst. En ny skrive handling mislykkes lukket snarere end at lade AI ændre dine data uden opsyn. Du kan ændre både på handlingen, men ændre dem bevidst.
💡
For at kunne kaldes fra kundechat, skal en handling være read- only: Lad både Kræver bekræftelse og Destruktiv unticked. En handling en kunde kan udløse, der også ændrer tilstand er ikke noget guiden vil lade dig skib ved et uheld.
Modtager webkroge (trin 5)
Triggers trin giver dig en webhook URL til at registrere med din platform, og kontrollerer alle anmodninger, der ankommer på det.
Underskrifts-header
Hovedet din platform tegn med, for eksempel X- Hub-Signature-256.
Signalalgoritme
HMAC-SHA1, HMAC- SHA256 eller HMAC- SHA512.
Underskriftsprocedure
Simpel, en almindelig hex eller base64 digest. Eller Stripe- stil, t =..., v1 =... format brugt af Stripe og flere platforme, der kopierede det.
Underskriftspræfiks
Valgfrit. Nogle platforme præfix fordøjet, for eksempel sha256 =. Lad det tomt, hvis din ikke gør.
Begivenhedstilknytninger
Kort hver begivenhed din platform sender på OpsIQ begivenhed, det bør hæve.
Autoregistrering af webhook
Hvis din platform har en API til at styre sine egne webkroge, behøver du ikke at registrere URL med hånden. Åbn Autoregister denne webhook på aktivér og pege det på to af de handlinger, du definerede i trin 4:
Skaber- webhook handling
Kaldes når en admin aktiverer stikket. Du giver det parameternavn der bærer URL, eventuelt den som bærer begivenhedslisten, og stien i svaret der holder den nye webhooks id.
Delete- webhook handling
Kaldes når stikket er deaktiveret, ved hjælp af id fanget ovenfor, så deaktivering af stikket også stopper din platform sende til en død endpoint.
Kapacitet du kan tænde
Profiler og kapaciteter er defineret af Connector Contract 2.2. Genererede og deklarative kapaciteter udsendes direkte; virksomhedens kapaciteter generere en EnterpriseExtension.php stillads med runtime livscyklusledninger.
Handlinger
Operationer AI kan køre på din platform: liste ordrer, finde en kunde, udstede en refusion.
Triggere
Modtag webkroge fra din platform og gøre dem til OpsIQ begivenheder.
AI-billetter
AI Triage og svaret Copilot på billetter, der opholder sig på din platform. Vælg det endpoint, der returnerer en billet med sine svar og kort felter; OpsIQ læser tråden gennem det.
Postkasse og kontakter
Vis en kundes mail på deres tidslinje, send fra en aftale, og synkronisere din adressebog i OpsIQ CRM.
Kundeimport
Sideside din kundeliste og importere hver enkelt som en OpsIQ kontakt. Dette er, hvad Importknappen kører.
Sammenhæng
Push live data fra din platform ind i hver AI samtale.
Identitet
Find ud af, hvilken af dine kunder en besøgende er, og vis deres profil og køb på en billet.
Salg og fakturering
Feed indtægter begivenheder og MRR tal i OpsIQ dashboards.
Indgående billetter
Drej billetter og e-mails din platform leverer via webhook i OpsIQ supporttråde.
Udgående svar
Post OpsIQ personale svar tilbage til platformen tråden opstod på.
Synkronisér brugere
Importer dine personalekonti til OpsIQ admin brugere.
Synkronisér afdelinger
Importer dine supportafdelinger i OpsIQ.
Promomålretning og produktfoder
Lad Promotion Studio målrette på fakta, du kender om en person, og gøre dine rigtige produkter inde i en forfremmelse.
Studio-udbyder til undersøgelse
Udsend server- verificerede Survey fakta, undslap variabler og afgrænset CRM Outreach modtager sider gennem en dedikeret SurveyProvider. php. Dette ikke genbruge Promotion runtime.
Native IP blokerende
Hvornår OpsIQ blokerer en IP, ring til din platforms egen blok API Så blokken bliver også håndhævet der.
Sikkerhedsbegivenheder
Modtag blokeret-IP Trusselssignaler fra OpsIQ.
Platformviden til AI
Hver forbindelse du bygger skibe en kort reference beskriver, hvad din platform er, og hvad dens handlinger gør. OpsIQ admin AI læser det, når dit stik er aktiveret, så det forstår din platform snarere end bare at se en liste over handlingsnavne. Dette genereres for dig.
API gennemgang
Din konnektor altid får en generel formål opkald, så AI kan nå et endpoint du ikke definere en indtastet handling for. Brug indtastede handlinger hvor du kan; dette er flugtlugen.
site_intelligence · Site Intelligence data provider
SEO, analytics, search-console, local-search or monitoring provider with scheduled sync. Capabilities: actions, triggers, site_intelligence, seo, scheduled_workers, durable_queue.
no_api_bridge · Platform with no API (OpsIQ installs a bridge)
For a self-hosted PHP application that serves no callable API. The wizard generates a signed bridge file the operator drops into their own site, plus the typed actions that read and write through it. Capabilities: actions, platform_bridge, ai_brain_aware.
Byggerspecifikationer forbliver den autoritative kilde. Sæt platformspecifikke forretningsregler i de genererede forlængelsespunkter; pakken livscyklus, køer, arbejdstagere, migreringer og overensstemmelse tests forbliver Builder-forvaltes.
Pålidelighed indstillinger på hver handling
Genoplivning
Hvor mange gange at prøve et mislykket opkald, med en backoff, der fordobler hvert forsøg. 429s og 5xx fejl er genprøvet; en 4xx er din anmodning skyld og gentage det ville bare brænde din sats grænse.
Sats
Et per- minutloft for denne handling, så en travl udløser kan ikke hammer din platform. Lad det på 0 uden nogen grænse.
Tidsudløb
Hvor længe skal du vente på din platform, før du giver op?
Bekræftelse
Kræv et menneske til at godkende før handlingen kører. Brug det til noget destruktivt.
Typer af autentificering
Trin 2 tilbyder syv mønstre. Vælg den, der matcher din platforms API dokumentation, generatoren udsender den rigtige HTTP-klient til det.
API - tasten i header
En statisk nøgle sendt som en fast header, for eksempel X-API-Nøgle. Du giver header navn og etiketten admin form skal vise. Dette sender nøglen som en header; hvis din API forventer nøglen som en forespørgsel parameter i stedet, bruge Custom headers eller en full-code stik.
Beater-token
Token sent as Authorization: Bearer <token>. Common for modern APIs.
Basismauth
Brugernavn og adgangskode, base64- kodet ind i Autorisations-headeren. Du vælger etiketterne begge felter viser på admin-formularen.
HMAC-signeret
En offentlig nøgle plus en hemmelighed, med anmodning organ underskrevet. Du giver underskrift header, nøglen header og tidsstempel header din platform forventer.
OAuth 2.0 [klientlegitimation]
Server- to- server, uden brugerinteraktion og ingen omdirigering. Du giver token URL og et valgfrit omfang; admin leverer klientid og hemmelighed. Brug dette når din platform udsteder legitimationsoplysninger til en applikation snarere end til en person.
OAuth 2.0 (Forbind knappen)
Autorisationskodestrømmen med PKCE, for Stripe, Shopify, Slack og QuickBooks- stil apps. Du giver tilladelsen URL, token URL og omfanget. Efter udgivelse, admin klikker Connect på stikket, autoriserer på din platform, og OpsIQ gemmer den genopfriske token og mints adgang tokens på efterspørgslen. URI til at registrere sig i din OAuth app 'en vises på konnektorens indstillingsside.
Brugerdefinerede overskrifter
En fri- form JSON header map for alt de mønstre ovenfor ikke dækker, for eksempel {"X-API- Nøgle ":"{api_key}"X-Tenant": "{tenant_id}"}. Hver pladsholder bliver et felt på admin-formularen.
💡
PKCE gælder kun for forbindelses- knappen flow. Klient- legitimation flow har ingen omdirigering og intet brugertrin, så PKce ikke gælder for det.
Pagineringsstilarter
Forskydning
Bruger offset og begrænser parametre. Eksempel:? offset =100& grænse =50.
Side
Uses page number. Example: ?page=3&per_page=50.
Markør
Bruger en markør token fra den tidligere svar.
Link-overskrift
Bruger Link response header med rel = "next".
Avanceret: brugerdefineret PHP-kode
connector. php ReturNS en instans. Det erklærer ikke en navngivet klasse, at OpsIQ jagter for. Metoden navne nedenfor er dem ConnectorInterface kræver; få en forkert er en dødelig på belastning, ikke en advarsel.
connector. php - den rigtige kontrakt, minimal og kørbar
<?php
/* connectors/myplatform/connector.php */
declare(strict_types=1);
use OpsIQ\Connectors\AbstractConnector;
require_once __DIR__ . '/Client.php';
return new class extends AbstractConnector {
/* ── the three identity methods. NOT identifier()/label(). ── */
public function slug(): string { return 'myplatform'; }
public function name(): string { return 'My Platform'; }
public function description(): string { return 'Orders and customers from My Platform.'; }
public function capabilities(): array { return ['actions', 'context']; }
public function settingsSchema(): array
{
$f = __DIR__ . '/settings.json';
if (!is_file($f)) return [];
$j = json_decode((string)file_get_contents($f), true);
return is_array($j['settings'] ?? null) ? $j['settings'] : [];
}
/* ── NOTE THE ARGUMENT. testConnection() with no parameter is a fatal. ── */
public function testConnection(array $settings): array
{
try {
$resp = \OpsIQ\Connectors\MyPlatform\Client::callWithSettings($settings, 'GET', '/me', [], []);
$code = (int)($resp['http_code'] ?? 0);
return ($code >= 200 && $code < 300)
? ['success' => true, 'info' => ['message' => 'Connection OK', 'http_code' => $code]]
: ['success' => false, 'error' => "Verify endpoint returned HTTP $code"];
} catch (\Throwable $e) {
return ['success' => false, 'error' => 'Test failed: ' . $e->getMessage()];
}
}
public function onEnable(array $settings): array { return ['success' => true]; }
public function onDisable(array $settings): array { return ['success' => true]; }
public function handleWebhook(array $payload, array $headers, array $settings): array
{
return ['success' => true, 'note' => 'No triggers declared.'];
}
/* Inherited from AbstractConnector: reads actions.json for you.
* Override only to ADD actions the manifest cannot express. */
public function registerActions(array $settings): array
{
return parent::registerActions($settings);
}
};
⚠️
Three things that fatal at class load rather than failing gracefully. The identity methods are slug(), name() and description() — not identifier() and label(). testConnection() TAKES an array of settings; a no-argument version is an incompatible signature. And there is no $this->http() or runAction() on AbstractConnector — HTTP goes through your own Client.php or through an action declared in actions.json.
Spejl billetter ind i den indfødte billet system
Når din platform ejer en billet, skal du filme den ind i OpsIQ fra dit stik ved hjælp af billetten inguest hjælper din konnektor arver (oprette for en ny billet, add-svar på follow- ups). Emit og abonnere på de universelle billetevents i din connector 's subscribers() metode ticket.created, ticket.replied, ticket.updated, ticket.deleted. Autosvar, eskalering, SLA og CSAT alle kroge de samme begivenheder, så du arver dem uden ekstra kode.
Sig hvem der skrev åbningsbeskeden
En billet er altid til kunden, men åbningsmeddelelsen kan være skrevet af staff: en agent, der åbner en billet på kundens vegne, eller når ud proaktivt. Hver helpdesk understøtter dette, så det er en del af den universelle ticket.created kontrakten snarere end noget hver stik løser privat.
author_type
klient (standard) eller admin. Udelad det og kunden antages.
author_id
The staff id when author_type=admin. Never the customer id.
author_name
Agent eller afdelingens udstillingsnavn.
author_email
Agentadressen. Aldrig kunden en. En personalemeddelelse under kundens e-mail er en rapportering og revision fejl.
Det er ikke kosmetisk. Forbrugere læser author_type at beslutte, hvis tur det er. En personale- skriftlig åbning rapporteret som client efterlader auto- svar berettiget til at besvare en besked din egen agent skrev, og gør din platforms ekko af denne åbning ligne en frisk kundemeddelelse, som derefter lander som en kopi og vender billetten til answered. Kortlæg din platforms signal på det i dit stik begivenhedsnormalisator, aldrig i forbrugerne.
Centralt blokerende
Når en agent blokerer en sender, gælder det på tværs af every kanal straks (e-mail, chat, portal, widget og hver konnektor tvilling) fordi blokken håndhæves centralt, før nogen konnekse ser beskeden. Din konnekt arver det ved at gøre ingenting. Der er ingen indgående arbejde for at gennemføre og ingen måde at få det forkert.
Den valgfrie halvdel er outbound: at fortælle din platform en kunde blev blokeret her. Implementere det kun, hvis din platform kan udtrykke noget tilsvarende.
kapacitet ()
Must include block_registry AND the class must implement BlockRegistryInterface. The flag is a claim; the interface is the guarantee. The registry requires both.
Den samme last skal være idempotent, men det er ikke en fejl at blokere noget.
isSenderBlocked($b)
For forsoning, så drift er rapporteret snarere end opdaget af en kunde. Returnerer [resultat, blokeret?].
Resultatværdier
OK
Applied on your platform. Include remote_ref when you have an id worth recording.
noop
Allerede i den anmodede stat.
unsupported
Din platform har ikke noget tilsvarende koncept. IKKE en fejl.
mislykkedes
Du kunne have gjort det, og det gik galt. Inkludér detaljer; det lander i revision spor.
At dechifrere er et rigtigt svar. Mange platforme har ingen "blokere denne afsender" koncept og tilbyder kun konto suspension, som stopper fakturering, logins og tjenester i stedet for bare support mail. Kortlægning "en agent blokeret en spam adresse" på "lukke klientens konto" ville lade en misklikket blok opsige en betalende kundes tjenester. Hvis det er den eneste håndtag du har, skal du returnere unsupported og lad det være.
Decidering omfatter også tilfælde, hvor platformen can gøre det, men vil ikke lade dig. API, ikke en funktion: en løftestang, der kun eksisterer i platformens admin UI er et håndtag din konnektor ikke har.
Arbejdede eksempel · Zendesk (referencefeltet implementeres)
Læs connectors/zendesk/connector.php alongside this. It is short, and every branch below is a decision you will face too.
Send e-mail → ok
PUT /api/v2/users/{id} with suspended=true. A suspended end user's new requests divert to Suspended Tickets instead of opening one, genuinely the same idea as blocking a sender, and it stops no billing because Zendesk end users have none. Returns the user id as remote_ref.
domæne → ikke understøttet
Zendesk kan suspendere et helt domæne, men kun gennem suspendering: søgeord i Admin Center blocklist textarea, og ingen API skriver dette felt. Funktionen eksisterer; håndtaget ikke.
ip → ikke understøttet
Der findes ingen IP -blok på ticket- niveau.
ukendt adresse → noop
Zendesk kan ikke forud- suspendere en adresse, det aldrig har set. Intet at gøre er ikke en fiasko, og den lokale blok stadig stopper billetten.
agent eller admin → ikke understøttet
NÆGTELSE. Mistænkte personale ville låse en kollega ud af helpdesk. En personaleadresse nå en bloklist er langt mere tilbøjelige til at være en fejl end en instruktion, kontrollere den rolle, før du handler på det.
Den sidste række er den værd at kopiere. Kontrakten kan ikke stoppe dig kortlægge en blok på noget destruktivt, så hver stik skal selv beslutte, hvad det vil nægte. Afslår højlydt, med en detail en operatør kan læse, slår adlying.
- Rapportér ærligt. Bemærk hvor få af disse rækker er okDet er det rigtige resultat, ikke et hul: en domæne blok virker stadig (den håndhæves i kernen, når den skrives); den kan simpelthen ikke blive afspejlet udad. ok for noget, du ikke gjorde ville fortælle en operatør blokken nåede din platform, når det aldrig forlod OpsIQ.
Regler
Den lokale blok vinder altid
Det er skrevet, før du bliver kaldt og står hvad du vender tilbage. Du kan ikke forhindre en operatør blokere nogen.
Kast aldrig
Et kast behandles som ikke understøttet og registreres. Returnering mislykkedes med en detalje i stedet, så årsagen overlever.
Vær idempotent
Den samme blok kan offentliggøres mere end én gang.
Returnér hurtigt
Fan- out er synkron med operatørens klik. Kø langsomt arbejde i stedet for at holde anmodningen åben.
Ring ikke tilbage
Aldrig re-block ind OpsIQ fra din kontaktperson. registreringsdatabasen springer den oprindelige stik, men en anden hop ville loop.
Hver meddelelse er skrevet til opsiq_block_registry_log (operation, art, værdi, årsag, admin, oprindelse, stik kugle, resultat, detaljer og tidsstempel) så en operatør kan se en blok ankom fra din platform snarere end fra en agent, og hvad hver forbindelse gjorde ved det.
Skub vedhæftede filer korrekt
Håndbog attachments array til at oprette ()/addReply(). Hvert element bærer filen i en af tre former:
content_b64
Base64 af RAW-fil bytes, brug for filer bag auth (de fleste indgående tilfælde). OpsIQ afkoder det og re-hosts filen for dig. Den mest bærbare form.
url / source_url
A public https URL (e.g. a Zendesk content_url). Must be https; passes an SSRF / allowlist check before it is stored.
stored_path
En gemt fil reference du allerede skrev (hvad den indfødte komponist uploader producerer).
Items also accept filename, mime_type and size_bytes. Caps: 12 MB/file, ~24 MB total, 10 files per call. Most platform read APIs return attachment kun filnavne (ikke bytes), så det pålidelige indadgående mønster er: læse byte hvor din kode allerede kører (inde i platformen, eller fra webshook nyttelast), base64 dem, og sende dem som content_b64 om begivenheden.
Outbound (OpsIQ → din platform). Når en agent vedlægger en fil, ticket.replied nyttelast giver dig svaret filer som stored_path post under OpsIQ fil butik. Læs dem og skubbe i din platforms eget format, og tjek platformen docs, kodning betyder: WHMCS ønsker base64_encode(json_encode([[name,data]])) (JSON, ikke serialize); Zendesk uploads rå bytes til /uploads.json til en token derefter sæt comment.uploads; Gmail sender en flerdelt / blandet RFC-822 besked base64url- kodet i raw; Amazon SES inbound attachments need the S3 receive action (the SNS path caps at 150 KB).
Fjernbetjening af platforme: API + webhook, aldrig en anden app 's borde
Hvis din platform er en separat app eller database (en hosted SaaS, en fjernbetjening WHMCS, et andet DB på samme server) Skriv aldrig dens tabeller direkte: en krydsdatabase skriver lander på uanset forbindelse er aktiv og lydløst går glip af de rigtige rækker. Altid: outbound = at ringe til platformens signerede REST API (replies, status, afdeling, sletter); inbound = platformen POST 'er en underskrevet webhook, din handleWebhook() kontrollerer det og affyrer matchningen ticket.* event. For at stoppe en spejlsløjfe, mærke hvad du skubber med en oprindelsesmarkør (fx mirror_origin:'opsiq'); platformen ekko det på webhook og din indgående håndværker springer sine egne ekkoer. OpsIQEvents::isMirroredEvent() på toppen af hver kontakt.
Spejlstatus, prioritets- afdeling
Et svar flytter automatisk status, en agent svar → answered, a kunde svar → customer_reply; spejl, at på samme måde. ticket.updated og læs payload['changes'] (f. eks. {status:'closed'}).
Status: OpsIQ's kanoniske sæt er open, customer_reply, answered, in_progress, pending, closed. Hold et lille tovejskort til din platforms ordforråd, og sørg for at din kolonne rent faktisk accepterer de værdier du skriver (en ENUM mangler en værdi bliver tavs kastet til tomme af nogle databaser). Afdeling: OpsIQ -id er meningsløst på din side, Send den aldrig. Send deskriptoren (name, email og slug) og løse det mod dine egne afdelinger ved e-mail → navn → slug, så "Billing Department" lander i er Afdelingen for fakturering i stedet for Generelt. Trigger på begge ticket.escalated og a department_id ændring i ticket.updated.
💡
Status / priority / subject / department / delete mirroring is gated by per-connector toggles (mirror_status_changes, mirror_priority_changes, mirror_subject_changes, mirror_department_changes, mirror_deletes) read through the shared OpsIQ\Connectors\MirrorOptions helper. Embed that block in your settings.json and every ticket-mirror connector reads the toggles identically.
Link en billet til et produkt / service
Hvis kunden valgte et bestemt produkt, når du åbner billetten, stemple en antydning, så agenten ser et fokuseret servicetort (med et enkelt klik "se andre produkter" modal for resten). Pass nogen af disse til at oprette ():
related_service_id
Preferred: the service id exactly as it appears in your IdentityProvider::lookupCustomerServices() list (each service's id). Unambiguous match.
related_service_label
En platform service-kode, f.eks. WHMCS S396 (service396) / D11 (domæne11). OpsIQ dekomponerer det valgfrie type- letter + id og matcher din service liste, med en type vagt, så et domæne kode aldrig passer til et produkt af samme id. Udsend en matchende ref på hver tjeneste for en præcis match.
related_domain
Et domænenavn; matches som en understreng mod hver tjenestes detalje / domæne.
💡
Byg vedhæftningslisten én gang i form ovenfor, og OpsIQ håndterer resten: hostet URLs er gået igennem og base64 indhold gemmes og re- hosted for dig. Du behøver aldrig at skrive per- platform fil håndtering.
⚠️
Action tasterne er små bogstaver, tal og underværker. Builder accepterer3til80tegn og tillader også prikker; actionbutikken accepterer2til100tegn uden prikker, så hold dig til bogstaver, cifre og understregninger, og du opfylder begge. Tilføjelse af en handling skaber ingen AJAX rute, så der er intet at regenerere - re-gemme stikket, og det er synkroniseret.
Connectorer
Tilslut en platform, der har NO API (bromønsteret)
Masser af rigtige platforme skib ingen RESTAPIpå alle. Et hotel CMS, et gammelt faktureringssystem, en skræddersyet intern værktøj. Du kan stadig skrive en kompletOpsIQconnector for one: stikket sender en enkelt PHP-fil, som operatøren falder ind i deres egen offentlige webroot, og at filen ISAPIDenne side er hele mønsteret, med de regler, der gør det sikkert at køre og årsagen til hver regel.
Formen af det
En normal konnektor kalder en andens API. En bro connector bringer sin egen. Intet andet ændrer: de samme handlinger, den samme kontekst udbydere, den ene identitet kontrakt, den anden pakke layout.
1
Du skriver en PHP fil
It lives in your package at bridge/opsiq-<platform>-bridge.php. It talks to the platform's database directly, or boots the platform's framework, or both. It answers JSON.
2
Operatøren kopierer det til deres webroot
Ved siden af platformen egen index. php. Ingen platform kode er ændret, ingen plugin er installeret, intet at opretholde på tværs af platform opgraderinger.
3
Forbindelsespanelet giver dem filen
Your settings.json declares webhook_help.snippet_template. The connector page renders it as a copyable file with their live settings already substituted, so there is nothing to hand-edit.
4
OpsIQ kalder det server- to- server
Din klient.php sender GET anmodninger med den delte nøgle i en X-Opsiq- Bridge- Key header.URLindstilling er platformen site root.
✅
The Connector Builder CAN generate this for you now. Pick the "Platform with no API" profile (or set data access to bridge) and it emits the bridge file, the matching panel snippet and the typed actions that read and write through it — for a Laravel application reading its .env, for WordPress reading wp-config.php, or with credentials you paste in for anything else. Hand-author only when your platform is none of those, or when you need behaviour the generated bridge does not cover. A hand-written bridge is safe from the wizard: it only overwrites a bridge file carrying its own marker.
💡
Everything on this page is shown in PHP against MySQL, because that is the reference implementation and the only combination the packaging pipeline fully supports. The pattern itself is language-agnostic and engine-agnostic: see "The bridge in other languages and other databases" for the gate in Node, Python, Go, Ruby, .NET and Java, the introspection query for PostgreSQL, SQL Server, SQLite and Oracle, and the MongoDB equivalent — along with the packaging constraint that decides how a non-PHP bridge reaches the operator.
Sikkerhedsmodellen, og hvorfor hver regel er der
Denne fil sidder i en offentlig webroot bag en delt nøgle. At enkelt faktum driver hver regel nedenfor. Må ikke slappe nogen af dem for at gøre din bro enklere.
Den opkaldende aldrig leverer SQL
Ikke en Where klausul, ikke en ORDER BY fragment, ikke et "bare denne ene gang" rå forespørgsel parameter. Den opkaldende navngiver en tabel, en kolonne og en værdi; din fil bygger erklæringen. Det øjeblik en opkaldet kan bidrage SQL tekst, en delt nøgle bliver vilkårlig database udførelse.
Table and column names are validated against information_schema
Identifikatorer kan ikke være bundet som parametre, så de skal kontrolleres i stedet. Læs den rigtige tabel og søjleliste for DETTE database og afvis noget der ikke er på det. En identifikator, der ikke virkelig er et objekt i dette skema, kan da slet ikke nå frem til en forespørgsel - hvilket gør det sikkert at afsløre hver tabel.
Hver værdi er en bundet parameter
Uden undtagelse, herunder værdier i en søgning. Validerede identifikatorer plus bundne værdier er det par, der gør overfladen total og indsprøjtningsoverfladen nul.
Læger er universelle, skriver er allo- listet
Det er reglen, folk vil springe over.
Hemmelige kolonner redigeres på læse og afvises på skrive
Match on column NAME: password, remember_token, secret, api_key, private_key, salt, token. Replace the value with a placeholder on the way out. Refuse the write entirely on the way in — writing a raw password hash is not an operation, it is a footgun. Send the operator to the platform's own password flow.
Sletter er enkelt- række, ved primær nøgle
Aldrig en bulk slette, aldrig et slete ved filter. En bulk fjernelse er, hvordan en database dør. Hvis nogen virkelig har brug for en, kan de gøre det på platformen.
Læder er roe- soked
Klemme grænsen parameter med et hårdt loft. En runaway forespørgsel må ikke være i stand til at dumpe databasen gennem en chat-besked.
Fejl lukket indtil nøglen er sat
En ukonfigureret bro svarer 403 til alt. En bro, der er hjælpsom før den er konfigureret, er en bro, som var nyttig for en fremmed.
Konstant- time tastekomparation, nøgle i en header
hash_equals, never ==. The key goes in X-Opsiq-Bridge-Key, not the query string, so it stays out of access logs, proxy logs and Referer headers.
ET
En metode, en form, intet at smugle i et organ. Alt broen gør er udtryksfuldt som et GET med validerede parametre, og OpsIQ er den eneste opkaldskilde.
Læser universal, skriver loft- listet - og hvorfor
Dette er reglen der bliver argumenteret med, så her er begrundelsen i fuld udstrækning. Assistenten skal kunne se hele platformen: det er hvad der gør den nyttig, og en læsning kan ikke ødelægge noget. Skrifter er forskellige. Denne fil sidder i en offentlig webroot bag en delt nøgle. Hvis denne nøgle lækker, en ubegrænset skrive overflade gør lækage svarende til fuld databasekontrol - en ny admin bruger, en tom bookingtabel. En tillo- liste betyder en lækket nøgle stadig ikke kan nå et bord operatøren aldrig aktiveret.
⚠️
OpsIQ godkendelseskortet låser AI, ikke nøglen. Admin klikke Tillad på en destruktiv handling er en kontrol over assistenten. Det er ikke en kontrol af hvem der har broen nøgle. De er to forskellige trusler, og tillow- listen er svaret på den anden.
Operator- front knop, fra Botble bro
/* ── WRITE ALLOW-LIST — which tables the assistant may CHANGE here.
*
* READS are unrestricted: the assistant can see every table in the platform.
* WRITES are limited to this list, because this file sits in a PUBLIC webroot
* behind ONE shared key — an allow-list means that even a leaked key cannot
* reach a table you never enabled (no new admin users, no emptied bookings).
*
* Comma-separated table names. Add tables as you need them — e.g. append
* ',pages,posts' to let the assistant edit site content. Set it to '*' to
* allow every table, deliberately. Empty falls back to the hotel defaults. ── */
const OPSIQ_WRITE_TABLES = 'ht_bookings,ht_booking_rooms,ht_booking_addresses,ht_rooms,ht_room_types,ht_customers,customers';
To detaljer i nedenstående kontrol er nemme at få forkert. Tabelnavnet ankommer allerede RESOLVED, der bærer installationens bordpræfiks, mens en operatør skriver loft- list upræfixed fordi det er hvad de naturligt ville skrive. Sammenlign begge måder eller en forudfastsat installation lydløst tillader intet og hver skrivning pauser. Og afvisningen skal forklare sig selv, fordi den person, der læser det er en admin i et chat- vindue, ikke en udvikler med en stak spor.
The allow-list check, verbatim from marketplace_connectors/botble/bridge/opsiq-botble-bridge.php
/** Tables a WRITE may touch. Empty = the built-in defaults. */
$writeAllowed = static function (string $table) use ($prefix): bool {
$raw = trim((string)(defined('OPSIQ_WRITE_TABLES') ? OPSIQ_WRITE_TABLES : ''));
if ($raw === '') $raw = 'ht_bookings,ht_booking_rooms,ht_rooms,ht_customers,customers';
if (trim($raw) === '*') return true; // explicit opt-in to everything
$bare = ($prefix !== '' && stripos($table, $prefix) === 0) ? substr($table, strlen($prefix)) : $table;
foreach (explode(',', $raw) as $t) {
$t = trim($t);
if ($t === '') continue;
if (strcasecmp($t, $table) === 0) return true;
if (strcasecmp($t, $bare) === 0) return true;
if ($prefix !== '' && strcasecmp($prefix . $t, $table) === 0) return true;
}
return false;
};
/** One refusal, one explanation — used by every write op. */
$requireWritable = static function (string $table) use ($writeAllowed): void {
if ($writeAllowed($table)) return;
opsiq_bridge_out(['success' => false, 'error' =>
'write_not_allowed: "' . $table . '" is not in this bridge\'s write allow-list. '
. 'Reads are unrestricted. To permit writes here, add the table to OPSIQ_WRITE_TABLES '
. 'in opsiq-botble-bridge.php (or set it to "*" to allow every table).'], 403);
};
Porten, i fuld
Fire kontroller i denne rækkefølge, før noget rører data. Kopiér ordren samt checks.
De fire gate checks, i rækkefølge
<?php
declare(strict_types=1);
/* ── EDIT THIS: a long random secret (40+ chars). Empty = bridge OFF. ── */
const OPSIQ_BRIDGE_KEY = '';
header('Content-Type: application/json; charset=utf-8');
header('Cache-Control: no-store');
function opsiq_bridge_out(array $payload, int $code = 200): void
{
http_response_code($code);
echo json_encode($payload, JSON_UNESCAPED_SLASHES);
exit;
}
/* 1. Fail closed. An unconfigured bridge answers nothing to anyone. */
if (OPSIQ_BRIDGE_KEY === '' || strlen(OPSIQ_BRIDGE_KEY) < 24) {
opsiq_bridge_out(['success' => false, 'error' => 'bridge_not_configured'], 403);
}
/* 2. One method. */
if (strtoupper((string)($_SERVER['REQUEST_METHOD'] ?? '')) !== 'GET') {
opsiq_bridge_out(['success' => false, 'error' => 'method_not_allowed'], 405);
}
/* 3. Constant-time key comparison, key from a header (never the query string). */
$given = (string)($_SERVER['HTTP_X_OPSIQ_BRIDGE_KEY'] ?? '');
if ($given === '' || !hash_equals(OPSIQ_BRIDGE_KEY, $given)) {
opsiq_bridge_out(['success' => false, 'error' => 'forbidden'], 403);
}
/* 4. Only now read credentials and connect. */
Validating identifiers against information_schema
Dette er det stykke, der vender "assistenten kan nå enhver tabel" fra hensynsløs til sikker. Løs den opkalders bordnavn mod den virkelige skema, tolerere en manglende eller ekstra bord præfiks, og returnere null for noget andet. Alt nedstrøms derefter arbejder med et navn, der beviseligt eksisterer.
Identifikationsvalidering og redhandling, ordret fra Botble-broen
/** Real tables in THIS database — the allow-list, straight from the DB. */
$allTables = static function () use ($pdo, $db): array {
static $cache = null;
if ($cache !== null) return $cache;
$st = $pdo->prepare('SELECT TABLE_NAME FROM information_schema.TABLES WHERE TABLE_SCHEMA = ? ORDER BY TABLE_NAME');
$st->execute([$db]);
return $cache = array_map('strval', $st->fetchAll(PDO::FETCH_COLUMN));
};
/** Resolve a caller-supplied table name to a REAL one, or null. */
$resolveTable = static function (string $name) use ($allTables, $prefix): ?string {
$name = trim($name);
if ($name === '' || !preg_match('/^[A-Za-z0-9_]+$/', $name)) return null;
$tables = $allTables();
foreach ($tables as $t) if (strcasecmp($t, $name) === 0) return $t;
/* Tolerate a missing or extra table prefix. */
foreach ($tables as $t) {
if (strcasecmp($t, $prefix . $name) === 0) return $t;
if ($prefix !== '' && strcasecmp($prefix . $t, $name) === 0) return $t;
}
return null;
};
/** Column introspection: table => [column => true]. Cached per request. */
function opsiq_bridge_columns(PDO $pdo, string $db, string $table): array
{
static $cache = [];
if (isset($cache[$table])) return $cache[$table];
$stmt = $pdo->prepare('SELECT COLUMN_NAME FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = ? AND TABLE_NAME = ?');
$stmt->execute([$db, $table]);
$cols = [];
foreach ($stmt->fetchAll(PDO::FETCH_COLUMN) as $c) $cols[strtolower((string)$c)] = true;
return $cache[$table] = $cols;
}
/** Columns whose VALUES must never leave the platform. */
$secretCol = static function (string $c): bool {
return (bool)preg_match('/(^|_)(password|remember_token|secret|api_key|private_key|salt|token)($|_)/i', $c);
};
/** Columns a write may never touch — auth material. */
$writeBanned = static function (string $c): bool {
return (bool)preg_match('/(^|_)(password|remember_token)($|_)/i', $c);
};
/** Strip secret values from a row before it leaves the server. */
$redact = static function (array $row) use ($secretCol): array {
foreach ($row as $k => $v) if ($secretCol((string)$k)) $row[$k] = '[redacted]';
return $row;
};
En læse op og en skrive op, komplet
Note what is bound and what is validated. The filter column is checked against the real column list and then interpolated as an identifier; its value is bound. The limit is clamped. Rows are redacted on the way out. The update refuses the primary key and any auth column, and stamps updated_at when the table has one.
Læs alle tabeller - validerede identifikatorer, bundne værdier, afdækkede rækker
case 'query': {
$t = $resolveTable((string)($_GET['table'] ?? ''));
if ($t === null) opsiq_bridge_out(['success' => false, 'error' => 'unknown_table'], 404);
$cols = opsiq_bridge_columns($pdo, $db, $t);
if (!$cols) opsiq_bridge_out(['success' => false, 'error' => 'unknown_table'], 404);
$sql = "SELECT * FROM `$t` WHERE 1=1";
$args = [];
/* Equality filter: column must be REAL, value is bound. */
$wc = strtolower(trim((string)($_GET['where_column'] ?? '')));
if ($wc !== '') {
if (!isset($cols[$wc])) opsiq_bridge_out(['success' => false, 'error' => 'unknown_column: ' . $wc], 400);
$sql .= " AND `$wc` = ?";
$args[] = (string)($_GET['where_value'] ?? '');
}
/* Ordering: column validated, direction from a fixed pair. */
$ob = strtolower(trim((string)($_GET['order_by'] ?? '')));
if ($ob !== '' && isset($cols[$ob])) {
$dir = strtoupper(trim((string)($_GET['order'] ?? 'DESC'))) === 'ASC' ? 'ASC' : 'DESC';
$sql .= " ORDER BY `$ob` $dir";
} elseif (isset($cols['id'])) {
$sql .= " ORDER BY `id` DESC";
}
/* Hard row cap. */
$lim = (int)($_GET['limit'] ?? 25);
if ($lim < 1) $lim = 25;
if ($lim > 200) $lim = 200;
$off = max(0, (int)($_GET['offset'] ?? 0));
$sql .= " LIMIT $lim OFFSET $off";
$st = $pdo->prepare($sql);
$st->execute($args);
$rows = array_map($redact, $st->fetchAll());
opsiq_bridge_out(['success' => true, 'data' => [
'table' => $t, 'returned' => count($rows), 'rows' => $rows,
]]);
}
Skriv én række - allo- listet tabel, nægtet auth kolonner, enkelt række ved primær nøgle
case 'record.update': {
$t = $resolveTable((string)($_GET['table'] ?? ''));
if ($t === null) opsiq_bridge_out(['success' => false, 'error' => 'unknown_table'], 404);
$requireWritable($t); // the allow-list, before anything else
$cols = opsiq_bridge_columns($pdo, $db, $t);
$pk = $primaryKey($t);
$id = (string)($_GET['id'] ?? '');
if ($id === '') opsiq_bridge_out(['success' => false, 'error' => 'id_required'], 400);
$set = json_decode((string)($_GET['set'] ?? ''), true);
if (!is_array($set) || !$set) opsiq_bridge_out(['success' => false, 'error' => 'set_json_required'], 400);
$frag = []; $args = [];
foreach ($set as $col => $val) {
$col = strtolower(trim((string)$col));
if (!isset($cols[$col])) opsiq_bridge_out(['success' => false, 'error' => 'unknown_column: ' . $col], 400);
if ($writeBanned($col)) opsiq_bridge_out(['success' => false, 'error' => 'refused: "' . $col . '" is auth material - change it through the platform own password flow, never by direct write.'], 400);
if ($col === $pk) opsiq_bridge_out(['success' => false, 'error' => 'refused: the primary key cannot be rewritten.'], 400);
if (is_array($val) || is_object($val)) $val = json_encode($val, JSON_UNESCAPED_SLASHES);
$frag[] = "`$col` = ?";
$args[] = ($val === null) ? null : (string)$val;
}
if (isset($cols['updated_at']) && !isset($set['updated_at'])) $frag[] = '`updated_at` = NOW()';
$before = $pdo->prepare("SELECT * FROM `$t` WHERE `$pk` = ? LIMIT 1");
$before->execute([$id]);
$prev = $before->fetch();
if (!$prev) opsiq_bridge_out(['success' => false, 'error' => 'not_found'], 404);
$args[] = $id;
$up = $pdo->prepare("UPDATE `$t` SET " . implode(', ', $frag) . " WHERE `$pk` = ? LIMIT 1");
$up->execute($args);
opsiq_bridge_out(['success' => true, 'data' => [
'table' => $t, 'id' => $id, 'changed' => $up->rowCount(),
'before' => $redact(array_intersect_key($prev, $set)),
]]);
}
Overlevelsesforskelle i skema
Platform versioner er forskellige. Kolonner flytte, få omdøbt, eller er fraværende. En bro, der antager et skema arbejder på en installation. Orientering og tilpasse i stedet: Vælg kun de kolonner, der findes her, tolerere tabellen præfiks, og prøv plausible stavelser af en reference.
Schema tolerance, fra Botble broen
/* Only ever select columns that exist on THIS install. */
$pick = static function (array $cols, array $wanted, string $alias = 'b'): string {
$out = [];
foreach ($wanted as $c) if (isset($cols[$c])) $out[] = "`$alias`.`$c`";
return $out ? implode(', ', $out) : "`$alias`.*";
};
/* References vary: stored with or without a leading "#", with or without an
* operator-configured alpha prefix, or only as a numeric id. Try every
* plausible form — the PROOF match is what actually gates disclosure, so
* tolerant matching here is safe. */
$refCandidates = [$ref, '#' . $ref];
$digitsOnly = preg_replace('/\D+/', '', $ref);
if ($digitsOnly !== '' && $digitsOnly !== $ref) {
$refCandidates[] = $digitsOnly;
$refCandidates[] = '#' . $digitsOnly;
}
$refCandidates = array_values(array_unique($refCandidates));
💡
Giv din bro en op = diag, der kun rapporterer struktur - hvilke tabeller løst, som kolonner hovedtabellen har, og SHAPE af den nyeste reference med hvert ciffer maskeret. Det er tastet- gated ligesom alt andet, og det vender "opslag ikke finde noget" fra en støtte billet til et ten- sekund svar. Aldrig lade det vende tilbage reelle optegnelser.
Ensartede fejl og optællingsfælden
En form for alt
Success is {"success":true,"data":{...}}. Failure is {"success":false,"error":"snake_case_reason"}. Your Client.php and every action then have exactly one response shape to handle.
Ikke-fundet og ikke-match skal være identiske
På en opslagsside skal en reference, der ikke findes, og en reference hvis bevis ikke matcher, give SAME-svaret. Forskellige svar gør din bro til et orakel, der bekræfter hvilke referencer der er reelle, hvilket er en gratis kundeliste eksport for enhver patient.
Læk aldrig årsagen til en besøgende
Broen kan være præcis medOpsIQ. Hvad når en besøgende er besluttet afOpsIQ, i et fast afslag.
Den kopierbare fil i konnektor panelet
Operatøren åbner aldrig dit lager.OpsIQog tryk på Kopi. Denne kopi kommer fra indstillinger.jsonog det skal være det samme program som bridge / * .php.
settings.json - panelindgang til en broforbindelse
{
"settings": [
{ "key": "base_url", "label": "API base URL", "type": "text", "required": true },
{ "key": "api_key", "label": "Bridge key", "type": "password", "required": true,
"autogenerate": true,
"help": "Auto-generated the moment you enable the connector. It must match OPSIQ_BRIDGE_KEY inside the bridge file; the copyable file below already carries this value once saved." }
],
"webhook_help": {
"title": "One file, three surfaces",
"body": "This platform has no public REST API, so this ONE file IS the API. Copy it into the site PUBLIC webroot, keeping the filename.",
"snippet_filename": "opsiq-yourplatform-bridge.php (drop next to the site index.php)",
"snippet_template": "<?php\n/* ... the whole bridge file ... */\nconst OPSIQ_BRIDGE_KEY = \u0027{{setting:api_key}}\u0027;\n..."
}
}
{{setting:key}} carries live values
The connector panel substitutes {{setting:<key>}} in the snippet with that connector's saved value, so the copied file already contains the operator's generated bridge key and needs no hand-edit. An empty or unsaved setting leaves the token visible, so the operator can see exactly what is still missing.
Andre pladsholdere er substitueret serverside
Uafhængigt af det...{webhook_url}, {webhook_path}, {webhook_secret}, {site_key}, {base_url}og{slug}er udfyldt, før panelet nogensinde ser den snuppet.
webhook_help may be one object or a list
En liste giver dig flere snuppets i et panel, f. eks. en bro fil og en separat relæ krog.
🚫
Hold ikke på snavs i hånden. Brofilen og panelkopierne er to kopier af et program, og de vil drive - en bro blev opgraderet og dens panel kopi var ikke, så alle, der geninstalleret og kopieret fra panelet installeret den gamle bro og lydløst mistet hver ny kapacitet. Intet opdaget det: overensstemmelse bestået, signaturer bestået, test bestået.
Hold de to kopier identiske
# Regenerate every package's panel snippet from its bridge file
php tools/sync_connector_bridge_snippets.php --apply
# Show what would change, without writing
php tools/sync_connector_bridge_snippets.php
Drift is now a failing conformance check, not a support ticket: the verifier compares the two line by line (ignoring the {{setting:...}} placeholders, which are supposed to differ) and names the first line that differs. Run the sync tool as the last step before every release, right before signing.
Hvad broen skal afsløre
Formerede operationer og en universel dataoverflade, sammen. De formede returnerer ryddige, målrettet-byggede svar på de spørgsmål folk faktisk stille; de universelle dem dækker alt andet, så assistenten aldrig sidder fast.
Formerede udtryk
statistik, hovedobjektlisten med filtre, et objekt med tilhørende rækker, kataloget over det der sælges, kundesøgning med historie. Disse giver AI et godt svar i ét opkald i stedet for fem.
Formerede skriverName
De to eller tre tilstand ændringer, der betyder - sæt status, annullere. Hold de accepterede værdier tilload- listet.
Universal opdagelse
tabeller (med række tæller) og beskrive (kolonner, typer, primær nøgle, plus læsbare og skrivbare flag per kolonne).
Universal læse og skrive
forespørgsel, record. get, record. create, records. update, recog. delete. hver enkelt af dem valideret som vist ovenfor.
Identitet, før nøgleporten
Identitetssuber kaldes af ADMIN 'S BROWSER, same-oprindelse, så de ikke kan sende en brugerdefineret header. Deres godkendelse er selve platformen session. Sæt dem foran tastetaten, holde dem væk fra alle record data, og aldrig lade dem returnere en hemmelighed. Se konnektor identitet side.
Diagnostik
op=diag, structure only, masked.
💡
En read- only connector behøver ingen allow- liste overhovedet. Hvis din platform kun nogensinde besvarer spørgsmål, sende en bro uden skrive ops og hele klassen af skrive risiko forsvinder. Tilføj skriver, når nogen beder om dem.
Checklist før du sender en bro
Broen nægter alt uden nøglesæt
Test det. Omdøb konstant til tom og bekræfte hver op svar 403.
En forkert nøgle afvises i konstant tid
hash_equals, and the key read from the header only.
Et made- up tabelnavn afvises
Og et rigtigt bordnavn med forkert præfiks løser stadig.
En kodeordskolonne vises aldrig i en læse
Og en skrive, at navne et er nægtet med en forklaring.
En skrive til en tabel uden for tillodslisten er nægtet
Med beskeden, der fortæller operatøren, hvordan man udvider den.
Panelets snuppet matcher brofilen
php tools/sync_connector_bridge_snippets.php reports it in step.
Geninstallation af stikket er ikke nok
Hvis din pakke sender en brofil, skal en operatør, der opgraderer stikket, også genindsætte filen i deres webroot. Sig det i panelet og i din CHANGELOG, hver udgivelse.
Connectorer
Broen på andre sprog og andre databaser
Bromønsteret er ikke et PHP mønster.OpsIQopkald er en HTTP endpoint, så filen kan være Node, Python, Go, Ruby, .NET eller Java, og butikken bag det kan være enhverSQLmotor ellerMongoDB. Hvad er PHP-formet er emballage rørledning, og denne begrænsning afgør, hvordan din bro når operatøren. Læs den levering sektion først: det er den del, der overrasker folk.
Hvad stikket faktisk kræver
Det er hele kontrakten, intet i den nævner et sprog.
Transport
HTTPS. One GET request per opkald. Ingen krop, ingen anden metode.
Godkendelse
En fælles hemmelighed i X-Opsiq-Bridge-Key forespørgsel header, sammenlignet i konstant tid. Ikke en forespørgselsparameter, ikke en cookie, ikke Basic Auth.
Parametre
- Spørgestreng. op angiver overfladen do Angiver operationen, resten er operationens argumenter.
Respons
JSON. {"success":true,"data":{...}} eller {"success":false,"error":"snake_case_reason"}. CONTECT- Type ansøgning / json, og ingen caching.
Statuskoder
200om succes.403ukonfigureret eller forkert nøgle404er ikke fundet405forkert metode400dårligt argument501ikke understøttet på dette skema.
Det er alt
Ingen rammer, ingen runtime, intet OpsIQ bibliotek på din side. Hvis det kan tjene det, kan det være en bro.
Levering: hvad der kan leve i bro /, og hvad der ikke må
Den signerede pakke dækker en fast liste over filudvidelser, og en fil uden for denne liste er udeladt af ZIP. En bro på et sprog listen ikke dækker derfor kan ikke skib inde i pakken - men det kan ikke længere forsvinde på dig enten.26August2026en fil i bridge/ at pakkeren ville falde er en hård overensstemmelse fiasko, så pakken nægter at passere i stedet for at installere uden bro i det.
Hvordan en bro / mappe behandles ved byggetid
bridge/bridge.php -> SHIPPED, and drift-checked against the panel snippet
bridge/server.js -> SHIPPED, and drift-checked against the panel snippet
bridge/bridge.py -> REFUSED at conformance: "Bridge files are packaged" FAILS
bridge/bridge.rb -> REFUSED at conformance
bridge/main.go -> REFUSED at conformance
bridge/Bridge.cs -> REFUSED at conformance
bridge/Bridge.java -> REFUSED at conformance
PHP og JavaScript - fuldt understøttet
Filskibene i det underskrevne ZIP, og den snuppet verifikator holder din panel kopi byte- identisk med det, uanset af de to det er. Drivkontrollen læser hver fil i bro /, ikke kun PHP dem, så en opgraderet bro med en gammel panel kopi mislykkes bygningen på begge sprog.
Alt andet - kun gennem panelet
The panel snippet is plain text with no idea what language it holds, so it works for any stack. Put the whole program in webhook_help.snippet_template, name the file in snippet_filename, and do NOT leave a copy in bridge/ — conformance will refuse the package rather than ship it hollow. Say plainly in webhook_help.body that the operator copies this file rather than getting it from the package.
Hvis du virkelig har brug for et andet sprog i pakken
Widen PackageSigner::EXTENSIONS deliberately, then re-sign and re-seed. That is a decision about what executable code Nabtech distributes, so make it on purpose — do not discover it from a missing file.
💡
Angiv filen i webhook_help.snippet_filename når din pakke sender mere end én bro. Det er sådan, verifikatoren ved hvilken bro en panelkopi tilhører; uden det, en tvetydig parring rapporteres som en overensstemmelsesadvarsel og at snuppet er efterladt ukontrolleret.
⚠️
Pointen med drift kontrol er, at en bro fil og dens panel kopi er to kopier af et program og vil aflede. Regenerate snarere end hånd- redigere: php tools/sync_connector_bridge_snippets.php --apply, og så genunderskrive pakken.
Porten, på seks sprog
Samme fire kontroller i samme rækkefølge overalt: mislykkes lukket med ingen nøgle, én metode, constant- time tastekomparation fra header, derefter tilslutte. Den eneste rigtige fælde er sammenligningen, og det er en anden fælde i hvert sprog.
⚠️
Sammenlign share-256fordampning af de to nøgler i stedet for selve nøglerne. Det er korrekt på alle sprog, og det sidestiller det faktum, at flere konstant- tid sammenligningerne enten kaste eller lække på en længde mismatch - Nodes timingSafeEqual rejser en RangeError, når bufferne varierer i længden, hvilket gør en forkert nøgle til en500i stedet for en403.
# Python — Flask
import hashlib, hmac, os
from flask import Flask, request, jsonify
app = Flask(__name__)
BRIDGE_KEY = os.environ.get("OPSIQ_BRIDGE_KEY", "") # empty = bridge OFF
def same_key(a: str, b: str) -> bool:
return hmac.compare_digest(
hashlib.sha256(a.encode()).digest(),
hashlib.sha256(b.encode()).digest(),
)
def out(payload, code=200):
resp = jsonify(payload)
resp.status_code = code
resp.headers["Cache-Control"] = "no-store"
return resp
@app.before_request
def gate():
if len(BRIDGE_KEY) < 24:
return out({"success": False, "error": "bridge_not_configured"}, 403)
if request.method != "GET":
return out({"success": False, "error": "method_not_allowed"}, 405)
given = request.headers.get("X-Opsiq-Bridge-Key", "")
if not given or not same_key(BRIDGE_KEY, given):
return out({"success": False, "error": "forbidden"}, 403)
Go, Ruby, . NET og Java - den samme sammenligning
// Go
func sameKey(a, b string) bool {
ha := sha256.Sum256([]byte(a))
hb := sha256.Sum256([]byte(b))
return subtle.ConstantTimeCompare(ha[:], hb[:]) == 1
}
func gate(next http.HandlerFunc) http.HandlerFunc {
return func(w http.ResponseWriter, r *http.Request) {
w.Header().Set("Content-Type", "application/json; charset=utf-8")
w.Header().Set("Cache-Control", "no-store")
key := os.Getenv("OPSIQ_BRIDGE_KEY")
if len(key) < 24 { out(w, 403, "bridge_not_configured"); return }
if r.Method != http.MethodGet { out(w, 405, "method_not_allowed"); return }
given := r.Header.Get("X-Opsiq-Bridge-Key")
if given == "" || !sameKey(key, given) { out(w, 403, "forbidden"); return }
next(w, r)
}
}
// Ruby
def same_key?(a, b)
OpenSSL.secure_compare(Digest::SHA256.digest(a.to_s), Digest::SHA256.digest(b.to_s))
end
// C# / .NET
static bool SameKey(string a, string b) =>
CryptographicOperations.FixedTimeEquals(
SHA256.HashData(Encoding.UTF8.GetBytes(a)),
SHA256.HashData(Encoding.UTF8.GetBytes(b)));
// Java
static boolean sameKey(String a, String b) throws Exception {
MessageDigest d = MessageDigest.getInstance("SHA-256");
return MessageDigest.isEqual(d.digest(a.getBytes(UTF_8)), d.digest(b.getBytes(UTF_8)));
}
Validering af identifikatorer på hver databasemotor
Sikkerhedselementet ændres ikke: en tabel eller kolonne navn den kaldende skal kontrolleres mod det rigtige skema før det interpoleres, og hver værdi skal være en bundet parameter. Kun introspektion forespørgsel, citationstegn og personsøgningsklausul forskellige.
MySQLogMariaDB
Tabel: SELECT TABLE_NAME FROM information_schema.TABLES WHERE TABLE_SCHEMA = ?. Kolonner: det samme mod information_schema.COLUMNS med AND TABLE_NAME = ?. Citat med bagticks, fordobling af enhver bagtik indeni. Side med LIMIT n OFFSET m.
PostgreSQL
Same information_schema views, lower-case names, WHERE table_schema = $1 (sædvanligvis) public). Citat med dobbelt citater, fordobling enhver dobbelt citat indeni. Side med LIMIT n OFFSET m. Se foldereglen: en ikke citeret identifikator er foldet til lavere tilfælde, så sammenlign case- insensitively når du løser et navn.
SQL Server
Same INFORMATION_SCHEMA views. Quote with square brackets, doubling any closing bracket inside. Paging needs an ORDER BY: ORDER BY [id] DESC OFFSET @o ROWS FETCH NEXT @n ROWS ONLY.
SQLite
Tabel: SELECT name FROM sqlite_master WHERE type = 'table' AND name NOT LIKE 'sqlite_%'. Kolonner: SELECT name FROM pragma_table_info(?) - anvende den bordværdsat form, fordi PRAGMA table_info(x) statement kan ikke tage en bundet parameter og indbydende streng interpolation der er præcis det hul, du forsøger at lukke. Citat med dobbelte citater. Side med LIMIT n OFFSET m.
Oracle
Tabel: SELECT TABLE_NAME FROM ALL_TABLES WHERE OWNER = :owner; kolonner fra ALL_TAB_COLUMNS. Citat med dobbelte citater, og husk en ikke citeret identifikator folder til UPER tilfælde, det modsatte af PostgreSQL. Side med OFFSET :o ROWS FETCH NEXT :n ROWS ONLY på 12c og senere.
MongoDB
Ingen SQL, så ingen identifikation interpolation og ingen bundne parametre - en anden disciplin for samme mål. Se nedenfor.
Forespørgslen om introspektion pr. motor
-- MySQL / MariaDB
SELECT TABLE_NAME FROM information_schema.TABLES WHERE TABLE_SCHEMA = ?;
SELECT COLUMN_NAME FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = ? AND TABLE_NAME = ?;
-- PostgreSQL
SELECT table_name FROM information_schema.tables WHERE table_schema = $1;
SELECT column_name FROM information_schema.columns WHERE table_schema = $1 AND table_name = $2;
-- SQL Server
SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = @schema;
SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = @schema AND TABLE_NAME = @table;
-- SQLite
SELECT name FROM sqlite_master WHERE type = 'table' AND name NOT LIKE 'sqlite_%';
SELECT name FROM pragma_table_info(?);
-- Oracle
SELECT TABLE_NAME FROM ALL_TABLES WHERE OWNER = :owner;
SELECT COLUMN_NAME FROM ALL_TAB_COLUMNS WHERE OWNER = :owner AND TABLE_NAME = :tbl;
💡
Løs, og brug derefter RESOLVED-navnet. Send aldrig den opkaldsdømmende stavning igennem til forespørgslen selv efter at have kontrolleret det - se det rigtige navn op i listen du læser fra skemaet og interpolere det. Det koster ingenting og lukker kløften mellem "dette navn matchede noget" og "dette er det navn jeg er ved at køre".
MongoDB: de samme regler, udenSQL
Der er ingen spørgerække at injicere i, så folk antager der ikke er noget at beskytte. Der er: filterdokumentet. Passing opkald-leveret JSON direkte ind find() lader en ringer sende {"$ne": null} eller {"$gt": ""} hvor du forventede en værdi, og stille vælge hvert dokument. Byg filteret selv.
// Node + the official driver
const names = (await db.listCollections({}, { nameOnly: true }).toArray()).map(c => c.name);
function resolveCollection(given) {
if (!/^[A-Za-z0-9_.-]+$/.test(given || "")) return null;
return names.find(n => n.toLowerCase() === String(given).toLowerCase()) || null;
}
const coll = resolveCollection(q.collection);
if (!coll) return out(res, { success: false, error: "unknown_collection" }, 404);
// Build the filter from a validated field and a SCALAR value. Never spread
// caller JSON into it: {"$ne":null} would match every document.
const filter = {};
if (q.where_field) {
if (!/^[A-Za-z0-9_.]+$/.test(q.where_field))
return out(res, { success: false, error: "unknown_field: " + q.where_field }, 400);
filter[q.where_field] = String(q.where_value ?? ""); // String() is the guard
}
// Projection is the redaction allow-list: drop secrets, never return them.
const projection = { password: 0, remember_token: 0, api_key: 0, secret: 0, token: 0 };
const limit = Math.min(Math.max(parseInt(q.limit ?? "25", 10) || 25, 1), 200);
const rows = await db.collection(coll)
.find(filter, { projection })
.limit(limit)
.skip(Math.max(0, parseInt(q.offset ?? "0", 10) || 0))
.toArray();
Indsamlingsnavne kommer fra listCollections
That is your information_schema. Resolve the caller's spelling against it and use the resolved name.
Tving hver filterværdi til en skalar
Et strygepunkt () eller et tal () omkring det er hele forsvaret mod sprøjteapparat. Et dokument, hvor du forventede en værdi er NoSQL ækvivalent med et omstrejfende tilbud.
Projicering er reglen om, at der skal ske en ændring
Ekskl. sekreter-formede felter i projektion, så de aldrig forlade serveren, snarere end at slette dem fra resultatet bagefter.
Deletes stay single-document by _id
deleteOne with a resolved _id. Never deleteMany, and never a filter the caller influenced.
Skrifttyper ophold low- listed
Samme ræsonnement som SQL: Nævn de samlinger, en skrive kan røre ved, og afvise resten med en forklaring.
Identitetsendepunktet på andre sprog
Identitetssonden er den anden halvdel af en bro, og det er HTTP også. Underskriftsblokken er identisk på alle sprog: base64url nyttelasten, HMAC-SHA256 at strengen, slutte sig til en prik.
✅
Du må ikke hånd- skrive dette fra bunden. Indstillinger, Support Portal allerede bærer en klar snuppet katalog til PHP, Laravel,WordPress, WHMCS, Node med og uden afhængigheder, Flask og FastAPI, Django, .NET, Ruby på Rails, Java Spring Boot og Go. Tag signer fra den smag, der matcher din stak.
Hvad skal du ændre, når du genbruger det
Those snippets mint a PORTAL handoff token, which is deliberately stricter: it carries jti and single_use:true and lives about 120 seconds because it travels in a URL. A bridge or widget identity token carries neither of those and uses a longer exp, minutes to hours.
Hvad der forbliver det samme
site_key, iat, exp and a top-level authenticated:true, plus an admin or customer subject with an id and a username or email. Same claims, same signature, same secret.
Begge symbolformer verificeres
En tre-del JWT underskrevet HS256 værker, og det samme gør to-del base64url nyttelast plus hexHMACat PHP-referencen udsender. Brug det sprog, bibliotekerne gør naturligt - et JWT bibliotek er normalt den kortere sti udenfor PHP.
Mynt den aldrig i browseren
Sandt på alle sprog. Sigtning klient- side betyder forsendelse af webstedet hemmelighed for enhver besøgende.
Valg, ærligt
Platformen er PHP
Skriv broen i PHP. Den leveres i pakken, den er køre- check- checket, og det kan starte platformens egne rammer til at læse en live session for identitetssonden. Intet andet giver dig alle tre.
Platformen er Node
A . js bro skibe, tegn og er drift- kontrolleres præcis som en PHP et. Intet er opgivet.
Platformen er Python, Ruby, Go, . NET eller Java
Levere gennem panelet snuppet og sige det i panelet krop; ikke efterlade filen i bro /, hvor overensstemmelse vil afvise pakken. Forbindelsen er ellers helt normal: handlinger, kontekstudbydere, identitet og gæst opslag alle arbejder det samme, fordi ingen af dem bekymrer sig om, hvad svar HTTP opkald.
Du kan ikke køre en proces på platformen vært
Så bromønsteret er ikke det rigtige værktøj. En bro eksisterer for at nå en platform indefra sin egen vært. Hvis du kun kan nå den udefra, skriver du en almindelig API stik mod hvilken overflade den gør afsløre.
⚠️
One more constraint worth planning around: an identity probe has to read the platform's login session, which usually means running inside the platform's own process or at least on its host with access to its session store. A bridge written in a different language from the platform can serve data comfortably and may still struggle to answer op=admin_identity. If that is your case, ship the data bridge in your language and the identity probe in the platform's.
Connectorer
Giv assistenten begge halvdele: aktioner OG kontekst
Dette er den mest almindelige ting mangler fra en forbindelse, der "virker, men er ubrugelig". Handlinger lader AI DO ting. Kontekstafsnit lade det vide ting. Et stik har brug for både, og de fleste spørgsmål en admin spørger bliver besvaret af kontekst, aldrig ved en handling. En forbindelse med perfekte handlinger og ingen sammenhæng udbyder vil sandfærdigt rapportere, at det ikke kan se noget.
De to halvdele
Handlinger - hvordan AI gør ting
Opdaget i handlinger.jsoneller returneres af registerActions (). Modellen vælger en, udfylder sine parametre, ogOpsIQudfører det. Handlinger er for verber: annullere denne reservation, åbne den billet, ændre denne status.
Kontekst afsnit - hvordan AI ved ting
"Hvor mange ordrer denne måned", "der er mine nyeste kunder",, "hvad sælger vi" alle løse gennem en kontekst opslag, og aldrig røre ved en handling overhovedet.
⚠️
Symtom for en manglende udbyder: Assistenten svarer "Ingen aktiveret stik leveret denne kontekst sektion", mens stikket er installeret, aktiveret og passerer sin forbindelse test. Intet er logget, intet fejl.
Ordforråd for det universelle afsnit
OpsIQ beder om sektioner med generisk navn. Dit job er at beslutte, hvad hver enkelt betyder på din platform og besvare det. En hotel booking IS hotellets ordre; et værelse IS, hvad hotellet sælger. Kort, ikke opfinde.
orders / pending_orders
Whatever a transaction is on your platform: orders, bookings, reservations, jobs, shipments. pending_orders is the same list filtered to the unfinished ones.
klienter
Kundelisten.
products
Hvad platformen sælger: produkter, værelser, planer, tjenester.
fakturering
Indtægter og penge-formet totaler, plus tal efter stat.
Brug disse når din platform virkelig har dem. Tving ikke en kortlægning - et ubesvaret afsnit er bedre end en forkert.
Alt andet din platform har
Deklarer din egen. En udbyder, der erklærer afsnit (): ['licenser', 'forsendelser'] har dem sammenlagt i den universelle lookup s tillock- liste, så platform- specifikke opslag bliver tilgængelige uden nogen kernekoncerner ændringer.
Fejlen, der koster en dag
En kontekstudbyder SKAL implementere grænsefladen. Registreringssystemet type- checks det, så en klasse, der blot LOOKS højre er sprunget - uden fejl, hvor som helst.
ContextProvider. php - kontrakten, fra Bottble referencepakken
use OpsIQ\Platform\ContextProviderInterface;
/* MUST implement ContextProviderInterface: ContextRegistry::collectAll()
* type-checks it, so a provider that merely LOOKS right is skipped and every
* section answers "No enabled connector supplied this context section" — the
* exact symptom, with no error anywhere. */
final class ContextProvider implements ContextProviderInterface
{
public function slug(): string { return 'yourplatform_context'; }
public function label(): string { return 'Your Platform (orders, customers, products)'; }
public function priority(): int { return 30; } // lower renders earlier
/** ADMIN only. The guest surface has its own provider and its own rules. */
public function surfaces(): array { return ['admin']; }
/** The universal section names this connector can answer. */
public function sections(): array
{
return ['orders', 'pending_orders', 'clients', 'products', 'billing'];
}
public function isAvailable(): bool
{
try {
$s = \OpsIQ\Connectors\ConnectorRegistry::getSettings('yourplatform') ?: [];
return trim((string)($s['base_url'] ?? '')) !== '' && trim((string)($s['api_key'] ?? '')) !== '';
} catch (\Throwable $e) {
return false;
}
}
public function build(array $ctx): string
{
$section = strtolower(trim((string)($ctx['section'] ?? '')));
$limit = max(3, min(50, (int)($ctx['limit'] ?? 20)));
$query = trim((string)($ctx['query'] ?? ''));
try {
switch ($section) {
case 'orders':
case 'pending_orders': return $this->orders($limit, $query, $section === 'pending_orders');
case 'clients': return $this->customers($limit, $query);
case 'products': return $this->products($limit);
case 'billing': return $this->billing();
}
} catch (\Throwable $e) {
return ''; // a provider must NEVER break prompt assembly
}
return '';
}
}
Registrer det fra stikket
Implementér ContextConnectorInterface og returnér dine udbydere fra contextProviders (). Forbindelsesklassen kan også implementere ContectProviderInterface direkte og blive registreret som sig selv.
Returnér almindelig tekst, ikke JSON
build () giver en tekstblok, der er sammenkoblet i prompten. Skriv den for en læser: en overskrift, derefter en linje per række.
Return "i stedet for at kaste
Fange dine egne undtagelser. En udbyder, der kaster er logget og sprunget, men vender tilbage "er kontrakten.
Bygherren kan ikke skrive afsnit () for dig
De genererede ContextProvider. php skibe sektioner (): array {return [];} og guiden har intet felt for det. Udfyld det i hånden - og husk, at genudgive fra guiden OVERWRITES filen. Kopiér dine redigeringer først.
⚠️
Angiv den sande TOTAL, ikke antallet af rækker du sendte. En side er ikke en total. En udbyder, der lister tyve rækker uden at sige så får assistenten trygt besvare "du har20bookinger "når platformen holder669. En billig COUNT og en eksplicit linje - "I ALT på fil:669(denne liste viser den nyeste20kun) "- er hele fix, og en selvsikker forkert optælling er værre end ingen optælling.
En sektionsblok, der ikke kan tælles forkert
$lines = ['YOUR PLATFORM — ORDERS (live, newest first)'];
$lines[] = 'TOTAL orders on file: ' . (int)$total
. ' (this list shows the newest ' . count($rows) . ' only — never count these rows to answer "how many")'
. ' | by status: ' . $byStatus;
foreach ($rows as $r) {
$lines[] = '#' . (int)$r['id'] . ' ' . $r['reference'] . ' | ' . $r['status']
. ' | amount ' . $r['amount'] . ' | ' . substr((string)$r['created_at'], 0, 16);
}
$lines[] = 'Use yourplatform_get_order (order_id) for the full record.';
return implode("\n", $lines);
Nævn dine handlinger, så OpsIQ kan fortælle læser fra skriver
OpsIQ classifies an action by the WORDS in its action_id, and it is deliberately conservative: anything it cannot recognise is treated as a write and demands an approval card. Get the verb right and a read just runs.
1
is_destructive or requires_confirmation wins
Hvis en af dem er indstillet, skal handlingen altid godkendes. Beslut dem ærligt - det er hvad der dækker admin 's godkendelseskort.
2
Et skrive ord hvor som helst i id gør det til en skrive
Write words are checked BEFORE read words, so a mixed name like get_and_sync_orders is classified as a WRITE. Pick one verb, put it first, and keep it clean: list_orders, get_customer, search_bookings, cancel_booking, set_order_status.
Only declare native_api if the platform really has one
The native_api capability registers a generic <slug>_api_call passthrough so the model can reach endpoints your typed actions do not cover. On a platform with no API it is worse than useless: the model keeps reaching for a tool that cannot succeed, instead of using the tools that can.
The Builder decides it from your data-access answer
Say the platform has an API and it declares native_api and emits the passthrough. Say it has none (bridge mode, or the "Platform with no API" profile) and it declares platform_bridge instead and strips native_api, so the two can never both be true. You no longer hand-edit this.
Hand-authored packages must still get it right
If you are writing the manifest yourself, declare exactly one of native_api or platform_bridge. Conformance treats platform_bridge as the escape hatch a bridge connector is expected to have, and the Builder refuses a spec that claims platform_bridge on an API connector.
Keep ai_api_reference.md honest either way
On a connector that declares native_api the admin brain heads that file with a line naming <slug>_api_call. Without native_api it is headed neutrally instead, so a bridge connector no longer advertises a tool it does not have. Describe your real surface — for a bridge, that is your op and do vocabulary, not a REST endpoint table.
Lær admin hjernen om din platform
Declare ai_brain_aware and ship two Markdown files. They are read from the INSTALLED package directory (opsiq/connectors/<slug>/) for ENABLED connectors only, and injected into the admin agent's system prompt.
ai_expertise_admin.md
Hvad denne platform IS, hvordan dens data er formet, hvad dets objekter kaldes, og de særheder, der ellers ville gøre assistenten gætte. Skriv det for en kompetent kollega, der aldrig har set platformen.
ai_api_reference.md
Den kallable overflade. For en bro stik dette er din op og gøre ordforråd med deres parametre, ikke en REST endpoint tabel.
Budget
Cirka6,000tegn, der opbevares pr. stik, og om24,000tegn for hele blokken på tværs af alle aktiverede stik. Over per- connector cap din fil er trunkeret; skal være koncise før truncator er.
Præcisionsbetaling
Disse filer er forskellen mellem den assistent, der bruger dine universelle bordværktøjer og besvare fra det forkerte afsnit, fordi intet nogensinde fortalte det disse værktøjer eksisterede.
💡
Begge filer skal være i pakken INSTALLED, ikke kun dit kildetræ. De er almindelige pakkefiler, så de er dækket af underskriften og sendes i ZIP - hvilket også betyder redigering en efter signeringen bryder seglet.
Connectorer
Identitet gennem en forbindelse: admin, kunde, portal
En underskriftskontrakt tjener tre overflader. Konnektorens opgave er at forvandle "der er logget ind på platformen" til en signeret tokenOpsIQkan kontrollere, og derefter at præsentere den verificerede emne iOpsIQstikket godkender aldrig nogen - platformen gør, og underskriften bærer på denne påstand.
De tre overflader, en signalerer
Admin - dit personale, inde i din bagende
En admin emne. Kontrolladningen belastninger inde i platformen admin panel og hver medarbejder er matchet til deres egen OpsIQ agent. Fuld walkough på admin widget side.
Kunde - en signed-in kunde, i klient chat
En kunde emne. Dette er hvad lader en logged- i kunden få deres HELE konto i stedet for en anonym opslag: hver ordre, fuld detalje, og enhver self-service handling du tillader.
Portal - et dybt link til støttekortet
The same claims plus jti and single_use, with a 120-second life, because the token travels in a URL and must be spendable once. Do not hand-roll this one: Settings, Support Portal carries a ready snippet per language, and the platform mints it for you when the account area runs on this server.
Lastkontrakten
Det er de påstande, verifikatorerne tjekker. Intet her er valgfrit, hvad et delvist eksempel ellers kunne antyde.
site_key
Top niveau. Skal svare til den lokalitetsnøgle for anmodningen, eller token er nægtet.
ex Kapitel 50
Top niveau, unix seconds. Exp skal være i fremtiden og efter iat. Et token mere end omkring et minut i fremtiden nægtes. Hold livet kort - minutter til timer.
bekræftet: true
Top niveau, ved siden af exp. Din platform påstand om, at et rigtigt menneske er logget ind.
platform
Top niveau. En kort snegl navngivning af oprindelsen. Anbefalet, og det lader en konnektor identitet udbyder fortælle sine egne tokens fra en anden platform s.
admin eller kunde
Et objekt navngivning emnet. Det skal bære en ikke-tom id, og et brugernavn eller en e-mail - per-admin adgang gate matcher dem. Inkluder både når du har begge.
OpsIQ har to token verifikatorer, og de var ikke identiske. At vide dette sparer dig en eftermiddag, fordi symptom ligner intet som årsagen.
Administratoren widget har sin egen verifikator
opsiq/embed/admin_ajax.php carries a local verifier that accepts the authenticated flag in either position. Conversation list, history and unread all go through it, so they authenticate fine.
Den delte verifikator er strengere
opsiq/includes/customer_identity_token_verify.php sits behind the chat stream and the core AJAX API. It historically required the flag at the TOP level.
Symptomet
Historie og samtaler virker. Hver chat tur svar "Admin login kræves". Det lyder præcis som en session fejl og er ikke: token mangler top-niveau flag.
Hvad nuværende kerne gør
Det accepterer nu flaget på øverste niveau ELLER inde i emnet, så kontrakten er ensartet. Ældre kerner læse kun det øverste niveau. Emit den kanoniske form og din pakke virker på hver udgivelse.
✅
This is machine-checked now. Any file in your package that mints identity tokens is statically scanned against the contract, and a payload the platform would refuse fails conformance with the exact file and line. Run it yourself: php tools/verify_identity_contracts.php.
Signed- i kunder i klient chat
To ting skal være sandt. Core skal stemple den verificerede kunde, og din konnektor skal præsentere det.
1
Din bro eller endpoint mints en kunde token
Samme tegn som admin-en, med et kundeemne. Læs kunden fra platformens egen session. Hvis din platform signerer kunderne ind på en anden vagt end administratorer, så læs den vagt du ønsker og aldrig falde tilbage på tværs af emner - det er sådan en kunde ville blive udleveret en admin token.
2
Kernen kontrollerer og stempler det
På en gyldig token, kerne stempler den verificerede emne i sessionen. Din udbyder læser en dokumenteret identitet; det aldrig autentificerer.
3
Din IdentityProvider præsenterer det
detectCustomer () returnererOpsIQform. Det skal implementeresOpsIQ\ Platform\ IdentityProviderInterface, eller registreringsdatabasen lydløst springer det - den samme fælde som den kontekst udbyder.
4
Your customer-scoped actions accept a customer_id
Og OpsIQ låser det til den bekræftede identitet før udførelse. Modellen kan ikke levere det.
IdentityProvider. php - læs den dokumenterede identitet, præsentere det i OpsIQ 's form
use OpsIQ\Platform\IdentityProviderInterface;
final class IdentityProvider implements IdentityProviderInterface
{
public function slug(): string { return 'yourplatform_identity'; }
public function label(): string { return 'Your Platform identity (bridge-signed identity_token)'; }
public function priority(): int { return 25; } // ahead of the generic session provider
public function isAvailable(): bool
{
try {
$s = \OpsIQ\Connectors\ConnectorRegistry::getSettings('yourplatform') ?: [];
return trim((string)($s['base_url'] ?? '')) !== '';
} catch (\Throwable $e) { return false; }
}
public function detectAdmin(): ?array
{
$row = $this->sessionRowFor('_opsiq_admin_identity');
if (!$row || !$this->isOurs($row)) return null;
return [
'id' => (int)($row['id'] ?? 0),
'name' => $this->displayName($row, 'Admin'),
'email' => (string)($row['email'] ?? ''),
'username' => (string)($row['username'] ?? ''),
'role' => (string)($row['role'] ?? ''),
'platform' => 'yourplatform',
'source' => 'yourplatform_identity_token',
];
}
public function detectCustomer(): ?array
{
$row = $this->sessionRowFor('_opsiq_customer_identity');
if (!$row || !$this->isOurs($row)) return null;
return [
'id' => (int)($row['id'] ?? 0),
'name' => $this->displayName($row, 'Customer'),
'email' => (string)($row['email'] ?? ''),
'phone' => (string)($row['phone'] ?? ''),
'platform' => 'yourplatform',
'source' => 'yourplatform_identity_token',
];
}
/* A session identity stamped by ANOTHER platform's token must not be
* claimed here. An empty platform is accepted because older bridges did
* not stamp one, and the site key already scoped the token. */
private function isOurs(array $row): bool
{
$p = strtolower(trim((string)($row['platform'] ?? '')));
return $p === '' || $p === 'yourplatform' || $p === 'remote';
}
private function sessionRowFor(string $key): ?array
{
if (session_status() !== PHP_SESSION_ACTIVE) return null;
$row = $_SESSION[$key] ?? null;
return (is_array($row) && (int)($row['id'] ?? 0) > 0) ? $row : null;
}
}
Brugerdefinerede handlinger: to låse, begge krævede
Modellen må aldrig vælge, hvis data den læser. OpsIQ håndhæver det på sin side, og din platform skal håndhæve det på den anden side også. En lås er en fejl væk fra en lækage; to låse er en kontrakt.
Lås1 — OpsIQoverskriver identitetsparametrene
Before a customer-chat action runs, OpsIQ replaces every identity-shaped parameter with the VERIFIED visitor identity: client_id, clientid, user_id, userid, customer_id, account_id take the verified numeric id; client_identifier, customer_identifier, account_identifier take it as a string; email, client_email, customer_email, user_email take the verified email. Whatever the model proposed is discarded.
Lås 2 - din platform re@-@ scope hver forespørgsel
Tag id du blev givet og tilføje det til den WHVOR klausul i hver læse og hver skrive på denne overflade. Aldrig stole på referencen i anmodningen på egen hånd. En signed-in kunde spørger om en andens ordre skal komme tilbage tom, ikke forbudt.
Nævn dine parametre, så lås 1 kan finde dem
Call it customer_id, not cust or ref. A parameter OpsIQ does not recognise is a parameter it cannot lock.
⚠️
Giv signed- i kundens overflade sin OWN operationer, adskilt fra admin dem, selv når SQL ligner. To overflader med forskellige regler forblive ærlige; en overflade med et flag bliver en lækage den dag nogen redigerer den forkerte gren.
Nulsidens ledningsføring: den sammenkoblingserklærede sonde
You can spare the operator all page wiring. Add an admin_identity_probe_url setting (https only) pointing at your identity endpoint. The plain admin-widget loader from Remote Sites, Codes then works with no page attributes at all: the widget discovers the endpoint through the connector, calls it with the site key and widget token, and authenticates each admin individually. A page can still override with a data-identity-endpoint attribute or window.OpsIQAdminIdentityEndpoint.
settings.json - sonden indstilling
{
"key": "admin_identity_probe_url",
"label": "Admin identity probe URL",
"type": "text",
"placeholder": "https://your-site.com/opsiq-yourplatform-bridge.php?op=admin_identity",
"help": "Set this to your bridge admin_identity endpoint and the plain admin-widget loader works with NO page wiring: the widget probes this URL by itself, the bridge answers with the signed identity of the CURRENTLY logged-in admin, and every admin is matched to their own OpsIQ agent. Leave empty to keep the admin embed off."
}
Sonden kaldes af browseren
Same-oprindelse, så det kan ikke bære en brugerdefineret header. Dens godkendelse er platformen session. Sæt den AHEAD af din bro-nøgle gate, holde det væk fra rekord data, og returnere intet overhovedet for en logged- out besøgende.
Det svarer på en fast form
{"success":true,"authenticated":true,"admin":{...},"identity_token":"..."} — and {"success":false,"authenticated":false,"error":"..."} when nobody is signed in.
Ingen længe levet hemmelighed i side kilde
Kun den signerede, der udløber.
Den fulde endpoint implementeringer for Laravel,WordPress, WHMCS, Symfoni og almindelig PHP, plus de hard- won Laravel specificis og fejlfinding ordre, er på admin widget side. De er den samme kode for en kunde emne: ændre vagt du læser og emnet nøgle du underskriver.
Connectorer
Udgivelse: redigering af mappen er ikke udgivelse
The most common way to lose an afternoon is to edit a connector under marketplace_connectors/, reinstall it, and find nothing changed. Installs do not read that folder. They pull a signed ZIP from the marketplace catalogue. Publishing is the sequence that puts your changes into that ZIP.
Hvorfor redigeringen ikke gjorde noget
marketplace_connectors/<slug>/ is the SOURCE
Der er intet, der kan indrettes.
Kataloget har et signeret ZIP
En installation downloads, at ZIP, kontrollerer signatur, og pakker det ud. Indtil du genopbygge ZIP 'en, hver installation holder få den gamle pakke.
Connector Builder udgiver et andet sted
It writes into /connectors/<slug>/ on this install. That is a local connector, not a marketplace release. The two paths do not overlap.
Udgivelsessekvensen
1
Bump versionen i TWO filer
settings.json and connector_contract.json. Conformance compares them and fails if the slug, the version or the capability set disagree. Add a CHANGELOG.md entry while you are there — it is a required file.
2
Gensynkroniser broen
php tools/sync_connector_bridge_snippets.php --apply — only relevant if your package ships bridge/*.php, and mandatory if it does. Skipping it means the panel hands operators the previous bridge.
3
Gensignér hver pakke
php tools/resign_all_connectors.php — the signature covers file hashes, so ANY edit invalidates it. Sign last, after every file is final.
4
Eksportér signeringsnøglen, derefter frø
Den søgende signerer hver pakke, da den bygger ZIP, og det kører i en sammenhæng, hvor nøglen ikke kan læses fra indstillinger - så det skal komme fra miljøet.
5
Omdeployér brofilen, hvis du sender en
Geninstallation af stikket opdaterer pakken. Det rører IKKE kopierne siddende i operatørens webroot. Fortæl dem, i panelet og i changelog.
Hele udgivelsen, i rækkefølge
# 2 — hold the panel copy identical to the shipped bridge
php tools/sync_connector_bridge_snippets.php --apply
# 3 — re-sign (do this last, after every file is final)
php tools/resign_all_connectors.php
# 4 — the seeder reads the signing key from the ENVIRONMENT only
export OPSIQ_CONNECTOR_SIGNING_KEY="$(php -r 'require "bootstrap/init.php"; echo opsiq_setting("connector_signing_key","");')"
php saas/scripts/maint/seed_marketplace_free.php --apply --only=<slug>
# verify before and after
php tools/verify_identity_contracts.php
php vendor/bin/phpunit tests/phpunit/Unit/Connectors
⚠️
Why the export is not optional: the signer looks for the key in OPSIQ_CONNECTOR_SIGNING_KEY first and the connector_signing_key setting second. The seeder runs on the SaaS bootstrap and tools/sign_connector.php boots nothing at all, so in both the settings reader does not exist — with no environment variable there is no key, and you get "No signing key available" or every package reported as signing_failed. Only tools/resign_all_connectors.php boots OpsIQ and can find the key on its own.
Hvad der faktisk skibe
Kun filer signaturen dækker
ZIP er bygget fra signerens egen filliste, så en omstrejfende fil sidder i din pakkemappe ikke sendes. Det er bevidst: en usigneret fil bruges til at ride sammen med kunderne.
Overdækkede udvidelser
phpjson, js,css, md, txt,html, sh, svg, png, jpg, jpeg, gif, webp, ico, yml, yaml - rekursivt, herunder bro / og test /. signatur.jsonselv er udelukket fra hasherne og derefter tilføjet til ZIP, så installationer kan kontrollere.
Anything else is reported as not_packaged
Den søgende navngiver hver fil, den efterlod. Læs denne liste. En fil du forventede at sende vises der betyder en forkert udvidelse eller et forkert sted - ikke en stille succes.
Redigering af en overdækket fil bryder forseglingen
Inklusive en Markown- fil.
Krævede filer i en distribuerbar pakke
connector.php
Vi må returnere et tilfælde af ConnectorInterface.
Maskinlæsbar kontrakt. Dens slug, version og kapacitet sæt skal være identiske med settings.json.
README. md, REDOPER. mD, CHANGELOG. mdConstellation name (optional)
Alle tre er kontrolleret for eksistens OG mindstestørrelse. ECOPER. md har brug for reelt indhold, ikke en stub.
En fil pr. erklæret kapacitet
Each capability names the file it expects — ContextProvider.php for context, IdentityProvider.php for identity, GuestLookupProvider.php for guest_lookup, and so on — unless the connector implements the capability inline.
Intet, der ligner en kreditværdighed
Overensstemmelse scanner de tre Markdown-filer for sekretariats- formede værdier og private nøgler, og mislykkes på et hit.
Tjek det, før du sender det
Den fulde overensstemmelse suite er den samme en installation kører. Det kontrollerer manifest mod kanoniske kontrakt, at runtime og manifestere kapaciteter enige, at hver erklæret kapacitet har sin fil og sine metoder, identitets- token kontrakt i hver minting fil, broch- snippet match, guest- lookup alloop allolist hygiejne, handling unikke og bekræftelse sikkerhed, og pakken signatur.
Kør alle fire før hver udgivelse
# conformance for every marketplace package
php tools/test_marketplace_connector_conformance.php
# the identity-token contract, statically, with file:line on failure
php tools/verify_identity_contracts.php
# the connector unit suite
php vendor/bin/phpunit tests/phpunit/Unit/Connectors
# the release gate
php tools/release_gate_connectors.php
💡
En fejl forventes og er ikke et problem: pakkens signatur kontrol rapporterer en advarsel, mens du stadig redigerer. Det rydder det øjeblik, du re- sign. Hver anden fejl er en reel én.
Connectorer
Forbindelsespakke og referencekort for livscyklus
Dette er den kilde- niveau kontrakt for at opbygge en forbindelse, som OpsIQ kan opdage, konfigurere, validere, aktivere, udføre, teste, underskrive og distribuere.
Udvikler referenceEn konnektor pakke har en krævet connector implementering og manifest, med valgfri handlinger, opskrifter, viden, aktiver og underskrift metadata.
settings.json bruger manifest version 1. The validator expects a slug, name, version, manifest_version, compatibility, description and capabilities. Compatibility declares opsiq_min og opsiq_max. Udgivelsesstatus er en af production, beta, forhåndsvisning eller template; kapacitet modenhed bruger niveau L1- L6. Legacy pakker kan normaliseres med advarsler, men en ny pakke bør passere uden advarsler.
Hovedstik-grænseflade
Identitet og opsætning: slug(), name(), description(), capabilities(), settingsSchema(), testConnection().
Livscyklus: onEnable() og onDisable(). Deaktiver skal være ikke-destruktiv; data udrensning er en separat bevidst operation.
Indgående / synkronisering: handleWebhook(), poll(), backfill(). Poll håndterer trinvis arbejde; backfill import historie og skal være sikker at gentage.
Støtte: pushReply() hvor platformen accepterer svar.
Handlinger: registerActions() kontrakter om udførelse af leverancer.
Den abstrakte base tilbyder også valgfri chunked backfill, kundeliste, email- konto opdagelse / skabelse, abonnenter, admin / kunde detektion, fakturering / kontekst / identitet udbydere, svar udvinding, genprøve HTTP-opkald, JSON-sti adgang, fuzzy ranking og pagination hjælpere.
Kapacitet og autentificering
Supported capability names include actions, triggers, context, identity, sales, billing, inbound_ticket, outbound_reply, sync_users, sync_departments, security_events, customer_import, security_native_block, promo_audience, promo_feed, email_mailbox, native_api, ai_brain_aware and ai_tickets. The builder provides API key, bearer, basic, HMAC, OAuth 2 client credentials, OAuth 2 authorisation code and custom authentication templates.
Registreringslifecycle
Opdagelsen indlæser pakken og validerer dens manifest.
Konfiguration gemmes pr. arbejdsområde; hemmeligheder krypteres.
Forbindelsestest beviser legitimation uden at aktivere stikket.
Aktivér opkald onEnable(), synkroniserer handlingsdefinitioner og kan starte den første efterfyldning.
Udførelse af polling / webhook / abonnent medfører altid arbejdsrumskontekstforhold.
Deaktivér opkald onDisable() og stopper aktiviteten uden at slette importerede data.
Udrensning er en separat eksplicit operation.
Regler for korrekthed
Brug arbejdsområde / site-tasten i hver læse, skrive, cache nøgle, deduplikering nøgle og webhook opslag.
Lav backfill, web hook indtagelse og skrive handlinger idempotent. Optag en ekstern ID / begivenhed-id, hvor platformen giver én.
For fjernsystemer, bruge deres API; aldrig antage, at deres databasetabeller findes i OpsIQ forbindelse.
Returnér strukturerede, bruger- sikre fejl. Aldrig afsløre hemmeligheder, rå udbyder spor eller en anden arbejdsplads eksistens.
Declare kun kapaciteter pakken faktisk implementerer. actions.json kataloget gør ikke en handling brugbar, før stikket er installeret, aktiveret, konfigureret og dets forbindelse er gyldig.
Test og frigivelse
Kør PHP-flint, manifest validering, forbindelsestest, handlingsskema test, webhook signatur / replay tests, arbejdsrum- isolation test, backfill-gentest tests, desabled- connector tests og svigt / forsøg prøver. En markedsplads pakke skal derefter underskrives og verificeres, omfatte opsætning / tilladelser / webhook- dokumentation, og angive sin sande udgivelsesstatus. Forbindelsesflise og manifestere er det autoritative tilgængelighedssignal.
Connectorer
Koblingsopskrifter
Step-by-step opskrifter til fælles stik opsætninger.
OpskrifterHver opskrift er en checkliste du følger top til bund, her Shopify med real- time orden webkrogs, verificeret ved en testordre.
Opskrift: Shopify med real- time webkroge
Scenarie:
Goal: Connect Shopify with automatic order sync and GDPR compliance.
Hvad skal man gøre:
1. Create a custom app in Shopify admin (Settings > Apps > Develop apps).
2. Grant scopes: read_orders, read_customers, read_products, write_customers.
3. Copy the Admin API access token.
4. In OpsIQ Connectors > Shopify, enter store domain and token.
5. Click Test Connection.
6. Enable Webhook sync, OpsIQ registers order/customer webhooks automatically.
7. GDPR webhooks register automatically (data_request, customers/redact, shop/redact).
8. Verify: place a test order, check it appears in OpsIQ Sales within 30 seconds.
Opskrift: WHMCS integration
Scenarie:
Goal: Connect WHMCS so AI can look up clients, services, tickets, and invoices.
Hvad skal man gøre:
1. In WHMCS admin, Setup > Staff Management > Manage API Credentials. Create a key.
2. In OpsIQ Connectors > WHMCS, enter URL, API identifier, and secret.
3. Click Test Connection.
4. Install the WHMCS module addon for ticket relay.
5. Verify: ask the admin AI "Find client [email protected]". WHMCS data should appear.
Opskrift: Stripe betalinger
Scenarie:
Goal: Track Stripe payments and let AI look up transactions.
Hvad skal man gøre:
1. In Stripe Dashboard > Developers > API keys, create a restricted key (read: Customers, Charges, Invoices, Subscriptions).
2. In OpsIQ Connectors > Stripe, enter the restricted key.
3. Test Connection.
4. Add webhook endpoint in Stripe: copy the webhook URL shown on the connector's
own settings page. It carries a per-connector token and looks like
https://your-domain.com/api/connectors.php?slug=stripe&token=THE_TOKEN
A URL without the token is rejected with "Missing slug or token".
5. Select events: charge.succeeded, invoice.paid, customer.subscription.updated.
6. Copy the webhook signing secret to OpsIQ.
7. Verify: make a test payment, check it in OpsIQ Sales.
Opskrift: Google Business Profile
Scenarie:
Goal: Connect GBP for review management, posts, and insights.
Hvad skal man gøre:
1. Create a Google Cloud project, enable Business Profile API.
2. Create OAuth 2.0 credentials (Web application).
3. Set redirect URI: copy it from the connector's own settings page. Google and
Microsoft connectors share one slug-less callback:
https://your-domain.com/connectors.php?oauth=callback
Everything else uses https://your-domain.com/connectors.php?slug=<slug>&oauth=callback
OAuth redirect URIs must match EXACTLY, and a URI missing oauth=callback is read
as a webhook and answered with "Missing slug or token".
4. In OpsIQ, enter Client ID and Client Secret.
5. Click Authorize, sign in, grant access.
6. Select your business location.
7. Verify: reviews, posts, and insights should appear.
Connectorer
Udvid CRM & Site Intelligence
OpsIQ undersystemer er åbne for udvidelse. En konnektor kan tilslutte en ny kapacitet til CRM eller Site Intelligence uden ændringer i OpsIQ kerne, via platformen kapacitet register (\OpsIQ\ Platform\ KapabilityRegistry). Declare kapaciteten, gennemføre sin lille metode sæt, sende stikket,OpsIQ opdager det og wire det ind i UI, Kunden 360 tidslinje og installationsvejledningen.
Udvid CRM & SIEn konnektor erklærer kapaciteter (kalender, berigelse, rangsedata, analytics...) og OpsIQ automatisk ledninger dem ind CRM og site Intelligence, ingen kernekombinationer.
Declare kapaciteter
Erklæring.json
Tilføj en <domain>_capabilities array, bedst til no- code / marketingstik. Domæner: crm, site_intelligence.
I kode (connector. php)
Gennemførelse crmCapabilities() / siCapabilities() at sende de samme deskriptorer tilbage.
Erklæring af en CRM-kalenderudbyder (settings.json)
Scenarie:
Goal: make a calendar connector appear in the CRM Schedule-meeting panel.
enrich($settings,$params) → {succes, træk}. Drevet af\OpsIQ\ CRM\ EnrichmentBridge (kører også automatisk på virksomhedens oprettelse, når en udbyder er tilsluttet).
CRM / eSign
sendForSignature($settings,$params) → {success,envelope_id,sign_url}. Driven by \OpsIQ\CRM\EsignBridge.
site_intelligence / local_listing
listLocations, listReviews, getInsights. Skibe via Google Business Profile-stikket.
report($settings,$params) (sync / export) + ingest($settings,$events) (import).OpsIQ\ Analytics\ WebAnalyticsBridge. Skibe: Google Analytics (GA4) stik. Data API for rapporter, Måleprotokol til import. Analytics er åben for stik som CRM + Site Intelligence (domæne) analytics / analytics_capabilities).
payments / payment_provider
listPayments, customerPayments, createPaymentLink. Drevet af\OpsIQ\ Betalinger\ PaymentsBridge. Vis en kundes betalinger på CRM tidslinjen + sende et betalingslink på en aftale. Skibe: Stripe Payments connector. Domæne payments / payments_capabilities.
mailbox / email_sync
listMessages + sendMessage. Drevet af\OpsIQ\ Mailbox\ MaileboxBridge. En kundes e-mails på Kunden 360 tidslinje + sende e-mail fra en aftale. Skibe: Gmail + Outlook / Microsoft 365 konnektorer. mailbox / mailbox_capabilities.
Delt OAuth app + ONE omdiriger
Alle Google-konnektorer deler en app via\OpsIQ\OAuth\ SharedGoogleApp. Sæt google_oauth_client_id/_secret når og Kalender, Analytics, Business Profile + Gmail alle arbejde (per- connector "(valgfri)" felter er override). De deler også en omdirigering URI, <site>/connectors.php?oauth=callback (ingen per- connector slug), fordi Google udsætter API at tilføje omdirigere URI 'er til en app OpsIQ genopretter stikket fra den signerede OAuth state nonce. Registrer at enkelt URI én gang og hver Google-stik (nuværende + fremtid) autoriserer uden yderligere konsolopsætning. SharedGoogleApp::resolve(...)'s redirect_uri fra din oauthParams(); aldrig hard- kode en per- slug omdirigere. Microsoft-konnektorer gøre det samme via\OpsIQ\OAuth\ SharedMicrosoftApp (microsoft_oauth_*).
Importknapper er kapabilitet- gated
Den Importér (historisk efterfyldning) og Importér kunder knapper viser KUN for stik, der faktisk implementere dem, detekteret ved refleksion, så der er ingen flag at erklære. backfill() eller backfillChunk() at tjene Import- knappen; tilsidesætter listCustomers() (returnerer {email, fornavn,...} sider) for at tjene Import kunder. AbstractConnector no- op og knappen forbliver skjult, så UI aldrig tilbyder en import en stik kan ikke udføre.
AI på tværs af busser
CRM agent foreslår og booker møder off deal signaler (\OpsIQ\ CRM\ MeetingProposer → CalendarBridge), og auto- beriger nye konti, "AI driver CRM" loop, udføres på tværs af stik busser.
Client- chat billet opslag (fetchTicket())
To-tier, ingen kernetegn
Når en besøgende henviser til et billetnummer i klientchatten ("hvad er status for T-000123?"), OpsIQ løser det i to lag. Niveau 1 læser den delte OpsIQ billet butik, hver stik med inbound_ticket Spejler sine billetter der, så synkroniseret billetter bare arbejde for ALL stik med nul-per- connector kode. Niveau 2 er en live fallback for OLD billetter, der aldrig blev afspejlet: kernen kalder en VALGTE fetchTicket() på hver aktiveret stik, der implementerer den. duck-typed (opdaget af method_exists()- som contextProviders()/audienceCatalog()), så den underskrevne ConnectorInterface er uberørt og stik, der ikke har brug for det (e-mail / chat kilder, der skaber billetter indbygget) simpelthen udelade det.
⚠️
Ejerskab er obligatorisk og din at håndhæve. fetchTicket() modtager den verificerede besøgendes identitet i $ctx (client_id + client_email, den samme verificerede identitet klienten chat AI bruger). Løs platform kunde fra denne identitet og forespørgsel KUN at kundens billetter, derefter re-kontrollere ejerskab på detaljer rekord. null på enhver miss, mismatch, eller fejl, aldrig en anden kundes data. null Det er en skam, at jeg ikke kunne finde den billet.
connector. php, the fetchTicket () contract (reference: connections /whmcs and connects / zendesk)
<?php
// connector.php — OPTIONAL universal client-chat ticket resolver (Tier 2).
// Only add it if your platform keeps its OWN ticket store that may hold tickets
// not yet mirrored into OpsIQ. Return the normalised array below, or null.
//
// $ref = ['mode' => 'id'|'tid', 'value' => string] (from extract_ticket_ref)
// $ctx = ['client_id' => int, 'client_email' => string] (VERIFIED visitor)
// $settings = your connector settings
public function fetchTicket(array $ref, array $ctx, array $settings): ?array
{
try {
$email = trim((string)($ctx['client_email'] ?? ''));
$cid = (int)($ctx['client_id'] ?? 0);
if ($cid <= 0 && $email === '') return null; // no verified identity → refuse
// 1) Resolve THIS visitor on your platform (by verified email/id).
// 2) List ONLY their tickets and match $ref against the ticket number/id.
// 3) Re-confirm ownership on the detail record before returning.
// On any miss/mismatch/error → return null (never leak).
return [
'tid' => 'T-000123', // the customer-facing reference
'id' => 123, // your internal id
'status' => 'open',
'subject' => '…',
'department' => 'Billing', // '' if your platform has none
'priority' => 'high',
'opened_at' => '2026-06-29 10:00:00',
'last_reply' => '2026-06-29 12:00:00',
'message' => 'opening message text',
'replies' => [ // oldest → newest; opening message may be first
['who' => 'You', 'date' => '…', 'message' => '…'],
['who' => 'Staff', 'date' => '…', 'message' => '…'],
],
];
} catch (\Throwable $e) {
error_log('[yourslug][fetchTicket] ' . $e->getMessage());
return null; // graceful degrade
}
}
Hvordan platformen bruger det
Opdagelse
CapabilityRegistry::providers($domain,$type) lister udbydere med installeret / aktiveret / klar status (filsystem-baseret; DB kun for det aktiverede flag).
Valg
CapabilityRegistry::active($domain,$type) giver den første klar udbyder med sin indlæst stik og indstillinger. Bridges kalder dette i stedet for hardcoding snegle.
Notify- to- install
Hvor en funktion har brug for en evne, der ikke er forbundet endnu, UI viser et enkelt klik Connect / Installer prompt, aldrig en død kontrol.
Fuld guide
Se connectors/PLATFORM_CONNECTORS.md (CRM + Site Intelligence) og connectors/CRM_CONNECTORS.md i pakken.
Connectorer
Kundeservice opslag og refunderinger (bygge din forbindelse til kundechat)
Signed- i kunderne kan spørge kunden chat AI om deres OWN konto ("min balance", "mine ordrer", har support besvare min billet ") og hvis virksomheden gør det muligt, anmode om refusion. Alt af det er drevet af DIN-stik erklæringer: ingen OpsIQ kernekontroller, ingen platform hardcodning. AI kalder dine lookups som indfødte værktøjer (det kan ikke opfinde en), identitet er låst serverside til den verificerede kunde, og resultater automatisk trimmes for AI.
Declare en kunde opslag
I Deres actions.json, en read- only handling bliver customer- callable med ALL tre: "scope":"client", "requires_confirmation":false, "is_destructive":false. Brug "scope":"both" når den samme opslag bør også være kallig af dit team i Admin AI. Det fulde ordforråd er admin, client, both og system (system når hverken AI - API og kun webhook ruter). writing scope - Skrivende assistent er serveret den admin handling.
Identitetsreglen (obligatorisk)
Navn din identitet parameter fra standardsættet. Låst til den verificerede numeriske id: client_id, clientid, customer_id, user_id, userid, account_id. Låst fast til det id som en streng: client_identifier, customer_identifier, account_identifier. Låst til den verificerede e-mail: email, client_email, customer_email, user_email. OpsIQ låser og auto- fylder det fra platform- verificeret signed- i kunden; AI aldrig ser eller vælger identitet. Et ikke-standard navn mislykkes lukket (nægtet, aldrig lækket).
Hvad skal forblive admin- only
Alt, der ikke er opdaget af den identitet: Fokch-by-bare- id (order_id/ticket_id alene), storewide lister, free-text søgninger. "scope":"admin".
Resultatformning (svarnøgler)
Løkkeresultater er strukturelt trimmet, før de når AI: Secretary-formede nøgler er tabt, lange strenge og lister er begrænset, blanke felter er beskåret, og et fladt kort bredere end tasten holder sin Svar- bærende nøgler først, penge (credit, balance, amount, total, due, paid), identitet (email, *name, phone, company), stat (status, active, expir*, renew*), datoer, plan / produkt / domæne / service / abonnement / ordre / faktura / billet felter, valuta, tællinger og stats/summary/totals, før nogen resterende pladser gå til andre nøgler smallest- value-først. Praktisk vejledning: navngiv dine felter med det standard ordforråd og returnere de felter, der besvarer kundens spørgsmål i stedet for en rå 100 -key platform dump; et felt opkaldt uden for ordforrådet konkurrerer om venstre sæder og kan trimmes fra meget brede nyttelaster.
Refusion · hvad din konnektor giver
To råoperationer, politisk frie: (1) en betalings- verificering læst filtrerbar efter identitet OG en transaktion reference (din API skal OG filtre), f.eks. whmcs_get_transactions; (2) en refundering udføre handling (scope:"admin", requires_confirmation:true, is_destructive:true, aldrig customer-exposed), fx whmcs_refund_order. Virksomheden vælger begge nøgler i Indstillinger → Client Chat; OpsIQ re- verificerer betalingen server- side, anvender virksomhedens politik boks (beløb cap, alder vindue, månedlige grænse), spørgsmål inde i boksen, og filer en gennemgangstast for alt andet.
Ingen kodebygger
Connector Builder action editor har de samme kontroller: sæt "Hvem kan bruge det" til Signed- i kunder, lad både skrive afkrydsningsfelter fra, og brug en standard identitet parameter navn.
Referenceferencegennemførelser
Indgangene "Kundeself-service" i connectors/whmcs/actions.json, woocommerce/actions.json, oscommerce/actions.json; fuld kontrakt i connectors/README.md §8.1–8.2 og ConnectorInterface::registerActions().
Connectorer
Guest lookups — let visitors track a booking, shipment or order WITHOUT signing in (guest_lookup)
Hoteller, kurerer og mange handelsplatforme betjener kunder, der har en reference, men ingen login: en gæst med en booking bekræftelse, en modtager med et tracking nummer. guest_lookup kapacitet (Connector Contract, mode: genereret) lader DIN-stik tjene disse besøgende i klienten chat AI - nejOpsIQkernemodsætninger, ingen hardkodning af platformen. Din konnektor erklærer, hvad der beviser ret, og hvilke felter der er synlige;OpsIQhåndhæver kontakten, speederen og uniformen benægtelse.
Tilskudsmodellen
Reference + bevis, aldrig identitet
Besøgende leverer record reference (matches af regex du erklærer) plus det bevis, du vælger - normalt e-mail på pladen. Din hente handling henter rekord SERVER- SIDE ved henvisning; OpsIQ 's genererede udbyder sammenligner beviset mod FETCHED rekord. Den besøgendes input er aldrig tillid, og ingen verificeret identitet er skabt: match berettiger den besøgende til at en plade er tilladt felter, intet andet.
Ensartet benægtelse (ingen optælling orakel)
Not- fundne og bevis-mismatch producere en identisk svar. AI er udtrykkeligt instrueret om aldrig at bekræfte, om en reference findes og aldrig at opfinde record detaljer. Forsøg er rate- begrænset per samtale + IP af kernen før din forbindelse nogensinde bliver hørt.
Dobbelt opt- in, begge standard OFF
Intet servicerer gæster, før virksomheden giver mulighed for BOTH-kontakter: den arbejdsrum- brede kontrol i Indstillinger→Sikkerhed→"Guest record opslag i klient chat" (permission- gated AND always password- bekræftet, selv når valgfri step-up er slukket), og din konnektor egen guest_lookup_enabled indstillinger skifte. Installation eller aktivering af en stik alene åbner aldrig gæstens overflade.
Den dedikerede gæsteflade
Den genererede udbyder registrerer på guest kontekstoverflade - strukturelt adskilt fra admin og customer. Eksisterende kontekst udbydere bliver aldrig hørt for anonyme besøgende, og gæstelæreren bliver aldrig konsulteret for signed-in dem. Den ctx det modtager bærer chatbeskeden, tråd id og den besøgendes hævdede (uverificerbare) pre-chat e-mail som bevis kandidat - ingen identitetsområder.
Erklæringen i bygherren
1
Definér hentningshandlingen
På Handlinger trin, tilføje en read- only handling, der returnerer One record ved sin reference (fx GET /bookings/{booking_number}) and map its response fields with aliases: status, arrival, departure, room_type, customer_email…
2
Tik "Gæsteopslag"
På kapacitetstrin, aktivere guest_lookup. Et dedikeret panel vises: Vælg hentning handling, navngiv referenceparameteren, give referencemønsteret (en regex organ såsom \bBK-[0-9]{4,10}\b), navngiv record ("booking"), og vælg bevis - e-mail på record-( anbefales) eller ingen (reference alene, for status- kun kurer tracking).
3
Andel liste over synlige felter
Tik præcis de felter en gæst kan se. Alt andet er DROPPIED - aldrig redigeret. Byggeren nægter PII- formede felter (e-mail, telefon, adresse, betaling...) i allolist, og Release-gate overensstemmelse suite re- kontrollerer den samme regel før udgive, så en hånd- redigeret spec ikke snige en ind. Bemærk, at install- tid validering dækker manifestet og underskrift kun, så køre conformance suiten selv før du skibet. Bevisfeltet selv kan aldrig vises.
4
Udgiv og aktivér
Bygherren udsender GuestLookupProvider.php - den kanoniske hærdede implementering, identisk for hver genereret pakke - og tilføjer guest_lookup_enabled skifte til din konnektor indstillinger. Virksomheden arme de to kontakter og chat AI begynder at tilbyde opslag, når en besøgende spørger om din record type.
Kontraktregler
Kun statusformede felter
Tænk "hvad ville en kurer print på den offentlige tracking side": status, datoer, værelse eller service kategori, tæller. Navne, kontaktoplysninger, gadeadresser, betalingsdata og free-tekst noter har ingen plads i en anonym chat - Builder og overensstemmelse både afvise dem.
AI svarer KUN fra blokken
Den genererede udbyder afslutter sin produktion med en instruktion om kun at svare fra de anførte felter og tilbyde en billet til noget andet. Detaljer ikke i tillowlist er "ikke tilgængelig i chat" - af design.
Follow- ups holder arbejde
Leverandøren re- stammer fra den besøgendes seneste meddelelser i samme samtale, så "og hvornår er check-out?" virker uden at skrive igen. Den matchede reference og bevis e-mail huskes på chatten tråd som CANDIDATES, så følgedup ikke re- spørge. De er kun kandidater: hver tur stadig re-henter rekord serverside og re-sammenligner beviset før frigive et enkelt felt.
Håndforfattet emballage
En markedsplads pakke kan sende sine egne GuestLookupProvider.php implementing ContextProviderInterface med surfaces(): ['guest']. Følg den genererede skabelons kontrakt nøjagtigt - hent ved reference, bevis-match serverside, ensartet benægtelse, allolist- only output - og erklære guest_lookup in capabilities. Overensstemmelse kontrollerer gæstens overflade og scanner tillowlist for PII.
💡
Gæsteopslag er read- only kontekst for chat AI. De aldrig udføre handlinger, aldrig oprette identiteter, og aldrig låse kunden selvservicering handling sti over - at stien stadig kræver en platform- verificeret signed- i kunden.
Connectorer
Promotion audience targeting (promo_audience)
Lad Promotion Studio målkampagner ved LIVE klient og fakturering stat fra din platform: "har en ubetalt faktura", "ordre venter", abonnement annulleret. "Enhver forbindelse (pre- installeret, markedsplads, eller én du bygger dig selv) slutter sig til ved at gennemføre to små metoder. Ingen OpsIQ kerne ændringer, ingen platform hardcodning: din konnektor vises som en platform i studiet Målsætning fanen med sin egen dropdown af fakta, og flere stik kan aktiveres side om side.
Formater publikumDin konnektor besvarer live fakturering fakta for logged- i besøgende; studiet mål på dem, og undlader at lukke, så en fakturering tilbud aldrig når den forkerte person.
Sådan virker det
1
Afslør dine fakta
Implementér audienceCatalog () på din konnektor klasse. Det returnerer en etiket og listen over nøgler din platform kan svare. Hver nøgle vises i studiet dropdown under dit platformnavn.
2
Svar for en klient
Implement audienceFlags(array $identity). OpsIQ calls it at delivery time with the VERIFIED logged-in visitor identity (from the widget identity token, the same identity the client chat AI uses). Return a flat key => value map.
3
Færdig
Enable the connector. The Promotion Studio Targeting tab grows a "Client & billing" section listing your platform; admins build rules like "unpaid_invoices >= 1"; every fact also becomes a personalization variable such as {unpaid_invoices}.
connector.php, the complete promo_audience contract
Tilføj 'promo_audience' til din konnektor capabilities() array så platformen og markedsplads liste det som audience- able (opdagelse virker også fra metode tilstedeværelse, men erklærer det er den rene signal). connectors/whmcs connector er den fulde referencefejl.
Nøglenavngivning
Lowercase snake_case, 2-60 chars, matching ^[a-z0-9_]+$. Types: number, text, bool. Undeclared keys returned by audienceFlags() are still usable in rules, but declare everything you support so admins can see it.
Identitet verificeres
The $identity array comes from the signed widget identity token issued by the customer site at login, never from client-supplied fields. If your platform cannot resolve the identity, return an empty array.
Falske lukning af altid
På enhver fejl (API ned, klient ikke fundet, timeout) tilbagevenden []. En regel, hvis faktum mangler gør kampagnen IKKE vise. En billing- målrettet popup må aldrig nå den forkerte person; OpsIQ håndhæver dette også i reglen matcher.
Resultater
audienceFlags () kaldes højst én gang pr. stik per side visning, og KUN når en offentliggjort kampagne faktisk bruger din platforms regler. Anonyme besøgende koster dig nul opkald. Hold det til 1-2 API opkald OpsIQ Hukommelser i anmodningen.
Erhvervsdrivende, der er omfattet af gratis
Indgives kombinere dine nøgler med =,! =, >, > =, <, < =, indeholder, er indstillet, er tom, du kun leverer værdier.
Personaliseringstockens
Hver kendsgerning fordobler som en variabel i kampagne kopi: {unpaid_invoices}, {client_status}, plus bygget- ins {first_name} og {client_email}. Værdier er renset før rendering.
Ingen-kode markedsplads stik
Automatisk kendsgerning
Declarative (JSON-only) marketplace connectors get promo_audience for FREE: if your connector declares customers/users, invoices, orders or subscriptions resources, OpsIQ derives customer_status, unpaid_invoices, amount_due, pending_orders, active_subscriptions and subscription_status from your existing search actions. No code at all.
Brugerdefineret katalog (settings.json)
Add an audience_capabilities object · {"label": "My Platform", "keys": [{"key": "open_carts", "label": "Open carts", "type": "number"}]}, to control exactly which facts (and labels) appear in the studio dropdown.
Test din udbyder
1
Aktivér stikket
Forbindere > din konnektor > Aktivér. Åbn derefter enhver kampagne målings fane. Din platform skal vises under "Klient & fakturering (connects)".
2
Opbygge en regel
Tilføj: Din platform · en nøgle · > = · 1 og sæt "Logged- in klienter". Gem og udgiv.
3
Verificer begge retninger
Log ind på din platform som en klient, der matcher reglen (popup skal vise) og som en, der ikke (popop skal forblive skjult). Logged- out besøgende aldrig matche logged-i regler.
Affyr en kampagne fra din egen kode (brugerdefineret udløser)
Hvorfor?
Ud over build- in udløser (forsinkelse, rulning, exit- intention, tomgang, klik, side- set, chat / billet aktivitet), kan du affyre en kampagne fra hvor som helst i dit websted eller stik front- end, efter et vellykket checkout trin, når en vogn er opgivet, når din SPA skifter rute osv.
Hvordan
Sæt kampagnens udløser til Brugerdefineret med et begivenhedsnavn (f. eks. checkout_failed), og derefter ringe til den globale krog fra din side:
dit websted / connector front-end JS
// Any campaign whose Custom trigger event matches will be evaluated
// (it still respects targeting, frequency caps and audience rules).
window.OpsIQPromo && window.OpsIQPromo.fire('checkout_failed');
💡
At starte en begivenhed aldrig forbigår målretning eller frekvens. Det kun frigiver "når". Kampagnen stadig nødt til at passere hver regel (geo, publikum, samtykke, hætter) før det viser.
✅
Den fulde How- to- use guide (design, blokke, analytics, A / B, udgivelse) bor i in-app Hjælp Center under Angrib → Promotion Studio. The capability here is discovered automatically from any ENABLED connector in connectors/ or marketplace_connectors/. There is nothing to register. Ship the two methods, and the studio does the rest.
Connectorer
Survey connector cooperative (Contract 2.2)
Den survey kapacitet lader enhver platform levere verificerede kunde identitet adaptere, publikum fakta, sikre variabler og modtager kandidater til Survey Studio. Det er uafhængigt af promo_audience og giver ikke en forbindelse ejerskab af undersøgelser, svar, analytics eller e-mail levering.
💡
Implementeringsstatus. Authoring er komplet og brugbar i dag: Connector Contract 2.2, SurveyConnectorInterface, det dedikerede Builder panel, genereret SurveyProvider.php, pakke metadata og overensstemmelse isolation hele skibet. Forbruget er endnu ikke kappet: SurveyConnectorRegistry er implementeret og testet, men ingen Survey runtime kalder det endnu, så udbyder sundhed ikke er dukket op i admin UI og ingen offentliggjort konnektor pakke erklærer evnen. Signed- token Survey Identity Gateway udstedelse, målretning og variabel integration, CRM Outreach materialisering og den første afsendt leverandør tilknytninger forbliver separate faser. Byg mod denne kontrakt nu; forventer, at runtime til at begynde at forbruge det i en senere udgave.
Udbyderansvar
Publikumskatalog og fakta
Declare typed canonical facts and resolve values only for a server-verified, workspace-bound subject. Typical facts include order_count, last_order_status, cancelled_order_count, customer_created_at, active_subscription_count, past_due_invoice_count and open_ticket_count.
Variabel katalog og værdier
Deklarér kunde, konto, ordre, abonnement og support variabler med type, følsomhed og tilladt kontekst. Undersøgelse kopi kræver fallbacks og output- konteksteseabout.
Modtager personsøgning
Muligvis optælle kandidater til CRM Outreach med stabile eksterne id 'er, afgrænset sider, deterministiske markører og consenent- relaterede metadata. Undersøgelse fryser den valgte publikum før nogen send.
Identitet
Accepter identitet kun fra Survey Identity Gateway efter token signatur, udløb, formål, stik og arbejdsområde verifikation. Browser- leveret e-mail, ID, tags eller fakturering fakta er aldrig autoritative.
Løbetid sundhed
SurveyConnectorRegistry er designet til at rapportere kompatible, blokerede og utilgængelige udbydere uden at udsætte indstillinger, stier, rå identiteter eller undtagelsesmeddelelser, og en blokeret udbyder kan aldrig påberåbes. Rapporteringsoverfladen er endnu ikke udsat i admin UI: i dag en blokeret leverandør er simpelthen inert.
Ikke-afsluttede regler
Udeklarerede nøgler, forkerte typer, overdimensionerede værdier, emne mismatch, konnektor timeouts og ukendte identiteter afvises. En målretning regel, der har brug for en utilgængelig kendsgerning ikke matcher. Modtager sider er begrænset og revideret. Følsomme værdier aldrig vises i offentlig preview eller logs.
Builder frigivelse gate
Kontrakt 2.2 skibe kapacitet registreringsdatabasen indgang, interface, Survey kortlægning panel, genereret SurveyProvider.php, kapacitet version, README / udvikler reference og overensstemmelse inventar. Handel, helpdesk, SaaS bro og lokale PHP profiler omfatter det; Standard API -konnektorer opt i. Den statiske gate afviser en Survey udbyder, der kalder en Promotion navnerum, tabel eller evne.
💡
Kopi fra Promotion er import- kun: Builder kan oversætte kompatible Promotions tilknytninger én gang, gemme en komplet Survey-ejede kopi og optage herkomst. Sletning eller ændring af Promotionsmapping må ikke ændre Survey adfærd.
Connectorer
Respons feedback kapacitet (Kontrakt 2.2)
Den reply_feedback kapacitet afspejler en platforms egne per- svar ratings i OpsIQ. En stjerne en kunde giver et svar på personalet inde WHMCS's klient område lander på Same svar i OpsIQ admin tråd, med samme chip, agent kredit, Feedback side indgang og Team & Performance beregning som en rating givet på en OpsIQ portal billet. One storage, one chip, one pipeline; stikket kun oversætter.
Den ene skrivesti
Der er præcis to indgangsveje og en sandhed. OpsIQ portal billetter skrive nationally. Platform billetter flyder gennem stikket, og kernen lander hver begivenhed via ReplyFeedback::recordMirrored(): de samme kolonner, personale-kun regel, one-rating- per-svar latest-vinder semantik, arbejdsrums stempel og stemme af Kunden indeksering portalen skrive bruger. En stik aldrig skriver feedback rækker selv.
Konformering (fire filer, derefter gen- tegn)
1
connector_contract.json
Add the capabilities.reply_feedback entry: version 1.0, the ReplyFeedbackConnectorInterface, methods replyFeedbackCatalog and pullReplyFeedback, implies inbound_ticket.
2
settings.json
Add reply_feedback to the capabilities list. This is what connector discovery reads.
3
spec.json
Declare reply_feedback.modes (poll and/or webhook) and the platform's rating scale. This is what the conformance gate reads.
4
Løbetidsklasse
Implement the interface, list reply_feedback in capabilities(), then re-sign the package.
Udbyderansvar
Katalog
Declare modes, platformens egen rating skala (kerne normaliserer sig til den indfødte 1-5), og enhver reaktion tokens. Kataloget skal være enig med spec.json.
Træk oversættelse
pullReplyFeedback returns canonical events: platform ticket id, platform reply id, rating, optional reaction/comment, submitted time and a stable event_id. It reads and translates. It never writes.
Idempotens
event_id is stable per feedback STATE, so a replayed event is a no-op and a changed rating overwrites (latest wins, like the portal).
Markørdisciplin
Sider er afgrænset og deterministiske; en markør, der ikke forhånd slutter løbet. Historisk backfill afløb som et rullende vindue, aldrig én kæmpe træk.
Probe sikkerhed
Med ingen konfiguration, returnerer du en tom komplet side i stedet for at kaste. Overensstemmelsesrunner sonder med tomme argumenter.
Fejl - lukket opløsning
Core løser hver begivenhed til et lokalt svar ved spejlet markør billetten spejl allerede stempler (<slug>:<ticket>:reply:<reply>). En begivenhed, der ikke kan løses, er droppet, aldrig gættet; feedback kun tillægger personalet svar; og agent kredit altid kommer fra svaret 's eksisterende forfatter. Ratingskriften aldrig ændrer forfatterskab. inbound_ticket eller ticket_mirror.
Arbejdede eksempel: WHMCS
WHMCS gemmer klient- område per-svar stjerne bedømmelser i tblticketreplies.rating. WHMCS connector erklærer poll mode med en 1-5 skibe a ticket_reply_ratings relæ kommando i sin bro fil, og oversætter hver række til en begivenhed, hvis ids matcher whmcs:<ticket>:reply:<reply> markerer allerede sine billettegret stempler. Efter opgradering af stikket, genkopieres brofilen til WHMCS serveren, så den nye kommando eksisterer der.
💡
Fuld udviklerkontrakt med grænsefladen, begivenhedsformer, normaliseringsregler og kontrollisten for overensstemmelse: doc/contracts/TICKET_REPLY_FEEDBACK_CAPABILITY.md i OpsIQ pakke. Accept: sats et svar inde i platformen, vente på timeløn meningsmåling, og det samme svar i OpsIQ viser chippen, Feedback side lister det, og en genspillet begivenhed ændrer intet.
Connectorer
Forbindelsesmarked
Marketplace kan du opdage, installere og udgive konnektorer bygget af fællesskabet.
MarkedsstedGennemse community-konnektorer, installere i et klik, eller underskrive og offentliggøre dine egne, pre- installeret og markedsplads tiers både søgbar.
Finde og installere stik
1
Gennemse
Gå til Connectors > Marketplace. Søg efter navn, kategori eller platform.
2
Revision
Tjek beskrivelsen, støttede handlinger og vurderinger.
3
Installer
Click Install. The connector package downloads and installs to marketplace_connectors/.
4
Indstil
Aktivér det i Connectors, indtast API legitimationsoplysninger og test.
Udgivelse af en konnektor
1
Byg og test
Brug Connector Builder. Verificer alle handlinger arbejde.
2
Pakning
Generér profil.json, handlinger.json, viden.json og PHP-filer.
3
Signér
Run php tools/sign_connector.php <slug> to sign ONE package (it also accepts a path). It does not boot OpsIQ, so give it the key: either --key=<secret> or the OPSIQ_CONNECTOR_SIGNING_KEY environment variable, otherwise it stops with "No signing key available". tools/resign_all_connectors.php re-signs EVERY package on the install and reads the key from settings by itself, but it can also mint a NEW install-wide signing key, so reach for it only when that is what you want.
4
Indsend
Upload gennem markedet indsendelse flow til gennemgang.
To stikled
connects / - hvad der rent faktisk kører
Runtime opdagelse root. Alt her er live: de stik, der skib med OpsIQ, alt installeret fra markedspladsen, og alt det Connector Builder udgiver på denne installation.
marketplace_connectors/ — where packages are authored
Forlaget KILDE for first-party markedsplads pakker. Det er ikke en opdagelse rod: intet her er live, indtil det er pakket, underskrevet, indsået i kataloget og installeret, hvor en kopi lander i stik /.
💡
Look in both places. A package you authored under marketplace_connectors/ is not the copy that runs — installing copies it into connectors/, and only that copy is discovered at runtime. Stripe, BigCommerce, Magento 2, PrestaShop, OpenCart, Amazon SES, Postmark and Resend are all marketplace packages: install one before expecting to find it in Connectors.
Udvikler
API og webhook builder
EU API og Webhook Builder lader dig oprette brugerdefinerede API Endepunkter og webhook lyttere indeni OpsIQ uden at skrive rå PHP.
API -bygmesterOpbygge endepunkter uden rå PHP: Vælg en udløser (indadgående webhook, tidsplan, begivenhed eller manual), og kort derefter felter til en handling.
Triggere
Begivenhed
Løb, når der sker noget. OpsIQ, eller når et eksternt system lægger en matchende begivenhed til din webhook URL. Skriv begivenhedens navn, for eksempel ticket.created.
Skema
Brug en af build- in interval begivenheder som begivenhedsnavnet: cron. minust, cron. time eller cron.-dail. The Actions and Triggers skærmen har knapper til disse, så du behøver ikke at huske dem.
Prase
Kør når en admin beder AI for det i almindeligt sprog. Tilføj den sætning, der skal matche, for eksempel finde kunden.
Indgående webhook
Et eksternt system sender en HTTP POST til din OpsIQ webhook URL med et begivenhedsnavn.
Kør det kun nogle gange: betingelser
En begivenhed udløser kan bære betingelser, så det kun kører, når de indgående data matcher. Uden betingelser det kører hver gang begivenheden brande.
Felt
En sti ind i begivenhedsdata. Brug en prik for indlejrede værdier, for eksempel customer. email.
Match alle eller nogen
Vælg om alle regler skal matche, eller bare en af dem.
Tekstprøver
er lig, ikke lig, indeholder, ikke indeholder, starter med, er en af, er ikke en af. Matching ignorerer hovedstæder.
Antal test
større end, i det mindste mindre end, højst. Tal skrevet som tekst stadig sammenligne korrekt.
Tilstedeværelse af prøver
er til stede, mangler, er tom, ikke er tom.
Kun side on-call ingeniør for presserende billetter
Scenarie:
Event ticket.created, with one rule: priority equals urgent.
Hvad skal man gøre:
Handlingen kører for presserende billetter og er sprunget over for alt andet. Ingen filtrering nødvendig i din ende.
💡
Hvis du lader reglerne være tomme, løber udløseren på hver matchende begivenhed, hvilket er den samme adfærd som før forholdene eksisterede.
Handlinger
Send webhook
Send HTTP POST til en ekstern URL med en brugerdefineret nyttelast.
Opret billet
Opret en supportbillet med angivet afdeling, emne og besked.
Send e- mail
Send en e-mail med en brugerdefineret skabelon.
Opdatér record
Opdatér en kunde, billet eller CRM rekord.
Kør forbindelseshandling
Udfør en registreret handling fra et aktiveret stik med sine forbindelsestilladelser og bekræftelsesregler.
Kør OpsIQ Generelt API handling
Søg i det komplette API katalog ved navn. Felter, skoper, tilladelser, bekræftelse, idempotens og dry- run support kommer fra live action-kontrakten; arbejdsstrømmen udfører inde i sin gemte arbejdsplads og administrator sammenhæng.
Send provider- native API anmodning
Brug en konnektor Native API Læs eller bekræftet Native API Skriv handling, når udbyderen endpoint har ingen kurateret handling. Valgt forblive inde i konnekset og kun relative udbyder stier accepteres.
✅
Handlinger & Triggers builder, /api/v1.php, OpenAPI og Postman bruger den samme ActionContractRegistry, så en valgbar handling kan ikke drive fra runtime dokumentation.
Udvikler
Triggers kogebog
Ready- to- use trigger- action opskrifter til fælles automationer.
Sådan virker detTriggers kogebog
Autoopret billet fra overvågning
Scenarie:
Monitoring system sends POST when server goes down.
Slack message every time a customer places an order over $100.
Hvad skal man gøre:
Trigger: Event (order.completed)
Condition: order.amount > 100
Action: Send webhook to Slack incoming webhook URL with order details
Ugentlig fordøje e-mail
Scenarie:
Summary email to management every Monday at 9am.
Hvad skal man gøre:
Trigger: Schedule (Monday 09:00)
Action: Send email with last week's stats pulled from the REST API
Eskalatbilletter til gamle
Scenarie:
If a ticket has no reply for 24 hours, assign to team lead.
Hvad skal man gøre:
Trigger: Schedule (every hour)
Condition: ticket.status = "Open" AND ticket.last_reply_age > 86400
Action: Assign to team-lead, add internal note
Udvikler
Opbygning af din første handling
Denne walkthrough skaber en simpel forbindelseshandling fra bunden.
Opbygning af aktionerByg en handling fra bunden. Navn det, sæt metoden og endpoint, erklære indtastede paramer, og teste det til en levende 200.
To slags aktioner
Før du starter, beslutte hvilken en du har brug for. Begge er konfigureret på samme skærm.
Ring til en ekstern API
Handlingen sender en HTTP anmodning til din platform. Vælg dette, når OpsIQ har brug for at nå ud og gøre noget på din side.
Kør en forbindelseshandling
Handlingen kører noget som en installeret forbindelse allerede giver. Vælg dette når arbejdet er allerede tilgængeligt og du bare vil udløse det. Du vælger forbindelseshandlingen fra en liste, så der er intet at wire op.
✅
Den anden mulighed er, hvordan du genbruger alt dine stik kan allerede gøre uden at bygge noget af det igen: Læs en billet tråd, slå op en kunde, importere kontakter og så videre. Vælg den forbindelse handling fra dropdown, og du er færdig.
1
Planlæg aktionen
Example: "lookup_product". Look up a product by name, return price, stock, and description.
Three things that make an action fail to register at all. action_id is REQUIRED and must be 2 to 100 characters of lowercase letters, digits and underscores — an entry without one is rejected outright. The manifest is an object with an "actions" LIST, not a map keyed by action name. And response mapping is "returns" with DOTTED paths (data.id), not JSONPath ($.data.id) — there is no "response_mapping", "method", "endpoint" or "params" key anywhere in the registry.
3
Test med tørløb
I Connector Builder anmeldelse trin, tryk på Tør køre. Det kører den fulde overensstemmelse checkliste mod din pakke og, når du har leveret legitimation, gør en reel forbindelse test.
4
Verificér AI-brug
Spørg admin AI: "Kig op produkt Widget Pro". AI bør finde og udføre handlingen.
⚠️
Adding an action to actions.json does NOT create an AJAX route, so there is nothing to regenerate. Connector actions are synced into OpsIQ when the connector is enabled or its settings are saved: re-save the connector and the new action appears. tools/gen_route_registry.php covers the admin AJAX dispatch and has no bearing on connector actions.
Udvikler
Endepunkter for indgående begivenheder
Indgående endepunkter accepterer signeret JSON fra et andet system og gør det til en dobbeltsporet kontaktaktivitet, der kan fodre tidslinjer, scoring og arbejdsgange.
ProduktskærmHver indkommende kilde har sin egen URL, hemmelig, kortlægning og seneste aktivitetsresultat.
Opret en kilde pr. afsendersystem. OpsIQ genererer en URL/ token og hemmelighed. Send JSON med Content-Type: application/json og underskrive den nøjagtige rå krop ved hjælp af HMAC- SHA256:
X-OpsIQ-Inbound-Signature: sha256=<hex hmac>
Kort JSON stier til kontakt e-mail, event navn og valgfri begivenhed ID. Begivenheds- id er den foretrukne deduplikeringsnøgle. Accepterede aktivitet indtaster kontakttidslinjen og kan påvirke bly scoring, segmenter, livscyklusregler og arbejdsgange.
Afvis ugyldige signaturer før fortolkning forretningsdata. Rotér en hemmelighed ved at opdatere begge sider i et kontrolleret vindue; ikke logge på hemmeligheden.
Udvikler
Operationer med udgående webshook
Udengående webhook administration skaber signerede abonnementer, tester endepunkter og overvåger asynkron levering og prøve igen sundhed.
ProduktskærmDen udgående webhook side viser HTTPS slutpunkter, begivenhed abonnementer, levering sundhed og en one-click underskrevet test.
Fulde administratorer oprette en HTTPS endpoint, vælge specifikke begivenheder eller wildcard, gemme hemmeligheden sikkert og sende en test. OpsIQ underskriver den rå nyttelast med HMAC- SHA256:
X-OpsIQ-Signature: sha256=<hex hmac>
Verificer signaturen før deseronisering eller handling. Levering er asynkron og automatisk genprøvet efter ca. 1minut 5 minutter 30 minutter2time og 12 timer. Brug den seneste-levering jernbane til at inspicere status, svarkode og forsøg tælle.
Modtageren skal være idempotent, fordi ethvert asynkron system kan levere igen. Returnerer et 2xx svar kun efter varig accept.
Udvikler
Webhooks
Webkroge lader eksterne systemer underrette OpsIQ når noget sker (indadgående), og lad OpsIQ underrette eksterne systemer, når noget sker internt (udgående).
WebhooksDen virkelige outbound- webkrogs skærm: hvert endepunkt med sine begivenheder, seneste levering sundhed, og en one-klik Send test, underskrevet og prøvet igen.
Udgående webkroge
Abonnering
Gå til Indstillinger > Webkrogs. Tilføj et endpoint URL og vælg begivenheder der skal modtages.
Begivenheder
ticket.created, ticket.replied, chat.started, chat.message, order.completed, crm.deal.stage_changed, crm.contact.created, etc.
Prøv igen
Fejl i leverancerne igen med eksponentiel backoff. Efter 15 fortløbende svigt, er endepunktet automatisk deaktiveret.
Underskrift
Hver anmodning indeholder en HMAC signatur i X-OpsIQ-Signature. Kontrollér altid.
SSRF-beskyttelse
OpsIQ vil ikke sende til privat / intern IPs (127.x 10.x 172.16.x 192.168.x 169.254.169.254).
Async levering
Webkroge leveres via job kø, ikke blokere OpsIQ operationer.
Stabil begivenhed- ID
Each event has a unique event_id that stays the same across retries for deduplication.
Brug ngrok til at afsløre din lokale server. Sæt webhook endepunktet til din ngroks URL.
Hvad hvis mit endepunkt er midlertidigt nede?+
OpsIQ genforsøger med eksponentiel backoff. Hvis dit endepunkt genvinder inden for gentrievinduet, er ingen hændelser tabt.
Udvikler
API-nøgler
API nøgler autentificere anmodninger til OpsIQ REST API. Hver nøgle har opfanget tilladelser.
API-nøglerDen virkelige API taster skærm: udstede en scoped, read- only eller begrænset nøgle ved at vælge eksakte skoper, og tilbagekalde enhver nøgle når som helst.
Oprettelse af en API nøgle
1
Gå til Indstillinger > API Nøgler
Naviger til API nøglehåndtering.
2
Klik på Opret nøgle
Giv det et beskrivende navn.
3
Vælg opslag
Giv nøglen kun hvad den har brug for. Scopes kommer ind læse og skrive par per område, så en rapportering integration kan gives læser og intet andet.
Disponible scopes
Vælg det smalle sæt, der gør jobbet. admin opfylder alle nedenstående rammer, så brug det kun, når du virkelig har brug for bred adgang.
Liste og læs billetter og deres beskeder; svar, opdatere, åbne og køre bulk kø operationer.
conversations. read / conversations. write
Læs live-chat samtaler og besked historie; sende beskeder, tildele og ændre status.
kb. read / kb. write
Kendskab base poster.
chat. read / chat. write
Gemte svarskabeloner.
connectors.read
Se hvilke stik der er installeret, hvad de kan gøre, og test deres legitimation.
automations.read
Se dine handlinger, udløsere og deres løbehistorie.
departments.read
Afdelinger til rådighed for routing.
notifications.read
Anmeldelser til en navngivet operatør.
analytics.read
Rapportafsnit, CSV eksport og planlagte rapportdefinitioner.
site_intelligence.read
Monitorerede steder og deres SEO rapporter.
files.read
Underskrevet download links til vedhæftede filer.
status.write
Status side komponenter og hændelser.
writing
AI skriver hjælpere: udkast, sammenfatte, oversætte, omskrive, komponere, analysere.
admin
Alt, herunder et lille antal følsomme handlinger, der bevidst ikke kan nås af nogen smal omfang: sletning af en kontakt, ændre indstillinger for personlige oplysninger, og læse adgang log.
💡
Ring meta. actions med din nøgle for at se præcis, hvilke handlinger det kan køre på din installation. Det er altid mere pålideligt end at arbejde fra en liste.
Adgangsniveauer
Alle
Nøglen kan kalde alt, hvad dens rækkevidde tillader.
Kun læst
Hver skrivning afvises, uanset hvad der står i opslagstavlen. Det sikreste valg for rapportering, dashboards og alt, der aldrig bør ændre data.
Begrænset
Du opregner de nøjagtige handlinger, nøglen kan kalde. Alt andet er afvist, selv inden for et tilladt anvendelsesområde.
4
Kopiér nøglen
Vist en gang. Starter med "opq _". Gem det sikkert.
🚫
Del aldrig API nøgler i offentlig kode, klient- side JavaScript, eller versionskontrol. Brug miljøvariabler.
Udvikler
Forbind din hjemmeside
EU OpsIQ widget er en JavaScript snuppet du tilføjer til din hjemmeside for sporing, AI chat, billet skabelse, og kundeidentifikation.
No. Under 15 KB gzipped, indlæser async efter side indhold.
Kan jeg tilpasse udseendet?+
Brug data- farve til primær farve. Kontaktunderstøttelse for CSS override muligheder.
Udvikler
Widget installere opskrifter
Platform- specifikke installationsvejledninger.
Sådan virker detInstallere opskrifter
WordPress
Scenarie:
Add to all pages of a WordPress site.
Hvad skal man gøre:
Option 1: Edit theme footer.php, paste snippet before </body>.
Option 2: Use "Insert Headers and Footers" plugin > Scripts in Footer.
Option 3: Use a child theme footer.php to survive theme updates.
Shopify
Scenarie:
Add to your Shopify store.
Hvad skal man gøre:
Online Store > Themes > Edit Code > Layout > theme.liquid. Paste before </body>. Save.
React / Next. js
Scenarie:
Add to a React or Next.js app.
Hvad skal man gøre:
In Next.js, use next/script in app/layout.tsx:
import Script from "next/script";
<Script src="https://your-opsiq.com/widget.php" data-site-key="site_abc" strategy="lazyOnload" />
WHMCS
Scenarie:
Add to your WHMCS client area.
Hvad skal man gøre:
Opsætning > Generelle indstillinger > Andet > Global Footer Indhold. Indsæt slangen. Eller rediger din skabelon footer. tpl.
Google Tag Manager
Scenarie:
Add via GTM.
Hvad skal man gøre:
Opret brugerdefineret HTML tag, paste snavs. Trigger: Alle sider. Publicer.
Udvikler
Admin widget i din motor (en kontrakt, enhver platform)
Embed the OpsIQ admin assistant — admin chat, ticket inbox and AI Writing — inside YOUR OWN platform's admin panel, so your team never leaves their tools. Like visitor identity and portal SSO, this is ONE generic contract implemented in ~15 lines of your platform's server code — the same pattern Zendesk, Intercom and Discourse use for SSO. There is no per-platform plugin to wait for: any stack that can compute an HMAC can do this today.
Trin 1 - den indlejrede linje
fra Fjernsider → dit websted → Koder, kopiere læsserens linje og tilføje det til din admin panelets sider (fod omfatter, layout skabelon, eller en admin- only custom-JS boks):
Trin2- FortælOpsIQder er logget ind (server- signeret)
Kun din applikation ved, hvilken admin der er logget ind - det er ikke en mangel, det er sikkerhedsmodellen. Din server genererer en kortlivede signeret token fra din egen session, præcis som den besøgende identitet token, underskrevet med samme websted webhook hemmelighed:
PHP · sign admin identiteten fra din session
<?php
$secret = "opsiq_whsec_your_site_secret"; // Remote Sites → Codes
$payload = json_encode([
"site_key" => "SITE_KEY",
"iat" => time(),
"exp" => time() + 6 * 3600,
"authenticated" => true, // REQUIRED, top level — see note below
"platform" => "your-platform",
"admin" => [
"id" => (string)$admin->id, // from YOUR session
"name" => $admin->name,
"username" => $admin->username,
"email" => $admin->email,
"role" => $admin->role,
"authenticated" => true,
],
]);
$payload64 = rtrim(strtr(base64_encode($payload), "+/", "-_"), "=");
$identityToken = $payload64 . "." . hash_hmac("sha256", $payload64, $secret);
// Put $identityToken into the embed line (identity_token=…), or expose it as
// window.OpsIQAdminIdentityToken before the loader script.
Per- admin adgang, automatisk
Hver admin, der logger ind på din platform er matchet individuelt:OpsIQs per- admin adgang gate løser token brugernavn + e-mail mod énOpsIQAgent (Team side; bruge agentens "match e-mails" liste, når platformen e-mail er forskellig) og anvender, at agenten arbejdsområde, afdeling og indbakke tilladelser.OpsIQ; ingen ændringer.
Roller kører med
Uanset hvilken rollestreng din platform sender vises påOpsIQside for tildeling; godkendelse altid kommer fraOpsIQAgent Record, aldrig fra den erklærede rolle.
Hvorfor ikke læse vores login cookie?
Browsere sender aldrig din admin cookie til en anden oprindelse - ingen leverandør kan "bare opdage" dit login cross-domæne. Hvert alvorligt produkt løser dette på samme måde: din server kvitteringer, underskrevet. Det er hele kontrakten.
Enkel tilstand (enkelt- admin butikker)
Skip step 2 and use the static token from Remote Sites → Codes in the loader line (token=… instead of identity_token=…). The widget works with the workspace's shared identity; the per-admin gate can stay enforced later when the team grows.
Den authenticated flag - sæt det på TOP-niveau
Dette flag er din servers påstand om, at et menneske virkelig logges ind, og OpsIQ nægter nogen token uden det. "authenticated" => true beside site_key/iat/exp, IKKE kun inde i admin objekt. Nuværende OpsIQ accepterer det i begge positioner, men ældre udgivelser kun læse det øverste niveau - og fejlen er vildledende: samtaleliste, historie og ulæste alle autentificere fint, mens hver chat tur svar "Admin login kræves", som ligner en session bug og er ikke. Hvis du ser præcis denne split, skal du markere dette flag først.
Token hygiejne
Signér kun på serveren, aldrig i browserenJavaScript. Hold exp kort (minutter til timer);OpsIQafviser udløbet og fremtid- dated tokens, og signaturen binder token til dit websted nøgle.
Referenceferencegennemførelser
The WHMCS module does this automatically from the WHMCS admin session; the Botble Hotel connector's bridge file does it from the Laravel session (op=admin_identity). Both are just this contract in their platform's dialect — copy whichever reads closest to your stack.
Nulsiderledninger (forbindelsessonde)
Når din OpsIQ stik gemmer din identitet endpoint i sin admin_identity_probe_url indstilling, PLAIN loader linje er alle dine admin sider brug: widget opdager sonden fra stikket, kalder det med din hjemmeside nøgle + widget- token, og autentificerer hver admin automatisk. Siden kan stadig tilsidesætte med en data-identity-endpoint attribut eller window.OpsIQAdminIdentityEndpoint.
Gennemførelse af identitetsendpoint på Laravel (hardwon notes)
Hvis din platform er Laravel (Botble, Bagisto, brugerdefinerede apps) og dit endpoint er en standalone fil, der støvler rammen til at læse logged- i admin, tre specifikke vil spare dig timer - hver enkelt produceret en reel produktionsfejl, før det blev lært:
Bind anmodningen FØR bootstrap
Dine udbydere kan løse request fra beholderen under boot. Laravels egen livscyklus binder den opfangede anmodning om første ting inde Kernel::handle() - Spejl denne rækkefølge: $app->instance('request', Request::capture()) TIDLIGERE $kernel->bootstrap(), eller du får "Målklasse [anmodning] findes ikke".
Sessions- cookie præfikset er HMAC-keyed
Moderne Laravel præfikser cookie værdier med en HMAC beregnet med APP-NØY (CookieValuePrefix) - en almindelig sha1(name."v2") kan aldrig matche det. Strip med CookieValuePrefix::validate($name, $decrypted, $keys)med strukturel fallback (40 hex-tegn + | på plads40). Fortæl: en session id længere end40Krydderier (81= præfiks stadig fastgjort) og en session, der kun indlæses med _token i det.
Hvor login bor
Det er det, der er bedst. login_<guard>_<sha1(guard class)> - til standardwebvagten: 'login_web_' . sha1(Illuminate\Auth\SessionGuard::class). Scan enhver login_* Numerisk nøgle som en fallback for brugerdefinerede vagter.
Fejlfri som broen gør
Skib a debug=1 tilstand, der navngiver den svigtende STEP og undtagelse - en blind catch- alle gjort en live implementering udiagnosticerbar. Botble broen (fra v1.0.7) er referencen: trin markører på kernen / bind / bootstrap / decrypt / session / auth / db.
Laravel · komplet identitet endpoint (kopi, sæt de to konstanter, færdig)
<?php
/* identity endpoint · LARAVEL (Botble, Bagisto, any Laravel admin)
* Drop this in your PUBLIC web root, e.g. /opsiq-identity.php
* Answers: {"success":true,"authenticated":true,"admin":{...},"identity_token":"..."} */
define("OPSIQ_SITE_KEY", "SITE_KEY");
define("OPSIQ_SITE_SECRET", "opsiq_whsec_your_site_secret"); // Remote Sites → Codes
header("Content-Type: application/json");
$step = "boot";
try {
require __DIR__ . "/../vendor/autoload.php";
$app = require_once __DIR__ . "/../bootstrap/app.php";
$step = "bind";
// ORDER MATTERS: bind the request BEFORE bootstrapping, or providers that
// resolve "request" during boot throw "Target class [request] does not exist".
$request = Illuminate\Http\Request::capture();
$app->instance("request", $request);
$step = "bootstrap";
$kernel = $app->make(Illuminate\Contracts\Http\Kernel::class);
$kernel->bootstrap();
$step = "session";
$app["session"]->driver()->setId($request->cookie(config("session.cookie")));
$app["session"]->driver()->start();
$step = "auth";
$user = auth()->guard("web")->user(); // use YOUR admin guard name
if (!$user) {
echo json_encode(["success" => false, "authenticated" => false, "error" => "no admin session"]);
exit;
}
$step = "sign";
$admin = [
"id" => (string)$user->id,
"name" => (string)($user->name ?? $user->username),
"username" => (string)($user->username ?? $user->email),
"email" => (string)$user->email,
"role" => (string)optional($user->roles->first())->name,
"authenticated" => true,
];
$payload = json_encode([
"site_key" => OPSIQ_SITE_KEY,
"iat" => time(),
"exp" => time() + 6 * 3600,
"authenticated" => true, // TOP LEVEL — required
"platform" => "laravel",
"admin" => $admin,
], JSON_UNESCAPED_SLASHES);
$p64 = rtrim(strtr(base64_encode($payload), "+/", "-_"), "=");
$token = $p64 . "." . hash_hmac("sha256", $p64, OPSIQ_SITE_SECRET);
echo json_encode(["success" => true, "authenticated" => true,
"admin" => $admin, "identity_token" => $token]);
} catch (\Throwable $e) {
// debug=1 names the failing STEP — never ship a blind catch-all
$err = ($_GET["debug"] ?? "") === "1"
? get_class($e) . " at [" . $step . "]: " . $e->getMessage()
: "identity unavailable";
echo json_encode(["success" => false, "authenticated" => false, "error" => $err]);
}
Det samme endpoint på andre stakke
Kun "hvem er logget ind?" linje ændringer - signaturblokken er identisk overalt. Skriv på serveren, aldrig i JavaScript.
WordPress · WHMCS· Symfoni · plain PHP - bytte opslag, holde signer
Når det ikke virker - diagnosticere i denne rækkefølge
Widget aldrig vises, konsol siger "signeret admin identity token er påkrævet"
Dit endpoint returnerede ingen identity_token. Åbn endepunktet URL direkte i logge- i admin browser med &debug=1 - du vil se det svigtende trin. På Laravel er dette næsten altid den anmodning-bindende eller kogning-prefix punkt ovenfor.
Historie og samtaler virker, men hver chat tur siger "Admin login kræves"
Din token mangler TOP- NIVEAU authenticated flag - widgets eget endpoint accepterer token, den delte verifikator bag chatstrømmen nægter det. Tilføj "authenticated" => true beside exp.
"admin ikke afsat i OpsIQ" (HTTP 401)
The token verified, but its username + email match no OpsIQ agent. Add the agent in OpsIQ → Team, or add the platform email to that agent's match-emails list when it differs from their OpsIQ email.
Alt 403s fra browseren, men arbejder med krøller
En CORS-forudflyvning afviser en af dine forespørgsler. OPTIONS og ekko den anmodende oprindelse, eller simpelthen undgå brugerdefinerede overskrifter - widget kun brug for cookien.
Arbejdede i går, fejlede i dag
Tjek exp: tokens er kortlivede af design. Kontrolgensonder automatisk, så dette betyder normalt endepunktet stoppet med at se sessionen - en app nøgle rotation, en session- driver ændring, eller en cookie-domæne forandring.
💡
Admin widget gør skjult indtil identitet løser, og hver chat / indbakke / dataopkald er tvungen server- side mod matchedeOpsIQagent uanset noget side hævder. Tegnet åbner UI; tilladelser altid kommer fraOpsIQ.
Udvikler
Besøgsidentitet
Identitet forbinder anonyme besøgende til kendte kunder. Når identificeret, OpsIQ links browserhistorik, chats og billetter til kundens profil.
Sådan virker detBesøgsidentitet
To identitetsniveauer, og når hver er nok
Niveau 1 - en usigneret vink
Du fortæller widget hvem den besøgende er med en plainJavaScriptobjekt. Det fylder e-mail og kunde id på besøgende log, så dit dashboard viser signed-i trafik og sessioner deltage. Det er en HINT: enhver kan redigere det i deres browser, såOpsIQfrigiver aldrig kontodata på styrken af det.
Niveau 2 - en signeret identitetstesten
Din server signerer en kortlivede token med webhook-hemmeligheden på webstedet. OpsIQ kontrollerer signaturen og behandler først personen som en bevist kunde. Dette er det niveau, der låser kontosvar op i kundechat og konnektor opslag. Brug det til noget, en fremmed ikke må se.
⚠️
Niveau1er en display bekvemmelighed.2er autentificering. Hvis et spørgsmål kun kan besvares for den rigtige kontohaver, skal du bruge Niveau2.
Niveau 1 - det usignerede vink
Sæt objektet FØR kontrolscriptet, eller ring til identificer () senere når din app ved hvem der er logget på. Begge formularer læses; brug alt efter hvad der passer til din side.
JavaScript · de to understøttede former
<!-- Form A: set the global before the loader -->
<script>
window.OpsIQClient = {
id: "cust_1001",
email: "[email protected]",
name: "Jane Smith",
plan: "pro"
};
</script>
<script async src="https://YOUR-OPSIQ/widget.php?site_key=YOUR_SITE_KEY"></script>
<!-- Form B: identify later, e.g. after a client-side login -->
<script>
window.opsiq.identify({
id: "cust_1001",
email: "[email protected]",
name: "Jane Smith",
plan: "pro"
});
</script>
⚠️
Only these forms are read: the window.OpsIQClient global, window.opsiqConfig.user, and window.opsiq.identify(). There is no OpsIQ.push(['identify', ...]) queue and no OpsIQClientSignature global — if you find either in an old note, it does nothing.
Niveau 2 - den serversignerede identitet token
Præcis den samme token kontrakt som admin widget, med en customer emne i stedet for en admin en. Skriv under på din server og send den til kontrolprogrammet. To detaljer afgør om det verificerer, og begge er nemme at få forkert:
EUHMACdækker BASE64URL strengen, ikke denJSON
Signér $payload64, ikke $payload. Underskrivelse af den rå JSON producerer en token, der ser rigtigt og afvises hver gang med en underskrift mismatch.
base64url, upolstret
Oversæt +/ til -_ og strimler = polstring. Plain base64 sker for at overleve i dag; base64url er kontrakten og er, hvad hver OpsIQ verifikator og reference stik udsender.
godkendt går på TOP-niveau
ved siden af site_key, iat og expDet er din påstand, at et rigtigt menneske er logget ind, og OpsIQ afviser token uden det.
customer. id er obligatorisk
En token, der kun indeholder en e-mail, bekræfter som en underskrift og bliver derefter tappet stille. Send altid et id.
Hold exp kort
Minutter til timer.
PHP - sign en kundenidentitetsteat (denne nøjagtige kode verificerer)
<?php
/* Server-signed customer identity. Runnable as-is: set the two constants. */
$siteKey = "YOUR_SITE_KEY"; // Remote Sites -> Codes
$secret = "opsiq_whsec_your_site_secret"; // Remote Sites -> Codes
$payload = json_encode([
"site_key" => $siteKey,
"iat" => time(),
"exp" => time() + 3600,
"authenticated" => true, // TOP LEVEL - required
"platform" => "your-platform",
"customer" => [
"id" => (string)$user->id, // REQUIRED
"email" => (string)$user->email, // REQUIRED
"name" => (string)$user->name,
"plan" => (string)($user->plan ?? ""),
"authenticated" => true,
],
], JSON_UNESCAPED_SLASHES);
/* base64url(payload) . "." . hex HMAC-SHA256 OF THAT STRING. */
$payload64 = rtrim(strtr(base64_encode($payload), "+/", "-_"), "=");
$token = $payload64 . "." . hash_hmac("sha256", $payload64, $secret);
/* Hand it to the widget either way: */
printf(
'<script async src="https://YOUR-OPSIQ/widget.php?site_key=%s&identity_token=%s"></script>',
rawurlencode($siteKey),
rawurlencode($token)
);
// or, if the loader is already on the page:
// echo '<script>window.opsiqConfig = window.opsiqConfig || {}; '
// . 'window.opsiqConfig.identityToken = ' . json_encode($token) . ';</script>';
🚫
Kun på serveren. En token præget i browser JavaScript betyder forsendelse af webstedet hemmelighed for hver besøgende, som giver alle mulighed for at udgive sig for enhver kunde.
Samme kontrakt, tre overflader
Kundechat på dit websted
customer subject, passed as identity_token to widget.php. Covered above.
Admin chat inde i din bagende
admin subject, passed to opsiq/embed/admin_widget.php. Same signer, different subject key. See "Admin widget in your backend".
Støtte portalen dybe links
A stricter variant: the same claims plus jti and single_use:true, and a 120-second life, because the token travels in a URL and must be spendable once. Do not hand-roll it. Settings, Support Portal has a ready snippet for your language, and the platform mints it for you when your account area runs on this server.
Hvad hvis en besøgende rydder op?+
De bliver anonyme, indtil de identificeres igen. OpsIQ forbinder den nye anonyme rekord til kundens profil i det øjeblik en antydning eller en token ankommer.
Hvorfor kontrollerer min token for besøgsloggen, men ikke for kontospørgsmål?+
Det er det niveau1/ Niveau2split. Et usigneret vink fylder besøgsloggen og intet andet. Kontosvar skal have en bekræftet underskrift.
Udvikler
Plugins og SDK 'er
OpsIQ giver SDK pakker og plugins til fælles platforme.
Undersøgelse API, events og forbindelses- fri automatisering
Survey Studio er designet til at bruge den samme indtastede General API, intern eksekutor, event bus og webhook operationer som resten af OpsIQ. Dette lader udviklere integrere slutningen til enden uden at bygge en pakket stik.
⚠️
Implementeringsstatus: det levende katalog i øjeblikket kun udsætter platform.get.survey.config og platform.save.survey.config. The surveys.* og feedback.* familier nedenfor er den godkendte målkontrakt og skal vende tilbage unknown_action indtil registreret.
Målgrupper
Typer, skabeloner og hurtig lancering
surveys.types.*, surveys.templates.* og surveys.quick_launch.* liste, forhåndsvisning, instantiate og validere komplette startere.
Undersøgelser og versioner
surveys.create|get|list|update|archive|duplicate plus uforanderlig version, validering og offentliggørelse af handlinger.
Udstationering og målretning
surveys.deployments.*, surveys.links.*, surveys.audiences.*, surveys.triggers.* og surveys.variables.*.
Opsøgende arbejde og svar
surveys.invitations.*, surveys.campaigns.*, surveys.recipients.*, surveys.responses.*, eksport, redact og analytics.
Webkroge, import og feedback
surveys.webhooks.*, surveys.imports.*, feedback.items.*, feedback.analytics.*, feedback.sources.* og feedback.analysis.*.
Forbindelsesfri strøm
1
Opret og udgiv gennem Generelt API
Brug indtastede undersøgelser. * handlinger med en arbejdsrums-fastlåst nøgle. Skrifter erklærer tilladelse, risiko, bekræftelse, idempotens og tørløbsadfærd.
2
Modtag din forretningsbegivenhed
Send en underskrevet begivenhed til en indadgående webhook, for eksempel en ordre annullering eller afsluttet onboarding trin. Replay beskyttelse deduplikerer begivenhedens ID.
3
Kort det i Handlinger og Triggers
Vælg en OpsIQ Generelt API foranstaltninger såsom at udsende en Survey-invitation eller forberede en kampagne, og derefter kortlægge felter fra den verificerede udløser nyttelast.
4
Abonner på Survey events
Levere den dokumenterede business-safe undersøgelse. * livscyklusdelsæt til dit endepunkt med underskrift, filter, prøve igen, log og autoriseret spil igen.
Målsætning for den kanoniske begivenhed
Det delte katalog vil dække Survey / implementering offentliggøre tilstand, publikum og udløser beslutninger, invitationer, rende / start / partiel / genoptage / komplet / opgive, reaktion redaction, kampagne state og levering fejl. High- volumen fokus, rulle og spørgsmål timing ophold i Survey Analytics opbevaring medmindre eksplicit dokumenteret for fan- out.
✅
En konnektor er valgfri. Den tilføjer genanvendelige platform opdagelse, verificeret identitet, fakta, variabler og modtager optælling. General API plus Handlinger & Triggers / webkroge forbliver den komplette integration sti for udviklere, der ikke har brug for en pakket connector.
Udvikler
REST API
EU OpsIQ REST API kan du programmæssigt få adgang til alle platform funktioner.
Sådan virker detREST API
Format for anmodning
Send nøglen som Authorization: Bearer opq_... eller X-OpsIQ-Key: opq_.... Brug en godkendelse header, ikke begge.
API forespørgselsformat
POST https://your-opsiq-domain.com/api/v1.php
Authorization: Bearer opq_your_api_key
# Alternative header: X-OpsIQ-Key: opq_your_api_key
Content-Type: application/json
{
"action": "endpoint.name",
"site_key": "site_abc123"
}
Fælles aktioner
API er handlingsbaseret: send en action navn i kroppen. Hver registreret administrator JSON operation har en stabil navngivet handling. {"action":"meta.actions"} (ingen nøgle påkrævet) for den autoritative, per- install liste, anmodning kontrakt, risiko metadata og omfang. platform.routes.* Broen er kun tilbage for ældre integrationers vedkommende.
crm.contacts.list
Liste CRM-kontakter (scope crm. read). Params: q, status, kilde, mærke, blyscore, grænse.
crm.contacts.upsert
Resolve- eller- create a contact (scope crm. write). Params: email plus felter, tags, noter.
One conversation and its messages (scope conversations.read). Params: conversation_id or thread_key, include_messages.
conversations.messages
Paged message history (scope conversations.read). Params: conversation_id, page, per_page, include_internal.
conversations.send
Send a message into a conversation (scope conversations.write). Params: conversation_id, message, sender_type, internal.
conversations.update
Assign, re-status or re-title a conversation (scope conversations.write). Params: conversation_id, status, assigned_admin_id, subject.
connectors. list /. get / . test
Se hvilke stik der er installeret, hvad hver enkelt kan gøre, og om dens legitimationsoplysninger virker (scope connectors. read).
automations.actions.list
De handlinger, din Handlinger builder vil køre (omfang automations. read).
automations.triggers.list
Hvad vil brand og hvilke betingelser (rækkevidde automations. read).
automations.runs.list
Execution history for debugging an integration (scope automations.read). Params: status, action_key.
departments.list
Afdelinger du kan rute en billet til (scope divisions. read).
notifications.list
Notifications for one operator (scope notifications.read). Params: admin_id (required), unread_only.
analytics.export
Et rapportafsnit som CSV (scope analytics. read). Params: sektion, forudindstillet, fra, til. Call analytits. sections. list for gyldige værdier.
site_intelligence.sites.list / .reports.list
Monitored sites and their SEO reports (scope site_intelligence.read).
files.get
Et kortlivede signeret download link til en vedhæftet fil (scope files. read). Params: reference, ttl.
security.check
Spørg, om en IP eller e-mail er blokeret eller mistænkelig her (rækkevidde security.read).IP firewall, billetten spam blokliste og cached Security AI dom. Params: ip e-mail.
security.report
Rapportér misbrug af dit system observeret (rækkevidde security. write). Optaget som en sikkerhedsbegivenhed, klassificeret af Security AI straks, og administratorer er alarmeret på høj risiko domestics. Params: ip, e-mail, art, årsag, kilde.
security. blocklist. add / . list
Manage the spam rules the ticket pipeline enforces (scope security.write / security.read). Same store as the Tickets page "Block sender" control. Params: kind (email, domain, ip), value, reason, expires_hours.
💡
meta. actions er altid autoritative. Det returnerer hver handling til rådighed på din installation med det omfang, hver enkelt har brug for, så du aldrig behøver at gætte eller hard- kode denne liste.
Sidebilleder, filtrerings- og sorteringsinstrumenter
Hver liste handling bruger de samme parametre, så du lærer dem en gang.
page / per_page
Sidenummer der starter på 1, og sidestørrelse. Standard 50, maksimum 200. grænse og offset er også accepteret, hvis du foretrækker dem.
Type / ordre
Feltet skal sortere efter, og asc eller desc (standard desc). Hver handling accepterer et fast sæt sorteringsfelter; alt andet ignoreres snarere end erroring.
filters
Send filtre som et objekt, eller send et filter som en top- niveau parameter. Ukendt filtre ignoreres.
Hvad kommer tilbage
items, page, per_page, count, total and has_more. Keep requesting pages until has_more is false.
Anmodning om en sideordnet, filtreret og sorteret liste
Ingen nøgle blev sendt, eller nøglen er forkert eller udløbet. HTTP 401.
missing_scope
Nøglen er gyldig, men mangler det omfang denne handling har brug for. HTTP 403.
read_only_key / action_restricted
Nøglen er read- only, eller denne handling er ikke i sin allow- liste. HTTP 403.
unknown_action
Ingen sådan handling. Ring meta. actions til den aktuelle liste. HTTP 400.
missing_parameter / invalid_parameter
En nødvendig parameter er fraværende, eller en værdi ikke accepteres. HTTP 400.
not_found
Optaget eksisterer ikke, eller er ikke i det arbejdsrum denne nøgle kan se. HTTP 404.
rate_limited
Timegrænsen for denne nøgle bruges op. HTTP 429.
server_error
Something failed on our side. The request_id identifies the attempt if you need to report it. HTTP 500.
Sikker genindførelse
Hvis en skrive gange ud, kan du ikke se, om det landede. Send en idempotency_key og en gentagelse af samme opkald giver det oprindelige resultat i stedet for at gøre arbejdet to gange.
Idempotent skrift
{
"action": "tickets.reply",
"ticket_id": 4192,
"body": "Thanks, that is now fixed.",
"idempotency_key": "your-unique-id-for-this-attempt"
}
Hvor længe det varer
En nøgle huskes for 24 timer mod samme virkning og API Nøglen.
Hvad du får tilbage
The original response, plus idempotent_replay: true so you can tell it was a replay.
Fejl ved ophold kan retryes
Kun succesfulde skriver huskes. Hvis et opkald mislykkedes, sender du det igen med den samme nøgle kører det igen, hvilket er hvad du ønsker.
Læser
- Det er harmløst at gentage en læsning.
Test uden at ændre noget
Tilføj dry_run: true til enhver skrive. Din nøgle, scope og parametre er alle kontrolleret præcis som normalt, så opkaldet stopper før noget er oprettet eller ændret.
Tør løb: kontrollere legitimation og nyttelast sikkert
{
"action": "tickets.update",
"ticket_id": 4192,
"status": "closed",
"dry_run": true
}
{
"success": true,
"dry_run": true,
"would_execute": true,
"message": "Authorised and validated. No write was performed because dry_run was set."
}
✅
Use dry_run while you are building. It is the quickest way to confirm a key has the right scopes and your payload is shaped correctly, without creating test data you then have to clean up.
Satser
Per- nøglegrænse
En konfigurerbar timegrænse pr.API nøgle (standard) 1000 anmodninger pr. time). Sæt det per nøgle under Indstillinger,API Nøgler.
Ved overskridelse
HTTP 429 with code rate_limited, plus a Retry-After header telling you how many seconds to wait. The limit resets at the top of the next clock hour.
Vide hvor du står
Hvert svar bærer X- RateLimit- Limit, X- SateLimit - Resterende og X- rateLimut- Reset (en Unix tidsstempel). Se Revering og bremse før du løber ud snarere end venter på at blive afvist.
Fortæller 429 fra 401
A 429 betyder vente og prøve igen. A 401 betyder, at selve nøglen er forkert eller udløbet, så genforsøg vil ikke hjælpe, før du retter nøglen.
Pr- auth brute- force guard
Gentagne fejl- auth forsøg fra en IP er throttled separat. Gyldige nøgler aldrig trip dette.
Bedste praksis
Træk dig tilbage, når Resterende bliver lavt, og ære Retry-After efter en 429 i stedet for at prøve igen med det samme.
Versioner og stabilitet
Nuværende udgave
v1. Hvert svar bærer X -OpsIQ-API-Version og X-OpsIQ-API- Status, så du kan bekræfte det.
Hvordan du vil blive advaret
If a version is ever retired, responses gain standard Deprecation and Sunset headers, and meta.actions reports deprecated and sunset_at. Check those in your monitoring and you will never be surprised.
Hvad vil ikke ændre sig
Eksisterende handlingsnavne, deres parametre og fejlkoder. Nye handlinger og nye valgfrie felter kan tilføjes når som helst, så ignorer felter du ikke genkender snarere end at fejle på dem.
En komplet integration, start på slut
Dette er hele løkken: Find arbejde, læs det, handl på det og bekræft hvad du gjorde.
Fuld billetarbejdsgang over API
# 1. Discover what this install offers and what each action needs.
POST /api/v1.php
{"action":"meta.actions"}
# 2. Find the urgent open tickets.
POST /api/v1.php
Authorization: Bearer opq_your_api_key
{"action":"tickets.list","status":"open","priority":"urgent","per_page":25}
# 3. Read one, including its conversation history.
{"action":"tickets.get","ticket_id":4192}
# 4. Reply, safely enough to retry if the network drops.
{"action":"tickets.reply","ticket_id":4192,
"body":"We have issued the refund.","idempotency_key":"reply-4192-attempt-1"}
# 5. Close it.
{"action":"tickets.update","ticket_id":4192,"status":"closed"}
# 6. Page through anything larger: keep going until has_more is false.
{"action":"tickets.list","page":2,"per_page":50}
💡
Alt ovenfor virker på samme måde for samtaler: conversations. list, conversations. get, converse-cess. send og conversions. update følger det identiske mønster, parametre og responsform.
Hver handling, med det omfang den har brug for
Denne liste er genereret fra det løbende katalog, så den altid matcher den version, du er på. meta.actions giver samme information som JSON.
✅
1744 named actions: 587 reads, 1157 writes and 62 scopes. Every registered administrator JSON operation has a stable named action. OpenAPI: /api/v1/openapi.php. Postman: /api/v1/postman.php. Contract quality: declared_dynamic: 390; explicit: 92; route_inferred: 1146; source_inferred: 116.
Read. Scope: crm.read. Contract: source_inferred. Crm Workflows List
crm.workflows.save
Write. Scope: crm.write. Contract: source_inferred. Crm Workflows Save Retry-safe with idempotency_key.
kunder (44)
customers.analyze
Write. Scope: customers.write, journey.write, admin. Contract: explicit. Analyze a customer journey with AI Required fields: client_id. Retry-safe with idempotency_key.
Write. Scope: security.write, admin. Contract: route_inferred. Security Ai Analyze
security.ai.ask
Write. Scope: security.write, admin. Contract: route_inferred. Security Ai Ask
security.ai.briefs
Read. Scope: security.read, admin. Contract: declared_dynamic. Security Ai Briefs
security.ai.chain.explain
Read. Scope: security.read, admin. Contract: route_inferred. Security Ai Chain Explain
security.ai.incident.action
Write. Scope: security.write, admin. Contract: route_inferred. Security Ai Incident Action
security.ai.incidents
Read. Scope: security.read, admin. Contract: route_inferred. Security Ai Incidents
security.ai.js.triage
Read. Scope: security.read, admin. Contract: route_inferred. Security Ai Js Triage
security.ai.policies
Read. Scope: security.read, admin. Contract: declared_dynamic. Security Ai Policies
security.ai.policy.action
Write. Scope: security.write, admin. Contract: route_inferred. Security Ai Policy Action
security.ai.verdicts
Read. Scope: security.read, admin. Contract: route_inferred. Security Ai Verdicts
security.blocklist.add
Write. Scope: security.write, admin. Contract: source_inferred. Add a spam rule (email, domain or IP) to the ticket blocklist Required fields: kind, value. Retry-safe with idempotency_key.
security.blocklist.list
Read. Scope: security.read, admin. Contract: explicit. List the current ticket spam rules
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Speed V2 Collect
site_intelligence.speed.v2.read
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Speed V2 Read
site_intelligence.speed.v2.run
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Speed V2 Run
site_intelligence.start.crawl
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Start Crawl
site_intelligence.task.approve
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Task Approve
site_intelligence.task.assign
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Task Assign
site_intelligence.task.bulk.apply
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Task Bulk Apply
site_intelligence.task.bulk.assign
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Task Bulk Assign
site_intelligence.task.bulk.deadline
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Task Bulk Deadline
site_intelligence.task.bulk.dismiss
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Task Bulk Dismiss
site_intelligence.task.deadline
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Task Deadline
site_intelligence.task.note
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Task Note
site_intelligence.task.proof
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Task Proof
site_intelligence.task.reject
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Task Reject
site_intelligence.task.review
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Task Review
site_intelligence.topical.map
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Topical Map
site_intelligence.webhook.delete
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Webhook Delete
site_intelligence.webhook.save
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Webhook Save
site_intelligence.webhooks.list
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Webhooks List
site_intelligence.workflow
Write. Scope: site_intelligence.write, admin. Contract: route_inferred. Si Workflow
status (6)
status.component.save
Write. Scope: status.write, admin. Contract: declared_dynamic. Status Component Save
status.components.save
Write. Scope: status.write, admin. Contract: explicit. Create or update a public status component Required fields: name. Retry-safe with idempotency_key.
status.incident.create
Write. Scope: status.write, admin. Contract: declared_dynamic. Status Incident Create
status.incident.resolve
Read. Scope: status.read, admin. Contract: route_inferred. Status Incident Resolve
status.incidents.create
Write. Scope: status.write, admin. Contract: explicit. Create a status-page incident Required fields: title. Retry-safe with idempotency_key.
status.incidents.resolve
Write. Scope: status.write, admin. Contract: source_inferred. Status Incidents Resolve Retry-safe with idempotency_key.
undersøgelser (22)
surveys.analytics.get
Read. Scope: surveys.read, admin. Contract: source_inferred. Surveys Analytics Get
surveys.audiences.list
Read. Scope: surveys.read, admin. Contract: explicit. List survey audiences
Write. Scope: tickets.write, admin. Contract: source_inferred. Update a ticket status, priority, subject, department or assignment Retry-safe with idempotency_key.
Write. Scope: writing. Contract: source_inferred. Writing Analyze Retry-safe with idempotency_key.
writing.compose
Write. Scope: writing. Contract: source_inferred. Writing Compose Retry-safe with idempotency_key.
writing.reply
Write. Scope: writing. Contract: source_inferred. Writing Reply Retry-safe with idempotency_key.
writing.rewrite
Write. Scope: writing. Contract: source_inferred. Writing Rewrite Retry-safe with idempotency_key.
writing.summarize
Write. Scope: writing. Contract: source_inferred. Writing Summarize Retry-safe with idempotency_key.
writing.translate
Write. Scope: writing. Contract: source_inferred. Writing Translate Retry-safe with idempotency_key.
Er OpenAPI og Postman tilgængelige?+
Ja. Den genererede OpenAPI 3.0 dokumentet er på /api/v1/openapi.php, den genererede Postman samling er på /api/v1/postman.php, og den human- læsbare udvikler docs er på /api/docs/.
Hvordan arbejder jeg med mere end et arbejdsområde?+
Send site_key in the request body to choose a workspace. A key issued for one workspace stays pinned to it; a key with admin context can select any workspace it is permitted to see, and is refused for any it is not.
Hvilke handlinger kan en read- eneste nøgleopkald?+
Any action marked as a read. Set the permissions mode on the key to read_only and every write is refused with read_only_key, so a reporting integration cannot change anything even by mistake.
Hvorfor blev jeg ikke fundet for noget, jeg kan se i admin?+
The key is scoped to a workspace. Records in other workspaces return not_found rather than a permission error, so the API never confirms whether something exists elsewhere.
Udvikler
Sikkerheds API
En sikkerhedskontrakt for hvert stik og integration: spørg OpsIQ hvad den ved om en IP eller afsender, og fodre tilbage misbrug dit eget system ser.
OpsIQ der allerede forsvarer sig selv: IP firewall blokke angribere, billetten pipeline filtrere spam, og sikkerhed AI klassificerer gerningsmænd og foreslår blok regler. API åbner denne intelligens til dine andre systemer. En faktureringsplatform, en klient portal eller en brugerdefineret app kan tjekke en besøgende, før du stoler på det, og rapportere, hvad den observerede, så hele installationen lærer fra hver overflade.
Hvad du kan gøre
Tjek før du stoler på
security. check svar med firewall tilstand, enhver spam regel der matcher afsenderen, og cached AI dom for IP. Et opkald, en konsolideret udtalelse.
Rapportér hvad du så
security.report registrerer observationen som en sikkerhedsbegivenhed, har Security AI klassificere IP med det samme, og advarer de admins når dommen kommer tilbage høj risiko. Gentagne rapporter klynger sig til hændelser, præcis som angreb OpsIQ ser direkte.
Del spam-regler
security. blocklist. add og securiy. blocklist. list læse og skrive de samme spam regler, som siden Billetter bruger, så en afsender blokeret i et system er blokeret overalt.
Nødvendig for sikkerhed. check og security. blocklist. list. Sikker til at give en rapportering integration.
security.write
Nødvendig for security. report og securiy. bloklist. add. Giv det kun til systemer, du ønsker fodring regler og rapporter i.
Intet er stille ødelagt
En blokerende afsender lander stadig i Spam-visningen, hvor billetten kan læses og gendannes.
Platformen beskytter sig selv
Serverens egen IP adresser kan aldrig blokeres, blocklistes eller rapporteres gennem dette API, så en forkert konfigureret integration kan ikke tage platformen ned.
💡
Mint en nøgle under Integrationer, derefter API Keys, og give det kun de sikkerhedsskoper, det har brug for. Den fulde anmodning kontrakt for hver handling er i meta. actions og OpenAPI-dokumentet.
Bruger mine eksisterende stik automatisk dette?+
Udgående synkronisering er allerede automatisk: når du blokerer en IP, tilsluttede platforme er fortalt gennem connector security sync. API er den indgående halvdel. Peg din konnektor eller brugerdefinerede kode på disse fire handlinger med en nøgle bærer sikkerhedsskoperne.
Hvor lever spam-reglerne?+
One store. Billetter side Block afsender kontrol, spam AI i Indstillinger, og denne API alle arbejder mod den samme blokliste, så der er præcis et sted at kigge.
Udvikler
Begivenheder API
Send brugerdefinerede begivenheder fra din server eller hjemmeside til OpsIQ for analytics, eksperimenter, CRM-udløsere og webhook betingelser.
Serverside, record aktiviteter og konverteringer mod en kontakt gennem handlingen API. Brug crm.activities.record for livscyklus- / forretningsaktiviteter og crm.conversions.record der er ingen events.send handling; den indgående CRM-hændelse modtageren bor på /v1/inbound.php?t=<token> til tredjepartssystemer, der skubber begivenheder ind.
Afsender tegn og sender til alle tilmeldte endpoints.
4
Forsøg igen på fejl
Forsinkede leverancer genforsøgt med eksponentiel tilbageførsel.
Indstillinger
Opsætning reference
Indstillinger er kontrolcentret for et arbejdsområde. Alt nedenfor er opfanget til det arbejdsrum, du befinder dig i, så en konto kan køre flere mærker med forskellige identiteter, chatadfærd og regler om fastholdelse.
Finde en indstilling
Der er omkring seks hundrede individuelle kontroller i Indstillinger, spredt på tværs af elleve faner grupperet under fire menuer. Du forventes ikke at søge efter dem.
Søgeindstillinger (Ctrl + K)
Tryk på Ctrl + K, eller Cmd + K på en Mac, hvor som helst på siden Indstillinger. Skriv i enkle ord og tryk på Enter for at hoppe direkte til kontrollen. Søg tolererer små typoer og forstår relaterede ord, så scheduler finder Cron og privatliv finder sporingskontrollerne. Det viser kun indstillinger din rolle kan åbne.
Arbejdsområde og plan
General og Licence.
AI og kundesupport
Admin AI Assistent, klient chat, OpsIQ Skrivning og support portal.
Data og styring
Sporing og privatliv, tilladelser og sikkerhed.
System
Cron- setup (kun selv-hostet) og Fare Zone.
Gemning
Hvert faneblad gemmer sig på egen hånd med sin egen knap Gem. Klientchat og OpsIQ Skrivertasten deres til skærmen. Gem før du skifter faner; ændringer bliver ikke båret over.
Dybdeled
Den aktive fane er skrevet ind på siden adresse, så en fane kan bogmærkes eller sendes til en kollega.
Generelt: Virksomhedsidentitet
Det vigtigste kort på siden. AI læser disse værdier på hvert svar, rapport og dagligt korte.
Virksomhedens navn
Bruges i AI rapporter, daglige briefinger og brugervenlig-vender formulering. Match din hjemmeside sidefod.
Erhvervslivet
Tailors AI analyse, bly scoring, briefinger og undersøgelse forudsæt. Vælg mellem web hosting, e-handel, SaaS, fast ejendom, agentur, rådgivning, sundhedspleje, uddannelse, finans eller generel forretning.
Systemsprog
Sproget, der vises til alle, som ikke har valgt deres eget.
Brug browsersprog
Viser signe- i siden på den besøgende eget sprog. Når nogen vælger et sprog der, deres valg vinder, og dette aldrig tilsidesætter det.
Systemtidszone
Den zone, hele systemet kører i: datoer, rapporter, tidsplaner og baggrunden cron. Brug dine operationer tidszone, ikke dine kunder.
Generelt: GeoIP og sporing
GeoIP2 databasestil
Fuld sti til GeoLite2- City. mmdb. Autodetekterer på første belastning på tværs af cPanel, Plesk, DirectAdmin, Cloudways, Docker og almindelig Linux eller Windows. Tilføj Geolite2-ASN. mmdb i samme mappe for besøgende internetudbyder.
Geo- kildetilstand
Kun GeoLite2, Geolite2 med en Cloudflare nedslag, eller Cloudflare Kun.Cloudflare modes kræver, at stedet skal være proxyed gennem Cloudflare, med besøgende placering headers aktiveret for by og region detaljer.
Sessionstidsudløb (er)
Inaktivitet før en besøgssession anses for afsluttet. Standard 14400, som er fire timer.
Live genopfriskningsinterval (r)
Hvor ofte live feed genopfriskninger. Standard 30 sekunder.
Aktivt tærskelniveau (min)
Hvor længe en besøgende tæller som levende efter deres sidste sidebelastning. Standard 2 minutter. Dette er Live Feed drop- off, ikke sessionslængden.
Datatilbageholdelse (dage)
Sletter indsamlede og genererede optegnelser forbi denne alder: analytics, chat, billetter, feedback, transaktioner, AI telemetri, integration logs og CRM-aktivitet. 0 holder alt for evigt. Indstillinger, forfattet indhold og samtykke kvitteringer er aldrig fjernet.
Når en chat slettes
Vælger hvor meget af en slettet samtale forbliver på rekord: den fulde record, posten uden samtalen, eller score kun. Sletning altid skjuler chatten fra indbakken og besøgshistorikken. Planlagt tilbageholdelse og Glem besøgende altid slette i fuld uanset dette.
Trafik af sporbot
Tæller kravler som besøgende. Lad være; det puster besøgstæller og spytter hver rapport.
Feedback undersøgelse popup aktiveret
Viser den site- wide feedback widget til besøgende. Separat fra chatundersøgelser under Client Chat, Support Flow.
Generelt: AI funktioner
Master skifter for hver AI-overflade. Alle standard til at on og gemme per arbejdsområde.
AI Triage på billetter
Klassificerer hver billet efter kategori, prioritet og følelser, og skriver en tråd resumé øverst på billetten.
AI Triage Hover-oversigt
Viser triage tags og resumé i et værktøjstip, når en agent svæver en række i billetlisten. Kræver AI Triage.
Indbakke Kopiot (komponist)
Tilføjelse af udkast AI svar, Varmer, Shorter, Mere formelle og Apologetic knapper under billetten svarboks. Intet sender uden agenten.
Ask- OpsIQ Copilot
Den side- bevidste flydende copilot på hver admin side. Ved hvilken kunde, faktura eller billet er åben.
Morgenkort
På første åbne hver dag copilot præsenterer presserende billetter, forsinkede svar og venter chats. Søndage producere en uge i gennemgang.
Generelt: penge, branding, backup
OpsIQ basisvaluta
Hvert penge i alt i admin er konverteret til denne valuta til visning. Connectorer gemme deres egen kilde valuta; indstille, at pr stik.
Auto-sync FX priser
Genopfrisker priser hver sjette time fra et gratis offentligt foder uden API -nøgle. Du kan tilføje manuelle satser, der tilsidesætter foderet. Med automatisk synkronisering slukkes valutaer uden en manuel sats, efterlades ukonverteret.
Aktivér handels- og faktureringsfunktioner
Skibe off. At tænde det afslører salg og konverteringer side, dashboard indtægtskort og Live Intelligence Feed. Med det slukket, er hver pris overflade skjult og salgssiden forlader menuen.
Handelslogan
Lær OpsIQ din formulering: om du gør fornyelser, ordet for fornyelse, hvad du sælger, og hvad købere kaldes.
Branding og logoer
To uploads, en til lys baggrunde (admin sidebar) og en til mørk (sign-in side). PNG, JPG, WebP eller SVG op til 3 MB.
Efterretningsagent, tillad private SSH -mål
Auto- Implementér SEO agent forbinder over SSH. Private, smutback og reserverede adresser blokeres som standard som en anti-SSRF foranstaltning. Kun aktivere på self-hostede installationer, der skal nå frem til en lokal server.
OpsIQ Backup / Gendannelse
Eksportér alle indstillinger og OpsIQ-Ejet bord plus uploadede filer. Gendan erstatter OpsIQ konfiguration og kun optegnelser; det rører aldrig kunder, fakturaer, billetter, tjenester, domæner, ordrer eller transaktioner.
⚠️
Tag en sikkerhedskopi, før du bruger noget i Fare Zone. Backup lever i almindelighed og slette handlinger live i Fan Zone, så det er nemt at nå Slet knappen uden at have eksporteret først.
Indstillinger
Indstillinger: Sikkerhed
Beskyttelse af admin sign-in, dine personalekonti og data OpsIQ indsamler. Kundesign- in for support portalen er konfigureret separat.
Signal-in beskyttelse
Brug af Google reCAPTCHA
Stopper bots og crediential fyld på admin signe- in. Vælg v3 (usynlige, scorede) eller v2 (afkrydsningsfelt), indstille v3 score tærskel, og levere webstedet og hemmelige nøgler. Disse samme nøgler genbruges af support portalen anmodning formular.
Mislykkedes - Login Auto- Lockout
Bloker en adresse efter et antal fejl i et vindue, i et antal timer. Du kan tilpasse den låste-side besked og vise en lille servitrice-skærm distraktion.
Login Hadeshing
Password politik med en minimal længde, afvisning af adgangskoder fundet i kendte overtrædelser, per- konto lockout mod kreditmæssig fyld, obligatorisk to-faktor for hver admin, password re- entry før farlige handlinger, og new- enhed sign-in advarsler.
Enkelt signal- tændt (OIDC)
Personale sign-in via din identitet udbyder. Har brug for udsteder URL, klient ID og klient hemmelighed. Auto-levering domæner, en per linje, oprette brugere automatisk på første sign- in.
Single sign-on (SAML 2.0)
For udbydere, der taler SAML. OpsIQ leverer ACS-svaret URL og SP enhed ID; du leverer den IdP enhed id, sign-in URL, valgfri signatur- out URL og X.509 signeringscertifikat. Felter med e- mail og navn er kun nødvendige for ikke-standard attributnavne.
SCIM Provisioning
Directory- drevet oprettelse, opdatering og deaktivering af OpsIQ Konti.OpsIQ leverer SCIM base URL; du genererer mærkede tokens her, så man kan blive tilbagekaldt uden at bryde resten.
Trusler, blokering og indsamling
Udgående kongres-kvoteliste
Begrænsninger, som eksterne værter denne workspace-stik kan kalde. Companion til SSH målstyring i almindelighed.
Trussel Scoring og Auto- Block
Bloker en besøgende når deres trusselsscore passerer din tærskel. 0 deaktiverer det. Se Security Oversigt side i en uge, før du vælger et nummer.
Blokér sidemeddelelse
Den besked en blokeret besøgende ser, som almindelig tekst eller din egen brugerdefinerede HTML blockskærm.
Hovednetvitaler fra rigtige besøgende
Måler LCP, INP og CLS fra rigtige sessioner.
Bundet, retry- safe event levering
Brugerdefinerede begivenheder kø i browseren og levere i partier med reles, reducere tab på dårlige mobile forbindelser.
Signerede sporingsbeacons
Reale widget-indlejringer bærer en roterende kryptografisk token, så smedede sporingsdata kan afvises. Off som standard; gør det muligt at ændre hvordan indlejringerne autentificere, så test først.
Sikkerhedsindberetninger
Off som standard. Detektering og blokering køre uanset. Dette kort kontrollerer, om du får besked, og hvor meget AI hjælper.
Aktivér sikkerhedsadvarsler
Master switch for dette kort.
Tærskel for fejl- login
Hvor mange fejlslagne signaler i en kort periode tæller som en bølge værd at advare om.
IP 's omdømme
Tilfører en trusselsscore for besøgende, der optræder i offentlige misbrugsfeeds.
Overvågning af webstedet
Timeløn og TLS -kontrol af udløb, alarmering før et certifikat bortfalder.
AI sikkerhedsanalytiker og AI hændelsesbriefinger
Tilfører en forklarlig dom til mistænkelig aktivitet, og grupper relaterede angreb i en enkelt læsbar hændelse snarere end en strøm af begivenheder.
Autopilot for politik
Handler på egen hånd, gør hvad det lærer fra en hændelse til en foreslået eller anvendt regel. Lad off indtil du har revideret sine forslag og er enig med dem.
Daglig sikkerhedsdigest og ugentlige kropsvejleder
En daglig gennemgang af siden med sikkerhedsoversigtog en ugentlig hærdning af tjeklisten, der viser hvad der er beskyttet og hvad der stadig er åbent.
Auto- udløber gamle forslag
En foreslået blokregel, du aldrig handlede på udløber af sig selv i stedet for at akkumulere.
DOM Sessionsreplay
Aktivér DOM session - spil igen
Optager besøgssessioner til afspilning. Når der ikke er indlæst fra genafspilningsbiblioteket, så det ikke koster noget at lade være med at spille. Optagelser udtages og privatmaskeres, og ses på Session Replay side under Analytics.
Prøvehastighed, maksimal indfangning, retention
Hvilken andel af sessioner at optage, hvor længe en enkelt optagelse kan køre, og hvor mange dage optagelser er holdt.
⚠️
Session replay registrerer reelle mennesker ved hjælp af dit websted. Hold prøve sats og tilbageholdelse så lav som vil stadig besvare dit spørgsmål, og afsløre det i din meddelelse om beskyttelse af personlige oplysninger.
Indstillinger
Indstillinger: Sporing og privatliv
Hvad OpsIQ kan indsamle, og hvor længe hver slags rekord overlever.
Udelukkelse
Ekskluderede IPs og CIDR-ranges
Adresser aldrig sporet, en per linje, præcise adresser eller CIDR intervaller. Den reneste måde at holde dit eget team ud af din analytics, fordi det dækker alle på denne adresse snarere end kun signeret-i admins.
Ekskluderede URL -stier
Sidemønstre aldrig sporet, en per linje, jokerkort med en stjerne. For eksempel /admin/* holder hele bagkontoret ud af besøgsloggen.
Datatilbageholdelsespolitik
Per- undersystem automatisk udrensning i dage. Separat fra den samlede datatilbageholdelsesindstilling generelt og fra Fare Zone udrensning.
AI interaktionslogfiler
Tiltrolighedstrametri med korte forhåndsvisninger af forespørgsel og svar. Standard 90 dage. Dette indeholder den mest kundetekst, så forkortet det først, når der er en stramning af privatlivets fred.
AI-brugsbegivenheder
Per- call token tæller for omkostningsrapportering. Standard 90 dage. Kun tal, intet brevindhold.
Aktionsrevisionsspor
Den Tamper- evident handling og sikkerhedsloggen. Standard 365 dage. Hold denne længste; det er dit bevisspor.
Diagnostik
Systemhelbredspapirer. Standard 30 dage.
Ubesvarede spørgsmål
Klynger af spørgsmål, som AI ikke kunne besvare. Standard 90 dage. Arbejde gennem dem på de spørgsmål, AI missede side, før de udløber.
Watchdogs og eksport
Metriske anomaly-rapporter
Daglig sammenligning af i går mod den seneste baseline, alarmering, når en metrisk bevæger sig mere end din tærskel. Standard 35 procent. Off som standard.
Lagereksport
Natlige dumps af sessioner, besøgende, sidevisninger og relaterede tabeller for din egen BI stak, i et format du vælger, holdes i en række dage. Off som standard.
Indstillinger
Indstillinger: Admin AI Assistant
Den flydende assistent dit personale bruger inde i admin, med live læse adgang til kunder, fakturaer, billetter, servere og cron logs. En anden assistent fra customer-står en under Client Chat.
Aktivér OpsIQ AI - widget
Viser den assisterende knap på hver admin side. Off skjule det for alle.
Layout og adfærd
Hjørneposition, panelbredde (320 til 600 px), maks. højde (400 til 900 px), hjørne radius (0til 24), skriftstørrelse, og en frosted glas slør bag panelet.
Vis hurtige Chips
One- klik genvejsknapper under overskriften. Den hurtigste vej ind for de fleste medarbejdere.
Vis model- info
Viser hvilken model der blev besvaret, og hvor lang tid det tog. Nyttig mens tuning omkostninger, støj til daglig brug.
Per- admin adgangsport
Viser kun assistenten til en signed- i admin hvis brugernavn og e-mail både matcher en OpsIQ agent, der er tildelt dette arbejdsområde. Ejere altid passere. Brug Check min adgang knap før du aktiverer eller du kan låse dit eget team ud.
Person
Vis navn, overskrift-tagline og en brugerdefineret velkomstbesked som vises når panelet åbnes.
Smart quick- action Chips
Redigér etiketten og den underliggende prompt for hver genvej, tilføj din egen eller nulstil til standardværdier. Etiketten er hvad personalet ser, prompten er hvad AI modtager.
Farver og former
Chip form (pille, afrundet, firkantet), chip farver, korttema og afsender form (rund, egern, firkant), med en levende preview.
Samtalememory
Assistenten husker hver person historie på tværs af browser sessioner, op til 120 beskeder, gemt i din egen database. Ryd det for at starte frisk.
Indstillinger
Indstillinger: Klientchat
chat widget dine kunder bruger, og det største område af Indstillinger. Seks under- faner, med master switch og Gem fastgjort til toppen af fanebladet.
Arbejd gennem underfanebladene i rækkefølge efter en ny installation: Identitet og Kopiér, Udseende, Opførsel, Support Flow, Viden-træning. Avanceret er infrastruktur og kan vente.
Identitet og kopi
Mærkets identitet
Kontrolnavn, tagline, AI-navn, navnet der bruges til system og inaktiv meddelelser, og hvordan agent navne vises. Agent Name Kilde bestemmer mellem rigtige navne, et brugerdefineret navn eller en team etiket.
In-Chat HilsenName
To hilsner, en for alle besøgende og en for identificerede besøgende. Et spørgsmål starter flere samtaler end en erklæring.
Popup- teaser
Den flydende besked før chatten åbnes, med sit eget navn, skriftstørrelse og farver. AI kan skrive teasers, med kontrol for hvor mange der skal generere, hvor mange at vise per besøg og kløften mellem dem.
Prompts og Handoff
Det fulde script: beder om et navn og e-mail, bekræftelser, anmoder om en menneskelig, ingen agenter til rådighed, billet oprettet eller annulleret, aflevering venter. Omkring to dusin individuelle linjer i et kollapsebart panel.
Status og tomgang meddelelser
Tre bruger- synlige beskeder: agent lukker chatten, besøgende er gået stille, og agent hænder tilbage til AI. Undgå intern formulering som løst eller triaged.
Komponist og forslag
Input pladsholder, talk-to-a-human knap etiket, og de foreslåede åbning spørgsmål. Tre gode forslag aflede flere billetter end en side af artikler.
Launcher, ikon og Avatarer
Launcher ikon, en valgfri anderledes ikon når åbne, lancerer størrelse, og billeder til den menneskelige agent og AI.
Udseende
Tema og glas
Tema mode, en premium farve forudindstillet, slør intensitet og ugennemsigtighed, plus toggles til animationer, separator linjer, skjule statuskortet, skjule besked boks kort og skjule den tætte knap. Start med et forudindstillet; det sætter snesevis af farver på én gang.
Vigtigste farver
Launcher, header, helppanel, links, knapper, systemopslag og komponist, hver med start og slutfarve for gradienter. En brug standard glas indstilling ignorerer disse og holder den gennemsigtige finish.
Panel, Bubbles og Chips
Omkring tredive plukkere dækker panelet, kant, tekst, input område og hver boble type (besøgende, AI, agent, skrive, system) plus forslag chips og deres svæver tilstand. Kun åbne dette for præcis mærke matching, og kontrollere kontrast på boble tekst.
Layout og form
Panelbredde og højde, hjørneradius, skriftstørrelse, skærmposition, affyringsform, boblestil og om avatarer viser sig. Test bredden på en telefon.
Opførsel
AI svarer automatisk
Master skifte for AI svar. Off betyder hver besked venter på et menneske.
Menneskelige opfølgning og naturlig dobbelt- tekstning
En blid opfølgning, når en besøgende går stille, og en valgfri kort anden besked den måde, en person ville sende en. Tuneret med max followups per stilhed, første forsinkelse, senere multiplikator, tilstedeværelse vindue og maksimal sekvens vindue. Kan begrænses til business timer, og undertrykkes efter en simpel tak.
Skrivemaskiners svar og svartempo
Uanset om svar skrive ord for ord, og hvor hurtigt assistenten svarer, ved forudindstillet eller din egen minimum og maksimal forsinkelse i millisekunder. En lille forsinkelse lyder som mere menneskelig end et øjeblikkeligt svar.
Live oversættelse
Hver agent læser og skriver på deres eget sprog, mens den besøgende læser deres.
Aflever til AI efter agent tomgang
Minutter over agent inaktivitet før AI genoptager samtalen.
Åbn chatten automatisk
Sekunder før widget åbner sig selv.0aldrig åbner. Intrusive på mobil; orlov på0med mindre de er testet.
Smartere svar
Planlægning forud for one- pass svar, tænkende dybde, en valgfri separat model for agent svar, der viser ræsonnement til besøgende, tolererende fejlspelling, lang-samtale hukommelse, begrænser assistent til din virksomhed kun, priser i den besøgende valuta, og hvordan links vises. Kun snak om din virksomhed bør være på for næsten alle.
Omkostningsbesparelser
Skips viden søgning efter hilsner såsom hi og tak, og hætter den længste svar i tokens. Trims koster uden at ændre svaret kvalitet på reelle spørgsmål.
Sprog
Hvilke sprog widget understøtter, og hvordan det vælger en for en besøgende.
Kundekontosvar
Svar fra en signed-i kundens egen konto, eventuelt kiggede op live, og eventuelt kun indlæses når det er nødvendigt. Læsning-kun i alle tilfælde; læsse-når - behov væsentligt reducerer omkostningerne.
Restitutionsbeløb
Assisteret refusion anmodninger, hvor assistenten samler detaljer og hænder til en person. Det aldrig fuldfører en tilbagebetaling selv.
Samtale og widget
Holde tidligere samtaler, fortsætte en chat på tværs af dine tilsluttede websteder, draggbare vindue, bede gæsterne om en e-mail, og lade dit team gøre en chat til en billet.
Kontrolfunktioner
Emoji picker, vedhæftede filer med en valgfri paste- only mode, AI-billede forståelse, inline ikoner, mikrofon, talktoagent knap, besøgende lyde, bilag preview, voice-call knappen og session isolation. AI-image forståelse er hvad lader en besøgende indsætte et fejlbillede og få et nyttigt svar.
Admin indbakke, meddelelser og velkomstpopup
Besøgende velkommen popup, plus dine agenter advarsler: indbakke lyde, desktop meddelelser, hvisker lyde, om private hvisken bip, og indbakke meningsintervallet.
Støtte Flow
Human Handoff
Hvordan anmodninger om en person er tildelt, de sekunder en agent har til at svare, om faldende returnerer chatten til AI, og om AI genoptager når tidsfristen udløber. Indstil dette før du går live eller en besøgende, der beder om et menneske blot venter.
Arbejdstimer
Åbningstider, tidszone og closed- timer meddelelse. Udenfor disse timer AI vil ikke tilbyde et menneske. En separat tidsplan fra billetten business timer under OpsIQ Skrivning.
Svar når AI 'en er slukket
Det første svar på et nyt budskab, svaret når nogen allerede er i kø, og hvor længe før man gentager.
Offline form
Viser en kontaktformular i stedet for chatten.
Billetopslag og meddelelser fra afdelingen
AI billet bevidsthed, så en besøgende citerer et billettal får sin reelle status, og hvilke afdelinger AI kan rute til. En bygning-i panel viser de virkelige modtagere for hver afdeling, løst på samme måde anmelderen løser dem, så du kan se før en kunde gør, at en afdeling advarer ingen.
Hjælp Center i chat- kontrol
Lader besøgende gennemse publicerede artikler uden at forlade chatten. Du vælger hvor indgangen vises, nederste bar etiket og ikon, og om du vil tilbyde et link til det fulde hjælpecenter. Off som standard.
Samtalerating
Stjernebedømmelse udløses, når en agent lukker chatten, når et ophør, eller efter en inaktivitet periode du har indstillet. Vælg en eller to udløsere, ikke alle af dem.
Post- chatundersøgelse
En kort undersøgelse, når den besøgende lukker chatten med dit spørgsmål, forsinkelse, timing regel og en cap per besøg. Besøgende kan også e-mail eller downloade udskriften. Et spørgsmål bliver besvaret; tre ikke.
Post- chat- e- mail- undersøgelse
En opfølgning undersøgelse via e-mail efter samtalen slutter, eventuelt på det sprog den besøgende chattede i, med kontrol over forsinkelse, emne, intro, spørgsmål, både knap etiketter og tak-du linje.
Svar på feedback
Tommelfingre op og tommelfingre ned på hver AI svar, fodring kvalitet dashboards.
Samtale- arkivComment
Auto- arkiv efter dage, automatisk-løse efter minutters stilhed, og slette arkiverede samtaler efter dage. En tredje plads retention er indstillet, sammen med General og Tracking.
Videnstræning
Det, assistenten ved, betyder ikke andet i Client Chat.
Viden om hjemmesiden
Kravler dit websted, så assistenten kan svare fra det. Op til ti startlinks, en side grænse, et link dybde, og udelukkede mapper. En enkelt URL kan testes før fuld kravl. Ekskl checkout, konto og admin stier.
Indlejringer
API -tasten og modellen, der gør sider til søgbare betydning snarere end søgeord matcher.
AI vidensorganizer
Et klik og AI læser hver FAQ og kravlede side og sortere dem i kategorier.
FAQ 'er, verificerede svar
Spørgsmål og svar par behandles som den højeste prioritet kilde, hver med en status, vægt og kategori. Searchable, kan overføres fra JSON, og AI kan skrive dem fra en beskrivelse af din virksomhed. Når assistenten får noget galt, skrive en FAQ: det harmløse sider, så fix er øjeblikkelig.
Avanceret
Præstation og grænser
Poleringsinterval, meddelelsesprocentgrænse og vindue, maksimal vedhæftningsstørrelse, bilag forsøg per vindue, og tilladte filudvidelser. Udvidelseslisten er en sikkerhedskontrol; holde det stramt.
Levering af realtid
Øjeblikkelig besked og status levering i stedet for at aflytte, gennem Pusher, Ably eller Firebase, med en fallback valginterval. Polling er fint for de fleste steder.
Trykmeddelelser
Enhedsalarmer til agenter gennem Pusher Beams eller OneSignal, med en enhed interesse.
Web push (VAPID)
Browser skubbe ved hjælp af dine egne genererede nøgler uden tredjeparts udbyder. Genereret her, ikke i Fare Zone.
Stemme, video og skærmdeling
TURN legitimation så opkald forbinde gennem restriktive netværk, ved hjælp af Cloudflare eller Twilio akkreditiver eller din egen TURN URL, brugernavn og kreditværdighed.
Arbejdsgang i indbakke
Agent workspace indstillinger i stedet for besøgende indstillinger: first-response SLA på få minutter, gemte kø visninger, tastatur genveje og kommandopalet, in- samtale søgning, og kundebilletter i inspektøren.
Meddelelseskanaler
WhatsApp, SMS, Facebook Messenger, Instagram, Telegram, X direkte beskeder og LINE, hver med sin egen AI auto- svar kontakt, plus en politisk skifte for AI handlinger på kanaler, et svar debounce og WhatsApp re- engagement skabelon. Hver kanal lander i samme indbakke som web chat.
✅
En Live Widget Preview nederst i fanebladsopdateringer som du redigerer. Brug den i stedet for at genindlæse din hjemmeside for at kontrollere en ændring.
Indstillinger
Indstillinger: OpsIQ Skrivning
Billetter besvaret skriftligt: automatiske svar, den indfødte billet system, eskalering, business timer, routing og customer-vender e-mails.
Auto- svar
Vis OpsIQ skriveknapper
Tilfører skrivehjælpsknapperne til dine agenter i admin.
Aktivér billet- svar automatisk
Kører nye billetter og svar og svarer dem efter en forsinkelse. Start med det ud og gennemgå udkast til en uge. Refusioner, aflysninger og adgangsændringer bør altid nå frem til en person.
Autosvarafdelinger
Hvilke afdelinger auto-svar kan svare i. Alt ikke er opført er overladt til et menneske, som er den sikre standard.
Svartidsplan (minutter)
Hvor længe skal man vente, før det automatiske svar sender. Et øjeblikkeligt svar lyder som en robot; et par minutter læser som et hurtigt team.
Max AI svar pr. billet efter afdeling
En per- afdeling cap, for eksempel Billing 1 og støtte 3. Uden en hætte kan en forvirret tråd løkke.
Replik længde, status og identitet
Maksimale skrivende tokens, billetten status efter et svar og efter en eskalering, og som admin konto de automatiske svar tilskrives. Brug en klart navngivne konto, så personalet kan fortælle AI-svar fra menneskelige dem.
Indfødte billettransaktioner
Indfødt billettesystem
Billetten er indbygget i OpsIQ, til installationer uden ekstern helpdesk.
Pipe indadgående e-mail i indfødte billetter
Det vender indkommende e-mail ind i billetter. OpsIQ leverer endepunktet URL, Auth token, script sti og PHP binær. Alt, der kan sende til dette endpoint kan skabe billetter, så holde token hemmelighed.
Multi- vende svar og forsinkelse og debounce
Om AI holder svare som samtalen fortsætter, og om det venter et stille vindue så tre hurtige beskeder få en overvejet svar. Det rolige vindue er den bedste enkelt indstilling til at gøre automatiserede svar føler sig overvejet.
Offentlig støtteportal
En brugervenlig-vender side, hvor nogen kan hæve og spore en billet, med en valgfri velkomstlinje. Dens adresse og udseende er konfigureret i Support Portal fanen.
Billetnummerformat
Hvor mange tilfældige bogstaver vises i genererede billetnumre.
Email kunder på deres eget sprog
Billete- e-mails følger kundens sprog. Personale e-mail ændrer aldrig sprog: meddelelser, afdelings advarsler, briefinger og planlagte rapporter ophold i dit systemsprog.
Bekræftelse og bekræftelse
En fast bekræftelse på nye billetter, plus bekræftelsesmeddelelser når en billet åbnes, når feedback er tilbage og når en bøde er lukket, hver med en live preview. Der er også en global e-mail skabelon wrapper og linket bag visningen din billet knap.
Al spam screening
Screens billetter fra ukendte afsendere, og kan eventuelt flytte mistanke spam på egen hånd. Lad automatisk gå ud indtil du har set dens vurdering.
Auto- luk tomgangsbilletter
Lukker en billet efter en række stille dage. Fortæl kunden i den afsluttende besked, hvordan man åbner.
Forretningstider (SLA-kalender)
Tidszone, åbnings- og lukketider, arbejdsdage og helligdage for første- svar og afviklingstidspunkter. En separat tidsplan fra arbejdstiderne under klientchatten.
Auto- tildele nye billetter
Automatisk opgave, eventuelt kun til agenter, der er online, med agent færdigheder og en match følsomhed for skill- baseret routing.
Foreslår duplikerede billetter
Spotter når en kunde åbner en billet tæt på en, de allerede har, med en justerbar match følsomhed.
Tilfredshedsundersøgelse efter lukning
Email en undersøgelse om dagen efter lukning. Resultater vises på CSAT siden.
Underret afdelingen via e-mail
Email afdelingen når en ny billet ankommer. Modtagere er medlemmerne af denne afdeling, ikke afdelingen postkasse adresse, som er den indgående adresse billetter ankommer på.
Hvad AI kan læse
AI-klientdataadgang
En masterkontakt plus individuelle read- only tilladelser til klientprofilsammenfatning, fakturaer, transaktioner, kreditbalance, produkter og tjenester, domæner, linkede servere og en topniveaukontooversigt. Start med profilen resumé og tilføje kategorier som svar har brug for dem.
Eskalering og viden
Aktivér eskalering af AI-billetten
Flytter en billet til en bedre egnet afdeling, før du svarer. Du vælger de tilladte afdelinger, checkforsinkelsen og kan skrive dine egne instruktioner om eskalering. Tænd den interne eskaleringsnote, så dit team kan se hvorfor en billet flyttede.
KendskaberName
Om svar bruger kundens sprog, om de trækker på kravlede links og FAQ 'er, om AI læser billede og PDF bilag, vidensvartilstand, uanset om importeret JSON viden bruges, og om kildelinks kan forekomme. Brug gennemkravlede links og FAQ 'er bør være på, eller AI er gætte.
Stop automatisk svar efter menneskeligt svar
Når personalet svarer, AI stopper med at besvare denne billet. Uden det AI kan tale over din egen agent.
Billet- og e-mail-instruktioner
Free- tekst instruktioner forme tone og indhold for hvert svar, med et læseligt arbejdet eksempel. Vær specifik om, hvad AI må aldrig gøre.
Importér JSON viden
Upload eller indsæt en JSON videnfil til skriveassistenten.
Knap Studio
En komplet designer til brugervendsknappen: display stil, størrelse, etiket, ikon, form, mindste bredde, baggrundsstil med primære og sekundære farver, gradient vinkel, kant, hjørne radius, skygge, typografi, polstring, tomgang animation, svæver bevægelse og farver, og fokus ring, plus en brugerdefineret CSS boks for noget kontrollerne ikke dækker.
Indstillinger
Indstillinger: Support Portal
Den brugervenlige side, hvor folk rejser og sporer billetter og læse dine hjælp artikler. Dette fane styrer hvordan det er nået, og hvordan kunderne logger ind; dens visuelle design gøres i Support Portal Studio.
Portal Studio eller Indlejret Billetportal: hvilken en vil jeg have?
Det er to forskellige produkter, og folk blander dem konstant sammen. De løser forskellige problemer, og det er normalt at køre begge dele sammen.
Support Portal Studio: et sted, du sender kunder til
Studio designer en komplet support websted, OpsIQ værter for dig. Det har sin egen web-adresse, eller dit eget domæne, og det bærer hele selvservicering oplevelse: hjælp artikler med søgning, anmodningsformularen, billet historie, kunde sign-in og assistent. Vælg en skabelon, arbejde gennem Tema, Navigation, Layout, Viden, Footer, Brand, Billetter, Assistent, Form og CSS, preview på skrivebordet, tablet og telefon størrelser, derefter offentliggøre.
Brug den når du ønsker en mærkevarer destination kan du pege hver kunde på, og du vil helst ikke bygge eller vedligeholde et supportområde inde i din egen hjemmeside.
Indlejret billet Portal: billetter inde i dit eget websted
De indrammede putter kun billetten oplevelse på en side af din egen hjemmeside. Kunder åbne, spore og svare på support anmodninger uden nogensinde forlader dine sider, og din egen header, navigation og design forbliver præcis som de er. Sæt layout, udseende og adgang regler i widget byggeren, få vist resultatet, så kopiere den indlejrede snap ind på din side.
Brug den når du allerede har en hjemmeside eller program med sit eget design, og du ønsker støtte til at ske inde i det snarere end at give kunden ud til en anden adresse.
Den korte version
Studio bygger et sted, du sender kunder til. Den indhyllede medbringer billetter til hvor dine kunder allerede erMange virksomheder kører begge dele, indlejrer billetten i deres kontoområde for inkontekstanmodninger, mens de holder den hostede portal som det fulde selvbetjeningsmål med artikler og søgning.
Adresse og adgang
Adgangstilstand
Uanset om portalen er åben for nogen eller begrænset til signed- i kunderne. Åbne portaler får flere billetter og mere spam.
Valg af layout
Om portalen og hjælpecentret deler en helt eller bruger to, hvilken navigation og sidefod vises på begge overflader, og navigationssektionens etiket.
Portadresse
Den adresse, kunderne bruger. Vælg et navn og OpsIQ viser den resulterende portal og matchende hjælp center adresser. Ændring af det senere bryder links, du allerede har sendt.
Dit eget domæne
Serverer portalen fra et domæne du ejer, såsom support. yourdomain. com.
Indlejret billetteringsportal
Skifter på drop- i widget beskrevet ovenfor, og åbner indlejrede builder, hvor du vælger layout, udseende og adgang regler, få vist resultatet og kopiere snippet til din side. Dette er ikke Portal Studio: Studio designs den hostede portal, dette sætter billetter inde dit eget websted. Begge kan være på én gang.
Hvordan kunder logger ind
Disse er dine kunder sign-in muligheder. Personale sign - in er konfigureret under Indstillinger, Sikkerhed.
Signal- i metoder
Hvilke indstillinger vises på signe- in side. Forbinder og e-mail sign- i arbejde automatisk.
Socialt login
Forbrugerkontoudbydere, der hver har brug for et klient- og -hemmeligt id, med den omdirigerede adresse, som OpsIQ leverer til at registrere sig hos denne udbyder.
Enkelt signal- on (OIDC)
Kundesign- i gennem en identitet udbyder, med udsteder URL, klient-id, hemmelighed og en valgfri tilladt e-mail domæneliste.
Kunde SAML 2.0
EU SAML tilsvarende. OpsIQ leverer ACS-svaret URLog SP enhed ID; du leverer den IdP enhed id, sign-in og sign - ud URLs, X.509 certifikat og valgfri attributnavne. Drej SAML på i Sign-in metoder, eller det vil ikke forekomme.
Søgeløse signatur- i din app
En underskrevet dyb link, så en kunde allerede logget ind til din ansøgning lander i portalen uden at logge ind igen. OpsIQ leverer signeringshemmeligheden, portal URL og arbejdsrums nøgle, plus en generator til et signeret testlink. Brug generatoren før du skriver nogen kode.
Skriv under overalt
Underskrivelse ud af portalen også tegn kunden ud af din ansøgning.
Indtagelse og beskyttelse
Formularfelter
Hvilke strukturerede felter anmodningen formular indsamler. Hvert ekstra felt mister indlæg, så spørg kun om, hvad du har brug for at triage.
Beskyttelse af spam og misbrug
En honeypot og hastighedsbegrænsning beskytter altid den offentlige form. Øverst kan du blokere engangs e-mailadresser, tilføje dine egne blokerede domæner, og tilføje en CAPTCHA ved hjælp af GooglereCAPTCHAellerCloudflareTurnstile.reCAPTCHAgenbruger de nøgler, der allerede er sat under Indstillinger, Sikkerhed; Turnstile tasterne indtastes her.
Portalanalytics
En read- only summary of portal activity in the last thousand days.
Indstillinger
Indstillinger: Tilladelser, licenser, Cron- og fareregion
Systemgruppen, plus team- adgangskontroller der afgør hvem der kan se hvilke Indstillinger fanebladet.
Team Access og tilladelser
Per- admin tilladelser
Hver admin får et eksplicit sæt tilladelser, der dækker chat-indbakke adgang, som Indstillinger sektioner de kan redigere, og deres afdelinger. Enhver med Full Administrator rolle altid har enhver tilladelse. Opsætning tilladelser beslutte, hvilke faner en person ser, så giv den smalste sæt, der lader dem arbejde.
Licens
Viser dit nuværende kørekort, hvad det giver dig ret til og dets status.
Kron- opsætning
På OpsIQ cloud de planlagte opgaver kører for dig, og fanen er skjult. En linje af crontab drev hver skemalagte opgave: billet auto- svar, eskalering routing, udskiftning-rate opdaterings-, postkasse polling og konnektor synkronisering.
1
Kopiér linjen
Fanebladet viser den nøjagtige crontab linje for din server med den korrekte PHP binære allerede valgt.
2
Tilføj det til crontab
Kør crontab-e som brugeren, der kører PHP og indsætte den enkelte linje. På cPanel bruge Cron Jobs værktøj i stedet.
3
Verificér
Inden for et minut hjerterytmen fliser lyser op. Brug Kør nu til at teste med det samme i stedet for at vente.
Hjertepanelet viser sidste løb, varighed og hvad der blev behandlet for både auto- svar kø og e-mail og connector poll. Det advarer om, når den sidste kørsel kom fra den manuelle web-knap i stedet for en reel server cron, og når et hjerteslag er gået skævt.
Fare-zone
Slet alle sporingsdata
Kører alt OpsIQ indsamlet eller genereret. Du sætter kryds i, hvad der skal inkluderes og skrive bekræftelsessætningen præcist. Indstillinger og site konfiguration, blokerede adresser, alt dit team skrev (videnbase, FAQ 'er, oversættelser, portal design, handling definitioner) og samtykke kvitteringer er alle bevaret.
Udnytte data ældre than
Den samme sweep begrænset til rekorder ældre end 30, 60, 90 eller 180 dage, eller et år. Ved automatisk rulning retention bruge fastholdelse værdier i Generelt og Tracking i stedet og lade den planlagte opgave gøre det.
🚫
Eksportér en sikkerhedskopi fra Indstillinger, General før du bruger noget i Fare Zone. Disse handlinger kan ikke fortrydes.
Indstillinger
Håndtering af dit team
Inviter teammedlemmer og tildele roller til at kontrollere, hvem der kan få adgang til hvad.
HoldDen rigtige team skærm: hver admin med deres kontakt, rolle og de afdelinger, de kan nå, agenter scoped, ejere fuld.
Ruller
Ejer
Fuld adgang, herunder licens, fakturering og farezone.
Fuld Admin
Fuld adgang undtagen licens og fare zone. Kan administrere administratorer.
Agent
Kun til de udvalgte afdelinger.
Invitation til teammedlemmer
1
Gå til team
Naviger til holdet i sidepanelet.
2
Klik på Invitér
Indtast teammedlemmets e-mail.
3
Sæt rolle
Vælg ejer, fuld admin eller agent.
4
Tildel afdelinger
For agenter, vælg tilgængelige afdelinger.
5
Send invitationen
De modtager en e-mail med et setup link.
Indstillinger
Holdets ydeevne
Hvordan dit supporthold udfører. Adgang er med tilladelse, ikke af rolle: visningen tilladelse åbner siden, administrere tilladelse låse mål, QA og de alfanumeriske læser, og belønnings- finansielle tilladelse er hvad tilføjer Belønning fanen. Et team bly kan gives nogen af disse uden at blive en fuld administrator.
Holdets ydeevneDen virkelige team- performance skærm: hver agent scorede på volumen og CSAT, med en belønning balance kan du betale ud per række.
Hvordan siden er organiseret
Team Performance er fem faner. Hver svar et andet spørgsmål, og de bestilles af hvor hurtigt de normalt har brug for dig.
01 Kommandocenter
Live kø tilstand, kunderesultater mod dine mål, hvordan kapacitet blev brugt, situationer har brug for en beslutning, og bevis- justeret per-holdmats indeks.
02 Teammates
Leaderboardet, anerkendelse (mest forbedret og striber), quests, og opt- i kontrol for hvem kan se rangering.
Token værdi, udbetaling krav, og den regulerede periode tildeling: autorisere et finansieret loft, gennemgå forhåndsvisning, afslutte.
05 Historie
Hvordan arbejdsrummet har bevæget sig over tid: trendmålinger med et diagram, og en 28-dag dækning heatmap viser, hvornår holdet faktisk arbejdede. Hvert kort skjuler sig selv indtil der er nok historie til at tegne det.
Uscorede er ikke nul
En holdkammerat uden nok håndteret volumen - eller hvis dimensioner der er beviser for, der giver op til halvdelen af den indstillede vægt - vises som uscoret. Deres score, rang og band er tomme og deres nedbrydning er skjult. Dette er bevidst: at gøre en fraværende måling som nul sætter nogen i bunden af en rangering for at have en rolig uge. Bevistærskler kan indstilles per arbejdsområde i mål & scoring.
De to bevisgrænser gør forskellige job, og det er værd at holde dem adskilt. Minimum håndteret afgør, om nogen scores overhovedet. Minimumssatser påvirker ikke score: det beslutter tildeling og belønning berettigelse. Så en holdkammerat kan være fuldt scorer og rangeret og stadig ikke er berettiget til denne periode, fordi for få kunder bedømt dem.
💡
Hvert tal er opfanget til det arbejdsområde, du ser, og den tidshorisont, du vælger. En holdkammerat, der arbejder i to separate arbejdsrum har en uafhængig rekord i hver. To undtagelser værd at vide: et websted GROUP er ét arbejdssted, så dens medlem domæner måles sammen; og All- sites se bevidst måler alt på én gang.
Præstationsindekset
En sammensat af fem dimensioner, hver målt mod et mål du har sat snarere end mod kolleger, derefter trukket mod midten, når beviserne bag det er tynd. Bemærk retningen: justeringen flytter figuren mod 70, så en tynd fremragende score trækkes ned og en tynd dårlig score trækkes op. En dårlig første uge på fire samtaler er ikke en fast dom enten. Som dokumentation akkumuleres den tilpassede tal konvergerer på rå én.
Kvalitet
Kundetilfredshed fra verificerede feedback. Suppleret af QA scorecard resultater, hvor disse findes og er styret.
Responsivitet
Første svartid på P50 og P90 percentilerne, mod dine mål.
Opløsning
Opløsningstid og one-touch opløsnings hastighed.
SLA
Tilslutning mod den SLA, du konfigurerede, plus risiko og overtrådte tællinger.
Stewardship
Genopen og overførselsrater - det arbejde, der kommer tilbage.
💡
Vægtene er konfigurerbare og relative; de behøver ikke at total 100. Manglende beviser kan kun sænke indekset, aldrig hæve det - den fuldt konfigurerede vægt forbliver i nævneren.
Kapacitet og produktionstid
Occupationcy, produktiv tid, løst per produktive time og online andel af vinduet. Udnyttelse er bevidst ikke rapporteret: det har brug for planlagte timer som nævner, OpsIQ har ingen arbejdsskema eller skift kilde, og en substitueret nævner ville være et gæt iført en procentdel tegn. Det lyder som utilgængelig med den årsag knyttet.
⚠️
Kun rapportering. Occupancy siger, hvordan tiden blev brugt, aldrig hvor godt det blev brugt og det aldrig midler, porte eller størrelser en betaling. En holdkammerat uden hånd- tid beviser lyder som utilgængelig, aldrig som nul.
Kvalitetssikring
En scorecard er rubric reviewere score reelle samtaler mod. Kun en offentliggjort version kan modtage en evaluering, og udgivelse af en ny version aldrig omskriver hvad der allerede blev scoret. En gennemgang er bevis på én samtale, ikke en dom på en person.
Anmelderaftale
Anmeldt som en chance- korrigeret statistik (Cohen 's og Fleiss' kappa), ikke en rå aftale procent. To anmeldere, der passerer alt er enige 100% af tiden, mens de bærer ingen oplysninger.
Revisor drift
Om en anmelder scorer systematisk hårdere eller blødere end sine kolleger på samme samtale - en sammenligning med resten af panelet, ikke en tendens over tid. Det har brug for en interaktion gennemgået uafhængigt mere end én gang.
Tvister
En holdkammerat kan formelt bestride beviser, der er registreret om dem. En åben tvist blokerer belønnet-periode afslutning indtil det er løst.
Self- revision
En holdkammerat kan ikke selv vurdere det.
⚠️
AI- graderede evalueringer kan ikke påvirke løn, før en kalibrering er offentliggjort viser modellen er enig med menneskelige anmeldere tæt nok, målt ved kappa mod et minimum prøve. En åben gate betyder modellen er enige med folk tæt nok til at tælle - det betyder aldrig modellen er korrekt.
Anerkendelse
Ranking alene har dokumenteret fejl tilstande: metrisk gaming, udbrændthed, og offentlig skamp af hvem der er sidst. Tre alternativer sidde ved siden af det.
Mest forbedret
Målt mod en holdkammers egen tidligere rekord, aldrig imod kolleger, med krympning så en lille nævner ikke kan købe en sejr.
Streaks
Konsistente perioder, der møder en fast, erklæret bar - gennemsnitlig rating, håndteret volumen, vurderinger tæller og negative- feedback sats, alle absolutte tal. Alle kan holde en stribe samtidigt, så det skaber ingen rangering, og en kollega har en ekstraordinær måned ikke kan bryde din.
Opt- in ranking
En holdkammerat ser altid sit eget indeks; om de ser kolleger er en beslutning om arbejdsområde. Procentive bands kan offentliggøres i stedet for absolutte positioner.
💡
Anerkendelse aldrig rører penge. En streak kan ikke finansiere en udbetaling eller bryde en, og mest forbedret er ikke en tildeling kategori.
Søgearter
Et mål, som holdet arbejder hen imod, målt mod en fast angivet bar i stedet for mod hinanden - så alle kan klare den samme søgen i samme periode.
Anvendelsesområde og kadence
Individuelt eller team; one-off, repeterbar, eller sæsonbestemt med et eksplicit vindue.
Kriterier
Samtaler håndteret, ratings modtaget, aktive dage, gennemsnitlig bedømmelse eller negativ feedback rate. Alle absolutte - ingen metrisk hvis værdi afhænger af hvad kolleger gjorde.
Kvalitetsvagt
Krævet på enhver søgen med et volumen mål. At slå antallet mens kvalitet falder under gulvet tilbageholder søgningen snarere end at fuldføre den, og det vises som tilbageholdt, ikke ufærdig.
Gentagelsesgrænser
En per- periode cap, drevet af den hurtigste kriterium, plus en valgfri nedkøling før en gentagelse kan tælle.
Team quests
Fælles fremskridt med ingen per- holdmat tildeling offentliggjort, så en team søgen kan ikke blive et leaderboard.
Coaching sessioner
En coaching session er en rekord, ikke en chat. Det har en træner, en holdkammerat bliver trænet, en planlagt tid, aftalte talking punkter, og et resumé skrevet bagefter. Real chats, billetter og QA evalueringer er fastgjort til det som bevis, så samtalen er forankret i arbejde, der faktisk skete snarere end til en husket indtryk.
Talgpunkter
Vi er enige før mødet, så holdkammerat ikke går ind i en overraskelse.
Beviset
Chats, billetter og QA evalueringer knyttet til sessionen. En pin gemmer en reference - en type og et id - ikke en kopi, så det altid peger på den levende rekord. OpsIQ verificerer ikke id før du accepterer det.
Aktionsposter
Hver med en ejer og en forfaldsdato. Et element forbi sin dato er vist som forsinket - en afledt tilstand, ikke en status nogen behøver at huske at indstille.
Private notes
Trænerens egen note. Den holdkammerat, der trænes i, kan aldrig læse den - ikke som agent, ikke som manager, ikke en ejer. Denne check kører før alle andre tilladelser og kan ikke tilsidesættes.
Hvem kan se en session
Træneren, holdkammerat og alle med managementets tilladelse.
Revision
Hver oprette, opdatere, pin, unpin og afslutning er optaget med hvad der ændrede sig, af hvem.
💡
Coaching er bevidst adskilt fra scoring og penge. En session ændrer ikke nogens indeks, ikke porto en belønning, og vises ikke på leaderboard.
Belønninger og priser
Optaget aktivitet konverterer til tokens med en kontantværdi du har sat. Vejen til en betaling er bevidst langsom og hvert skridt registreres.
1
Sæt symbolværdien
Hvor mange tokens er lig med hvor mange penge, og hvad hver aktivitet er værd.
2
Godkend det finansierede loft
I en lukket kalenderperiode angiver en fuldstændig administrator de maksimale tokens, den kan betale. Gemning af indstillingerne formular tillader ikke et budget, og det kan ikke ændre et loft, der allerede er godkendt.
3
Gennemgå forhåndsvisningen
Modtagere, reservere og grunden til at ingen er ukvalificeret.
4
Færdiggør
Tildelingen registreres permanent med beviserne bag det. En periode, der er tildelt intet kan blive afvist og re- køre direkte. En, der udstedte tokens skal vendes først: OpsIQ skriver en kompenserende post mod hver tegnebog og aldrig sletter originalen, så hovedbogen stadig viser, hvad der skete, og hvorfor, og kun derefter er den periode, som frigives. Tilbagebetalingen nægter, hvis nogen allerede har indløst mere end det beløb, der bliver inddrevet, og navne hvem og hvor meget.
⚠️
Støtteberettigelse kræver verificeret kundefeedback. AI kvalitet scores kan supplere denne vurdering, men aldrig erstatte det, og en holdkammerat vist som Unscored er ikke berettiget. Hver bidragyder er begrænset til 25% over deres forventede andel af perioden, så en meget høj volumen måned kan ikke absorbere hele budgettet.
💡
Kontoejeren deltager ikke i prisbelønninger eller symbolpræmier uden at skifte. De godkender det finansierede loft og afslutter alle tildelinger, og der er ingen over dem, der kan godkende, hvad de selv betaler. Deres arbejde måles, scores og rangeres på brættet præcis som alle andre.
Alle andre deltager som standard, team fører og medejere inkluderet. For at udelade nogen, åbne dem i Team & Afdelinger og slukke for Tages del i priser og belønninger mulighed. Deres arbejde er stadig scoret og vist; de stopper med at være en kandidat fra det punkt på, og intet allerede afsluttet er rørt.
⚠️
Ingen godkender penge til sig selv. Fordi de mennesker, der kan deltage, er også dem, der kunne godkende udbetalinger, OpsIQ nægter en udbetaling eller kredit i din egen tegnebog, betaler din egen fordring, afslutter en periode, hvor du ville blive betalt, og afslutte en pris, du ville vinde. En anden fuld administrator eller ejeren skal gøre det. Betal alle krav springer din egen og rapporterer det som sprunget, ikke mislykkedes.
Hvem kan se og gøre hvad
Vis team ydeevne
Bestyrelsen, live tilstand, kapacitet og kvalitetsoversigt for arbejdsområdet.
Styre teamets ydeevne
Mål og scoring, eksport, QA scorecards og evalueringer, coaching, quests, og de læser, der bærer profit- identificere data såsom per- admin historie og prisuddeling historie.
View team belønning finansielle
Saldi, kontantværdier, tilgodehavende noter og betalingsreferencer - adskilt fra performance dokumentation, fordi det er payroll- tilstødende.
Kun fuld administrator
Hver pengemutation: at betale en belønning, betale eller afvise et krav, godkende et budget, færdiggøre, frakende eller vende en tildeling, og fastsætte den-to-kontante sats. Disse kan ikke uddelegeres ved at give en tilladelse.
Brug det retfærdigt
Præstationsindekset er ledelsesbevis, ikke en automatisk beslutning om beskæftigelse. Åbn kildesamtaler bag et nummer før du handler på det, og vejer sag kompleksitet, tidsplaner, orlov og tilgængelighed behov. En enkelt vanskelig uge ser intet som et vedvarende mønster.
Indstillinger
Dine sites (arbejdsrum)
Websteder (arbejdsrum) lader dig administrere flere hjemmesider fra en OpsIQ installation. Hver har sin egen tracking, AI, stik og team adgang.
WebsitesDen rigtige Sites skærm: hvert websted er sit eget isolerede arbejdsområde (eget domæne, stik og indstillinger), tilføjet og åbnet fra en liste.
Oprettelse af et websted
1
Gå til Forbundne steder
Naviger til Connected Sites.
2
Tilføj et nyt websted
Indtast navn, domæne og beskrivelse.
3
Kopiér lokalitetsnøglen
Each site gets a unique key (site_xxx) for the widget snippet.
4
Indstil uafhængigt
Hvert websted har sin egen AI, stik og indstillinger.
Hvor mange sider kan jeg have?+
Det afhænger af din licensaftale.
Indstillinger
Licens og plan
Din OpsIQ licens kontrol funktioner, site begrænsninger, og AI kreditbalance.
LicensDet rigtige licenscenter: din plan og aktive status, maskerede nøgle, din AI- kredit balance, og en one-klik kraft re- verificér.
Licensnøgle
Indtast i Indstillinger > Licens. Valideret mod OpsIQ licensserver.
Licensprede- / valideringscertifikat
OpsIQ normalt læser sin underskrevne lokale licens cache og genopfrisker validering, når det er nødvendigt. Brug Force fjernkontrol, når du har brug for et øjeblikkeligt resultat; Diagnostics identificerer DNS, HTTPS eller servertid problemer.
Planlægning
Afgrænsninger af tilgængelighed og grænser for funktioner.
Grænse for lokalitet
Maksimalt antal arbejdsrum.
AI-kreditter
Hvis du bruger Managed AI, din kredit saldo er vist her.
Udløbsdato
Fornyet før udløb for at undgå afbrydelse af tjenesten.
Hvad sker der, når min licens udløber?+
Tracking, billetter og CRM fortsætter. AI har pause indtil fornyelse. Data er bevaret.
Indstillinger
Profil, adgangskode og tofaktorgodkendelse
Hver administrator kan opretholde sin egen identitet, arbejdspræferencer, adgangskode og tofaktorgodkendelse.
Profilindstillingerne tilhører den signed- in administrator og ændrer ikke arbejdsrumsbranding. Brug en unik adgangskode og aktivér to-faktorgodkendelse. Ændring af en e- mail- eller autentificeringsindstilling kan kræve re- verificering eller et nyt sign- in.
Indstillinger
Underretningspræferencer
Underretningspræferencer kontrollerer, hvilke operationelle begivenheder der når frem til en administrator i produktet eller pr. e-mail.
ProduktskærmAnmeldelsessiden giver per- event in- app og e-mail valg plus en nylig notifikationsliste.
Indstillinger dækker billet tildeling, kundesvar, SLA advarsler, chat aflevering og AI godkendelse begivenheder. Hold hastende operationelle signaler aktiveret et sted; slukke e-mail ikke nødvendigvis slukke for in-app meddelelse.
Indstillinger
Sikkerhedstilsyn
Sikkerhedsoversigten er den første skærm til vurdering af blokke, login angreb, trusselssessioner, sikkerhedstendenser og begivenhed integritet.
ProduktskærmSecurity Oversigt kombinerer aktuelle risikokort, en 14-dag trend, angriberliste, begivenhed feed og integritet status.
Brug overskrifterne til triage, og åbn derefter den relaterede revision, Mislykkede Loginer, Blokeret IPs eller JavaScript Fejl side for record-niveau arbejde. 14-dag trend er mere nyttigt end en enkelt spike. High- trussels sessioner bør undersøges mod besøgende, anmodning og godkendelse beviser før en permanent blok anvendes.
Indstillinger
Tamper- evident revisionslog
Revisionsloggen registrerer, hvem der gjorde hvad, hvornår, hvilket objekt, på hvilket risikoniveau og om det lykkedes.
ProduktskærmRevisionssiden giver søgbare, uhåndgribelige aktiviteter med handling, skuespiller, risiko, mål og resultat.
Filtrér ved handling, risiko og aktør; eksport CSV eller JSON for en undersøgelse. Hash kæden hjælper med at opdage manglende eller ændrede revisionsrækker, men det erstatter ikke beskyttede sikkerhedskopier og begrænset databaseadgang. Behandl revision eksport som følsom, fordi de kan identificere brugere, optegnelser og sikkerhedshandlinger.
Operationer
Diagnostik
Diagnostics forvandler undersystemkontrol til klar- engelske helbredsresultater og direkte næste handlinger.
ProduktskærmDiagnostiske grupper sundhedstjek for widget, AI, billetter, integrations, Website Intelligence, baggrundsopgaver, CRM automatisering, licenser og opbevaring.
Sidekontrollen Site Speed, rank / søgeord / backlink / lokale data, AI og action gateway, billetter, crawler / audits, integration / begivenhed indtag, baggrundsopgaver, CRM-automatiseringer, licens, widget og relaterede produkttjenester. Det forsætligt rapporterer operatørlæsbare årsager snarere end at afsløre rå hemmeligheder.
Efter en ændring, Genopfrisk og bekræfte det berørte delsystem giver sund. En grøn diagnostik side er nødvendig, men ikke tilstrækkelig til lancering; fuldføre Pre-launch checkliste så godt.
Indstillinger
Sikkerhed og adgang
OpsIQ indeholder flere sikkerhedslag til at beskytte din admin, data, og API adgang.
Sådan virker detSikkerhed
Sikkerhedselementer
Admin- godkendelse
E-mail / adgangskode med valgfri 2FA.
Låsning af login
Midlertidig lås efter for mange mislykkede forsøg.
IP blokerende
Block IPs eller CIDR spænder fra adgang til sporede websteder.
Trussel scoring
De kan blive blokeret af politiet.
HHTTPS-håndhævelse
Krævet for alle forbindelser. HTTP omdirigerer til HTTPS.
Alle brugerindgange er undsluppet. CSP-headers begrænser script- udførelse.
SSRF-beskyttelse
Udgående webkroge blokerer private / interne IP adresser.
Anbefalet opsætning
1
Aktivér 2FA
For alle admin konti.
2
Stærke adgangskoder
Minimum 12 tegn, blandet.
3
Revisionskonti
Fjern adgang for tidligere teammedlemmer.
4
Skærm mislykkedes login
Tjek hver uge for mistænkelige mønstre.
5
Hold dig opdateret
Anvende opdateringer straks for sikkerhedsplastre.
Indstillinger
Roller og tilladelser
Role- Based Access Control lader dig kontrollere, hvad hvert team medlem kan gøre.
Roller og tilladelserRollematricen på et øjeblik: Ejer får alt, Full Admin alt undtagen fakturering og fare zone, Agent kun deres scoped billetter.
Standardroller
Ejer
Alt, herunder licens, farezone og installation management.
Fuld Admin
Alt undtagen licens og farezone.
Agent
Svar på assigned-afdeling billetter og chats, se analytics. Ingen indstillinger, team, eller sikkerhed adgang.
Kan jeg skabe brugerdefinerede roller?+
Tre opgaver plus afdelingens opgave giver en granulær kontrol.
Indstillinger
Blokeret IPs
Administrer IP adresser blokeret fra adgang til dine sporede websteder.
Blokeret IPsDen rigtige BlockCity in New York USA IPs skærm: blok en enkelt IPeller et CIDR-område, og styre listen, hver med sin dato, årsag og one-klik unblock.
Hvordan man blokerer
1
Gå til sikkerhed > Blokeret IPs
2
Tilføj et IP - eller CIDR-område
Eksempel: 203.0.113.42 eller 203.0.113.0/24
3
Tilføj en årsag
Dokument hvorfor: spam, misbrug, skrabning, osv.
Vil blokering påvirke legitime brugere?+
Hvis kunderne deler en virksomhed IP eller VPN, der blokerer det IP Bloker alle på den. Brug smalle blokke.
Indstillinger
Mislykkede login
Alle mislykkede login forsøg på din OpsIQ admin.
Mislykkede loginDen virkelige mislykkedes logins skærm: hver konto /IP med sin fejltælling og sidste forsøg, blokere en brute- kraft kilde lige fra rækken.
Hvad hver indgang viser
Dato / tidspunkt
Da forsøget skete.
E- mail
E- mail- adresse brugt.
IP -adresse
- Det er en kilde til forsøget.
Land
Geografisk placering.
Årsag
Forkert adgangskode, låst eller ikke fundet.
Advarselsskilte
Mange forsøg, samme e-mail
Password gætte. Sikre 2FA er aktiveret.
Mange forsøg, forskellige e-mails
Automatiseret angreb. Bloker kilden IP.
Usædvanlige lande
Hvis dit team er lokalt, udenlandske forsøg er sandsynlige angreb.
Indstillinger
AI-sikkerhedsanalytiker
En opt- in analytiker lag over Security-sider: Dommerens, hændelse briefinger, en daglig fordøje, en ugentlig stilling check, Spørg Sikkerhed, og 0-token block politikker. Det aldrig kører i den besøgende anmodning sti.
Hver Security side registrerer, hvad der skete, men læsning det stadig tager dom. AI sikkerhed analytiker tilføjer denne dom på plads, og det er bygget til at bruge næsten ingenting: det aldrig sidder i fyrtårn eller login sti, deterministiske regler afgøre de indlysende tilfælde med ingen AI opkald, domme caches, og analytikerens bedste output er en deterministisk regel, der derefter håndhæver evigt på nul tokens. Tænd funktioner på Indstillinger → Sikkerhed; alle standard slukket.
Hvad det tilføjer
Veriktér chips + Forklar
Blokeret IPs og Failed Logins rækker viser en godartet / mistænkelig / fjendtlig chip med en tillidsscore. Forklar åbner ræsonnementet, de anvendte fakta og one- klik Block / Release handlinger. Cached 24h, så re- visning af en IPer gratis.
Hændelsesbriefinger
Relaterede begivenheder klynge sig ind i en hændelse (login bølge, URL scanning, auto-blok burst) med en plain-engelsk tidslinje og et anbefalet næste skridt. Løbende angreb fold ind i samme hændelse.
Daglig digteComment
En opsumning per dag: i går versus din baseline, blokke, hændelser, og den enkelte ting at gøre. Stille dage sende en deterministisk all- klar på nul tokens.
Ugentlig kontrol af kropsholdning
En mandag hærder checkliste (2FA huller, lockout tærskel versus reelle angreb volumen, advarsler off) med en sværhedsgrad, indsats og præcis fix per element.
Spørg om sikkerhed
Et spørgsmål felt på Security Oversigt, der svarer fra din live sikkerhed tilstand. Dybe serverspørgsmål gives til admin ingeniør chat snarere end gættet.
Politikforslag + autopilot
Analytikeren foreslår konkrete blokregler som Accept / Dismiss kort; godkendte regler håndhæves på nul tokens med en live hit counter. Valgfri autopilot godkender kun de sikreste regler automatisk.
Indstillinger
AI security analyst (security_ai_enabled)
Master switch. Aktiverer dom chips, Forklar og Spørg sikkerhed. Kun tvetydige IPs nå modellen, bøjet ind i et opkald.
Incident briefs (security_ai_incidents)
Klynger begivenheder ind i hændelser og skriver hver ny historie. Kører på den eksisterende time sikkerhed cron.
Daily digest (security_ai_digest)
En sikkerhed indsnævring per dag på klokken og Oversigt. Stille dage koster ingenting.
Weekly posture check (security_ai_posture)
Mandag hærder tjeklisten i oversigten. Tjeklisten er fuldt deterministisk.
Policy autopilot (security_ai_autopilot)
Lader analytikeren aktivere sine sikreste forslag uden opsyn: kun reversible tid- begrænsede blokke, enkelt IPs eller intervaller, der ikke er større end /24, aldrig delt / mobil / privat, begrænset 10 pr. time, altid revideret og uopnåelig.
💡
Every call is tagged security_ai with its own monthly cap in AI Config → Cost Guardrails (default 300k tokens). If the cap is hit, features degrade to deterministic reads. Blocking, lockouts and alerts never depend on this budget. The analyst can never delete data, change settings, touch the audit ledger, or make a permanent ban.
Operationer
Cron- og automatisering
OpsIQ bruger et produkt scheduler til at køre e-mail polling, billet automatisering, analytics rollups, retention, AI køer, CRM arbejde, rapporter og konnektor job.
ProduktskærmEt produkt cron entry leverer hjerteslag; OpsIQ beslutter, hvilke interne job der skal til.
Nødvendig produktcron entry
Tilføj denne ene linje til crontab for den samme server og PHP miljø, der kører OpsIQ:
Erstat /path/to/opsiq med installationsroot. Brug den fulde PHP CLI sti, når værten kræver en, for eksempel /usr/bin/php8.4.
Brug ikke top- niveau /cron.php til produktarbejde. I dette arkiv tilhører runner en separat nonproduct service uden for denne håndbog. OpsIQ produktrunner er opsiq/cron/all.php.
Hvad den forenede scheduler kører
Billet- og AI-køer
Processer, der skyldes auto- svar, eskalationer, godkendelser og andet queued produkt arbejde.
Indgående e- mail
Polls konfigurerede postkasser hvor valtning er den valgte indsugningsmetode.
Analyser og sessioner
Samler sessioner og genopfriskninger planlagte aggregater, når de er forfaldne.
CRM og engagement
Kører scoring, livscyklus, workflow, kampagne og scheduled- rapport opgaver, der er aktiveret.
Tilbageholdelse og vedligeholdelse
Udfører forfaldne oprydning, arkiv, udløb og integritet arbejde.
Connectorer
Dispatches connector cron abonnenter og polling kun til installerede, aktiverede og konfigurerede stik.
Verificér cron
Åbn Indstillinger - Kron opsætning og bekræfte, at produktet runner eksisterer.
Anvendelse Løb nu en gang, så bekræfte admin og afstemning hjerteslag opdatering.
Tjek Diagnostik for en sen hjerterytme, PHP CLI, database eller file- sti problem.
Inspektionssted /tmp/opsiq-cron.log eller den logsti du valgte når en manuel kørsel mislykkes.
Hold stik håndtere kort, idempotent og workspace- scoped. Batch lange synkroniseringer og gemme en markør / checkpoint, så det næste løb kan fortsætte sikkert.
🚫
Når produktet cron stopper, tidsbaserede OpsIQ arbejde stopper eller bliver forsinket, selvom almindelige admin sider kan stadig indlæse.
Operationer
Indsatsaktiviteter i forbindelse med hostede deployeringer
En hostet OpsIQ implementering bruger de samme produktskærme og arbejdsgange, mens hosting-operatøren styrer server lag. Kommerciel signatur- up, planer, fakturering og konto-portal procedurer er uden for denne håndbog.
ProduktskærmHosted drift ændrer, der vedligeholder infrastrukturen; det ændrer ikke hvordan kunderne bruger OpsIQ.
Hvad værtsvirksomheden normalt forvalter
Web server, PHP runtime, database service, TLS og opbevaring.
Den samlede produkt cron og dens serverniveau logs.
Programopdateringer, infrastrukturovervågning og sikkerhedskopieringsprocessen som defineret i værtsaftalen.
Hvad en OpsIQ administrator stadig håndterer
Websites og widget installation, AI indstillinger, viden, postkasser og customer-support arbejdsgange.
Team adgang, afdelinger, sikkerhedskontrol, API nøgler, stik, automatiseringer og data- retention indstillinger.
Produktverifikation gennem diagnostik, revisionslog, stikprøvekontrol og ægte ende- to- end kontrol.
Operationel kontrol
Antag ikke, at en styret service betyder, at enhver produktintegration er sund. Bekræft den seneste backup dokumentation og opbevaring politik med hosting operatør, og brug OpsIQ Diagnostik efter ændringer i DNS, e-mail, AI-udbydere, websteder eller konnektorer.
Dette afsnit omfatter kun produktoperationer. Kommercielle onboarding, abonnementer, fakturering og kundekonto administration forbliver uden for OpsIQ håndbogen.
Operationer
Selvstændig hosting OpsIQ
En selv-hosted OpsIQ installation kører på infrastruktur du styrer. Du er ansvarlig for runtime, database, TLS, produkt cron, sikkerhedskopier, opdateringer og overvågning.
ProduktskærmSelf-hosting giver infrastruktur kontrol og gør dit team ansvarlig for hver drift afhængighed.
Minimumskontrakt om software
PHP
PHP 8.4 or newer. Required extensions: curl, pdo_mysql, mbstring, json, xml, openssl, zip, intl and gd.
Database
MySQL 5.7+ eller MariaDB 10.3+ ved hjælp af InnoDB. Opret en dedikeret database og mindst privilegeret programbruger.
Webserver
Apache eller Nginx konfigureret til OpsIQ frontcontroller, statiske aktiver og nødvendige omskrivere.
HTTPS
Krævet for admin sessioner, widget trafik, API nøgler, webkroge og udbyder opkald.
Ugående adgang
Tillad DNS og HTTPS adgang til AI, e-mail, stik og licens endpoints du faktisk aktivere.
Filadgang
Web- og CLI-brugerne skal kunne læse programfiler og kun skrive til de dokumenterede driftstimer / lagersteder.
Kren
Kør OpsIQ produktscheduler hvert minut med samme applikationskonfiguration og databaseadgang som webprocessen.
Installationssekvens
Upload udgivelsen til den planlagte dokumentroot og bevare den medfølgende mappestruktur.
Opret databasen og applikationsbruger, og indtast derefter databasen, kanoniske URL og licensindstillinger.
Kør installations- / opsætningsstrømmen og opret den første ejerkonto.
Aktivér HTTPS og verificer omdirigeringer, cookies og den offentlige kontrol /API stier.
Åbn indstillinger - Cronopsætning og diagnostik; kør scheduler én gang og løse hver mislykket afhængighed.
Indstil backup, gendannelse af test, log retention og opdateringsprocedurer før du tilføjer produktionsdata.
Opdatering sikkert
Læs udgivelsesbemærkningerne og tjek den nødvendige PHP / udvidelser, før du skifter filer.
Sikkerhedskopiér databasen og program- / konfigurationsfiler, og vis så at sikkerhedskopien kan gendannes i en testplacering.
Indled de nye filer uden at slette installeringsspecifikke konfigurations- eller runtime data.
Kør den leverede migration / før flyvning proces og kontrollere login, widget tracking, billetter, e-mail, AI, stik og cron.
Hold den tidligere udgivelse og database backup til rådighed for dokumenterede rollback vindue.
🚫
Deposittop- niveau /cron.php er ikke OpsIQ produkt scheduler. Point produkt automatisering kun på opsiq/ cron / all.php.
⚠️
Do not delete .schema_cache.json as routine maintenance. Remove it only when the product instructions explicitly require a schema-cache rebuild.
Operationer
Produktionsvejledning
Checkliste og bedste praksis for drift af OpsIQ i produktionen.
ProduktionsvejledningEn go- live tjekliste så intet er gået tabt: domæne + SSL, uddannet AI, testede stik og cron, sikkerhedskopier og fastholdelse, og team roller.
Kør kildegates og komplet rigtige produkt kontrol før en udgivelse eller første produktion lancering. En kommando er tilgængelig er ikke bevis for, at det passerede i dit miljø.
ProduktskærmUdgivelsesvisningen viser, at portene skal køre; den præ- mærke dem ikke som bestået.
Kilde- og udløsningsporte
Kør lagerkontrol fra installationsroot og holde deres komplette output med udgivelsesrekorden.
Primær før flyvning gate
php tools/preflight.php
Udvidet udgivelse- port
php tools/release_gate.php
Førflyvningen kontrollerer PHP 8.4 runtime og krævede udvidelser, udfører en PHP syntaks feje, kører AI evaluering skib gate og fuld PHPUnit suite, og kører PHPStan / Node kontrol, når disse værktøjer er installeret. Den udvidede port omfatter også røg, clean-install / schema og browser end-to-end kontroller, når deres miljø er konfigureret.
En skippet check er ikke et pass. Optag, hvorfor det var utilgængelig, installere den manglende afhængighed eller køre det i den korrekte CI / iscenesættelse miljø før udgivelse.
Produktkontrol
1. Authentication og roller
Log ind som hver tilsigtet rolle; kontrollere tilladte og nægtet sider / handlinger.
2. Kontrol og sporing
Indlæs et rigtigt websted i en privat browser; verificer beacon trafik, Live Feed, besøgende og session optegnelser.
3. Chat og AI
Stil repræsentative spørgsmål; kontrollere viden jordforbindelse, sikkerhed, eskalering og AI historie.
4. Billetter
Opret, angiv, svar, eskalér, luk og genåben gennem hver aktiveret indsugningssti.
5. Email
Test udgående levering og hver konfigureret indadgående postkasse eller webhook sti.
6. CRM og analytics
Opret en kontrolleret kontakt / handel / konvertering og verificer dashboards, tragte, scoring og rapporter.
7. Connectors
Kør forbindelsestest, én læse, en sikker skrive / tør køre og webhook / polling stier for hver aktiveret stik.
8. API og netkroge
Verificer smalle scope, hastighedsgrænser, idempotente genteties, signaturer og duplikering.
9. Cron
Kør den samlede produkt scheduler og bekræfte alle nødvendige hjerteslag i Cron Setup / Diagnostics.
10. Security
Verificer 2FA, CSR / sessionskontrol, revisionsposter, nøgletilbagekaldelser og isolering af arbejdsområdet.
11. Backup og gendannelse
Gendanne en nuværende backup i et separat testmiljø og kontrollere data og konfiguration.
12. Observationer og rollback
Bekræft logfiler / indberetninger, behold anmodningsID 'er og bevis rollback-proceduren.
⚠️
Først efter hver nødvendig gate og forretningskritisk rejse har nuværende beviser for den nøjagtige frigivelse og miljø.
Udvikler
Web Push på tredjeparts-websteder
Browser push-meddelelser (herunder OpsIQ Push Campaigns) har brug for en servicetjeneste, der betjenes fra SAME OPRINDELSE som siden.OpsIQ widget belastninger fra din OpsIQ Opsætning, så en tredjeparts websted kan ikke registrere OpsIQ er arbejdstager direkte. Være vært en lille fil på webstedets eget domæne for at aktivere push der. Kampagner leverer gennem BOTH understøttede metoder.
Sådan virker detWeb push
Hvorfor er det nødvendigt?
Browsere kun lade en side registrere en tjeneste arbejdstager fra sin egen oprindelse.OpsIQ implementering, så det ikke kan installere skubbearbejder på en kunde site, indtil du er vært for arbejderen på dette websted 's oprindelse, widget lydløst springer skubbe (ingen fejl, intet abonnement). Du har to muligheder nedenfor;OpsIQ Push Campaigns publicerer gennem begge dele.
Mulighed A · Self-hosted Web Push (VAPID, ingen tredjepart)
1. Download arbejderen fra din OpsIQ implementering: https://YOUR-OPSIQ/opsiq/opsiq-push-sw.js
2. Upload det til din webroot så det er muligt at nå på https://yoursite.com/opsiq-push-sw.js. Kontrollér auto- detekterer denne sti på sidens egen oprindelse og registrerer det, ingen snippet forandring nødvendig. (Det bruger et snævert omfang, så det aldrig erstatter en servicetjeneste du allerede kører.)
Valgfrit: hvis du skal være vært for den på en ikke-standard sti, så vis kontrollerne på den før det er kun accepteret, når sameoprindelse:
3. I OpsIQ, generere VAPID nøgler (Opsætning → Klient Chat AI → Advanced → Web Push). Kontrollen derefter beder besøgende om tilladelse til anmeldelse og abonnerer dem.
Bag en CDN /Cloudflare? Sørg for /opsiq-push-sw.js giver HTTP 200 (rense cachen, hvis det var 404 før du uploadede; en cachet 404 vil blokere registrering).
Mulighed B · Pusher Beams (forvaltet udbyder)
1. I OpsIQ indstillinger indstille push-udbyder til Pusher bjælker og indtaste dine Beams EU-varemærkeansøgning og Hemmelig nøgle.
2. Vært Beams service arbejdstager på lokalitetens rod som /service-worker.js. Modtaget https://YOUR-OPSIQ/opsiq/pusher-beams-service-worker.js, eller flette denne linje i din eksisterende rodarbejder:
Beams arbejdstager, vært på https://yoursite.com/service-worker.js
3. Det er det. Kontrollen automatisk indlæser Beams SDK og abonnerer hver besøgende på per- site interesse opsiq-site-<your-site-key>. Ingen andre ledninger nødvendige.
Hvordan kampagner leverer
Push-kampagner publicerer gennem both metoder på én gang: besøgende på den selvhostede VAPID arbejdstager får krypteret Web Push, og besøgende abonneret via Pusher Beams få de Beams publicering. Hver besøgende er nået gennem hvad de har tegnet sig for, så du kan køre sameoprindelse VAPId på nogle steder og cross-herry Beams på andre.
HTTPS er påkrævet for servicearbejdere og Web Push (localhost er undtaget for test). Admin chat indbakke bruger allerede den samme Beams rentemekanisme til operatøradvarsler.
Operationer
Fejlfinding
Fælles problemer og hvordan man løser dem.
Generelt
Blank side+
Tjek PHP fejllogfiler. Årsager: gammel PHP (har brug for 8.4+), manglende udvidelse, DB-forbindelse mislykkedes, forkerte filtilladelser.
Dashboard viser nuller+
Markér: widget installeret? Cron- køring? Datoområde korrekt? IP ekskluderet?
AI
AI svarer ikke+
Check: provider konfigureret? API tasten gyldig (brug Test forbindelse)? Budget opbrugt? Workspace AI config korrekte?
AI giver forkerte svar+
Tjek: viden base up to date? Hurtig klar? Connector opslag returnerer korrekte data? Anmeld samtale i AI Historie.
AI er langsom+
Afhænger af: udbyder API hastighed, kontekststørrelse (stor KB = flere tokens = langsommere), netværk latency. Prøv en hurtigere model.
Sporing
Widget mangler+
Tjek: script i sidekilde? JS fejl i konsol? CSP blokering? Ad blocker?
Ukendt land+
GeoIP ikke konfigureret. Brug Cloudflare (automatisk) eller MaxMind GeoLite2 database.
Brug denne fokuserede kontrol når kontrollen indlæses forkert eller Live Feed forbliver tom.
Når widget er ikke logger besøg, kontrollere stedet nøgle, indlæse siden i en privat browser, tjekke browsernetværket / konsollen paneler for blokeret beacon eller widget anmodninger, gennemgå controt- Security- Policy og ad blokkere, bekræfte webstedet er aktiv i OpsIQ, og åbne Diagnostics. En synlig chat boble ikke i sig selv bevise, at analytics beacone blev accepteret.
Henvisning
Ordliste
Definitioner af udtryk, der anvendes i hele OpsIQ.
Handling
Noget AI kan gøre gennem en konnektor eller platformen.
Agent
Et team med begrænset adgang, eller en AI-agent.
BYOK
medbring din egen nøgle, du giver din egen AI API -nøgle.
Forbindelse
Et plugin der integrerer en ekstern platform med OpsIQ.
CSAT
Kundetilfredshedsscore.
Aftale
En indtægtsmulighed i CRM.
Afdeling
En billettekategori for rute- og adgangskontrol.
Eskalering
Flytter en billet til en anden afdeling eller fra AI til menneske.
GeoIP
Besøgslokalitetsdetektion fra IP -adresse.
Handoff
Overfører en samtale fra AI til menneske.
Identitetsangivelse
Underskrevet token til identifikation af besøgende på hjemmesiden.
Videnbase
Artikler AI bruger til at besvare spørgsmål.
Bly
En besøgende, der viser købshensigt.
Blyscore
0-100 antal, der angiver konverteringssandsynlighed.
Livscyklusfase
Hvor en kunde er: Lead, Prospect, Customer, In Risk, Churned.
Managed AI
AI leveres som en del af din OpsIQ plan.
Rørledning
Visuel tavle over dealing stadier.
RBAC
Role- Based Access Control.
session
En række sidevisninger inden for et tidsvindue.
Tast for lokalitet
Entydig identifikator for et sporet websted.
SLA
Tjenesteydelsesaftale, målsvartider.
Token
Enhed af AI-tekst. 4 tegn = 1 token.
Tillidslag
Sikkerhedssystemet styrer AI autonomi.
Webhook
HTTP tilbagekald for begivenhed meddelelser.
Kontrollér
JavaScript -kode indlejret på din hjemmeside.
Arbejdsområde
Et websted med sin egen sporing, AI, konnektorer og team. Samme som "site".
Henvisning
Få mere hjælp
Hvis denne dokumentation ikke besvarer dit spørgsmål:
AI- administrator
Klik på "Spørg OpsIQ" i admin. Har adgang til denne dokumentation og din platform data.
Understøttekst
Inkludér: hvad du prøvede, hvad der skete, hvad du forventede, og eventuelle fejlmeddelelser.
E- mail
E-mail support med din licensnøgle og beskrivelse af udstedelse.
Tips til effektive støtteanmodninger
Inkludér siden
Hvilken admin side (URL eller navn).
Inkludér indstillingen
Præcis indstillingsnavn og aktuel værdi.
Inkludér fejlen
Præcis fejlmeddelelse med koder.
Inkludér trinene
Det, du gjorde, skridt for skridt.
Inkluderer forventet vs faktisk
Hvad der skulle ske, vs hvad der skete.
💡
Jo mere specifik din anmodning, jo hurtigere svar. "Det virker ikke" kræver undersøgelse. "Klik på Gem på AI konfiguration giver fejlkode 502" får et direkte svar.