Streamplace song chatbot
Be your own Streamplace chatbot to say which song you are listening to
place.stream.chat.message- Lexicon

place.stream.chat.message- Operations
- Record created
Steps (7)
- Continue only if
event.commit.record.streamerequals{{self}}- Chat message was sent in my channel - and
event.commit.record.textequals!song- Song command
rocksky- Fetches current song from Rocksky- Lookup
at://{{self}}/app.rocksky.actor.status/self
- If
rocksky.foundequalstrue
Then
Create a recordAction 1#1RockskyData
- Target Collection

place.stream.chat.message- Record Template
{ "$type": "place.stream.chat.message", "createdAt": "{{now}}", "reply": { "$type": "place.stream.chat.message#replyRef", "parent": { "$type": "com.atproto.repo.strongRef", "cid": "{{event.commit.cid}}", "uri": "{{event.uri}}" }, "root": { "$type": "com.atproto.repo.strongRef", "cid": "{{event.commit.cid}}", "uri": "{{event.uri}}" } }, "streamer": "{{self}}", "text": "Now playing: '{{rocksky.record.track.name}}' - {{rocksky.record.track.artist}}" }
Otherwise
teal- Fetches current song from teal.fm- Lookup
at://{{self}}/fm.teal.actor.status/self
- If
teal.foundequalstrue
Then
Create a recordAction 2#2TealData
- Target Collection

place.stream.chat.message- Record Template
{ "createdAt": "{{now}}", "reply": { "$type": "place.stream.chat.message#replyRef", "parent": { "$type": "com.atproto.repo.strongRef", "cid": "{{event.commit.cid}}", "uri": "{{event.uri}}" }, "root": { "$type": "com.atproto.repo.strongRef", "cid": "{{event.commit.cid}}", "uri": "{{event.uri}}" } }, "streamer": "{{self}}", "text": "Now playing: '{{teal.record.item.trackName}}' - {{teal.record.item.artists.0.artistName}}" }