• הרשמה
    • התחברות
    • חיפוש
    • דף הבית
    • אינדקס קישורים
    • פוסטים אחרונים
    • קבלת התראות מהדפדפן
    • משתמשים
    • חיפוש בהגדרות המתקדמות
    • חיפוש גוגל בפורום
    • ניהול המערכת
    • ניהול המערכת - שרת private
    1. דף הבית
    2. האדם החושב
    ה
    • פרופיל
    • עוקב אחרי 0
    • עוקבים 1
    • נושאים 22
    • פוסטים 105
    • הגבוה ביותר 27
    • שנוי במחלוקת 0
    • קבוצות 0

    האדם החושב

    @האדם החושב

    37
    מוניטין
    64
    צפיות בפרופיל
    105
    פוסטים
    1
    עוקבים
    0
    עוקב אחרי
    הצטרף ב- התחבר לאחרונה

    האדם החושב הפסק לעקוב עקוב

    הפוסטים הטובים ביותר שנוצרו על ידי האדם החושב

    • סקריפט python לייצוא מסמך אקסל לEnterIDValName
      def main(file, file_b):
          with open(file, 'r', encoding="utf-8") as enter_id_file:
              file_content = enter_id_file.read().replace(",", "=").replace("-","").replace("                ","").splitlines()
              autpoot = []
              for line in file_content:
                  number_colan = line.split("=")
                  if number_colan[0].isdigit() and 11 > len(number_colan[0]) > 8 and number_colan[1] !="":
                      number = "".join([number_colan[0] if number_colan[0].startswith("0") else "0" + number_colan[0],"=",number_colan[1]])
                      autpoot.append(number)               
                  elif number_colan[1].isdigit() and 11 > len(number_colan[1]) > 8 and number_colan[0] !="":
                      number = "".join([number_colan[1] if number_colan[1].startswith("0") else "0" + number_colan[1],"=",number_colan[0]])
                      autpoot.append(number)
              processed_ini = '\n'.join(autpoot)
          with open(file_b, 'w', encoding="utf-8") as f:
              f.write(processed_ini)
              
      file = "1.csv"
      file_b = "EnterIDValName.ini"
      main(file, file_b)
      

      לקובץ שמיוצא מאנשי קשר גוגל צריך לשנות בשורה 2 את

      encoding="utf-8"
      

      ל

      encoding="windows-1255"
      

      צריך לוודא שהנתונים [שם, טלפון] נמצאים בעמודה 1 ו2 ושהקובץ הוא בפורמט csv

      פורסם בעזרה הדדית למשתמשים מתקדמים
      ה
      האדם החושב
    • RE: אתם משתמשים ב python?

      @bc98400
      מתקדם עם זה משהו?
      אני התחלתי לכתוב משהו, מצו"ב:

      https://github.com/zevisvei/yemot_api

      פורסם בפורום מפתחים API
      ה
      האדם החושב
    • להורדה תא קולי למייל + השמעות בימות המשיח ועוד - אלפא

      ניתן לשמור עותק כאן
      מגדירים הפנייה במקרה ואין מענה וכן אם אין קליטה לקו, מה שהסקריפט עושה זה שהוא מגדיר את המערכת בימות המשיח [חוץ מההודעה "אנא הקליטו את הודעתכם" שמשום מה אי אפשר להחליף שם את ההודעת מערכת על ידי קובץ tts, כך שצריך להחליף את ההודעת מערכת ידנית ל"השיחה מועברת לתא הקולי" וכו'], שולח צינתוק כל זמן מוגדר עד שההודעה מושמעת [שימושי למקרה ולא היתה קליטה, כך שלא רואים את הצינתוק הראשון] ושולח מיילים על שיחות שלא נענו והודעות חדשות.
      מדובר בגיר' ממש ראשונית, כך שאני לא רואה לע"ע צורך לכתוב הדרכה מסודרת, הסיבה שאני מעלה את זה זה בעיקר כדי לשמוע פידבק מהמבינים בjs ובמערכות של ימות המשיח.

      נא לא לצחוק עלי מדי חזק, לפני שבוע התחלתי ללמוד js...

      לגבי הפתיח ניסיתי להוסיף אופציה להעלאת קובץ שמע מהדרייב כך:

      function UploadFile_to_yemot(){
      let file_link = SpreadsheetApp.getActiveSheet().getRange('VoiceMail!B6').getValue();
      let fileid = file_link.split(/\/file\/d\/([^\/]+)/)[1];
      console.log (fileid)
      let file = DriveApp.getFileById(fileid);
      let blob = file.getBlob();
      let headers = {'Content-type': 'multipart/form-data'};
      let data_3 = { 'token': token, 'path': "ivr2:/0/M1012.wav", 'convertAudio': 1, autoNumbering: false, tts:0,'upload': blob };
      let options_3 = { 'method': 'post', 'payload': data_3 ,'headers': headers};
      let request_2 = JSON.parse(UrlFetchApp.fetch(`${url_yemot_api}UploadFile`, options_3))
      console.log(request_2)
      }
      

      אך משום מה התגובה של השרת של ימות היא כזו:
      { yemotAPIVersion: 6,
      responseStatus: 'EXCEPTION',
      message: 'IllegalStateException(session token is required)' }
      בעיקרון הייתי רוצה להוסיף גם שההודעה תישלח כקובץ מצורף למייל וכן שהוא ישאב את אנשי הקשר מאנשי קשר גוגל באופן אוטומטי, אשמח לכל עזרה בעניין.
      בתודה מראש.

      פורסם בטיפים עצות והדגמות מהמשתמשים
      ה
      האדם החושב
    • RE: לתועלת הציבור | סקריפט שמעלה נתונים מגוגל שיטס לlistallinformation

      @זרח
      עשיתי פעם משהו שעושה את אותו הדבר
      https://docs.google.com/spreadsheets/d/16htT6xwZJ7qx1HvNpNvFGgFSZRF4vg9DzgpkWjVpKAc/copy
      הוראות:
      בגיליון log יש להכניס את מספר המערכת והסיסמא
      לשנות את שמות העמודות לפי הצורך, להכניס פרטים ולהריץ.

      פורסם בעזרה הדדית למשתמשים מתקדמים
      ה
      האדם החושב
    • RE: חדש זמני היום לפי עיתים לבינה

      יש את הapi הזה:
      https://github.com/Orthodox-Union/zmanim-docs?tab=readme-ov-file
      לא בדקתי אם התשובות שלו מדוייקות.

      פורסם בפורום מפתחים API
      ה
      האדם החושב
    • RE: היכן ממוקמות כל מספרי הקו המשוייכים? 🔢

      @פלוס
      https://www.call2all.co.il/ym/api/GetApprovedCallerIDs?token=0773137770:1234

      תחליף מספר מערכת וסיסמא.

      פורסם בעזרה הדדית למשתמשים מתקדמים
      ה
      האדם החושב
    • תא קולי חינמי

      עשיתי כמו ש @edb1997 כתב במתמחים,ורציתי להוסיף קצת : א' קובץ שקט תקין תוכלו להוריד מכאן
      ולהקלטת ההודעה למשיבון אני ממליץ על האתר הזה ,תבחרו בקול של lior (זה יוצא יותר ברור ) ושימו רווח בין ספרה לספרה (אחרת המספרים ידרסו אחד את השני)
      לכאורה יש אפשרות להגדיר שישמעו את שם המתקשר ע"פ המובא כאן , אשמח אם תוכלו להחכימני איך בדיוק
      יש בעיקרון אופציה לשמוע את פרטי ההודעה כאן

      (https://f2.freeivr.co.il/topic/7918/חדש-במודול-השמעת-קבצים-מקש-לשמיעת-פרטי-הקובץ) ,נוזה לא עוזר,מה יכולה להיות הבעיה?

      type=playfile
      folder_to_play=/2
      playfile_end_goto=/0
      admin_options_open=yes
      control_play1=say_details_message_message=date=heb,time,phone
      
      
      
      פורסם בשאלות ועזרה הדדית
      ה
      האדם החושב
    • RE: מדריך | שליחת וקבלת מיילים בטלפון דרך חשבון הג׳ימייל האישי שלכם

      @Liy 👍👍👍 (אין לי אפשרות לתת לייק)
      אגב יש לי הצעת ייעול: שתהיה אפשרות להשיב למייל שהתקבל ,וכך זה יהיה בתור תשובה ,וכך גם לא יצטרכו להקליד כתובת
      וגם אם אפשרי שיוכלו להגדיר כתובות מייל (אנשי קשר) מראש

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

      @נר-יצחק תבדוק בספאם

      פורסם בעזרה הדדית למשתמשים מתקדמים
      ה
      האדם החושב
    • RE: תא קולי חינמי

      @גולד-תקשורת1 זה בדיוק מה שעשיתי ,תסביר את כוונתך
      אגב הפלוס במדריך הנל הוא שזה נשמע כמו תא קולי לכל דבר ועניין וההודעה נשמרת גם בלי הקשה על סולמית
      ההפנייה היא על חשבון המתקשר

      פורסם בשאלות ועזרה הדדית
      ה
      האדם החושב

    פוסטים אחרונים שנוצרו על ידי האדם החושב

    • RE: היכן ממוקמות כל מספרי הקו המשוייכים? 🔢

      @פלוס https://f2.freeivr.co.il/post/135629

      פורסם בעזרה הדדית למשתמשים מתקדמים
      ה
      האדם החושב
    • RE: היכן ממוקמות כל מספרי הקו המשוייכים? 🔢

      @פלוס
      https://www.call2all.co.il/ym/api/GetApprovedCallerIDs?token=0773137770:1234

      תחליף מספר מערכת וסיסמא.

      פורסם בעזרה הדדית למשתמשים מתקדמים
      ה
      האדם החושב
    • RE: אבטחה - באימות דו שלבי / דעתכם... 🪪💂🏻

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

      פורסם בעזרה הדדית למשתמשים מתקדמים
      ה
      האדם החושב
    • RE: אבטחה - באימות דו שלבי / דעתכם... 🪪💂🏻

      לדעתי זה שבכל שינוי ip צריך לעשות אימות מחדש זה מאד מפריע, כל מי שמשתמש סטיק בכל חיבור שלו הip משתנה.
      הייתי מציע שהסשן ישמר בדפדפן, כמו שכל אתר אחר עושה (google, github וכו' וכו').

      פורסם בעזרה הדדית למשתמשים מתקדמים
      ה
      האדם החושב
    • RE: עזרה | הכנת לינק לפעולות דרך API במחשב

      @פלמנמוני בget יש הגבלה לאורך הבקשה, כך שאם הוא ישים מידי הרבה מספרים זה לא יעבוד.

      פורסם בפורום מפתחים API
      ה
      האדם החושב
    • RE: מודל API עם גוגל סקריפט | עזרה

      @יב לא אפשרי

      פורסם בפורום מפתחים API
      ה
      האדם החושב
    • RE: מודול API אני מקבל תגובה אין מענה בשרת API

      @sumone צודק.
      שים לב שבכתובת ההיא בheaders כתוב שהcontent-type הוא json, אולי זה מה שגורם לבעיה.
      מה רשום לך בapilog?
      אגב, שים לב שכתבת את השורה הזאת:

      api_hangup_send=noapi_hangup_send=no
      
      פורסם בעזרה הדדית למשתמשים מתקדמים
      ה
      האדם החושב
    • RE: מודול API אני מקבל תגובה אין מענה בשרת API

      @אלי-דובדבן אתה צריך להחזיר תשובת שרת בפורמט טקסט רגיל, לא json.

      פורסם בעזרה הדדית למשתמשים מתקדמים
      ה
      האדם החושב
    • RE: מיזוג שיעורים ממערכת ימות המשיח לקול הלשון או להיפך

      @אליהו-המיבין אפשר לעשות שלוחת תור לקול הלשון ואז להעביר את הקלטת התור לתוך שלוחה בימות מתוך סל המחזור.
      כדי לעשות את זה באופן אוטומטי תצטרך שרת שיאזין לוובהוק בסוף התור ויעביר את הקובץ.
      תוכל גם להגדיר

      queue_record_duplicate_link=מיקום
      

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

      פורסם בעזרה הדדית למשתמשים מתקדמים
      ה
      האדם החושב
    • RE: בדיקת קוד פייתון

      @ישראללוי

      from uuid import uuid4
      
      import requests    
      
      class Yemot:
          BASE_URL = "https://www.call2all.co.il/ym/api/"
      
          def __init__(
                  self,
                  user_name: str,
                  password: str | int,
          ) -> None:
              self.token = f"{user_name}:{password}"
              self.params = {
                  "token": self.token
              }
      
          def upload_file(self, path: str, blob: bytes, file_name: str, base_path: str = "ivr2:/") -> bool:
              total_size = len(blob)
              chunk_size = 49 * 1024 * 1024
              chunks = [blob[offset:offset + chunk_size] for offset in range(0, total_size, chunk_size)]
              if len(chunks) == 1:
                  return self._upload_small_file(path, blob, file_name, base_path)
              else:
                  return self._upload_large_file(path, chunks, file_name, total_size, base_path)
      
          def _upload_small_file(self, path: str, blob: bytes, file_name: str, base_path: str) -> bool:
              data = {
                  "path": f"{base_path}{path}",
                  "convertAudio": "1",
                  "autoNumbering": "true",
              }
              data.update(self.params)
              files = {"file": (file_name, blob)}
              url = f"{self.BASE_URL}UploadFile"
              response = requests.post(url, files=files, data=data).json()
              return response["responseStatus"] == "OK"
      
          def _upload_large_file(self, path: str, chunks: list[bytes], file_name: str, content_size: int, base_path: str) -> bool:
              qquuid = str(uuid4())
              offset = 0
              for index, chunk in enumerate(chunks):
                  data = {
                      "path": f"{base_path}{path}",
                      "qquuid": qquuid,
                      "convertAudio": "1",
                      "autoNumbering": "true",
                      "uploader": "yemot-admin",
                      "qqfilename": file_name,
                      "qqtotalfilesize": content_size,
                      "qqtotalparts": len(chunks),
                      "qqchunksize": len(chunk),
                      "qqpartbyteoffset": offset,
                      "qqpartindex": index,
                  }
                  data.update(self.params)
                  files = {
                      "qqfile": chunk,
                  }
                  url = f"{self.BASE_URL}UploadFile"
                  response = requests.post(url, data=data, files=files).json()
                  if not response["success"]:
                      print(f"Error uploading chunk {index}: {response}")
                      return False
                  offset += len(chunk)
      
              data = {
                  "path": f"{base_path}{path}",
                  "uploader": "yemot-admin",
                  "convertAudio": "1",
                  "autoNumbering": "true",
                  "qquuid": qquuid,
                  "qqfilename": file_name,
                  "qqtotalfilesize": content_size,
                  "qqtotalparts": len(chunks),
              }
              data.update(self.params)
              response = requests.post(f"{self.BASE_URL}UploadFile?done", data=data).json()
              return response["responseStatus"] == "OK"
      
      
      פורסם בעזרה הדדית למשתמשים מתקדמים
      ה
      האדם החושב