Flex Coder: post #1579 โ€” TG.ME

๐ŸŽ™๏ธ Async Creative Brief & Audio Intake Flow in Telegram

Chasing clients across messy email threads for campaign specs and voice notes kills creative momentum before production even begins. We replaced that chaotic back-and-forth with a streamlined 3-step intake bot that captures project titles, accepts raw voice notes or attachments, and commits the submission directly into Firebase. Clients get an effortless onboarding experience on mobile while our studio receives neatly indexed brief records.

๐Ÿ“ Filename: command/brief.js
๐Ÿ‘จโ€๐Ÿ’ป Code:
sendMessage("Let's get your creative project rolling. Reply with the client or campaign name:");
waitForAnswer("/brief_name");


๐Ÿ“ Filename: command/brief_name.js
๐Ÿ‘จโ€๐Ÿ’ป Code:
TEMP.setProp("campaign", message);
sendMessage("Great! Now send your audio voice memo brief or attach your scope document:");
waitForAnswer("/brief_asset");


๐Ÿ“ Filename: command/brief_asset.js
๐Ÿ‘จโ€๐Ÿ’ป Code:
const campaign = await TEMP.getProp("campaign").value();
pushDB("project_briefs", {
user_id: user.id,
username: user.username || user.first_name,
campaign: campaign,
message_id: message_id,
submitted_at: Date.now()
});
clearWait();
sendMessage("โœ… Creative brief for *" + campaign + "* logged successfully! Our team will review the audio assets.");


๐Ÿ’ก Always call clearWait() immediately after saving the final step so unexpected follow-up text routes back to your default message handler instead of triggering the upload logic again.

โš ๏ธ Note: Ensure FIREBASE_URL and FIREBASE_SECRET are configured in your environment so pushDB can generate persistent records.


#FlexGram
๐Ÿ†2
August 21, 2026 86