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

    שלוחת איפוס מבחן אמריקאי

    טיפים עצות והדגמות מהמשתמשים
    5
    52
    1989
    טוען פוסטים נוספים
    • מהישן לחדש
    • מהחדש לישן
    • הכי הרבה הצבעות
    תגובה
    • הגיבו כנושא
    התחברו בכדי לפרסם תגובה
    נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
    • 3
      33064325 @שמואל ש. נערך לאחרונה על ידי 33064325

      @שמואל-ש קודם כל תפתח שרת כאן

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

      ש תגובה 1 תגובה אחרונה תגובה ציטוט 1
      • ש
        שמואל ש. @33064325 נערך לאחרונה על ידי

        @33064325 אמר בשלוחת איפוס מבחן אמריקאי:

        ב. אתה כותב כאילו הוא חייב לך משהו ושילמת לו כסף

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

        @33064325 אמר בשלוחת איפוס מבחן אמריקאי:

        @שמואל-ש קודם כל תפתח שרת כאן

        אבל אין לי מינימום ידע ב-API

        3 תגובה 1 תגובה אחרונה תגובה ציטוט 0
        • א
          איש ימיני נערך לאחרונה על ידי איש ימיני

          @33064325 זה אכן על שרת שאני לא מתחזק.
          אני משתמש היום עם שרת אחר.
          כתבתי את הקוד יחסית בתחילת דרכי ב-API - יש הרבה מה לשפר שם, אין לי זמן לזה.
          הנה הקוד:

          <?php
          if ($_GET['hangup'] == "yes"){exit();}
          $what1 = $_GET['transitio'];
          $several = $_GET['several'];
          $password = $_GET['password'];
          
          IF ($_GET['transi']!=null)
          $kkk = $_GET['transi'];
          
          IF ($_GET['transi']!=null)
          $yyyy = 'move';
          
          IF ($_GET['transi']==null)
          $yyyy = 'delete';
          
          IF ($_GET['transition']!=null)
          $transition = 'go_to_folder='.$_GET['transition'];
          
          
          
          $Answer = $transition.'&;';
          /*================יצירת אובייקט(מופע) חדש====================*/
           
          $con = new connecting_to_yemot_api($several,$password);
          
           /*===============================================================*/
          
           $body = array
          (
           
          'action' => $yyyy,
          'what' => 'ivr2:'.$what1.'/ExaminationAmericanLogOK.ymgr',
          'target' => 'ivr2:'.$kkk.'/('.date ('d-m-Y h-i').')OK.ymgr',
          );
           
          $a = $con -> connecting('FileAction', $body);
           
          
           /*===============================================================*/
          
           $body = array
          (
           
          'action' => $yyyy,
          'what' => 'ivr2:'.$what1.'/ExaminationAmericanMiddle.ini',
          'target' => 'ivr2:'.$kkk.'/('.date ('d-m-Y h-i').')Middle.ini',
          );
           
          $a = $con -> connecting('FileAction', $body);
           
          
           /*===============================================================*/
           
           $body = array
          (
           
          'action' => $yyyy,
          'what' => 'ivr2:'.$what1.'/ExaminationAmericanLogOK.html',
          'target' => 'ivr2:'.$kkk.'/('.date ('d-m-Y h-i').')OK.html',
          );
           
          $a = $con -> connecting('FileAction', $body);
           /*===============================================================*/
          
           /*===============================================================*/
          IF ($_GET['messages']===yes){
           $body = array
          (
           
          'action' => $yyyy,
          'what' => 'ivr2:'.$what1.'/000',
          'target' => 'ivr2:'.$kkk.'/('.date ('d-m-Y h-i').')000',
          );
           
          $a = $con -> connecting('FileAction', $body);
           
          
           /*===============================================================*/
            $body = array
          (
           
          'action' => $yyyy,
          'what' => 'ivr2:'.$what1.'/001',
          'target' => 'ivr2:'.$kkk.'/('.date ('d-m-Y h-i').')001',
          );
           
          $a = $con -> connecting('FileAction', $body);
           
          
           /*===============================================================*/
            $body = array
          (
           
          'action' => $yyyy,
          'what' => 'ivr2:'.$what1.'/002',
          'target' => 'ivr2:'.$kkk.'/('.date ('d-m-Y h-i').')002',
          );
           
          $a = $con -> connecting('FileAction', $body);
           
          
           /*===============================================================*/
            $body = array
          (
           
          'action' => $yyyy,
          'what' => 'ivr2:'.$what1.'/003',
          'target' => 'ivr2:'.$kkk.'/('.date ('d-m-Y h-i').')003',
          );
           
          $a = $con -> connecting('FileAction', $body);
           
          
           /*===============================================================*/
            $body = array
          (
           
          'action' => $yyyy,
          'what' => 'ivr2:'.$what1.'/004',
          'target' => 'ivr2:'.$kkk.'/('.date ('d-m-Y h-i').')004',
          );
           
          $a = $con -> connecting('FileAction', $body);
           
          
           /*===============================================================*/
           
           $body = array
          (
           
          'action' => $yyyy,
          'what' => 'ivr2:'.$what1.'/005',
          'target' => 'ivr2:'.$kkk.'/('.date ('d-m-Y h-i').')005',
          );
           
          $a = $con -> connecting('FileAction', $body);
           
          
           /*===============================================================*/
            $body = array
          (
           
          'action' => $yyyy,
          'what' => 'ivr2:'.$what1.'/006',
          'target' => 'ivr2:'.$kkk.'/('.date ('d-m-Y h-i').')006',
          );
           
          $a = $con -> connecting('FileAction', $body);
           
          
           /*===============================================================*/
            $body = array
          (
           
          'action' => $yyyy,
          'what' => 'ivr2:'.$what1.'/007',
          'target' => 'ivr2:'.$kkk.'/('.date ('d-m-Y h-i').')007',
          );
           
          $a = $con -> connecting('FileAction', $body);
           
          
           /*===============================================================*/
            $body = array
          (
           
          'action' => $yyyy,
          'what' => 'ivr2:'.$what1.'/008',
          'target' => 'ivr2:'.$kkk.'/('.date ('d-m-Y h-i').')008',
          );
           
          $a = $con -> connecting('FileAction', $body);
           
          
           /*===============================================================*/
            $body = array
          (
           
          'action' => $yyyy,
          'what' => 'ivr2:'.$what1.'/009',
          'target' => 'ivr2:'.$kkk.'/('.date ('d-m-Y h-i').')009',
          );
           
          $a = $con -> connecting('FileAction', $body);
           
          
           /*===============================================================*/
           
           $body = array
          (
           
          'action' => $yyyy,
          'what' => 'ivr2:'.$what1.'/010',
          'target' => 'ivr2:'.$kkk.'/('.date ('d-m-Y h-i').')010',
          );
           
          $a = $con -> connecting('FileAction', $body);
           
          
           /*===============================================================*/
            $body = array
          (
           
          'action' => $yyyy,
          'what' => 'ivr2:'.$what1.'/011',
          'target' => 'ivr2:'.$kkk.'/('.date ('d-m-Y h-i').')011',
          );
           
          $a = $con -> connecting('FileAction', $body);
           
          
           /*===============================================================*/
            $body = array
          (
           
          'action' => $yyyy,
          'what' => 'ivr2:'.$what1.'/012',
          'target' => 'ivr2:'.$kkk.'/('.date ('d-m-Y h-i').')012',
          );
           
          $a = $con -> connecting('FileAction', $body);
           
          
           /*===============================================================*/
            $body = array
          (
           
          'action' => $yyyy,
          'what' => 'ivr2:'.$what1.'/013',
          'target' => 'ivr2:'.$kkk.'/('.date ('d-m-Y h-i').')013',
          );
           
          $a = $con -> connecting('FileAction', $body);
           
          
           /*===============================================================*/
            $body = array
          (
           
          'action' => $yyyy,
          'what' => 'ivr2:'.$what1.'/014',
          'target' => 'ivr2:'.$kkk.'/('.date ('d-m-Y h-i').')014',
          );
           
          $a = $con -> connecting('FileAction', $body);
           
          
           /*===============================================================*/
           
           $body = array
          (
           
          'action' => $yyyy,
          'what' => 'ivr2:'.$what1.'/015',
          'target' => 'ivr2:'.$kkk.'/('.date ('d-m-Y h-i').')015',
          );
           
          $a = $con -> connecting('FileAction', $body);
           
          
           /*===============================================================*/
            $body = array
          (
           
          'action' => $yyyy,
          'what' => 'ivr2:'.$what1.'/016',
          'target' => 'ivr2:'.$kkk.'/('.date ('d-m-Y h-i').')016',
          );
           
          $a = $con -> connecting('FileAction', $body);
           
          
           /*===============================================================*/
            $body = array
          (
           
          'action' => $yyyy,
          'what' => 'ivr2:'.$what1.'/017',
          'target' => 'ivr2:'.$kkk.'/('.date ('d-m-Y h-i').')017',
          );
           
          $a = $con -> connecting('FileAction', $body);
           
          
           /*===============================================================*/
            $body = array
          (
           
          'action' => $yyyy,
          'what' => 'ivr2:'.$what1.'/018',
          'target' => 'ivr2:'.$kkk.'/('.date ('d-m-Y h-i').')018',
          );
           
          $a = $con -> connecting('FileAction', $body);
           
          
           /*===============================================================*/
            $body = array
          (
           
          'action' => $yyyy,
          'what' => 'ivr2:'.$what1.'/019',
          'target' => 'ivr2:'.$kkk.'/('.date ('d-m-Y h-i').')019',
          );
           
          $a = $con -> connecting('FileAction', $body);
           
          
           /*===============================================================*/
           
           $body = array
          (
           
          'action' => $yyyy,
          'what' => 'ivr2:'.$what1.'/020',
          'target' => 'ivr2:'.$kkk.'/('.date ('d-m-Y h-i').')020',
          );
           
          $a = $con -> connecting('FileAction', $body);
          } 
           /*===============================================================*/
           /*===============================================================*/
          
          IF ($_GET['Text']!=null)
          $bbb = 'id_list_message=' ;
          IF ($_GET['Audio']!=null)
          $bbb = 'id_list_message=' ;
          IF ($_GET['Text']!=null)
          $Text = 't-'.$_GET['Text'].'.';
          IF ($_GET['Audio']!=null)
          $Audio = 'f-'.$_GET['Audio'].'.';
          IF ($_GET['Text']!=null)
          $bb = '&' ;
          IF ($_GET['Audio']!=null)
          $bb = '&' ;
          IF ($_GET['transition']!=null)
          $transition = 'go_to_folder='.$_GET['transition'];
          
          $Answer = $bbb.$Text.$Audio.$bb.$transition.'&;';
          print_r ($Answer);
          
           /*===============================================================*/
          
          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 = 'https://www.call2all.co.il/ym/api/' ;
           
              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;
              }
          }
          ?>
          
          תגובה 1 תגובה אחרונה תגובה ציטוט 1
          • 3
            33064325 @שמואל ש. נערך לאחרונה על ידי 33064325

            @שמואל-ש תנסה את הקישור הזה לשרת הרגיל

            api_link=https://havaya381.000webhostapp.com/mivhan.php
            

            ואת זה לפריווט

            api_link=https://havaya381.000webhostapp.com/mivhan-private.php
            

            תעדכן אותי אם עובד או לא

            ש תגובה 1 תגובה אחרונה תגובה ציטוט 0
            • א
              איש ימיני @שמואל ש. נערך לאחרונה על ידי איש ימיני

              @33064325 לפי הבעיה ש @שמואל-ש מתאר נראה לי שהוא משתמש עם הגדרה זו:

              @איש-ימיני אמר בשלוחת איפוס מבחן אמריקאי:

              ניתן להגדיר גם מחיקת השאלות והתשובות (זה ימחוק את התיקיות 000-020)

              (שימו לב שבאם אתם מגדירים הגדרה זו, יקח למערכת כמה שניות עד שיחזור לתפריט קודם או עד למעבר לשלוחה אחרת)
              api_add_3=messages=yes
              

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

              ש תגובה 1 תגובה אחרונה תגובה ציטוט 2
              • ש
                שמואל ש. @33064325 נערך לאחרונה על ידי

                @33064325 אמר בשלוחת איפוס מבחן אמריקאי:

                @שמואל-ש תנסה את הקישור הזה לשרת הרגיל

                api_link=https://havaya381.000webhostapp.com/mivhan.php
                

                ואת זה לפריווט

                api_link=https://havaya381.000webhostapp.com/mivhan-private.php
                

                תעדכן אותי אם עובד או לא

                אתה העברת את זה לשרת שלך?

                תגובה 1 תגובה אחרונה תגובה ציטוט 0
                • ש
                  שמואל ש. @איש ימיני נערך לאחרונה על ידי

                  @איש-ימיני אמר בשלוחת איפוס מבחן אמריקאי:

                  @33064325 לפי הבעיה ש @שמואל-ש מתאר נראה לי שהוא משתמש עם הגדרה זו:

                  דהיינו לדעתך הבעיה היא רק בשלוחה הזאת?

                  א תגובה 1 תגובה אחרונה תגובה ציטוט 0
                  • א
                    איש ימיני @שמואל ש. נערך לאחרונה על ידי

                    @שמואל-ש
                    רק בשימוש עם api_add_3=messages=yes

                    ש תגובה 1 תגובה אחרונה תגובה ציטוט 1
                    • ש
                      שמואל ש. @איש ימיני נערך לאחרונה על ידי שמואל ש.

                      @איש-ימיני אמר בשלוחת איפוס מבחן אמריקאי:

                      @שמואל-ש
                      רק בשימוש עם api_add_3=messages=yes

                      ובזה

                      api_add_4=transi=כתובת שלוחת הייעד (ללא / בהתחלה)
                      

                      ??

                      א תגובה 1 תגובה אחרונה תגובה ציטוט 0
                      • א
                        איש ימיני @שמואל ש. נערך לאחרונה על ידי

                        @שמואל-ש אמר בשלוחת איפוס מבחן אמריקאי:

                        @איש-ימיני אמר בשלוחת איפוס מבחן אמריקאי:

                        @שמואל-ש
                        רק בשימוש עם api_add_3=messages=yes

                        ובזה

                        api_add_4=transi=כתובת שלוחת הייעד (ללא / בהתחלה)
                        

                        ??

                        זה לא יעבוד ללא api_add_3=messages=yes

                        ש תגובה 1 תגובה אחרונה תגובה ציטוט 1
                        • ש
                          שמואל ש. @איש ימיני נערך לאחרונה על ידי

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

                          א תגובה 1 תגובה אחרונה תגובה ציטוט 0
                          • א
                            איש ימיני @שמואל ש. נערך לאחרונה על ידי

                            @שמואל-ש אמר בשלוחת איפוס מבחן אמריקאי:

                            @איש-ימיני בקיצור, אז מה שעובד זה רק איפוס המצב, נכון?

                            לא רק.
                            רק שזה לא יעבוד תמיד.

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

                            לא יודע.

                            ש תגובה 1 תגובה אחרונה תגובה ציטוט 0
                            • ש
                              שמואל ש. @איש ימיני נערך לאחרונה על ידי שמואל ש.

                              @איש-ימיני אמר בשלוחת איפוס מבחן אמריקאי:

                              רק שזה לא יעבוד תמיד.

                              יכול להיות שפעם כן ופעם לא?
                              ו @33064325 אתה מטפל בזה?

                              תגובה 1 תגובה אחרונה תגובה ציטוט 0
                              • הוזכר על-ידי  ת תפארת יעקבב 
                              • הוזכר על-ידי  C CUBASE 
                              • פוסט ראשון
                                פוסט אחרון