diff --git a/scripts/generate_chat_stat_daily.py b/scripts/generate_chat_stat_daily.py
new file mode 100644
index 0000000..9b5bcc6
--- /dev/null
+++ b/scripts/generate_chat_stat_daily.py
@@ -0,0 +1,105 @@
+# coding: utf8
+
+# toutes les chaines sont en unicode (même les docstrings)
+from __future__ import unicode_literals
+
+# from pprint import pprint
+from rocketchat_API.rocketchat import RocketChat
+import json
+import os
+import random
+from datetime import datetime, timedelta
+from common.rocketchathelper import getAllChannels, getAllMessages, Connection
+from common.savehelper import save
+from common.charthelper import createElement, getColor, setTsunamyInfo, getTsunamy, Tsunami
+
+def main():
+ rocket = Connection()
+ nbElements = 30
+
+ labels = [None] * nbElements
+ messagesByChannel = []
+ usersByChannel = []
+ messagesDataTsunamy = {
+ Tsunami.GLOBAL: [0] * nbElements,
+ Tsunami.PROJECT: [0] * nbElements,
+ Tsunami.DEMOCRACY: [0] * nbElements,
+ Tsunami.ECOLOGY: [0] * nbElements,
+ Tsunami.TECHNOLOGY: [0] * nbElements,
+ }
+ usersGlobal = []
+
+ now = datetime.now()
+ date = datetime(now.year, now.month, now.day, 0,0,0)
+
+ info = {
+ "updated": "updated {:02}/{:02}/{:04}".format(now.day, now.month, now.year),
+ "labels": labels,
+ "messagesByChannel": messagesByChannel,
+ "usersByChannel": usersByChannel,
+ "messagesByTsunamy": [
+ createElement("global", getColor(), messagesDataTsunamy[Tsunami.GLOBAL]),
+ createElement("project", getColor(), messagesDataTsunamy[Tsunami.PROJECT]),
+ createElement("democratie", getColor(), messagesDataTsunamy[Tsunami.DEMOCRACY]),
+ createElement("ecologie", getColor(), messagesDataTsunamy[Tsunami.ECOLOGY]),
+ createElement("technologie", getColor(), messagesDataTsunamy[Tsunami.TECHNOLOGY])
+ ],
+ "usersGlobal": usersGlobal
+ }
+
+ uniqueUserGlobal = [None] * nbElements
+
+ for channel in getAllChannels(rocket):
+ dataMess = []
+ dataUsers = []
+ print( channel['name'] )
+ begin = date - timedelta(nbElements)
+ end = begin + timedelta(1)
+
+ tsunamy = getTsunamy(channel)
+
+ for id in range(0, nbElements):
+ if uniqueUserGlobal[id] == None:
+ uniqueUserGlobal[id] = []
+ labels[id] = begin.strftime("%x")
+ print(f"\t{labels[id]}")
+ begindate = begin.isoformat()
+ enddate = end.isoformat()
+
+ resultMess = getAllMessages(rocket, channel['_id'], begindate= begindate, enddate=enddate)
+ resultMess = list(filter(lambda mess: 't' not in mess, resultMess))
+ length = len(resultMess)
+ dataMess.append(length)
+
+ if length > 0:
+ setTsunamyInfo(tsunamy, messagesDataTsunamy, id, length)
+
+ users = []
+ for mess in resultMess:
+ users.append(mess['u']['_id'])
+ uniqueUserGlobal[id].append(mess['u']['_id'])
+ usersDistinct = set(users)
+ dataUsers.append(len(usersDistinct))
+ else:
+ dataUsers.append(0)
+
+ begin = end
+ end = begin + timedelta(1)
+
+ color = getColor()
+ messageByChannel = createElement(channel['name'], color,dataMess)
+ userByChannel = createElement( channel['name'], color,dataUsers)
+
+ messagesByChannel.append(messageByChannel)
+ usersByChannel.append(userByChannel)
+
+ for id in range(0, nbElements):
+ uniqueUserGlobal[id] = len(set(uniqueUserGlobal[id]))
+
+ userGlobal = createElement( 'global', 'red', uniqueUserGlobal)
+ usersGlobal.append(userGlobal)
+
+ save(info, "chat_stat_daily")
+
+if __name__ == "__main__":
+ main()
\ No newline at end of file
diff --git a/site/coa/stats/index.html b/site/coa/stats/index.html
index 1dc927b..e123d81 100644
--- a/site/coa/stats/index.html
+++ b/site/coa/stats/index.html
@@ -10,5 +10,9 @@
+
+
+
+