Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
660 lines
20 KiB
JSON
660 lines
20 KiB
JSON
{
|
|
"needs": [
|
|
{
|
|
"id": "building-problem",
|
|
"who": "A housing board or private owner with a problem with a building",
|
|
"wants": "Someone to come and look at it, and tell them what it would cost to fix",
|
|
"enters_as": null,
|
|
"lands_in": "enquiries",
|
|
"handled_by": "project_managers",
|
|
"done_when": [
|
|
"won",
|
|
"lost",
|
|
"declined"
|
|
],
|
|
"success": [
|
|
"won"
|
|
],
|
|
"steps": [
|
|
{
|
|
"page": "/",
|
|
"question": "What do you need done?",
|
|
"context": "Old buildings, put right by people who know them: We've been surveying, permitting and rebuilding old buildings for years, from the first look to the last coat of paint. One team from drawings to finished build: Drawings, the permit application, and the building work, all handled by us and the trades we trust. Know what it needs and what it costs: We come look at the building, work out what's actually wrong, and give you a clear price for fixing it.",
|
|
"options": [
|
|
{
|
|
"name": "Get someone out to look at it",
|
|
"description": "Tell us what's wrong and where. We'll come out, take a look, and tell you straight what it needs and what it costs."
|
|
},
|
|
{
|
|
"name": "Get drawings, a permit and a price",
|
|
"description": "You know what you want built. We'll draw it up, handle the permit application, and give you a price."
|
|
},
|
|
{
|
|
"name": "Get on our list of subcontractors",
|
|
"description": "Want to work with us on electrical, plumbing or scaffolding jobs? Send us your details and we'll take it from there."
|
|
},
|
|
{
|
|
"name": "Ask if we're hiring",
|
|
"description": "Carpenter or apprentice, we're always glad to hear from good people. Tell us a bit about yourself."
|
|
}
|
|
],
|
|
"expect": [
|
|
"Get someone out to look at it"
|
|
],
|
|
"alternative": "Get someone out to look at it",
|
|
"fields": [
|
|
{
|
|
"name": "name",
|
|
"label": "Name",
|
|
"type": "text",
|
|
"optional": false,
|
|
"options": []
|
|
},
|
|
{
|
|
"name": "email",
|
|
"label": "Email",
|
|
"type": "email",
|
|
"optional": false,
|
|
"options": []
|
|
},
|
|
{
|
|
"name": "phone",
|
|
"label": "Phone",
|
|
"type": "tel",
|
|
"optional": true,
|
|
"options": []
|
|
},
|
|
{
|
|
"name": "address",
|
|
"label": "Address",
|
|
"type": "text",
|
|
"optional": false,
|
|
"options": []
|
|
},
|
|
{
|
|
"name": "problem",
|
|
"label": "What's the problem?",
|
|
"type": "textarea",
|
|
"optional": false,
|
|
"options": []
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "known-project",
|
|
"who": "An owner who already knows what they want built",
|
|
"wants": "Drawings, a permit application and a price",
|
|
"enters_as": null,
|
|
"lands_in": "enquiries",
|
|
"handled_by": "project_managers",
|
|
"done_when": [
|
|
"won",
|
|
"lost",
|
|
"declined"
|
|
],
|
|
"success": [
|
|
"won"
|
|
],
|
|
"steps": [
|
|
{
|
|
"page": "/",
|
|
"question": "What do you need done?",
|
|
"context": "Old buildings, put right by people who know them: We've been surveying, permitting and rebuilding old buildings for years, from the first look to the last coat of paint. One team from drawings to finished build: Drawings, the permit application, and the building work, all handled by us and the trades we trust. Know what it needs and what it costs: We come look at the building, work out what's actually wrong, and give you a clear price for fixing it.",
|
|
"options": [
|
|
{
|
|
"name": "Get someone out to look at it",
|
|
"description": "Tell us what's wrong and where. We'll come out, take a look, and tell you straight what it needs and what it costs."
|
|
},
|
|
{
|
|
"name": "Get drawings, a permit and a price",
|
|
"description": "You know what you want built. We'll draw it up, handle the permit application, and give you a price."
|
|
},
|
|
{
|
|
"name": "Get on our list of subcontractors",
|
|
"description": "Want to work with us on electrical, plumbing or scaffolding jobs? Send us your details and we'll take it from there."
|
|
},
|
|
{
|
|
"name": "Ask if we're hiring",
|
|
"description": "Carpenter or apprentice, we're always glad to hear from good people. Tell us a bit about yourself."
|
|
}
|
|
],
|
|
"expect": [
|
|
"Get drawings, a permit and a price"
|
|
],
|
|
"alternative": "Get drawings, a permit and a price",
|
|
"fields": [
|
|
{
|
|
"name": "name",
|
|
"label": "Name",
|
|
"type": "text",
|
|
"optional": false,
|
|
"options": []
|
|
},
|
|
{
|
|
"name": "email",
|
|
"label": "Email",
|
|
"type": "email",
|
|
"optional": false,
|
|
"options": []
|
|
},
|
|
{
|
|
"name": "address",
|
|
"label": "Address",
|
|
"type": "text",
|
|
"optional": false,
|
|
"options": []
|
|
},
|
|
{
|
|
"name": "project",
|
|
"label": "What are you planning?",
|
|
"type": "textarea",
|
|
"optional": false,
|
|
"options": []
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "subcontractor-application",
|
|
"who": "A trade firm that wants to be on our list of subcontractors",
|
|
"wants": "To be approved as a subcontractor",
|
|
"enters_as": null,
|
|
"lands_in": "subcontractors",
|
|
"handled_by": "project_managers",
|
|
"done_when": [
|
|
"approved",
|
|
"rejected"
|
|
],
|
|
"success": [
|
|
"approved"
|
|
],
|
|
"steps": [
|
|
{
|
|
"page": "/",
|
|
"question": "What do you need done?",
|
|
"context": "Old buildings, put right by people who know them: We've been surveying, permitting and rebuilding old buildings for years, from the first look to the last coat of paint. One team from drawings to finished build: Drawings, the permit application, and the building work, all handled by us and the trades we trust. Know what it needs and what it costs: We come look at the building, work out what's actually wrong, and give you a clear price for fixing it.",
|
|
"options": [
|
|
{
|
|
"name": "Get someone out to look at it",
|
|
"description": "Tell us what's wrong and where. We'll come out, take a look, and tell you straight what it needs and what it costs."
|
|
},
|
|
{
|
|
"name": "Get drawings, a permit and a price",
|
|
"description": "You know what you want built. We'll draw it up, handle the permit application, and give you a price."
|
|
},
|
|
{
|
|
"name": "Get on our list of subcontractors",
|
|
"description": "Want to work with us on electrical, plumbing or scaffolding jobs? Send us your details and we'll take it from there."
|
|
},
|
|
{
|
|
"name": "Ask if we're hiring",
|
|
"description": "Carpenter or apprentice, we're always glad to hear from good people. Tell us a bit about yourself."
|
|
}
|
|
],
|
|
"expect": [
|
|
"Get on our list of subcontractors"
|
|
],
|
|
"alternative": "Get on our list of subcontractors",
|
|
"fields": [
|
|
{
|
|
"name": "company_name",
|
|
"label": "Company name",
|
|
"type": "text",
|
|
"optional": false,
|
|
"options": []
|
|
},
|
|
{
|
|
"name": "registration_number",
|
|
"label": "Registration number",
|
|
"type": "text",
|
|
"optional": false,
|
|
"options": []
|
|
},
|
|
{
|
|
"name": "trade",
|
|
"label": "Trade",
|
|
"type": "select",
|
|
"optional": false,
|
|
"options": [
|
|
"Electrical",
|
|
"Plumbing",
|
|
"Scaffolding",
|
|
"Other"
|
|
]
|
|
},
|
|
{
|
|
"name": "insurance",
|
|
"label": "Insurance in place?",
|
|
"type": "text",
|
|
"optional": false,
|
|
"options": []
|
|
},
|
|
{
|
|
"name": "email",
|
|
"label": "Email",
|
|
"type": "email",
|
|
"optional": false,
|
|
"options": []
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "job-application",
|
|
"who": "A carpenter or apprentice asking if we are hiring",
|
|
"wants": "To apply for a job with us",
|
|
"enters_as": null,
|
|
"lands_in": "applications",
|
|
"handled_by": "project_managers",
|
|
"done_when": [
|
|
"hired",
|
|
"declined"
|
|
],
|
|
"success": [
|
|
"hired"
|
|
],
|
|
"steps": [
|
|
{
|
|
"page": "/",
|
|
"question": "What do you need done?",
|
|
"context": "Old buildings, put right by people who know them: We've been surveying, permitting and rebuilding old buildings for years, from the first look to the last coat of paint. One team from drawings to finished build: Drawings, the permit application, and the building work, all handled by us and the trades we trust. Know what it needs and what it costs: We come look at the building, work out what's actually wrong, and give you a clear price for fixing it.",
|
|
"options": [
|
|
{
|
|
"name": "Get someone out to look at it",
|
|
"description": "Tell us what's wrong and where. We'll come out, take a look, and tell you straight what it needs and what it costs."
|
|
},
|
|
{
|
|
"name": "Get drawings, a permit and a price",
|
|
"description": "You know what you want built. We'll draw it up, handle the permit application, and give you a price."
|
|
},
|
|
{
|
|
"name": "Get on our list of subcontractors",
|
|
"description": "Want to work with us on electrical, plumbing or scaffolding jobs? Send us your details and we'll take it from there."
|
|
},
|
|
{
|
|
"name": "Ask if we're hiring",
|
|
"description": "Carpenter or apprentice, we're always glad to hear from good people. Tell us a bit about yourself."
|
|
}
|
|
],
|
|
"expect": [
|
|
"Ask if we're hiring"
|
|
],
|
|
"alternative": "Ask if we're hiring",
|
|
"fields": [
|
|
{
|
|
"name": "name",
|
|
"label": "Name",
|
|
"type": "text",
|
|
"optional": false,
|
|
"options": []
|
|
},
|
|
{
|
|
"name": "email",
|
|
"label": "Email",
|
|
"type": "email",
|
|
"optional": false,
|
|
"options": []
|
|
},
|
|
{
|
|
"name": "role",
|
|
"label": "What kind of work?",
|
|
"type": "select",
|
|
"optional": false,
|
|
"options": [
|
|
"Carpenter",
|
|
"Apprentice"
|
|
]
|
|
},
|
|
{
|
|
"name": "message",
|
|
"label": "Tell us about yourself",
|
|
"type": "textarea",
|
|
"optional": false,
|
|
"options": []
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "site-report",
|
|
"who": "Crew on site, ours or a subcontractor's",
|
|
"wants": "To report a hazard, near miss or wrong materials before it is forgotten",
|
|
"enters_as": "crew",
|
|
"lands_in": "site_reports",
|
|
"handled_by": "safety_officer",
|
|
"done_when": [
|
|
"closed"
|
|
],
|
|
"success": [
|
|
"closed"
|
|
],
|
|
"steps": [
|
|
{
|
|
"page": "/crew/site-report",
|
|
"question": "Is something on this site unsafe or not right?",
|
|
"context": "",
|
|
"options": [
|
|
{
|
|
"name": "Flag a hazard on site",
|
|
"description": "See a hazard, near miss or wrong materials on site? Log it before it slips your mind."
|
|
}
|
|
],
|
|
"expect": [
|
|
"Flag a hazard on site"
|
|
],
|
|
"alternative": "Flag a hazard on site",
|
|
"fields": [
|
|
{
|
|
"name": "type",
|
|
"label": "What kind of issue",
|
|
"type": "select",
|
|
"optional": false,
|
|
"options": [
|
|
"Hazard",
|
|
"Near miss",
|
|
"Wrong materials"
|
|
]
|
|
},
|
|
{
|
|
"name": "description",
|
|
"label": "What's wrong",
|
|
"type": "textarea",
|
|
"optional": false,
|
|
"options": []
|
|
},
|
|
{
|
|
"name": "location",
|
|
"label": "Where on site",
|
|
"type": "text",
|
|
"optional": true,
|
|
"options": []
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"buckets": {
|
|
"enquiries": {
|
|
"initial": "open",
|
|
"transitions": {
|
|
"open": [
|
|
"surveyed",
|
|
"quoted",
|
|
"won",
|
|
"lost",
|
|
"declined"
|
|
],
|
|
"quoted": [
|
|
"won",
|
|
"lost",
|
|
"declined"
|
|
],
|
|
"surveyed": [
|
|
"quoted",
|
|
"won",
|
|
"lost",
|
|
"declined"
|
|
]
|
|
},
|
|
"desks": [
|
|
{
|
|
"page": "/project_managers",
|
|
"group": "project_managers",
|
|
"moves": [
|
|
{
|
|
"from": "open",
|
|
"to": "surveyed",
|
|
"label": "Log the survey"
|
|
},
|
|
{
|
|
"from": "open",
|
|
"to": "quoted",
|
|
"label": "Send a price"
|
|
},
|
|
{
|
|
"from": "open",
|
|
"to": "won",
|
|
"label": "Mark as won"
|
|
},
|
|
{
|
|
"from": "open",
|
|
"to": "lost",
|
|
"label": "Mark as lost"
|
|
},
|
|
{
|
|
"from": "open",
|
|
"to": "declined",
|
|
"label": "Turn down"
|
|
},
|
|
{
|
|
"from": "quoted",
|
|
"to": "won",
|
|
"label": "Mark as won"
|
|
},
|
|
{
|
|
"from": "quoted",
|
|
"to": "lost",
|
|
"label": "Mark as lost"
|
|
},
|
|
{
|
|
"from": "quoted",
|
|
"to": "declined",
|
|
"label": "Turn down"
|
|
},
|
|
{
|
|
"from": "surveyed",
|
|
"to": "quoted",
|
|
"label": "Send a price"
|
|
},
|
|
{
|
|
"from": "surveyed",
|
|
"to": "won",
|
|
"label": "Mark as won"
|
|
},
|
|
{
|
|
"from": "surveyed",
|
|
"to": "lost",
|
|
"label": "Mark as lost"
|
|
},
|
|
{
|
|
"from": "surveyed",
|
|
"to": "declined",
|
|
"label": "Turn down"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"self_moves": []
|
|
},
|
|
"subcontractors": {
|
|
"initial": "open",
|
|
"transitions": {
|
|
"papers_requested": [
|
|
"approved",
|
|
"rejected"
|
|
],
|
|
"open": [
|
|
"checking",
|
|
"rejected"
|
|
],
|
|
"checking": [
|
|
"papers_requested",
|
|
"approved",
|
|
"rejected"
|
|
]
|
|
},
|
|
"desks": [
|
|
{
|
|
"page": "/project_managers",
|
|
"group": "project_managers",
|
|
"moves": [
|
|
{
|
|
"from": "checking",
|
|
"to": "papers_requested",
|
|
"label": "Ask for papers"
|
|
},
|
|
{
|
|
"from": "checking",
|
|
"to": "approved",
|
|
"label": "Approve them"
|
|
},
|
|
{
|
|
"from": "checking",
|
|
"to": "rejected",
|
|
"label": "Turn down"
|
|
},
|
|
{
|
|
"from": "open",
|
|
"to": "checking",
|
|
"label": "Start checking"
|
|
},
|
|
{
|
|
"from": "open",
|
|
"to": "rejected",
|
|
"label": "Turn down"
|
|
},
|
|
{
|
|
"from": "papers_requested",
|
|
"to": "approved",
|
|
"label": "Approve them"
|
|
},
|
|
{
|
|
"from": "papers_requested",
|
|
"to": "rejected",
|
|
"label": "Turn down"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"self_moves": []
|
|
},
|
|
"applications": {
|
|
"initial": "open",
|
|
"transitions": {
|
|
"interview": [
|
|
"hired",
|
|
"declined"
|
|
],
|
|
"open": [
|
|
"interview",
|
|
"hired",
|
|
"declined"
|
|
]
|
|
},
|
|
"desks": [
|
|
{
|
|
"page": "/project_managers",
|
|
"group": "project_managers",
|
|
"moves": [
|
|
{
|
|
"from": "interview",
|
|
"to": "hired",
|
|
"label": "Offer the job"
|
|
},
|
|
{
|
|
"from": "interview",
|
|
"to": "declined",
|
|
"label": "Not moving forward"
|
|
},
|
|
{
|
|
"from": "open",
|
|
"to": "interview",
|
|
"label": "Call in for interview"
|
|
},
|
|
{
|
|
"from": "open",
|
|
"to": "hired",
|
|
"label": "Hire straight away"
|
|
},
|
|
{
|
|
"from": "open",
|
|
"to": "declined",
|
|
"label": "Not a fit"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"self_moves": []
|
|
},
|
|
"site_reports": {
|
|
"initial": "open",
|
|
"transitions": {
|
|
"open": [
|
|
"closed"
|
|
]
|
|
},
|
|
"desks": [
|
|
{
|
|
"page": "/safety_officer",
|
|
"group": "safety_officer",
|
|
"moves": [
|
|
{
|
|
"from": "open",
|
|
"to": "closed",
|
|
"label": "Mark sorted"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"self_moves": []
|
|
}
|
|
},
|
|
"personas": [
|
|
{
|
|
"id": "housing-board-damp",
|
|
"need": "building-problem",
|
|
"text": "I chair the board of a housing cooperative from the seventies. Two ground-floor flats have damp in the walls and we don't know if it's drainage or the facade. We need someone to tell us."
|
|
},
|
|
{
|
|
"id": "buyer-before-purchase",
|
|
"need": "building-problem",
|
|
"text": "We are about to buy an old timber house. Before we sign we want a professional to go through it and tell us what is wrong with it."
|
|
},
|
|
{
|
|
"id": "attic-conversion",
|
|
"need": "known-project",
|
|
"text": "We want to turn our attic into two bedrooms and a bathroom. We need drawings and someone who handles the application to the municipality."
|
|
},
|
|
{
|
|
"id": "shop-to-flat",
|
|
"need": "known-project",
|
|
"text": "I own a former shop on the ground floor and want to make it a flat. I have no idea what is allowed. Can you sort that out and give me a price?"
|
|
},
|
|
{
|
|
"id": "electrician-firm",
|
|
"need": "subcontractor-application",
|
|
"text": "We are a four-person electrical firm, fully certified. We would like to get on your list so you call us when you need electricians."
|
|
},
|
|
{
|
|
"id": "scaffolder",
|
|
"need": "subcontractor-application",
|
|
"text": "I run a scaffolding company. How do I get to do jobs for you?"
|
|
},
|
|
{
|
|
"id": "carpenter-jobseeker",
|
|
"need": "job-application",
|
|
"text": "I'm a certified carpenter with eight years on rehabilitation jobs. Are you hiring?"
|
|
},
|
|
{
|
|
"id": "apprentice",
|
|
"need": "job-application",
|
|
"text": "I finish vocational school this spring and need an apprenticeship as a bricklayer."
|
|
},
|
|
{
|
|
"id": "loose-railing",
|
|
"need": "site-report",
|
|
"text": "The railing on the third level of the scaffold on the north side is loose. Nobody got hurt but someone will."
|
|
},
|
|
{
|
|
"id": "wrong-membrane",
|
|
"need": "site-report",
|
|
"text": "The bathroom membrane delivered today is not the one in the specification. We stopped work on it."
|
|
}
|
|
]
|
|
} |