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

    מ. מ. פליישער

    @מ. מ. פליישער

    ניהול
    942
    מוניטין
    1.1k
    צפיות בפרופיל
    868
    פוסטים
    47
    עוקבים
    0
    עוקב אחרי
    תאריך הצטרפות
    נראה לאחרונה

    מ. מ. פליישער הפסקת מעקב מעקב
    ניהול

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

    • RE: מקבץ הגדרות מודולים מבית אהבת ישראל - דיונים ועזרה בהגדרות

      בס"ד

      הצעת פיתוח לPhoneBook - ייבוא אנשי קשר מאקסל

      לפי כמות ה👍 שיהיה לכתבה זו - נשקול את ההעלאת האפשרות

      בהצלחה

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

      בס"ד

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

      המודול יכול לעבוד עבור כל הערים או איזור/ים ספציפי/ים.
      כמובן שמשמיע את התאריך והשעה. במידה וההתרעה היא בתוך הטווח של ה10 דקות, המערכת תשמיע את הנתון בצורה של "כמה דקות עברו".
      לדוגמא: "לפני... דקות" וכו' או "עכשיו" וכו. לאחר ה10 דקות המערכת תשמיע "היום", "אתמול" ואז "בשעה...". שאר הימים בהיסטורייה יישמעו כתאריך עברי ולועזי.

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

      תהנו 🙂


      להלן ההגדרות לקובץ ext.ini:

      האזנה להתראות - כל הערים

      type=api
      api_link=https://pakar.ivr2.tel/alerts
      api_url_post=yes
      api_add_0=city=all
      

      האזנה להתראות - איזור ספציפי / מספר מרובה של אזורים (ניסיוני)

      type=api
      api_link=https://pakar.ivr2.tel/alerts
      api_url_post=yes
      api_add_0=city=ירושלים
      

      או בשביל מספר איזורים (נקודה מפרידה)

      type=api
      api_link=https://pakar.ivr2.tel/alerts
      api_url_post=yes
      api_add_0=city=ירושלים.צפת - עיר
      

      האזנה למבזקים מקדימים בלבד - איזור ספציפי / מספר מרובה של אזורים (ניסיוני)

      type=api
      api_link=https://pakar.ivr2.tel/alerts
      api_url_post=yes
      api_add_0=city=SYSTEM_MESSAGE
      

      או בשביל מספר איזורים (נקודה מפרידה)

      type=api
      api_link=https://pakar.ivr2.tel/alerts
      api_url_post=yes
      api_add_0=city=SYSTEM_MESSAGE.ירושלים.צפת - עיר
      

      רישום לקבלת צינטוק בעת התראה (מבוסס מודול צינטוקים חינמיים)

      (כל הערים)

      type=api
      api_link=https://pakar.ivr2.tel/tzintuk
      api_url_post=yes
      api_add_0=pass=***
      api_add_1=city=all
      api_add_2=callerId=***
      

      (עיר ספציפית)

      type=api
      api_link=https://pakar.ivr2.tel/tzintuk
      api_url_post=yes
      api_add_0=pass=***
      api_add_1=city=צפת - עיר
      api_add_2=callerId=***
      

      (מבזקים בלבד)

      type=api
      api_link=https://pakar.ivr2.tel/tzintuk
      api_url_post=yes
      api_add_0=pass=***
      api_add_1=city=SYSTEM_MESSAGE.צפת - עיר
      api_add_2=callerId=***
      

      בשדה pass נכתוב את סיסמת הניהול של המערכת לצורך התקנת שלוחת הצינתוקים.
      בשדה callerId (לא חובה) ניתן להוסיף זיהוי יוצא מתוך המספרי משני או המאושרים במערכת.
      שימו לב: בצינתוק ניתן להרשם לכל עיר בנפרד. אי אפשר מספר ערים במקביל.


      קישור מומלץ להתקנת המודול והודעות המערכת המוכנות במערכת שלכם https://pakar.ivr2.tel

      הודעות מערכת: (בנוסף להודעות המערכת, יש קבצים מ00 ו 0 עד 59 בשביל הדקות והשניות)
      PAKAR0001 התראות פיקוד העורף
      PAKAR0002 עכשיו
      PAKAR0003 התראת ירי רקטות וטילים
      PAKAR0004  התראת אירוע רדיולוגי
      PAKAR0005 התראת רעידת אדמה
      PAKAR0006 התראת צונאמי
      PAKAR0007 התראת חדירת כלי טיס עויין
      PAKAR0008 התראת חומרים מסוכנים
      PAKAR0009 התראת חדירת מחבלים
      PAKAR0010 תרגיל! צבע אדום
      PAKAR0011 תרגיל! רעידת אדמה
      PAKAR0012 תרגיל! אירוע רדיולוגי
      PAKAR0013 תרגיל! צונאמי
      PAKAR0014 תרגיל! חדירת כלי טיס עויין
      PAKAR0015 תרגיל! חומרים מסוכנים
      PAKAR0016  תרגיל! חדירת מחבלים
      PAKAR0018  עליכם להיכנס באופן מיידי למרחב המוגן ולשהות בו למשך 10 דקות.  
      PAKAR0019  עליכם לצאת מיד לשטח פתוח. אם לא ניתן, היכנסו לממ"ד או לחדר מדרגות.
      רק אם לא ניתן לפעול כך - שבו בפינה פנימית של החדר או תחת רהיט כבד והגנו על הראש עם הידיים.
      PAKAR0020  עליכם להיכנס באופן מיידי למבנה, לנעול את הדלתות ולסגור את החלונות.אין לצאת מהמבנה עד לקבלת הודעה על סיום האירוע.
      התנועה באזור אסורה וחל איסור להיכנס אליו עד להודעה חדשה.
      PAKAR0021 עליכם להיכנס באופן מיידי למרחב המוגן ולשהות בו למשך 10 דקות, אלא אם ניתנה התרעה נוספת.
      PAKAR0022 עליכם להיכנס תוך... 
      PAKAR0023 למרחב המוגן ולשהות בו למשך 10 דקות.  אלא אם ניתנה התרעה נוספת.
      PAKAR0024 למרחב המוגן ולשהות בו למשך 10 דקות.
      PAKAR0025 לא התקבלו התראות ביממה האחרונה
      PAKAR0032 היום
      PAKAR0033 אתמול
      PAKAR0034 ב...
      PAKAR0035 בשעה...
      PAKAR0036 עכשיו
      PAKAR0043 לפני
      PAKAR0044 דקות
      PAKAR0046 אירוע הסתיים
      PAKAR0047 הודעת מבזק מקדימה


      בכל שאלה או תקלה מוזמנים לפנות אלינו.

      פורסם בטיפים עצות והדגמות מהמשתמשים
      מ
      מ. מ. פליישער
    • מחלקה של תקשורת עם ימות API

      ברוכים הבאים למחלקה לתקשורת עם ימות API בקלות ובמהירות!

      התיעודים נלקחו מכאן


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

      /*================התחברות רגיל====================*/
      $con = new connecting_to_yemot_api('0773137770', '0000',false);
      
      /*================התחברות פריווט====================*/
      $con = new connecting_to_yemot_api('0773137770', '0000',true);
      

      ולאחר מכן נוסיף את הפקודה הרצוייה ואת הפרמטרים הרצויים ונכניס למשתנה $a:

      $a = $con -> connecting('PKUDA',[
      "key"=>"value",
      "key"=>"value"
      ]);
      

      התשובה מהשרת (ניתן לדעת כל תשובה על ידי מעבר ספציפית לכל פונקצייה לתיעוד בAPI)


      מצורפים כאן כל הפונקציות


      קבלת פרטי המערכת

      $a = $con -> connecting('GetSession',[]);
      

      שינוי סיסמת ניהול

      $a = $con -> connecting('SetPassword', [
      "password"=>"סיסמת הניהול הנוכחית", 
      "newPassword"=>"סיסמה חדשה"
      ]);
      

      קבלת רשימת חיובי יחידות

      $a = $con -> connecting('GetTransactions',[
      "from"=>"מאיזה תנועה להציג",
      "limit"=>"מספר מרבי של תנועות שיש לכלול"
      ]);
      

      העברת יחידות

      $a = $con -> connecting('TransferUnits',[
      "destination"=>"מספר מערכת להעברה",
       "amount"=>"כמות יחידות להעברה"
      ]);
      

      קבלת רשימת שיחות הפעילות במערכת

      $a = $con -> connecting('GetIncomingCalls',[]);
      

      העלאת קובץ

      //טקסט ישירות
      $File = new oFile('ext.ini', 'text/plain', 'type=menu');
      //קובץ מלינק
      $File = new oFile('ext.ini', 'text/plain', file_get_contents("https://"));
      
      $a = $con -> connecting('UploadFile',[
      'path' => 'ivr/ext.ini',
      'convertAudio' => 0,
      'fileUpload' => $File
      ]);
      
      

      הורדת קובץ

      $a = $con -> connecting('DownloadFile',[
      "path"=>"ivr/1/000.wav"
      ]);
      

      קבלת מצב כל תבניות הקמפיינים

      $a = $con -> connecting('GetTemplates',[]);
      

      עדכון תבנית קמפיין

      $a = $con -> connecting('UpdateTemplate',[
      "templateId"=>"מזהה תבנית	פרמטר חובה",
      "description"=>"תיאור התבנית",
      "callerId"=>"זיהוי שיחה יוצאת",
      "incomingPolicy"=>"מדיניות שיחות נכנסות - רלוונטי לקמפיין ברירת המחדל בלבד. (OPEN BLACKLIST WHITELIST BLOCKED)",
      "customerDefault"=>"האם להגדיר כקמפיין ברירת המחדל אם כן, יש להגדיר 1. אם לא, יש להגדיר קמפיין אחר",
      "maxActiveChannels"=>"הגבלת קווים מחייגים",
      "maxBridgedChannels"=>"הגבלת קווים מנותבים",
      "originateTimeout"=>"זמן חיוג מקסימלי - בשניות",
      "vmDetect"=>"האם להפעיל את האפשרות של זיהוי תא קולי	במידה וכן, יש להגדיר 1. במידה ולא, יש להגדיר 0",
      "filterEnabled"=>"האם להפעיל את האפשרות של קמפיין ממספרים אישיים	במידה וכן, יש להגדיר 1. במידה ולא, יש להגדיר 0",
      "maxDialAttempts"=>"ניסיונות חיוג",
      "redialWait"=>"המתנה בין נסיונות חיוג - בשניות",
      "redialPolicy"=>"מדיניות חיוגים חוזרים. ישנם 3 מצבים - NONE CONGESTIONS FAILED",
      "yemotContext"=>"סוג הקמפיין. ישנם 5 מצבים - SIMPLE REPEAT MESSAGE VOICEMAIL BRIDGE",
      "bridgeTo"=>"מספר הטלפון לניתוב",
      "playPrivateMsg"=>"האם להפעיל את האפשרות של מצב הודעה פרטית	במידה וכן, יש להגדיר 1. במידה ולא, יש להגדיר 0",
      "removeRequest"=>"אפשרויות הסרה. קיימים 2 מצבים - SILENT WITH_MESSAGE"
      ]);
      

      להלן המחלקה:

      $SetSite = $_GET["SetSite"];
      	if ($SetSite == NULL) {
      	define("URL", "https://www.call2all.co.il/ym/api/");
      }
      	if ($SetSite == "private") {
      	define("URL", "https://www.private.call2all.co.il/ym/api/");
      }
      class BodyPost
      {
      // part "multipart/form-data"
          public static function PartPost($name, $val)
           {
               $body = 'Content-Disposition: form-data; name="' . $name . '"';
      // check instance of oFile
               if($val instanceof oFile)
                {
                    $file = $val->Name();
                    $mime = $val->Mime();
                    $cont = $val->Content();
       
                    $body .= '; filename="' . $file . '"' . "\r\n";
                    $body .= 'Content-Type: ' . $mime ."\r\n\r\n";
                    $body .= $cont."\r\n";
                } else $body .= "\r\n\r\n".$val."\r\n";
               return $body;
           }
       
          public static function Get(array $post, $delimiter = '-------------0123456789')
           {
               if(is_array($post) && !empty($post))
                {
                    $bool = true;
                    //foreach($post as $val) if($val instanceof oFile) {$bool = true; break; };
                    if($bool)
                     {
                         $ret = '';
                         foreach($post as $name=>$val)
                             $ret .= '--' . $delimiter. "\r\n". self::PartPost($name, $val);
                         $ret .= "--" . $delimiter . "--\r\n";
                     } else $ret = http_build_query($post);
                } else throw new \Exception('Error input param!');
               return $ret;
           }
      }
       
      class oFile
      {
           private $name;
           private $mime;
           private $content;
       
           public function __construct($name, $mime=null, $content=null)
            {
                if(is_null($content))
                 {
                     $info = pathinfo($name);
      // check is exist and readable file
                     if(!empty($info['basename']) && is_readable($name))
                      {
                          $this->name = $info['basename'];
      // get MIME
                          $this->mime = mime_content_type($name);
      // load file
                          $content = file_get_contents($name);
                          if($content!==false)
                          {
                              $this->content = $content;
                          }
                          else
                          {
                              throw new Exception('Don`t get content - "'.$name.'"');
                          }
                      }
                      else
                      {
                          throw new Exception('Error param');
                      }
                 }
                 else
                 {
                         $this->name = $name;
                         if(is_null($mime)) $mime = mime_content_type($name);
                         $this->mime = $mime;
                         $this->content = $content;
                  };
            }
       
          public function Name() { return $this->name; }
       
          public function Mime() { return $this->mime; }
       
          public function Content() { return $this->content; }
       
      }
       
      class connecting_to_yemot_api
      {
          public $token;
       
          const URL = URL;
       
          public function __construct($user_name, $password)
          {
              $body = array('username' => $user_name, 'password' => $password);
       
              $body = http_build_query($body);
       
              $opts = array('http' => array(
       
                  'method'  => 'POST',
       
                  'header'  => "Content-Type: application/x-www-form-urlencoded",
       
                  'content' => $body,
       
                  'follow_location' => false) );
       
               $context  = stream_context_create($opts);
       
               $url = self::URL.'Login';
       
                  $result = file_get_contents($url, FALSE, $context);
       
                  $result = json_decode($result);
       
                  if($result -> responseStatus == 'OK')
                  {
                      $this -> token = $result -> token;
       
                      return TRUE;
                  }
                  else
                  {
                      throw new Exception('שם המשתמש או הסיסמא של המערכת שגויים');
                  }
          }
       
          public function __destruct()
          {
              $this -> connecting('Logout');
          }
       
          public function connecting($action, $body = array())
          {
              $delimiter = '----'.uniqid();
       
              $body['token'] = $this -> token;
       
              $body = BodyPost::Get($body, $delimiter);
       
              $opts = array('http' =>
                      array(
                          'method'  => 'POST',
                          'header'  => 'Content-Type: multipart/form-data; boundary='.$delimiter,
                          'content' => $body,
                          'follow_location' => false
                          )
                        );
              $context  = stream_context_create($opts);
       
              $url = self::URL.$action;
       
              $result = file_get_contents($url, FALSE, $context);
       
              $headers = $this -> parseHeaders($http_response_header);
       
              if($headers['Content-Type'][0] == 'application/json')
              {
                  return json_decode($result);
              }
              else
              {
                  return $result;
              }
          }
       
          private function parseHeaders($headers)
          {
              // פונקציה שמקבלת מערך של שורות הכותרות
              // הפונקציה מפרקת את קבצי הקוקי לתת-מערך נפרד
       
       
              // מערך הכותרות
              $head = array();
       
              foreach( $headers as $k=>$v )
              {
                  $t = explode( ':', $v, 2 );
       
                  if( isset( $t[1] ) )
                  {
                      if($t[0] == 'Set-Cookie')
                      {
                          $CookiesArr = array();
       
                          $cookies = explode( ';', $t[1]);
       
                          foreach($cookies as $cookie)
                          {
                              $c = explode( '=', $cookie);
       
                              if( isset( $c[1] ) )
                              {
                                  $CookiesArr[ trim($c[0]) ] = trim( $c[1] );
                              }
                              else
                              {
                                  $CookiesArr[] = trim( $c[0] );
                              }
                          }
       
                          $head[ trim($t[0]) ] = $CookiesArr;
                      }
                      elseif($t[0] == 'Content-Type')
                      {
                          $arr = array();
       
                          $children = explode( ';', $t[1]);
       
                          foreach($children as $child)
                          {
                              $c = explode( '=', $child);
       
                              if( isset( $c[1] ) )
                              {
                                  $arr[ trim($c[0]) ] = trim( $c[1] );
                              }
                              else
                              {
                                  $arr[] = trim( $c[0] );
                              }
                          }
       
                          $head[ trim($t[0]) ] = $arr;
                      }
                      else
                      {
                          $head[ trim($t[0]) ] = trim( $t[1] );
                      }
                  }
                  else
                  {
                      $head[] = $v;
                      if( preg_match( "#HTTP/[0-9\.]+\s+([0-9]+)#",$v, $out ) )
                      {
                          $head['reponse_code'] = intval($out[1]);
                      }
                  }
              }
              return $head;
          }
      }
      
      
      פורסם בפורום מפתחים API
      מ
      מ. מ. פליישער
    • מודול שליחת הודעה כתובה בווצאפ אליכם ללא צורך בשרת - מובא על ידי אהבת ישראל

      בס"ד

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

      1) נשלח את ההודעה I allow callmebot to send me messages בווצאפ לטלפון מספר +34644179464 או ללחוץ על הקישור wa.me/34644179464?text=I allow callmebot to send me messages

      2) ממתינים מספר שניות/דקות עד לקבלת ההודעה

      CallMeBot API Activated for 'מספר הטלפון ממנו נרשמתם'
      Your apikey is: 'הטוקן אותו יש לשמור בצד'
      

      **3)**מגדירים את ההגדרה הבאה במערכת הטלפונית

      type=api
      api_link=https://api.callmebot.com/whatsapp.php
      api_add_0=phone=מספר הטלפון
      api_add_1=text=ההודעה לשליחה (ניתן להגדיר: זיהוי דיבור ערך א/הקלדת טקסט ערך ב)
      api_add_2=apikey=הטוקן
      api_end_goto=/לאיזה שלוחה לעבור בסיום (אין הודעת הצלחה או שגיאה)
      

      וזהו!!! יש לכם מודול חמוד ושימושי.

      ערך א) זיהוי דיבור

      type=api
      api_link=https://api.callmebot.com/whatsapp.php
      api_000=text,,voice
      api_add_0=phone=מספר הטלפון
      api_add_1=apikey=הטוקן
      api_end_goto=/לאיזה שלוחה לעבור בסיום (אין הודעת הצלחה או שגיאה)
      

      ערך ב) הקלדת טקסט

      type=api
      api_link=https://api.callmebot.com/whatsapp.php
      api_000=text,,*,*,*,HebrewKeyboard
      api_add_0=phone=מספר הטלפון
      api_add_1=apikey=הטוקן
      api_end_goto=/לאיזה שלוחה לעבור בסיום (אין הודעת הצלחה או שגיאה)
      

      יש להעלות קובץ 000 להשאיר הודעה בהקלטה או בהקלדה

      שירות מי חיפש אותי בווצאפ(הדוגמא המובאת כאן היא בget אך אפשר בpost וזאת על ידי הוספת api_url_post=yes לקוד הבא)

      type=api
      api_link=https://whatsapp.ai770.tech
      api_add_0=phone=מספר הטלפון
      api_add_1=apikey=הטוקן
      api_end_goto=/לאיזה שלוחה לעבור בסיום (אין הודעת הצלחה או שגיאה)
      

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

      פורסם בטיפים עצות והדגמות מהמשתמשים
      מ
      מ. מ. פליישער
    • חדש!!! המערכת שתגיד לכם בדיוק מתי וכמה זמן נשאר כדי שתוכלו לאכול חלבי כעבור ה6 השעות

      חדש!!! המערכת שתגיד לכם בדיוק מתי וכמה זמן נשאר כדי שתוכלו לאכול חלבי כעבור ה6 השעות
      0799100249

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

      אם יש 100 שלוחות בשלוחה המבוקשת, ורוצים שהיא תופעל באקראי, משלוחה 1 עד שלוחה 100
      יש להגדיר:

      type=folder_play_random
      folder_play_random=1.100
      

      אם רוצים לדוגמא שיפעיל משלוחה 50 עד שלוחה 90 באקראי (לשלוחות האחרות לא יהיה גישה כלל)
      יש לשנות את המספרים ולהגדיר:

      type=folder_play_random
      folder_play_random=50.90
      
      פורסם באזור התעשיה - הגדרות המערכת
      מ
      מ. מ. פליישער
    • RE: פניה לשרת api במקש ממודול השמעת קבצים

      בוקר טוב.
      עדכון:
      למי שלא שם לב, היתה בעייה בהפרדה של & בין הפרמטרים של ההשמעת קבצים לבין ApiCallId וכו שאר הפרמטרים שנשלחים כרגיל ממודול API.
      כלומר, הפרמטר של ApiCallId היה מחובר עם הפרמטר של ההשמעת הקבצים...

      עכ"פ הבעייה סודרה!.
      המשך יום נעים.

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

      בס"ד
      עשיתי פרוייקט שיכול לעזור: שליחת שיחה טלפונית עם קוד אימות כמו ווצאפ (לקבלת קוד האימות אנא הקישו...) וגם האימות מתבצע מול האנדפוינט.
      הקוד בנוי בnode.js.
      מצרף לכם כאן את הפרוייקט. אם משהו לא מובן תגידו זה פשוט פעם ראשונה שאני עושה דברים כאלה בפומבי 🙂
      https://github.com/ivrtop770/yemot-otp

      פורסם בפורום מפתחים API
      מ
      מ. מ. פליישער
    • חדש! ניסיון - העלאה מהירה למערכת הטלפונית באמצעות הווצאפ

      בס"ד

      בוט אוטומטי בווצאפ להעלאת קבצים מהירה למערכת הטלפונית

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

      המספר של הבוט הוא - לחצו על הקישור למעבר ישיר: ⁦⁦972799305850

      מצורפים תמונות להתרשמות:
      עיצוב ללא שם (10).png

      27.3.2024
      נוסף בבוט:

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

      03.07.2024: שונה הצורה שבה פועל הבוט.
      נוספו ושונו:

      • נתיבים אישיים מחליף את "הגדרות אישיות" (בנתיבים אישיים ניתן יהיה לבחור את מה שהיה בהגדרות, ובצורה יותר מהירה ודינמית).
      • שליחת צינטוק מהיר לאחר ההעלאת קובץ - מבוסס רשימה חינמית.
      • הקלטת כותרת לכל קובץ שעלה.
      פורסם בטיפים עצות והדגמות מהמשתמשים
      מ
      מ. מ. פליישער
    • חדש! תמלול וסיכומי הקלטות מהמערכת הטלפונית שלכם באמצעות מנוע AI – ישירות במייל 📧

      בס"ד

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

      כמה שעות בחודש אתם מבזבזים על האזנה להקלטות שיחה? ומי באמת זוכר מה נאמר בכל שיחה?
      אנחנו שמחים להשיק את גרסת הבטא של Smart Records AI – הדור הבא של ניהול הקלטות ושיחות.

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

      איך זה עובד?
      המערכת שלנו מקבלת את ההקלטה מהמערכת הטלפונית, ומחזירה לכם מייל חכם ומפורט תוך דקות.

      מה מחכה לכם במייל?
      🤖 תמלול חכם AI: כל מילה שנאמרה בשיחה, מתומללת במדויק (כן, גם ובעיקר בעברית!).
      📝 סיכום שיחה בכמה מילים: במקום להקשיב לכל השיחה, קבלו את השורה התחתונה ואת הנושאים העיקריים.
      🎭 זיהוי רגשות: ה-AI שלנו (מבוסס Gemini) ינתח אם הלקוח היה כועס או מרוצה.
      👥 זיהוי דוברים: הפרדה ברורה בין הנציג לבין הלקוח, או דוברים נוספים בשיחה.

      זהו רק הצעד הראשון.
      שירות Smart Records הינו לא רק שירות מייל....

      בימים אלו אנחנו משלימים את פיתוח המערכת המלאה שתכלול גיבויים אוטומטיים לענן, ממשק ניהולי וחיפוש מתקדם בתוך השיחות עם מגוון פיצ'רים ששווה לחכות!!.

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

      התשלום היחידי שכן יהיה כאן הוא לספק ה-AI (ג'מיני) - שבתהליך ההרשמה לשירות אצלינו תצטרכו לספק לנו את מפתח ה-Api לשימוש בשירות. כל ההסבר והדרכות יהיו בקישור המצורף.

      איך מצטרפים? - השירות ייפתח היום בשעה 6 בערב

      נרשמים כאן בקישור https://smart-records.ai/mail > מאמתים את כתובת המייל > מזינים מפתח API עבור Gemini > וסיימתם!

      בהצלחה!!!

      פורסם בטיפים עצות והדגמות מהמשתמשים
      מ
      מ. מ. פליישער

    פוסטים אחרונים שנוצרו על ידי מ. מ. פליישער

    • RE: מוזיקה בהמתנה

      בס"ד

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

      ניהול מוזיקה בהמתנה באמצעות הAPI במודול Music On Hold.

      • יש לבחור שם שאיתו שתשתמשו בהגדרות בשלוחה על מנת להפעיל את המוזיקה בהמתנה
      • שימו לב, לאחר ביצוע הפעולה תקבלו את השם שבחרתם בתוספת מזהה שנוסף, את השם המלא שתראו כתגובה יש להכניס לשלוחה
      • המוזיקה בהמתנה הינה התוכן של התיקיה בצורה אקראית
      • שימו לב, על השלוחה להיות ריקה מכל קבצים אחרים מלבד קבצי שמע - לרבות קבצי הגדרות ini ו ext.ini!

      1. קבלת מוזיקה בהמתנה לפי נתיב (GetMusicOnHoldByPath)

      משמש לבדיקה האם קיימת מוזיקה בהמתנה בנתיב מסוים ומה הסטטוס שלה.

      • Endpoint: GetMusicOnHoldByPath
      • גוף הבקשה (Payload): path = הנתיב המלא של התיקייה (למשל: ivr2:/1).

      דוגמת תגובה:

      {
          "responseStatus": "OK",
          "yAfastVersion": "6.7.114",
          "data": "Y"
      }
      
      

      הנתון שמתקבל בdata לדוגמא Y זה השם לשים בשלוחה אח"כ בקובץ ext.ini:

      type=music_on_hold
      music_on_hold=Y
      

      אבל יכול להיות שבAPI תקבל:

      {"responseStatus":"OK","yAfastVersion":"6.7.114","data":false}
      

      שזה אומר שאין קובץ מעודכן.


      2. יצירת מוזיקה בהמתנה (CreateMusicOnHolds)

      משמש להגדרת מוזיקה בהמתנה עבור תיקייה ספציפית.

      • Endpoint: CreateMusicOnHolds
      • גוף הבקשה (Payload):
      • folderPath: הנתיב שבו תוגדר המוזיקה (למשל: ivr2:/1).
      • name: מזהה או שם קובץ המוזיקה (למשל: MyMusic).

      דוגמת תגובה:

      {
          "responseStatus": "OK",
          "yAfastVersion": "6.7.114",
          "status": "Z"
      }
      
      

      הנתון שמתקבל בstatus לדוגמא Z זה השם לשים בשלוחה אח"כ בקובץ ext.ini:

      type=music_on_hold
      music_on_hold=Z
      

      3. מחיקת מוזיקה בהמתנה (DeleteMusicOnHolds)

      משמש להסרת הגדרת מוזיקה בהמתנה קיימת.

      • Endpoint: DeleteMusicOnHolds
      • גוף הבקשה (Payload):
      • name: שם המוזיקה/המזהה שיש למחוק.

      דוגמת תגובה:

      {
          "responseStatus": "OK",
          "yAfastVersion": "6.7.114",
          "status": true
      }
      
      
      פורסם בעזרה הדדית למשתמשים מתקדמים
      מ
      מ. מ. פליישער
    • RE: ניתוב לפי זמנים

      @sh0548534047 כתב בניתוב לפי זמנים. דחוף! דחוף! דחוף!:

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

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

      אבל ב"ה לאחרונה אני דיי משתדל שפרוייקטים יישארו.

      שוב לא מכריח אף אחד להשתמש. אבל כן חייב לציין זאת כדי לצאת ידי חובה.

      א פרייעלכן פורים.

      פורסם בעזרה הדדית למשתמשים מתקדמים
      מ
      מ. מ. פליישער
    • חדש! מודול ניסיוני להפניית שיחות לנציגים לפי שעות מתוך קובץ queue.ini אצליכם במערכת! מבוסס מודול ניתוב שיחות לפי תור (routing_queue)

      בס"ד

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

      המערכת פועלת בצורה מאד פשוטה: המערכת מורידה את הקובץ queue.ini מהשלוחה הספציפית של התור ושמה אתם מגדירים את המספרים למענה ע"פ השעות לפי התבנית המותאמת.

      כדי שהמערכת תטען את ההגדרות מהשירות שלנו יש להגדיר בקובץ ext.ini את ההגדרה הבאה:

      type=routing_queue
      queue_url_link=https://queue.tel
      queue_api_add_0=token=WU1BUElL.apik_XXXX
      queue_api_url_post=yes
      

      יש ליצור גם מפתח גישה של API בחומת האש של המערכת הטלפונית ולהעביר אותו בשדה האמור כאן.

      לאחר מכן המערכת פועלת בצורה הבאה (ותבנית השעות והימים דיי מוכרת מהמון מקומות בהגדרות המתקדמות) בקובץ queue.ini:

      09:00-17:00.sun-thu.*.*=0501234567,0507654321=[ACTION_HERE]
      

      אז מה שראינו כאן זה: הפנייה מהשעה 9 בבוקר עד 5 בצהריים, בימים ראשון עד חמישי.
      אחרי זה עושים = ואת מספרי הטלפון או חשבונות SIP עם הפנייה של פסיק בין מספר למספר.
      אחרי זה נעשה עוד שווה בשביל להגדיר פעולות שיפעלו במקרה שהמוקד סגור ע"פ מודול API.
      לדוגמא:

      09:00-17:00.sun-thu.*.*=0501234567,0507654321=id_list_message=t-המוקד פתוח בימים ראשון עד חמישי בין השעות 9 בבוקר עד 5 בערב&go_to_folder=/LeaveMessage
      

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

      שאר הגדרות התור נשארות ללא שינוי ואפשרי להגדיר אותם אחרי שעות הפעילות שנמצאות בתחילת השלוחה כאמור.

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

      1. שעות ביממה. | 2. ימים בשבוע. | 3. ימים בחודש (לועזי). |4. חודשים לועזיים.

      יש לכתוב משעה עד שעה כאשר ביניהם יש - וכן מיום עד יום ומחודש עד חודש. אם ברצונכם להגדיר שיוכלו להיכנס בכל הזמנים ששייכים לערך ספציפי יש להגדיר בו *. ראה בדוגמא מספר 2.

      רשימת הימים:

      ראשון שני שלישי רביעי חמישי שישי שבת
      sun mon tue wed thu fri sat

      רשימת החודשים

      ינואר - 01 פברואר - 02 מרץ -03 אפריל - 04 מאי - 05 יוני -06 יולי - 07 אוגוסט - 08 ספטמבר - 09 אוקטובר 10 נובמבר - 11 דצמבר - 12
      jan feb mar apr may jun jul aug sep oct nov dec
      פורסם בטיפים עצות והדגמות מהמשתמשים
      מ
      מ. מ. פליישער
    • RE: חדש!! 🚀 משדרגים את ההקלטות הקוליות של המערכת הטלפונית עם Smart Records AI

      @לימוד-בתורת-מרן כתב בחדש!! 🚀 משדרגים את ההקלטות הקוליות של המערכת הטלפונית עם Smart Records AI:

      @מ.-מ.-פליישער
      אשמח לעזרה!!!

      תפנה אלי במייל כאן שמופיע בחתימה שלי. אם פנית כבר תקפיץ לי את המייל בבקשהץ

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

      @רוצה-אומן כתב בחדש! תמלול וסיכומי הקלטות מהמערכת הטלפונית שלכם באמצעות מנוע AI – ישירות במייל 📧:

      אני מעוניין בשירות זה
      אשמח שתחזור אלי

      תפנה אלי במייל כאן שמופיע בחתימה שלי.

      פורסם בטיפים עצות והדגמות מהמשתמשים
      מ
      מ. מ. פליישער
    • RE: שמות למספרי משנה

      @BEN-ZION כתב בשמות למספרי משנה:

      @cubase סליחה על החפירה האם זה אפשרי מבחינה טכנית לעשות פיתוח כזה? אני לא מבין הרבה בקודים אבל אני נעזר בבינה מלאכותית ומצליח לכתוב קודים השאלה אם יש לי מה לשרוף על זה ניסיון או שזה לא שייך

      אם זה שייך אשמח אם תוכל לתת לי הכוונה בסיסית איך זה עובד שאני ידע איזה מידע ללמוד

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

      הקישור כזכור הוא https://smart-ivr.co.il

      פורסם בעזרה הדדית למשתמשים מתקדמים
      מ
      מ. מ. פליישער
    • RE: חדש!! 🚀 משדרגים את ההקלטות הקוליות של המערכת הטלפונית עם Smart Records AI

      @ben-zion ובבקשה, מה שלא קשור לנושא הזה ספציפי נא לפתוח בפוסט אחר.
      אשמח לעזור לך גם במייל.

      תודה.

      פורסם בטיפים עצות והדגמות מהמשתמשים
      מ
      מ. מ. פליישער
    • RE: חדש!! 🚀 משדרגים את ההקלטות הקוליות של המערכת הטלפונית עם Smart Records AI

      @BEN-ZION כתב בחדש!! 🚀 משדרגים את ההקלטות הקוליות של המערכת הטלפונית עם Smart Records AI:

      אני רוצה טוקן לניהול שלוחה 8 וכל מה שמתחתיה

      זה בכיוון - ביצירת מפתח אתה הולך לJSON ומדביק:
      42ebe3c3-2e54-4181-aa28-6c567f7a45cd-image.png

      {
        "tokenMore": {
          "ws_parms_whitelist": [
            "wath",
            "path",
            "what"
          ],
          "ws_parms_mismatch_action": "deny",
          "default_acl_policy": "deny",
          "acl_rules": [
            {
              "name": "",
              "active": true,
              "policy": "allow",
              "ip": [],
              "endpoint": [],
              "params": [
                "what=ivr2:/8/**",
                "wath=ivr2:/8/**",
                "path=ivr/8/**"
              ],
              "set_params": {}
            }
          ]
        }
      }
      
      פורסם בטיפים עצות והדגמות מהמשתמשים
      מ
      מ. מ. פליישער
    • SmartIVR - דוח שיחות נכנסות כולל מספרים משניים, והנפקת דוח עם גיליון לכל מספר משני

      בס"ד
      הפיתוח הינו פרטי ומטעם חברת אהבת ישראל.
      התוסף זמין בקישור: https://Smart-IVR.co.il/addons/incoming-calls-report

      כל הפניות נעשות מצד הלקוח ישירות אל ה-API הרישמי מתוך התיעוד הרגיל.

      בהצלחה!


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

      כתובת הבסיס

      https://smart-ivr.co.il/addons/incoming-calls-report
      

      פרמטרים ב-Query (מה צריך להעביר)

      פרמטר חובה ערכים תיאור
      token כן (לצפייה/ייצוא) מחרוזת טוקן טוקן המערכת. נדרש לצפייה בדוח ולייצוא.
      export לא 1 מצב ייצוא בלבד: הדף טוען, מוריד קובץ Excel, ומציג מסך הצלחה (או "אין נתונים") בלי להציג את הדוח המלא.
      closeAfterExport לא 1 רק במצב ייצוא (export=1): אחרי הורדת הקובץ מציג "החלון ייסגר בעוד רגע" וסוגר את החלון אוטומטית. יש להשתמש כשמפנים מאתר חיצוני (העברה). אם לא מועבר – יוצג כפתור "חזרה לדוחות" והחלון לא ייסגר.
      month לא YYYY-MM חודש לדוח (למשל 2025-02). ברירת מחדל: החודש הנוכחי.

      תרחישי שימוש

      1. הפניה לצפייה בדוח (דף רגיל)

      מתאים כשהמשתמש נכנס לדוח מתוך האתר או מהדשבורד.

      https://smart-ivr.co.il/addons/incoming-calls-report?token=<TOKEN>
      

      אופציונלי עם חודש:

      https://smart-ivr.co.il/addons/incoming-calls-report?token=<TOKEN>&month=2025-02
      

      2. הפניה לייצוא בלבד – מאתר חיצוני (העברה)

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

      https://smart-ivr.co.il/addons/incoming-calls-report?token=<TOKEN>&export=1&closeAfterExport=1
      

      עם חודש:

      https://smart-ivr.co.il/addons/incoming-calls-report?token=<TOKEN>&export=1&closeAfterExport=1&month=2025-02
      

      3. הפניה לייצוא בלבד – מתוך האפליקציה

      מתאים לפתיחה מהדשבורד/תוסף; אחרי הורדה יוצג כפתור "חזרה לדוחות" והחלון לא ייסגר.

      https://smart-ivr.co.il/addons/incoming-calls-report?token=<TOKEN>&export=1
      

      (בלי closeAfterExport.)


      הרשאות טוקן

      כדי שהטוקן יעבוד עם התוסף יש להעתיק את JSON ההרשאות ולהדביק ב-"יצירת מפתח גישה" בממשק "חומת האש" של המערכת הטלפונית.

      {
        "tokenNike": "smart-ivr/addons/incoming-calls-report",
        "tokenMore": {
          "ws_whitelist": [
            "/api/GetSession",
            "/api/RenderYMGRFile"
          ],
          "ws_parms_whitelist": [
            "token",
            "convertType",
            "notLoadLang",
            "wath"
          ],
          "ws_parms_mismatch_action": "remove",
          "default_acl_policy": "deny",
          "acl_rules": [
            {
              "ip": [],
              "name": "GetSession",
              "active": true,
              "params": [],
              "policy": "allow",
              "endpoint": [
                "/api/GetSession"
              ],
              "set_params": {}
            },
            {
              "ip": [],
              "name": "RenderYMGRFile",
              "active": true,
              "params": [
                "wath=ivr2:Log/LogFolderEnterExit-????-??.ymgr",
                "token",
                "convertType=json",
                "notLoadLang=1"
              ],
              "policy": "allow",
              "endpoint": [
                "/api/RenderYMGRFile"
              ],
              "set_params": {}
            }
          ]
        }
      }
      
      פורסם בטיפים עצות והדגמות מהמשתמשים
      מ
      מ. מ. פליישער
    • RE: חדש!! 🚀 משדרגים את ההקלטות הקוליות של המערכת הטלפונית עם Smart Records AI

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

      פורסם בטיפים עצות והדגמות מהמשתמשים
      מ
      מ. מ. פליישער