דילוג לתוכן
  • חוקי הפורום
  • פופולרי
  • לא נפתר
  • משתמשים
  • חיפוש גוגל בפורום
  • צור קשר
עיצובים
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • ברירת מחדל (ללא עיצוב (ברירת מחדל))
  • ללא עיצוב (ברירת מחדל)
כיווץ
מתמחים טופ
  1. דף הבית
  2. סלולרי
  3. מערכות IVR - ימות המשיח
  4. ימות המשיח API
  5. בקשת מידע | כיצד להתחיל להתחבר ל API של ימות

בקשת מידע | כיצד להתחיל להתחבר ל API של ימות

מתוזמן נעוץ נעול הועבר ימות המשיח API
19 פוסטים 5 כותבים 1.3k צפיות 4 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • A ASS

    @צדיק-תמים
    נכון, ימות עובד על PHP מה שאומר ש NODE.JS וגם ג'אווה סקריפט לא טוב....
    יש למשהו מושג כיצד נראה קוד ה PHP ההתחלתי? (התחברות לשרת שלהם, וכניסה עם שם משתמש וסיסמא).

    י מנותק
    י מנותק
    יוסף ח
    כתב ב נערך לאחרונה על ידי
    #7

    @ass אמר בבקשת מידע | כיצד להתחיל להתחבר ל API של ימות:

    (התחברות לשרת שלהם, וכניסה עם שם משתמש וסיסמא).

    בבקשה, זה מודול יתחברות:

    <?php
    $ApiDID = $_GET['DID'];
    $password = $_GET['pass'];
    $TxtLoginApidid = "אנא הקישו את מספר המערכת, ולסיום הקישו סולמית!";
    $TxtLoginPasspord = "אנא הקישו את סיסמת הניהול, ולסיום הקישו סולמית!";
    $TxtLoginPasspordWarning = "שימו לב, אם אינכם בטוחים שהנכם יודעים את הסיסמא, אנא נתקו את השיחה ובדקו זאת על ידי חיוג למערכת הטלפונית";
    $FolderLoginOk = $_GET['FolderLoginOk'];
    $FolderLoginError = $_GET['FolderLoginError'];
    if ($_GET['DID'] == NULL){
        echo "read=t-$TxtLoginApidid=DID,yes,10,9,10,No,yes";exit();}
    if ($_GET['pass'] == NULL){
        echo "read=t-$TxtLoginPasspord $TxtLoginPasspordWarning! $TxtLoginPasspord=pass,yes,,,10,No,yes";exit();}
    $str = file_get_contents("https://www.call2all.co.il/ym/api/https://www.call2all.co.il/ym/api/Login?username=$ApiDID&password=$password");
    $str = json_decode($str,true);
    if ($str["responseStatus"] === "OK"){
         echo "id_list_message=t-ההתחברות בוצעה בהצלחה, למערכת מספר.d-$ApiDID.&go_to_folder=$FolderLoginOk";}
    else{
         echo "id_list_message=t-שגיאה! אחד או יותר מהנתונים שהוקשו שגויים! שלום ותודה!&go_to_folder=hangup&";
    }
    ?>
    
    תגובה 1 תגובה אחרונה
    0
    • י מנותק
      י מנותק
      יוסף ח
      כתב ב נערך לאחרונה על ידי
      #8

      וזה קוד להתנתקות:

      <?php
      $ApiDID = $_GET['DID'];
      $password = $_GET['pass'];
      $TxtLogoutApidid = "אנא הקישו את מספר המערכת, ולסיום הקישו סולמית!";
      $TxtLogoutPasspord = "אנא הקישו את סיסמת הניהול, ולסיום הקישו סולמית!";
      $TxtLogoutPasspordWarning = "שימו לב, אם אינכם בטוחים שהנכם יודעים את הסיסמא, אנא נתקו את השיחה ובדקו זאת על ידי חיוג למערכת הטלפונית";
      $FolderLogoutOk = $_GET['FolderLogoutOk'];
      $FolderLogoutError = $_GET['FolderLogoutError'];
      if ($_GET['DID'] == NULL){
          echo "read=t-$TxtLogoutApidid=DID,no,10,9,10,No,yes";exit();}
      if ($_GET['pass'] == NULL){
          echo "read=t-$TxtLogoutPasspord $TxtLogoutPasspordWarning! $TxtLogoutPasspord=pass,no,,,10,No,yes";exit();}
      $str = file_get_contents("https://www.call2all.co.il/ym/api/https://www.call2all.co.il/ym/api/Logout?token=$ApiDID:$password");
      $str = json_decode($str,true);
      if ($str["responseStatus"] === "OK"){
           echo "id_list_message=t-ההתנתקות בוצעה בהצלחה, ממערכת מספר.d-$ApiDID.&go_to_folder=$FolderLogoutOk";}
      else{
           echo "id_list_message=t-שגיאה! אחד או יותר מהנתונים שהוקשו שגויים! שלום ותודה!&go_to_folder=hangup&";
      }
      ?>
      
      A תגובה 1 תגובה אחרונה
      0
      • י יוסף ח

        וזה קוד להתנתקות:

        <?php
        $ApiDID = $_GET['DID'];
        $password = $_GET['pass'];
        $TxtLogoutApidid = "אנא הקישו את מספר המערכת, ולסיום הקישו סולמית!";
        $TxtLogoutPasspord = "אנא הקישו את סיסמת הניהול, ולסיום הקישו סולמית!";
        $TxtLogoutPasspordWarning = "שימו לב, אם אינכם בטוחים שהנכם יודעים את הסיסמא, אנא נתקו את השיחה ובדקו זאת על ידי חיוג למערכת הטלפונית";
        $FolderLogoutOk = $_GET['FolderLogoutOk'];
        $FolderLogoutError = $_GET['FolderLogoutError'];
        if ($_GET['DID'] == NULL){
            echo "read=t-$TxtLogoutApidid=DID,no,10,9,10,No,yes";exit();}
        if ($_GET['pass'] == NULL){
            echo "read=t-$TxtLogoutPasspord $TxtLogoutPasspordWarning! $TxtLogoutPasspord=pass,no,,,10,No,yes";exit();}
        $str = file_get_contents("https://www.call2all.co.il/ym/api/https://www.call2all.co.il/ym/api/Logout?token=$ApiDID:$password");
        $str = json_decode($str,true);
        if ($str["responseStatus"] === "OK"){
             echo "id_list_message=t-ההתנתקות בוצעה בהצלחה, ממערכת מספר.d-$ApiDID.&go_to_folder=$FolderLogoutOk";}
        else{
             echo "id_list_message=t-שגיאה! אחד או יותר מהנתונים שהוקשו שגויים! שלום ותודה!&go_to_folder=hangup&";
        }
        ?>
        
        A מנותק
        A מנותק
        ASS
        כתב ב נערך לאחרונה על ידי
        #9

        @יוסף-ח
        אתה בטוח???
        זה מודול API זה לא גישת מפתחים למערכת...
        ימות הסבירו את ההבדל כאן: https://f2.freeivr.co.il/post/24190

        י תגובה 1 תגובה אחרונה
        0
        • A ASS

          @יוסף-ח
          אתה בטוח???
          זה מודול API זה לא גישת מפתחים למערכת...
          ימות הסבירו את ההבדל כאן: https://f2.freeivr.co.il/post/24190

          י מנותק
          י מנותק
          יוסף ח
          כתב ב נערך לאחרונה על ידי
          #10

          @ass אמר בבקשת מידע | כיצד להתחיל להתחבר ל API של ימות:

          זה מודול API

          זה ההתחברות לשרת שלהם !

          תגובה 1 תגובה אחרונה
          0
          • A ASS

            @צדיק-תמים
            נכון, ימות עובד על PHP מה שאומר ש NODE.JS וגם ג'אווה סקריפט לא טוב....
            יש למשהו מושג כיצד נראה קוד ה PHP ההתחלתי? (התחברות לשרת שלהם, וכניסה עם שם משתמש וסיסמא).

            yzahnY מנותק
            yzahnY מנותק
            yzahn
            עימוד
            כתב ב נערך לאחרונה על ידי
            #11

            @ass אמר בבקשת מידע | כיצד להתחיל להתחבר ל API של ימות:

            נכון, ימות עובד על PHP מה שאומר ש NODE.JS וגם ג'אווה סקריפט לא טוב....

            זה לא נכון. אפשר להשתמש ב-API הזה מכל שפה בעולם שתומכת בשליחת בקשות HTTP.
            API הוא סה"כ תוכנה שמאזינה לפקודות שנשלחות על ידי בקשות HTTP. לא משנה אם צד השרת מומש ב-PHP או בכל שפה אחרת תמיד תוכל לשלוח פקודות מכל שפה שהיא.

            📧 | יוסי@יצ.קום

            A תגובה 1 תגובה אחרונה
            3
            • yzahnY yzahn

              @ass אמר בבקשת מידע | כיצד להתחיל להתחבר ל API של ימות:

              נכון, ימות עובד על PHP מה שאומר ש NODE.JS וגם ג'אווה סקריפט לא טוב....

              זה לא נכון. אפשר להשתמש ב-API הזה מכל שפה בעולם שתומכת בשליחת בקשות HTTP.
              API הוא סה"כ תוכנה שמאזינה לפקודות שנשלחות על ידי בקשות HTTP. לא משנה אם צד השרת מומש ב-PHP או בכל שפה אחרת תמיד תוכל לשלוח פקודות מכל שפה שהיא.

              A מנותק
              A מנותק
              ASS
              כתב ב נערך לאחרונה על ידי
              #12

              @yzahn
              נכון, אבל כל התיעוד של ימות זה ב PHP לכן יותר סביר לעבוד עם PHP...
              בכל מקרה מישהו יכול לעזור לי בעזרת קוד לדוגמא להתחיל לשלוח בקשות לשרת , איפה שמים את ה URL , היכן את הפקודות וכו' התיעוד של ימות מאוד מינמאלי, כבר שבוע מנסה להבין איך מתחילים...
              הנה קוד לדוגמא שעשיתי אבל לא מחזיר כלום.

              <?php
              //Initialize cURL.
              $ch = curl_init();
              
              //Set the URL that you want to GET by using the CURLOPT_URL option.
              curl_setopt($ch, CURLOPT_URL, "https://www.call2all.co.il/ym/api/<WebServiceName>[?p1=v1[&p2=v2...]]");
              
              //Set CURLOPT_RETURNTRANSFER so that the content is returned as a variable.
              curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
              
              //Set CURLOPT_FOLLOWLOCATION to true to follow redirects.
              curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
              
              //Execute the request.
              $data = curl_exec($ch);
              
              //Close the cURL handle.
              curl_close($ch);
              
              //Print the data out onto the page.
              echo $data;
              ?>
              
              yzahnY תגובה 1 תגובה אחרונה
              0
              • A ASS

                @yzahn
                נכון, אבל כל התיעוד של ימות זה ב PHP לכן יותר סביר לעבוד עם PHP...
                בכל מקרה מישהו יכול לעזור לי בעזרת קוד לדוגמא להתחיל לשלוח בקשות לשרת , איפה שמים את ה URL , היכן את הפקודות וכו' התיעוד של ימות מאוד מינמאלי, כבר שבוע מנסה להבין איך מתחילים...
                הנה קוד לדוגמא שעשיתי אבל לא מחזיר כלום.

                <?php
                //Initialize cURL.
                $ch = curl_init();
                
                //Set the URL that you want to GET by using the CURLOPT_URL option.
                curl_setopt($ch, CURLOPT_URL, "https://www.call2all.co.il/ym/api/<WebServiceName>[?p1=v1[&p2=v2...]]");
                
                //Set CURLOPT_RETURNTRANSFER so that the content is returned as a variable.
                curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
                
                //Set CURLOPT_FOLLOWLOCATION to true to follow redirects.
                curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
                
                //Execute the request.
                $data = curl_exec($ch);
                
                //Close the cURL handle.
                curl_close($ch);
                
                //Print the data out onto the page.
                echo $data;
                ?>
                
                yzahnY מנותק
                yzahnY מנותק
                yzahn
                עימוד
                כתב ב נערך לאחרונה על ידי
                #13

                @ass אמר בבקשת מידע | כיצד להתחיל להתחבר ל API של ימות:

                נכון, אבל כל התיעוד של ימות זה ב PHP לכן יותר סביר לעבוד עם PHP...

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

                📧 | יוסי@יצ.קום

                A 2 תגובות תגובה אחרונה
                1
                • yzahnY yzahn

                  @ass אמר בבקשת מידע | כיצד להתחיל להתחבר ל API של ימות:

                  נכון, אבל כל התיעוד של ימות זה ב PHP לכן יותר סביר לעבוד עם PHP...

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

                  A מנותק
                  A מנותק
                  ASS
                  כתב ב נערך לאחרונה על ידי
                  #14

                  @yzahn
                  נכון, אני בצד של אלא שמעתיקים קוד 🙂
                  בכל מקרה יש לך אולי קוד לדוגמא להראות לי בבקשה?

                  תגובה 1 תגובה אחרונה
                  0
                  • yzahnY yzahn

                    @ass אמר בבקשת מידע | כיצד להתחיל להתחבר ל API של ימות:

                    נכון, אבל כל התיעוד של ימות זה ב PHP לכן יותר סביר לעבוד עם PHP...

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

                    A מנותק
                    A מנותק
                    ASS
                    כתב ב נערך לאחרונה על ידי
                    #15

                    @yzahn
                    לדוגמא יש את המחלקה שמישהו בנה בימות:
                    לא כל כך יודע איך להמשיך מכאן, איפה אני מכניס את הפקודות וכו'.

                    <?php
                    $SetSite = ["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;
                        }
                    }
                    ?> 
                    
                    
                    yzahnY תגובה 1 תגובה אחרונה
                    0
                    • A ASS

                      @yzahn
                      לדוגמא יש את המחלקה שמישהו בנה בימות:
                      לא כל כך יודע איך להמשיך מכאן, איפה אני מכניס את הפקודות וכו'.

                      <?php
                      $SetSite = ["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;
                          }
                      }
                      ?> 
                      
                      
                      yzahnY מנותק
                      yzahnY מנותק
                      yzahn
                      עימוד
                      כתב ב נערך לאחרונה על ידי yzahn
                      #16

                      @ass אני לא מסכים לגישה הזאת. אתה מנסה לרוץ לפני שלמדת ללכת.

                      📧 | יוסי@יצ.קום

                      A תגובה 1 תגובה אחרונה
                      3
                      • yzahnY yzahn

                        @ass אני לא מסכים לגישה הזאת. אתה מנסה לרוץ לפני שלמדת ללכת.

                        A מנותק
                        A מנותק
                        ASS
                        כתב ב נערך לאחרונה על ידי
                        #17

                        @yzahn
                        אוקי, בס"ה אני צריך לעשות דבר אחד בלבד, הייתי שמח אם מישהו היה יכול לעזור.

                        yzahnY M 2 תגובות תגובה אחרונה
                        0
                        • A ASS

                          @yzahn
                          אוקי, בס"ה אני צריך לעשות דבר אחד בלבד, הייתי שמח אם מישהו היה יכול לעזור.

                          yzahnY מנותק
                          yzahnY מנותק
                          yzahn
                          עימוד
                          כתב ב נערך לאחרונה על ידי
                          #18

                          @ass אמר בבקשת מידע | כיצד להתחיל להתחבר ל API של ימות:

                          הייתי שמח אם מישהו היה יכול לעזור

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

                          מקווה שתמצא מישהו יותר סבלני ממני...

                          📧 | יוסי@יצ.קום

                          תגובה 1 תגובה אחרונה
                          3
                          • A ASS

                            @yzahn
                            אוקי, בס"ה אני צריך לעשות דבר אחד בלבד, הייתי שמח אם מישהו היה יכול לעזור.

                            M מנותק
                            M מנותק
                            mfmf
                            כתב ב נערך לאחרונה על ידי
                            #19

                            @ass מציע לך לבקש בפורום של ימות, יש שם תיעוד להרבה מאד דברים. בהצלחה.

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

                            • התחברות

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

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