Pr0gramm
Shows a user's pr0gramm benis
About this flow
| System | AWTRIX NG Scripts |
|---|---|
| AWTRIX version | AWTRIX NG |
| Topic | Social |
| Built by | Mvrcl549 |
| File | XHzCplUVXjUE.ax · 1.8 KB |
| Icons | — |
| Published | 17 Aug 2026 |
| Downloads | 34 |
Is this your flow?
If you created this flow, open your saved edit link to add it to your account. You can then manage it whenever you sign in. Adding it to your account replaces the edit link.
Flow description
Pr0gramm Display
This script displays the score ("Benis") of a Pr0gramm user.
Settings
- Username
- Icon (default=26807)
- Update interval (default=5min)
Icons
Before installing the script, use the AWTRIX NG web interface to install the following LaMetric icons:
26807– Pr0gramm logo
Installation
- Click the "Install on my Awtrix" button or copy and paste the script
- Change the username in the settings
XHzCplUVXjUE.ax
# @name Pr0gramm
# @desc Shows a user's pr0gramm score
# @author Mvrcl549
# @version 1.3
# @config name text "Username" default=""
# @config icon text "Icon ID" default="26807"
# @config every number "Update interval" default=5 min=1 max=60 unit=min
class Pr0grammScore
var url, period
var score, label
var ticks, in_flight
var ic
def init()
self.url = "https://pr0gramm.com/api/profile/info?name=" + store.get("name")
self.period = store.get("every") * 60
self.ic = store.get("icon")
self.score = store.get("score")
self.label = self.score == nil ? nil : str(self.score)
self.ticks = 0
self.in_flight = false
end
def on_body(body, status)
self.in_flight = false
if body == nil
log("pr0gramm: keine Antwort, status=" + str(status))
return
end
var m = re.search("\"score\":(-?[0-9]+)", body)
if m == nil
log("pr0gramm: score nicht gefunden, status=" + str(status))
return
end
var s = num(m[1])
if s == nil return end
self.score = s
self.label = str(s)
store.set("score", s)
end
def loop()
if self.ticks <= 0
self.ticks = self.period
if !self.in_flight
self.in_flight = true
http.get(self.url, / b, st -> self.on_body(b, st),
{'find': "\"score\":", 'keep': 40})
end
end
self.ticks -= 1
end
def draw()
clear()
if !icon(self.ic, 0, 0)
rect_fill(0, 0, 8, 8, 0x222222)
end
if self.label == nil
text(12, 6, "...", 0x666666)
return
end
var w = text_ink_width(self.label)
var x = 9 + (width() - 9 - w) / 2
text(x, 6, self.label)
end
def on_button(btn)
if btn == "select" self.ticks = 0 end
end
end
return Pr0grammScore()
Install it on your AWTRIX NG
Add this flow to your AWTRIX NG. It will start appearing on your display after installation.
Unable to connect? Download the flow and add it in the Scripts section of your AWTRIX. Advanced users can also use this command:
Discussion 0
Ask a question, suggest a change or share how you use it.
No comments yet. Start the conversation.
More flows for AWTRIX NG Scripts or Social
Something wrong with this flow? Report it.
Have an idea?
Sign in to ask questions and join the conversation.