@@ -224,6 +224,6 @@ def handle_message(event):
if __name__ == "__main__":
- app.run(host='0.0.0.0', port=443,ssl_context=('/tmp/fullchain.pem', '/tmp/privkey.pem'))
+ app.run(host='0.0.0.0', port=443,ssl_context=('/etc/letsencrypt/live/ptt.cx/fullchain.pem', '/etc/letsencrypt/live/ptt.cx/privkey.pem'))
# app.run(host='0.0.0.0', port=14404,ssl_context=('/tmp/cert.pem','/tmp/chain.pem' ))
@@ -0,0 +1,163 @@
+{
+ "type": "carousel",
+ "contents": [
+ {
+ "type": "bubble",
+ "size": "nano",
+ "header": {
+ "type": "box",
+ "layout": "vertical",
+ "type": "text",
+ "text": "Progress",
+ "color": "#ffffff",
+ "align": "start",
+ "size": "md",
+ "gravity": "center"
+ },
+ "text": "70%",
+ "size": "xs",
+ "gravity": "center",
+ "margin": "lg"
+ "type": "filler"
+ }
+ ],
+ "width": "70%",
+ "backgroundColor": "#0D8186",
+ "height": "6px"
+ "backgroundColor": "#9FD8E36E",
+ "height": "6px",
+ "margin": "sm"
+ "backgroundColor": "#27ACB2",
+ "paddingTop": "19px",
+ "paddingAll": "12px",
+ "paddingBottom": "16px"
+ "body": {
+ "layout": "horizontal",
+ "text": "OKOK",
+ "color": "#8C8C8C",
+ "size": "sm",
+ "wrap": true
+ "flex": 1
+ "spacing": "md",
+ "paddingAll": "12px"
+ "styles": {
+ "footer": {
+ "separator": false
+ "text": "In Progress",
+ "text": "100%",
+ "width": "100%",
+ "backgroundColor": "#7D51E4",
+ "backgroundColor": "#A17DF5",
+ "text": "Buy milk and lettuce before class",
+ ]
+}