|
- "use strict";
- const messageModel = require("../../model/messageModel");
- const { parseMultipartData, sanitizeEntity } = require("strapi-utils");
- /**
- * Cron config that gives you an opportunity
- * to run scheduled jobs.
- *
- * The cron format consists of:
- * [SECOND (optional)] [MINUTE] [HOUR] [DAY OF MONTH] [MONTH OF YEAR] [DAY OF WEEK]
- *
- * See more details here: https://strapi.io/documentation/developer-docs/latest/concepts/configurations.html#cron-tasks
- */
- let clients = {};
- module.exports = {
- "*/10 * * * * *": async () => {
- const session_key = await strapi.api.message.services.message.distinctbyKey(
- {
- _sort: "session_datum_key:desc",
- state: "QUEUE",
- }
- );
- session_key.forEach(async (i)=>{
- if(!Object.keys(clients).includes(`${i["id"]}`)){
- clients[i["id"]] = null;
- messageModel.loadClient(i["session_data"],async (data)=>{
- var json = JSON.parse(data);
- if (json["STATUS"] == 1 && json["TYPE"] == "READY") {
- return clients[i["id"]] = json["DATA"];
- }
- else if(json["STATUS"] ==0){
- return;
- }
- });
- }
- })
- console.log(clients);
- // const messages = await strapi.api.message.services.message.find(
- // {
- // _sort: "session_datum_key:desc",
- // state: "QUEUE",
- // }
- // );
- // messages.forEach(async (message) => {
- // await strapi.api.message.services.message.update(
- // { id: message.id },
- // { state: "SENT" }
- // );
- // });
- },
- };
|