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

    מחלקת תקשורת עם מודול API בימות - NodeJS

    מתוזמן נעוץ נעול הועבר פורום מפתחים API
    1 פוסטים 1 כותבים 687 צפיות 1 עוקבים
    טוען פוסטים נוספים
    • מהישן לחדש
    • מהחדש לישן
    • הכי הרבה הצבעות
    תגובה
    • תגובה כנושא
    התחברו כדי לפרסם תגובה
    נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
    • מ מנותק
      מאזין נלהב
      נערך לאחרונה על ידי

      לא הייתי פה הרבה זמן...
      תתחדשו על הפורום.

      הבעייתיות שבמודול תקשור עם API, כבר נטחנה בפורומים השונים.
      הסקריפט, לא נקרא מהתחלה לסוף שורה אחרי שורה, אלא נקרא בכל פעולה מהשורה הראשונה, היות וזו בקשה חדשה לשרת.
      אני מניח שכל מי שפיתח קוד כלשהו למודול תקשור עם API, חווה את התסכול הזה, לבדוק כל פעם, איפה המשתמש הספיציפי הזה נמצא כרגע, במהלך הקוד, ולהוביל אותו לשם.

      לפיתרון הבעיה הזאת, כתבתי בNodeJS מודול, שמאפשר לכתוב סקריפט רציף, ללא סרבולים ובדיקות מיותרות.
      הקוד נקרא שורה אחרי שורה, פעולה אחרי פעולה.

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

      https://github.com/MusiCode1/yemot-router

      התקנה:

      npm i yemot-router
      

      הנה דוגמא לשימוש:
      בדוגמא הזאת המשתמש מקיש מספר, ולאחר מכן המספר מושמע לו.

      const express = require("express");
      const yemot_router = require("yemot-router");
      
      const port = 3000;
      const app = express();
      const y = yemot_router();
      
      y.add_fn(async (call) => {
      
      	let massage = [{ type: "text", data: "היי, תקיש 10" }];
      	let r = await call.read(massage);
      
      	if(r.hangup) {
      		return;
      	}
      
      	console.log(r);
      
      	massage = [{ type: "text", data: "הקשת " + r.data }];
      	call.id_list_message(massage);
      });
      
      app.use("/", y);
      
      app.listen(port, () => {
      	console.log("lisen in port", port);
      });
      

      יש עוד מה לשפר...
      אולי אם יהיה מישהו שישלים את זה, יהיה מבורך.

      לא מתחייב שיהיה לי זמן לזה... סליחה מראש.

      תגובה 1 תגובה אחרונה תגובה ציטוט 13

      שלום! נראה שהשיחה הזו מעניינת אותך, אבל עדיין אין לך חשבון.

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

      בעזרת התרומה שלך, הפוסט הזה יכול להיות אפילו טוב יותר 💗

      הרשמה התחברות
      • פוסט ראשון
        פוסט אחרון