דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. API לימות המשיח

API לימות המשיח

מתוזמן נעוץ נעול הועבר תכנות
31 פוסטים 4 כותבים 441 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • י מנותק
    י מנותק
    יוסף בן שמעון
    השיב לMusiCode ב נערך לאחרונה על ידי
    #17

    @MusiCode אמר בAPI לימות המשיח:

    איך עושים?

    עשיתי קצת שינויים בקוד שלך והמרתי אותו לקלאס של EMS6, יתכן שזה מספיק בלי TS, לא בדקתי עד הסוף

    
    const Call = require("./call");
    const Router = require("express").Router;
    const EventEmitter = require("this.events");
    
    class Call {
        read (massage) { }
        id_list_message (massage) { }
    }
    class Yemot_Router extends Router {
        constructor() {
            super()
            this.events = new EventEmitter();
            this.this.active_calls = {};
        }
    
        /**
         *
         * @param {string} path
         * @param {Call} fn
         */
        addFn (path, fn) {
    
    
            this.all(path, (req, res, next) => {
    
                req.query = check_query(req.query);
    
                const call_id = req.query.ApiCallId;
    
                const [current_call, is_new_req] = this.get_current_call(call_id);
    
                current_call.get_req_vals(req, res, next);
    
                if (is_new_req) {
    
                    fn(current_call).then((r) => {
    
                        delete this.this.active_calls[call_id];
                        console.log(call_id, "deleted", r);
                    });
    
                } else {
                    this.events.emit(call_id);
                }
            });
        };
    
        get_current_call (call_id) {
    
            let current_call = this.active_calls[call_id];
            let is_new_req = false;
    
            if (!current_call) {
                current_call = this.active_calls[call_id] = new Call(call_id, this.events);
    
                is_new_req = true;
                console.log(call_id + " is new");
            }
    
            return [current_call, is_new_req];
        };
    
        const check_query = function check_query (query) {
    
            if (typeof query == "object") {
                let iterator;
    
                for (const key of Object.keys(query)) {
    
                    iterator = query[key];
    
                    if (typeof iterator === "object") {
    
                        query[key] = iterator[(iterator.length - 1)];
                    }
                }
            }
    
            return query;
        };
    
    };
    
    module.exports = () => new Yemot_Router()
    
    
    י תגובה 1 תגובה אחרונה
    1
    • י מנותק
      י מנותק
      יוסף בן שמעון
      השיב ליוסף בן שמעון ב נערך לאחרונה על ידי יוסף בן שמעון
      #18

      בשביל תיעוד מלא, תעשה קובץ בשם yemot_router.d.ts, וב require אל תציין סיומת קובץ צור קובץ בשם index.d.ts ותמקם אותו בתיקית השורש

      declare function Yemot(): YemotRouter;
      interface YemotRouter {
          addFn?(path: string, handler: Handler): void;
      }
      interface Call {
          read(massage: string): Promise<string>
      }
      type Handler = (p: Call) => void;
      
      export = Yemot;
      
      
      MusiCodeM תגובה 1 תגובה אחרונה
      4
      • MusiCodeM מנותק
        MusiCodeM מנותק
        MusiCode
        השיב ליוסף בן שמעון ב נערך לאחרונה על ידי
        #19

        @יוסף-בן-שמעון אמר בAPI לימות המשיח:

        בשביל תיעוד מלא, תעשה קובץ בשם yemot_router.d.ts, וב require אל תציין סיומת קובץ צור קובץ בשם index.d.ts ותמקם אותו בתיקית השורש

        declare function Yemot(): YemotRouter;
        interface YemotRouter {
            addFn?(path: string, handler: Handler): void;
        }
        interface Call {
            read(massage: string): Promise<string>
        }
        type Handler = (p: Call) => void;
        
        export = Yemot;
        
        

        תודה רבה!

        בוצע.

        תגובה 1 תגובה אחרונה
        1
        • יעקב ישראלי מנותק
          יעקב ישראלי מנותק
          יעקב ישראל
          השיב לMusiCode ב נערך לאחרונה על ידי
          #20

          @MusiCode לא מבין איפה הבעיה שולחים לשירות לקוחות את כתובת הIP והם פותחים לך זה כולה עניין של אבטחה

          nigunN תגובה 1 תגובה אחרונה
          0
          • nigunN מנותק
            nigunN מנותק
            nigun
            השיב ליעקב ישראל ב נערך לאחרונה על ידי
            #21

            @יעקב-ישראל
            השיחה לא מחזיקה יותר מחצי שעה

            מייל: nigun@duck.com

            יעקב ישראלי תגובה 1 תגובה אחרונה
            0
            • יעקב ישראלי מנותק
              יעקב ישראלי מנותק
              יעקב ישראל
              השיב לnigun ב נערך לאחרונה על ידי
              #22

              @nigun תסביר בדיוק איפה הבעיה
              זה מוגבל לחצי שעה
              או שיש ניתוקים והמקסימום זה חצי שעה ?

              nigunN תגובה 1 תגובה אחרונה
              0
              • nigunN מנותק
                nigunN מנותק
                nigun
                השיב ליעקב ישראל ב נערך לאחרונה על ידי
                #23

                @יעקב-ישראל
                יש ניתוקים אחרי 15-30 דקות
                אחר מחברי הפורום פנה לשירות לקוחות בימי הקורונה
                וביקש שיסדרו לו את זה חדרי ועידה לת"ת
                והם אמרו לו שבגל שזה שרתים בחו"ל הם לא יסדרו לו את זה (אני לא זוכר את הניסוח המדוייק , אולי הוא יציץ כאן ויתקן)

                מייל: nigun@duck.com

                יעקב ישראלי תגובה 1 תגובה אחרונה
                0
                • יעקב ישראלי מנותק
                  יעקב ישראלי מנותק
                  יעקב ישראל
                  השיב לnigun ב נערך לאחרונה על ידי
                  #24

                  @nigun היה באמת בגלל הקורונה כמה הגבלות
                  כעת אשמח שתבדקו האם עדיין יש ניתוקים
                  וכעת פותחים לכל מי שמבקש

                  nigunN תגובה 1 תגובה אחרונה
                  0
                  • nigunN מנותק
                    nigunN מנותק
                    nigun
                    השיב ליעקב ישראל ב נערך לאחרונה על ידי
                    #25

                    @יעקב-ישראל
                    היה הגבלות הרבה לפני הקורונה
                    ניהלו כאן על זה כמה דיונים (לא זוכר האם באסטריסק או כאן)
                    ולא יצא כלום.

                    מייל: nigun@duck.com

                    יעקב ישראלי תגובה 1 תגובה אחרונה
                    0
                    • יעקב ישראלי מנותק
                      יעקב ישראלי מנותק
                      יעקב ישראל
                      השיב לnigun ב נערך לאחרונה על ידי
                      #26

                      @nigun תבדוק (ותביא קישורים)
                      אוכל לקדם את זה בימות

                      nigunN תגובה 1 תגובה אחרונה
                      0
                      • nigunN מנותק
                        nigunN מנותק
                        nigun
                        השיב ליעקב ישראל ב נערך לאחרונה על ידי
                        #27

                        @יעקב-ישראל
                        איזה קישורים?
                        פשוט שלא יגבילו את הניתוב IP

                        מייל: nigun@duck.com

                        יעקב ישראלי תגובה 1 תגובה אחרונה
                        0
                        • יעקב ישראלי מנותק
                          יעקב ישראלי מנותק
                          יעקב ישראל
                          השיב לnigun ב נערך לאחרונה על ידי
                          #28

                          @nigun שלא יגבילו מבחינת מה ?
                          איפה זה מוגבל היום ?

                          nigunN תגובה 1 תגובה אחרונה
                          0
                          • nigunN מנותק
                            nigunN מנותק
                            nigun
                            השיב ליעקב ישראל ב נערך לאחרונה על ידי
                            #29

                            @יעקב-ישראל
                            תנסה ותראה
                            אם אתה מקים מרכזיית אסטריסק
                            אחרי חצי שעה נהיה שקט (לפני זה כתבתי שמתנקתק , לא היה מדוייק)

                            מייל: nigun@duck.com

                            יעקב ישראלי תגובה 1 תגובה אחרונה
                            0
                            • יעקב ישראלי מנותק
                              יעקב ישראלי מנותק
                              יעקב ישראל
                              השיב לnigun ב נערך לאחרונה על ידי
                              #30

                              @nigun תוכל לתת לי IP (תוכל למייל) בשביל שאשלח למתכנת לבדוק

                              nigunN תגובה 1 תגובה אחרונה
                              1
                              • nigunN מנותק
                                nigunN מנותק
                                nigun
                                השיב ליעקב ישראל ב נערך לאחרונה על ידי
                                #31

                                @יעקב-ישראל
                                אני רואה שממש סטינו מהנושא אני פותח אשכול חדש

                                מייל: nigun@duck.com

                                תגובה 1 תגובה אחרונה
                                1

                                • 1
                                • 2
                                בא תתחבר לדף היומי!
                                • התחברות

                                • אין לך חשבון עדיין? הרשמה

                                • התחברו או הירשמו כדי לחפש.
                                • פוסט ראשון
                                  פוסט אחרון
                                0
                                • דף הבית
                                • קטגוריות
                                • פוסטים אחרונים
                                • משתמשים
                                • חיפוש
                                • חוקי הפורום