Chapter 2 — Studio(Tutorial example at the end)
Why this chapter matters
Studio is where you prepare everything: describe a flow in Build App, then refine forms, message templates, workflows, data sources, AI personas, knowledge documents, report templates, sequence numbers, and the CUI Apps Package. Day-to-day operators usually run published flows from Chapter 1 Apps.
This chapter follows the Studio section of the left menu, top to bottom: Build App → Form management → Message templates → Workflow designer → Dataset management → AI staff profiles → Knowledge base → Report template library → CUI Apps Package → Sequence numbers.
Examples:
- A trader connects a weekly price sheet in Dataset management so a quoting flow always reads the latest unit price.
- HR builds an “offboarding checklist” in Form management, then uses Workflow designer to send it for completion.
- Marketing maintains approved opening templates in Message templates so support flows can legally message new customers proactively.
- Operations describes “support triage plus manager approval” in Build App, then finishes forms and knowledge files in the wizard.
2.1 Build App
Describe the flow you need in natural language (WhatsApp support routing, onboarding forms, email notices). The product clarifies requirements in chat, generates a draft, then walks you through a build wizard.
- On the welcome screen, type the need or pick a quick-start example (auto-reply, multi-step approval, onboarding form, email notice, Meta Flow survey, mixed WhatsApp + email). You can attach a reference image.
- Turn on Plan First when you want to review the plan (channel, nodes, form fields, wizard steps) before generation.
- After generation, the build wizard steps through form or Meta Flow, message template, Dataset, AI staff, knowledge base, and workflow. Each step can use the generated item or one you add.
- Apps history reopens an earlier build conversation so you can continue editing.
Build App produces an editable draft. Fine-tune in Workflow designer and Form management, then activate the flow.
2.2 Form management
Design forms for external or internal use (fields, layout, required or not). In a flow, the “Send e-Form” step sends a link; after submit, managers approve under Apps → Running forms.
For general web forms (HTML), the designer includes an AI assistant to help generate or adjust fields and layout from your description; exact placement and steps follow the product UI.
Two form types (how to choose)
| Type | Best for |
|---|---|
| Standard web form (HTML) | Flexible layout, or sharing a link to fill in a browser (quotes, event signup, etc.). |
| In-WhatsApp form (Meta Flows) | Customers fill inside WhatsApp chat; after Meta review, works better with template messages. |
- Click Add and pick a form type.
- Use the designer to add fields, required flags, and help text, then save.
- Activate the form so it can be selected in the “Send e-Form” workflow step.
You can also create a form from Word or PDF. For a paper-like layout, choose the printable document style (upload image / PDF / Word). For Meta Flows that inject process data into a template, the Flow Template body should use {{1}}, {{2}} placeholders.
Form type is fixed at creation; you cannot convert directly. If you need both, create two forms.
2.3 Message templates
Central place for WhatsApp message templates (including Meta-submitted templates). To “send a template message” proactively in a flow, a usable template must appear here first.
Important: WhatsApp connection credentials for the official channel are set when editing the company under Admin → Company / user management — not the same as the API management page.
- In Workflow designer, open a flow and add a “Send Message” or “Send template” style step.
- Pick a template and map flow data to variable placeholders (e.g. customer name, order id).
- Save the flow; at runtime the system fills those values.
The same page has a template library: filter ready-made templates by topic, use case, or industry and submit them to your WABA. After approval they send like any other Meta template.
2.4 Workflow designer
Visually chain “who gets what, when, and whether to wait for a reply or continue automatically” into an automation playbook. After activation, manual flows appear under Apps → Published apps.
The Workflow designer includes an AI assistant to help generate or adjust nodes and connections; the exact entry point and steps follow the product UI.
How the designer layout works
- Left: node palette grouped by category.
- Center: canvas; edges show order between nodes.
- Right: properties for the selected node.
- Process variables: available from the toolbar — per-run scratch data (e.g. last customer reply) for later steps; exact names follow the UI.
Common list actions
- Add: create a new flow and open the designer.
- Edit (design): change nodes and edges.
- Manual start: run one instance immediately for testing.
- Activate / deactivate: deactivated flows cannot be started from Published apps; auto triggers stop too.
- Copy / delete: copy keeps structure under a new name.
On the start node, choose whether colleagues start the flow manually from Published apps or the system starts it on events such as inbound messages. One start node per flow.
Advanced (per designer options): the start node can also create runs on a schedule or dataset condition, or when the inbox receives a matching email. Mail rules often support include/exclude on sender, subject, body keywords, attachments, extensions — similar idea to the “Wait for email reply” node.
Node reference (names follow Traditional Chinese UI)
Below: each palette node’s purpose and typical use (labels may vary slightly — trust the screen).
(1) Start and end
| Node | What it does | Example |
|---|---|---|
| Start | Entry point; choose manual start vs automatic on message/system events. | Event signup only after a web button → manual; auto greeting for support → automatic. |
| End | Completes the run; you can wire multiple ends (e.g. “success end”, “customer declined end”). | Quote declined → one end; deal closed → another end. |
(2) Messaging & commerce
| Node | What it does | Example |
|---|---|---|
| Send Message | Send WhatsApp text or media; template mode may be available per UI. | Poster image plus caption; personalised greeting with customer name. |
| Send template | Sends an approved template message for proactive outreach. | After shipping, send “Your order has shipped” with tracking id. |
| Institution ordering cart | Guides “browse categories → pick items → adjust qty → cart → submit” ordering in chat (with WhatsApp Flows). | School lunch programmes, B2B batch orders inside chat. |
| WhatsApp cart | Legacy multi-product cart; may be hidden by default in the palette — only older flows may still use it. | If your consultant migrated you, you might still see it; new designs usually use institution ordering cart. |
| AI chat ordering cart | An AI employee chats with the customer in natural language. The customer types or sends a product image; the AI matches items from the catalogue, builds a cart, and asks for confirmation. On confirm, a Sales Order is created automatically — no button-by-button selection needed. | A restaurant customer types "two rice boxes and one fish ball noodles" and the AI assembles and confirms the order; a B2B buyer sends a photo of a purchase list and the AI creates the order. |
| AI chat bot | An AI employee conducts open-ended multi-turn conversations, drawing from a knowledge base (datasets, Studio documents, and calendar events). Unlike the chat ordering cart, there is no order creation — pure Q&A and guidance. The flow continues when the customer says a configured "end conversation" phrase. | Customer service FAQ bot (product specs, return policy); automated onboarding Q&A for new employees; pre-event info chatbot. |
(3) Waiting for customers or external input
| Node | What it does | Example |
|---|---|---|
| Wait for reply | Flow pauses until the customer sends a WhatsApp message; optional prompt, who may reply, format checks or AI validation. Turn on Use knowledge base to attach a Dataset, Studio documents (multi-select), and calendar events (self or a broadcast group / hashtag, relative days) so the AI can answer against policy or the diary. Request location and Chat Bot nodes use a similar knowledge panel. | Ask “Plan A or B?” and branch on the answer. |
| Wait for QR code scan | Customer uploads an image containing a QR code; decoded value is stored for later steps. | Event check-in, voucher redemption, scanning a standee code. |
| Request location | Optionally send a template first, then ask the customer to share location — useful for delivery or field service. | Confirm drop-off area; rally point for events. |
| Wait for email reply | Pause until an email matches rules (sender, subject, body keywords, etc.). | When a vendor replies “confirm shipment”, internal steps continue automatically. |
(4) Conditions & data
| Node | What it does | Example |
|---|---|---|
| Conditional branch | Split on prior data: if condition → path A, else path B (or default). | Route “refund” mentions to a specialist queue; everything else to general Q&A. |
| Dataset query | Query, insert, update, or delete against datasets you built in Dataset management (per node settings). | Look up contract price by customer id; write an order row back to a sheet. |
| Process data cell | Move values between process variables: copy, fixed value, JSON ↔ variable, take a field from an upstream e-Form, or let AI fill from the conversation. | Copy an estate name from a form into a later notice; pack a customer reply into JSON for an ERP node. |
(5) Integrations
| Node | What it does | Example |
|---|---|---|
| Call external API | Issues an HTTP request to other software (orders, CRM, etc.) — usually configured by IT or a partner first. | After order confirmation, create a sales order in ERP. |
| Calendar | The AI reads conversation text, dataset rows, form submissions, or email attachments and generates calendar commands (create / update / delete events), which the system executes immediately. The AI checks existing events first to avoid double-booking. | Customer describes a meeting request in chat — AI creates the calendar entry; a contract PDF is parsed and expanded into monthly reminder events. |
| Odoo integration | Creates or queries documents in a connected Odoo 19 ERP instance: purchase orders, quotations, sales orders, invoices, deliveries, goods receipts, returns, credit notes, payments, and partner / product / stock lookups. AI can extract fields from PDFs, images, or conversation text automatically. | WhatsApp order confirmed → Odoo sales order created and delivery dispatched; supplier sends a PDF invoice → AI extracts line items and amounts into a purchase order. |
(6) Forms & documents
| Node | What it does | Example |
|---|---|---|
| Send e-Form | Creates a form link and sends it; after submit, managers approve under Running forms. | CSAT survey, goods receipt checklist, supplier qualification form. |
| Generate HTML report | Uses AI with your brief and data to build a printable web report. | Weekly complaint digest for leadership; meeting minutes layout from chat. |
| Generate document | Uses AI to produce structured content, then Word / Excel / PowerPoint / PDF files. You can fill a PDF or Office template, embed stamp or signature images, notify recipients, and nudge layout on the document page. Text fields that support variables can use ${seq:CODE} from Sequence numbers. |
Auto-filled quote draft, contract draft, stocktake sheet; field photos laid onto a fixed company report. |
Publish a flow from scratch
- Workflow designer → Add, drag Start, middle nodes, and End, connect with edges.
- Select each node and complete the right panel; open process variables from the toolbar if needed.
- Save, then activate the flow in the list.
- Manual flows show up under Apps → Published apps.
2.5 Dataset management
Connect tabular company data (inventory, spreadsheets) so flows can query or write back without copy-paste. Pairs with the Dataset query node.
- Click Add, name the dataset clearly, and pick a source: SQL, Excel, Google Sheets, or Odoo ERP. Odoo needs an ERP connection in API management, then a master model and fields; you can flatten one one2many detail table into a single sheet.
- Follow the wizard to connect the file or source and verify column names.
- Use preview or test, confirm data looks right, then save.
- The dataset becomes selectable in Dataset query nodes inside Workflow designer.
If sync fails, the UI usually explains why; fix the source or connection and retry.
2.6 AI staff profiles
Define personas for virtual assistants: display name, avatar, role text, notes — so customer-facing or internal AI tone stays consistent. If the menu item is missing, your role does not include this feature.
Click Add, complete each tab in the UI, then save. If the avatar preview fails, try re-uploading or confirm you are signed in.
2.7 Knowledge base
Upload Office or PDF files, convert them for AI use, and manage categories, versions, and publish. Chatbot, wait-for-reply, and report-generation steps can reference published documents.
- Upload a document (optional category). When processing finishes, preview and search title or body.
- Add versions of the same document; publish a version so workflow nodes can use it.
- Rebuild the vector index when you need RAG. If the company uses xAI Collections, create a Collection for the category, then publish to sync.
- Download the latest version or a ZIP of all versions. Deleting hides the document from the list while keeping version history for audit.
2.8 Report template library
Store Word / Excel / PowerPoint templates and bind placeholders to process variables, form fields, and photo slots — used by Generate document and Template reports.
- Upload .docx / .xlsx / .pptx, multiple files, or a ZIP (names come from the original files).
- Placeholders such as
{{PV:name}},{{EFORM:form.field}},{{SYS:DATE}},{{PHOTO:slot|cols=5}}. - Open details to review text placeholders and photo slots, save bindings; filter by category; batch download or delete.
2.9 CUI Apps Package
Bundle a workflow plus related forms, templates, etc. into one file for copying to a test tenant, another company, or backup/restore — common when a partner delivers a standard CUI Apps Package.
- Export: pick a workflow from the dropdown → run Preview to see bundled resources (forms, datasets, message templates, Meta templates, AI staff, knowledge documents, etc. — as shown) → uncheck anything to omit → start generation. Generation runs in the background; when done, download the
.studio-bundle.ziparchive. Filenames typically include the workflow name and a timestamp. - Import: upload the same bundle format → preview what will be written → if names collide, the UI lets you set import-as names → confirm import (may also be asynchronous — follow progress messages).
Preview completeness depends on bundle contents and API permissions; if preview looks wrong, check roles and that source and target environments match with your admin or consultant.
2.10 Sequence numbers
Define reusable serial rules (case numbers, repair tickets). In any workflow text that supports variables, write ${seq:CODE} to take the next number at runtime.
- Add a rule: unique sequence code (uppercase and underscores recommended), display name, prefix, date pattern, reset cycle (never / daily / monthly / yearly), padding, and start value.
- Use Test next number to preview, then save and enable.
TutorialExample: an “AI HR / expense assistant” style flow (diagram 1)
Goal: colleagues request leave or upload receipts on WhatsApp; the system checks company rules, uses AI where needed, then routes items needing approval to managers.
- Form management: leave, expense, or onboarding forms (fields per policy).
- Message templates: proactive or follow-up templates (requires WhatsApp company connection and Meta approval).
- Dataset management: leave policies, GL accounts, etc. for Dataset query nodes.
- AI staff profiles: e.g. “HR assistant”, “Expense reviewer” personas for nodes to reference.
- Workflow designer: typical chain — “Send Message / template” → “Wait for reply” (validation + AI staff) → “Conditional branch” → “Send e-Form” or “Dataset query/update” → optionally “Generate HTML report / document” → “End”.
How the product ties together: “Wait for reply” can bind validation to an AI staff member; “Generate HTML report / document” can pick an AI provider and staff, and optionally use datasets as knowledge (matches backend flow spec). Field-level UI depends on your build.