Event social wall with Juicer
Goal: a wall that shows the event's hashtag posts live, with the organiser in control from their phone. Nothing goes on screen that they would not want there.
Before the event
- Connect Juicer (see the
juicerskill). Checkget_account: moderation needs a plan that includes it, and the wall counts as one feed. - Ask, in one message: event name and date, hashtags, the event's own accounts, the networks to include and whether every post needs approval before it shows (recommended for weddings, schools, big screens).
- Check the hashtag first with
get_data_posts(#hashtag, 1 to 3 credits per network). If it is already used by other people for other things, suggest a more unique tag before the event. Tell the user what you found. - Create the wall:
create_feednamed after the event. - Add sources with
create_source: the hashtag on each network (uselist_platformsfor exact values) and the event's own accounts so official posts appear too. If a source needs the user's social account, send the link fromcreate_social_account_connect_urland explain it.- Instagram accounts: only the user's own. An Instagram username source keeps updating only when that same account is connected through Instagram login. Before adding it, call
create_social_account_connect_urlwith providerinstagram_login, send the link (it expires in 30 minutes), confirm withget_social_account_status, then add the source. Someone else's account (a partner, a celebrity, a competitor) gets one first pull and then stops: tell the user that instead of adding it silently. - Instagram hashtags need an Instagram Business account connected through Facebook (provider
facebook). Meta allows 30 different hashtags per week per business account. - Plan limits on the free plan: after the trial, X, TikTok hashtag and keyword, Reddit and LinkedIn sources stop syncing, Bluesky needs Pro or Enterprise and feeds refresh once a day. If
list_sourcesshows a source as not syncable for one of these reasons, say so and show the upgrade link instead of handing over the feed as working. - Credits: each source costs credits for its first fetch (1 to 6 by network, same rates as data lookups). Check the balance first and tell the user what adding the sources will cost.
- Check every source after adding it:
list_sourcesshows each source's sync status. If one is not syncable, tell the user the reason in plain words and the fix. Never hand over an embed code as finished while its only source will not update.
- Instagram accounts: only the user's own. An Instagram username source keeps updating only when that same account is connected through Instagram login. Before adding it, call
- Set moderation with
update_feed:queue: truewhen posts need approval (posts wait until approved).profanity: true,prevent_duplicates: true.disallowed: words and handles to block.- AI moderation: if
get_feedshowsai_moderation_available: true, setai_moderation: trueandai_harmful_content_filter: truein the sameupdate_feedcall, so hateful, violent, sexual and harassing posts are hidden even before anyone reviews the queue. Turn the user's own rules ("no ads", "no competitor promotions") intoai_moderation_rules. If the plan does not include it (ai_moderation_not_available) or the tool does not accept these fields, say AI moderation can be switched on in the Juicer dashboard and keep the approval queue on. - Refresh rate: a live wall needs new posts within minutes. Set
sync_interval: 5(minutes) in the sameupdate_feedcall. If the plan does not allow it (sync_interval_not_available) or the tool does not accept the field, tell the user how often the wall refreshes now (once a day on the free plan) and that a faster refresh needs a higher Juicer plan, so they can upgrade before the event.
- Get the wall on screen:
get_feed_embed. For a big screen, use the iframe or JavaScript snippet in a full-screen page; for the event website, the snippet or the WordPress shortcode (needs the Juicer WordPress plugin). Display styles are chosen in the Juicer dashboard. - Test together: ask the user to post a test with the hashtag, then check it arrives with
list_feed_posts.
During the event
The user moderates by chatting with you:
- "What's waiting?" →
list_feed_postsfiltered to posts waiting for approval; show them numbered, short, with the poster's name. - "Approve 1, 2 and 4" →
moderate_postapprovefor each, orbulk_moderate_postsfor many at once. - "Hide the one from @..." →
moderate_postreject. - "Pin the speaker photo" →
moderate_postpin. - "Block the word X" →
update_feeddisallowed.
Offer to check for new waiting posts every few minutes with an OpenClaw Automation and send a short message only when something is waiting.
Before approving in bulk, read the posts yourself and point out anything that looks off-topic, rude or like spam, so the user decides with that in mind.
After the event
Offer a recap: number of posts and posters, top posts by likes from get_feed_analytics and the wall itself as a link for the website. Ask before deleting the feed; many organisers keep the wall as a memory page.
