@אהרן-שובקס
הבנתי. האמת - שלא חלמתי על החידוש הזה! מתוך הדברים אני מבין שאם הip לא קבוע אי אפשר אפילו לעשות טסטים על הip הזמני הנוכחי לדעת שזה עובד!!!
(אם כן, מאוד אשמח לדעת שזה אפשרי)
-----תודה רבה על המאמץ והתשומת לב המיוחדת
אין עליכם!!!
ו - כן, אני משתמש בדרך כלל בwifi שיוצא מ SIM בנקודה חמה של נתב מובנה במיוחד לעבודה עם סים.
זה נותן לי כיסוי מוצלח ומהיר לכל השעות עבודה ובשפע, וזה השעות שאני צריך את ה api על הטלפון.
תודה רבה מקרב לב!
הודעות שפורסמו על ידי chaim7
-
RE: איך לחבר api אל קוד שבשרת פנימי XAMPP במחשב שלי?
-
RE: איך לחבר api אל קוד שבשרת פנימי XAMPP במחשב שלי?
@אהרן-שובקס
בעיקרון בעבר היה אתר שכנראה קלט את הip שלי כהאקר כי עשיתי עליו טסטים ובדיקות קוד
[לא נעים אבל אני מקוה שאני נמצא בפורם של אנשים שאולי....גם עברו את זה...זה יכול לקרות לכל מתכנת סקרן........]
כי הספק של הSIM אמר לי שנדיר ש IP של SIM משתנה אם בכלל. (כנראה הוא התכוון על איזה ip פנימי -- אני לא יודע)
בכל אופן כרגע אני עוקב אחרי הip הציבורי שלי ואני רואה שהוא כן משתנה... נס!
-- תודה ל@איש-ימיני על האתר שמאפשר לבדוק אם ip פעיל. https://ipinfo.io/
אחרי הרבה חיפושים ברשת ומשחקים ואיפוסים של הראוטר הגעתי למסקנה שאני שוב זקוק להדרכה פשוטה לכאורה איך להפנות פורטים.
גם מצאתי שיש אצלי אפשרות של 'נתב וירטואלי' (לא יודע לגבי נתבים אחרים) שמאפשר רק לימות המשיח, לגשת למחשב שלי, ולכאורה זה הכי מוצלח בעולם!
השאלה היא עד כמה זה באמת ככה (בינתיים לא הצלחתי להתחבר בכלל אל 'העולם הגדול')
אם מישהו התנסה בזה אני חושב שזה הפתרון בס"ד
-
RE: איך לחבר api אל קוד שבשרת פנימי XAMPP במחשב שלי?
@avrham
בריצה פנימית הכל תקין. למשל אם אני מקיש את הלינק
http://localhost:8080/mytest/test1.php
או
http://10.0.0.100:8080/mytest/test1.php
הקוד רץ.
אם אני מקיש
http://192.168.1.101:8080/mytest/test1.php
זה גם עובד (עם משולש קטן מימין כמו בתמונה למטה)
עכשיו אני רוצה לפנות אל השרת מהרשת - ואני פשוט לא יודע איך.
ניסיתי לרשום את הip שלי שעולה בmyip ככה:
http://215.331.70.92/192.168.1.101:8080/mytest/test1.php
ניסיתי גם
http://215.331.70.92/:8080/mytest/test1.php
התוצאה בשניהם היא שהדפדפן חושב וחושב (העיגול מסתובב בצבע אפור
- היינו שהוא בכלל לא מקבל עדיין נתונים) אחרי כמה דקות עולה ההודעה הנ"ל (שהדף הזה לא עובד -- ERR_EMPTY_RESPONSE)
*** כיביתי את חומת האש ואין הבדל -
RE: איך לחבר api אל קוד שבשרת פנימי XAMPP במחשב שלי?
@avrham
@איש-ימיני
אני כל כך מעריך את ההתייחסות, השקעתי כמה שעות טובות באינטרנט ואני כבר די מבולבל.
האם תואילו בבקשה לתת לי (ולמי שיצפה בדף הזה בהוה או בעתיד) דוגמא קטנה?
א. בגלל כמה משחקים בפורטים הייתי צריך לפנות אל פורט 8080 בXAMPP.
ב. אני יודע שבדפדפן כרום אני מקיש למשל לדף הבדיקה שלי
http://localhost:8080/mytest/test1.php
ג. אפשר להקיש גם 127.0.0.1 במקום localhost.
(192.168.1.101 גם מביא את הדף אבל עם הודעה שהדף לא מאובטח)
ד. אם אני מקיש את הכתובת ip שמופיע ב myip.com אני מקבל הודעה:הדף הזה לא עובד.
214.937.77.48 לא שלח נתונים.
ERR_EMPTY_RESPONSE[(שיניתי כאן את ה ip לא מתוך חכמה וידיעה אלא ליתר בטחון....)
עכ"פ עד כאן העדכון וחלק מתוך שלל הנסיונות שלי שחשבתי שיביאו אותי למשהו....--- עכשיו אני מוכרח את עזרת האנשים הטובים כאן!
מה הצעד הבא בשביל לפנות אל הקוד הזה מהעולם מכל מחשב או טלפון אחר או במקרה הזה מ api?
שוב תודה
(הייתי מוסיף תמונות מסך מהנסיונות שלי, אבל לכאורה עדיף לא לבלבל את המוח בקשקושי סרק --- עדיף דבר אחד ברור ומועיל מאשר סלט מבולבל חסר טעם ויעד) -
איך לחבר api אל קוד שבשרת פנימי XAMPP במחשב שלי?
יש לי קוד php שפעל מאוד יפה על api של ימות כבר כמה שנים.
לאחרונה נדרשתי לשלם על חידוש השרת ודומיין וזה קצת הרבה בשבילי כרגע.
בינתיים סגרתי את השירות של השרת והקוד עובד מאוד יפה על XAMPP
(לתועלת הציבור כאן ספגתי קצת הסבר בסיסי)
השאלה היא
איך להתחבר אל המחשב בתור שרת על ידי לינק מתוך הממשק של ימות? כלומר שימות ישלח get או post אל הIP של המחשב שלי כמו אל שרת
נ.ב. אין לי כרגע עשרות קריאות כל רגע, אז זה הבחלט אמור להיות מספיק בשבילי לפחות באופן זמני --
בנוסף אני בטוח שיש הרבה המלצות שזה פותח את האפשרות לתקיפת האקרים, אבל במטותא, כרגע זה לא המוקד, אלא לדעת למעשה בשטח
(אני משוכנע שכל מידע נוסף מאוד יעזור לי ובטח לעוד הרבה אנשים כמוני בפרט שהוסטינגר סגרו את השרת החינמי)]
תודה מקרב לב למשתדלים לעזור
ולמומחי ימות המשיח על ההתייחסות החביב והחם -
RE: האם יש איך לפטור את הזמן של טעינת tts במערכת
@קו-לקו-0
פשוט, גאוני ומדהים
תודה רבה -
RE: האם יש איך לפטור את הזמן של טעינת tts במערכת
@קו-לקו-0
למה? הרי כל המרה לדיבור המערכת שולחת קובץ ומקבלת קובץ כנגד וזה לכאורה יותר פעולות ויותר עצירות- לא??
(מחקתי את הפוסט בו התלוננתי על זמן ארוך בהמרה כי אמנם יש עיכוב שהייתי שמח שלא היה, אבל כשגירדתי את את ההקלטות בלי שום שקט, זה בהחלט סביל ולא מצדיק להרים את כל המומחים בערב חג בשביל זה....)
בכל מקרה תודה על ההתייחסות וההשתדלות לעזור
כל הכבוד!!!! -
RE: איך להעלות קבצים מהשרת?
@מנסה
אחרי שישבתי שעות ארוכות על העלאה של קובץ ואחרי עשרות כשלונות גיליתי שהקובץ משום מה הפך ל0.1 קילובייט וזה גרם לי שגיאה
תכלס - מה אשיב לה' [המדרש בילקוט שמעוני כותב 'חביב עלי חסד שאתם עושים זה עם זה יותר מזבחי שלמה המלך(הושע תקכב)]-
ע"כ מצורף שיפוץ של הקוד הבהיר של @mgm-ivr ו @מנסה הצדיקים .
אני כל כך רוצה גם לתרום משהו....
אז פשוט הוספתי הודעות של הפרטים החשובים עד שהגעתי למצוא את מקור השגיאה אצלי, ובעז"ה שיהיה לתועלת לאחרים.<?php $token = "0799*****:*****"; $path_in_yemot="ivr2:1/"; $New_file_name_to_yemot = "A123.wav"; $fileUpload="recording/A123.mp3"; //קריאה לפונקציה והוספתי האן עוד פרמטר שהוא שם קובץ היעד ss = uploadFile(false,$token,$path_in_yemot,$New_file_name_to_yemot,$fileUpload); //מראה את התשובה מימות, ניתן כמובן לבטל או להציג משהו אחר print_r ($ss); function uploadFile($isPrivate, $token ,$path ,$New_name,$file) { if ($isPrivate) { $YemotUrl = 'https://private.call2all.co.il/ym/api/'; } else { $YemotUrl = 'https://www.call2all.co.il/ym/api/'; } $headers = array( 'Content-type: multipart/form-data' ); $url = $YemotUrl . 'UploadFile'; $File_source = new CURLFile($file,'media/wav'); $parm['token'] = $token; $parm['upload'] = $File_source; $parm['path'] = "$path$New_name"; $parm['convertAudio'] = 1; //-----------------------------------ביקורת---------------------------------- if (file_exists($file)==0) { $message = "הקובץ $file לא נמצא"; } $message="$message <br> הטוקן הוא: " . $parm['token'] ."<br>"; $message="$message שם הקובץ: " . $File_source->getFilename() . "<br>"; $message="$message גודל הקובץ הוא: " . ": " . filesize($file) . " bytes<br>"; $message="$message נתיב היעד בימות המשיח: " . $parm['path'] . "<br>"; //-------------בדיקה אם קיים כזה קובץ $GetIvrTree = file_get_contents("http://call2all.co.il/ym/api/GetIvrTree?token=$token&path=ivr2:1"); if (mb_strpos($GetIvrTree, $New_name)>0) { $message="$message <br> יש כבר קובץ בשם זהה לקובץ זה! "; $message="$message <br> הפעולה לא בוצעה "; goto a; } //-----------------------------------עד כאן--------------------------------- $curl = curl_init(); curl_setopt_array( $curl, array( CURLOPT_URL => $url, CURLOPT_POST => true, CURLOPT_POSTFIELDS => $parm, CURLOPT_HTTPHEADER => $headers, CURLOPT_RETURNTRANSFER => true, ) ); $response = curl_exec($curl); // echo "$response"; $status = curl_getinfo($curl, CURLINFO_HTTP_CODE); curl_close($curl); $response = json_decode($response); a: $responseStatus = $response->{"responseStatus"}; if(!$responseStatus=="OK"){ return "$response <br> $message"; } else{ return "הקובץ עלה בהצלחה!"; } } ?>
ה'ביקורת קבצים (GetIvrTree)' לא מושלם בגלל שלא הצלחתי לפרק את המערך ולזהות את שם הקובץ, התחליף שאלטרתי הוא שהקוד מחפש את שם הקובץ בתוך הסטרינג שחוזר מימות המשיח (mb_strpos).
[הבעיה תהיה כשאתה מכניס קובץ בשם 1, וקיים כבר קוובץ בשם 11 הוא יעצור את התהליך כי הוא מצא את הספרה 1 וwav . (בתור 'תלאי על תלאי' אולי אפשר להוסיף נקודותיים לפני ופסיק אחרי שם הקובץ -- לא ניסיתי עדיין)
תודה לכולם והצלחה!!! -
RE: איך להעלות קבצים מהשרת?
@mgm-ivr
הוא נתקע בגלל שגיאה בשורה הזאת:$response = curl_exec($curl);
כלומר לא מצליח לפתוח את הקישור
-
RE: איך להעלות קבצים מהשרת?
@mgm-ivr
תודה על התגובה! (פגשתי וקראתי את הפוסט שלך הרבה מאוד פעמים בתוך כדי חיפוש...)
עד כמה שהבנתי אתה מייצר טופס וקבלה של הטופס האותו כתובת. זה מאוד יפה! עבודה טובה!
אני צריך עכשיו שהPHP יקח קובץ מהשרת וישלח אותו לימות בלי טופס את הפרטים הוא ישיג מהטבלאות שלו..... -
RE: איך להעלות קבצים מהשרת?
@nyh
שלום לשמואל 'ניהול ראשי'
סתם מתוך הסקרנות ו'הצמאון לדעת' בתור הגאון שייצר את המחלקה, אני מאמין שאתה הוא הכתובת, כי אני אוהב להבין דברים מאפס והבנת העניין יועיל לי מאוד!
אני רוצה לנסות להעלות קובץ מתוך השרת שלי בלי המחלקה עד כמה שהבנתי, מקריאה של כמה ימים (!) בפורם החדש והישן הכל תקין
ואני יוצא מדעתי למה הקוד הזה מביא לי שגיאה 105?????
הטוקן מתחבר.
הוא לכאורה יודע מאיפה לשאוב את הנתונים --fileUpload$
ולאיפה להכניס אותם --pathinyemot$
שולח POST
מה צריך לשנות בשביל שיהיה נכון?
בתודה על ההסברים היפים והברורים שלך באופן כללי....$fileUpload="recording/5.wav"; //קח את הקובץ הזה $pathinyemot="ivr2:1/7.wav"; //תכניס לימות במיקום הבא //-----------------------יצירת טוקן----------------------------- $url = "https://www.call2all.co.il/ym/api/Login?username=0799*****&password=1234"; $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // החזר את תוכן העמוד. curl_setopt($ch, CURLOPT_URL, $url); //מעביר את כתובת האתר למשתנה. $result = curl_exec($ch); //תוצאה=תגובת השרת $json = "$result"; //מכניס את השורה למשתנה $obj = json_decode($json); //יעשה מהשורה ג'סון //https://www.php.net/manual/en/function.json-decode.php $the_token= $obj->{"token"}; //יקבל את הטוקן אל תוך משתנה //echo "הטוקן הוא: $the_token"; //----------------------------------העלאת קובץ---------------------------------------- $url2 = "https://www.call2all.co.il/ym/api/UploadFile?token=$the_token"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url2); curl_setopt($ch, CURLOPT_HEADER, false); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, array( 'Upload' => file_get_contents($fileUpload), 'path' => $pathinyemot )); $result = curl_exec($ch); echo $result; curl_close($ch);
-
RE: כניסה ל API והגדרות...
@מנסה
אתה צודק, כל כך קצת כסף, איפה הרווח???
אבל מה הפשט במחיר כאן?
לא נראה לי שזה 0.07 אגורות -
RE: כניסה ל API והגדרות...
@מנסה
אם יש לך כבר מערכת ואתה מתכנת אותה בעצמך (או מוכר למישהו אחר), למה לא לייעל אותה עם אפשרות ניהול גם דרך אתר וגם דרך הטלפון.
זה עיקר הצורך
חוצמזה (לא הספקתי עדיין לבדוק איך משתמשים בזה), אבל כשמדובר בהקלטות שלא צריך תרגום מיידי ואמין כמו שמובנה בימות המשיח, אלא לתוספת תיעוד וכדומה, יש api בגוגל speech-to-text. עם שעה חודשית של תמלול חינם ופחות מעשירית אגורה לכל פעימה של 15 שניות תמלול (אם הבנתי נכון).
הרווח שיצא מזה הוא עצום לכל המאזינים של ימות המשיח, כי מכאן הדרך קצרה לשמור כל שיעור על קובץ נפרד, ואז מה שנשאר זה להפיץ קוד שמאזינים יכולים לערוך חיפוש בתוך שיעורים! --- זה משהו אדיר!!!!! עד כמה שאני יודע אין את זה בשום חברה בטח שלא בצורה נגישה לציבור הרחב.... -
RE: כניסה ל API והגדרות...
<?php $dirname = "recording";if (!is_dir($dirname)){ mkdir($dirname);//מייצר תיקיית הקלטות על השרת } $id="5"; if ($_GET["recording"]==""){ echo "read=t-אין שום טבע בעולם! הקליטו את הסיפור המדהים שלכם,ואחריו סולמית =recording,yes,record,,$id,yes,yes,No"; Get_recording("$id","0799000000","1234"); } else{ echo "id_list_message=t- ההקלטה נקלטה על הַשָרָת, תודה ולהתראות:"; } function Get_recording($id,$username,$password){ //echo "id_list_message=t- ההקלטה נכנסת לשרת עכשיו:"; // From URL to get webpage contents. $url = "https://www.call2all.co.il/ym/api/Login?username=$username&password=$password"; $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // Return Page contents. curl_setopt($ch, CURLOPT_URL, $url); //grab URL and pass it to the variable. $result = curl_exec($ch); //תוצאה=תגובת השרת $json = "$result"; //מכניס את השורה למשתנה $obj = json_decode($json); //יעשה מהשורה ג'סון //https://www.php.net/manual/en/function.json-decode.php $the_token= $obj->{"token"}; //יקבל את הטוקן אל תוך משתנה //echo "הטוקן הוא: $the_token"; ///---------------------------------הורדה---------------------------------- global $dirname; //נתיב אל תיקיית קבצי ההקלטות $path= "$dirname/$id.wav"; //כתובת להדבקה בשרת שמפעיל את הקוד $url = "https://www.call2all.co.il/ym/api/DownloadFile?token=$the_token&path=ivr2:1/$id.wav"; $result = curl_exec($ch); ////תוצאה=תגובת השרת $file= file_get_contents($url) ; $handle = fopen($path,'w') ; fputs($handle,$file); fclose($handle) ; }
בהצלחה לכולם!
-
RE: כניסה ל API והגדרות...
@מנסה
כן! צדקת!!!!!!! התנאי עקף את ההורדה
כל הכבוד! לכל החברים שהשקיעו מאמץ לעזור --תודה רבה! אין עליכם בכל העולם!!!!
אגב, הרגע הצליח לי גם עם "/" וגם בלי
path=ivr2:/1/$id.wav
תיכף אעלה את הקוד באופן שהוא עובד, לטובת הכלל
יישר כח! -
RE: כניסה ל API והגדרות...
@איש-ימיני
תודה על התגובות המהירות!
ניסיתי 1 ממשי - אין שינוי,
ניסיתי 001 גם אין שינוי
ניסיתי לוכסן אחרי הנקודותיים, גם אין שינוי.
אולי הברירה היא פשוט לראות איך זה בנוי בתוך FTP
אני יבקש חיבור, ואעדכן בעזרת ה'
מעריך מאוד את ההשתדלות לעזור!
תודה רבה!!!!
בינתיים, אם יש עוד רעיונות אשמח מאוד לנסות ---- אין כמוכם! -
RE: כניסה ל API והגדרות...
@איש-ימיני אמר בכניסה ל API והגדרות...:
ogg
ביקשתי 'אקו' של הנתיב, אני מקבל
https://www.call2all.co.il/ym/api/DownloadFile?token=NdVmWBLLVT.........&path=ivr2:1/1.wav
המידע שהשם משתנה הוא מאוד חשוב, תודה רבה!
אבל כרגע אני עובד ישירות על קובץ שבוודאי נמצא שם והשם שלו הוא 1.WAV
ועם כל זה הוא מגיב שהקובץ לא קיים -
RE: כניסה ל API והגדרות...
אם אפשר לקבל עזרה
הבסיס של הקוד הזה עבד לי לפני 5 שנים, כרגע משהו תקוע.
הקוד אמור להוריד את הקובץ אל השרת. הבעיה היא שאני מקבל תגובת שרת של ימות שהקובץ לא נמצא (Requested file does not exist)
הקובץ נמצא בתפריט ראשי שלוחה 1.
איפה הטעות?function Get_recording($id,$username,$password){ //echo "id_list_message=t- ההקלטה נכנסת לשרת עכשיו:"; // From URL to get webpage contents. $url = "https://www.call2all.co.il/ym/api/Login?username=$username&password=$password"; $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // Return Page contents. curl_setopt($ch, CURLOPT_URL, $url); //grab URL and pass it to the variable. $result = curl_exec($ch); //תוצאה=תגובת השרת $json = "$result"; //מכניס את השורה למשתנה $obj = json_decode($json); //יעשה מהשורה ג'סון //https://www.php.net/manual/en/function.json-decode.php $the_token= $obj->{"token"}; //יקבל את הטוקן אל תוך משתנה //echo "הטוקן הוא: $the_token"; ///---------------------------------הורדה---------------------------------- global $dirname; //נתיב אל תיקיית קבצי ההקלטות $path= "$dirname/$id.wav"; //כתובת להדבקה בשרת שמפעיל את הקוד $url = "https://www.call2all.co.il/ym/api/DownloadFile?token=$the_token&path=ivr2:1/$id.wav"; $result = curl_exec($ch); ////תוצאה=תגובת השרת if (!$result=="Requested file does not exist"){ $file= file_get_contents($url) ; $handle = fopen($path,'w') ; fputs($handle,$file); fclose($handle) ; } else{ echo "id_list_message=t- הקובץ לא נמצא: תגובת השרת היא : $result"; } }