אביי
-
האם Blazor הוא תקוות העתיד -
עזרה בשימוש בrclone@צדיק-תמים בארגון, אני לא בטוח שהעברה זמינה בכלל ב@gmail.com
-
עזרה בשימוש בrclone@צדיק-תמים אצלי לא, מיד אחרי השיתוף בAPI אני מקבל הודעה כזו, וזה תופס לי משטח האחסון
-
עזרה בשימוש בrclone@A0533057932 כתב בעזרה בשימוש בrclone:
האפשרות השנייה שמציגים (service_account) לא פועלת כראוי — היא יוצרת חשבון גוגל מזוייף עם הגבלה של 15GB, בעוד שה-Google Drive שלי מכיל 5TB, מה שגורם לכך שהחשבון מתמלא תוך כמה ימים.
אמנם כבר יש לך פתרון טוב יותר, אבל הנה טיפ, אצלי כשאני משתמש בחשבון שירות, אני מייד לאחר ההעלאה מעביר את הבעלות על הקובץ לחשבון "רגיל" ואז זה לא נשמר תחת החשבון שירות, אלא כמו כל קובץ אחר בדרייב של אותו חשבון
https://developers.google.com/drive/api/reference/rest/v3/permissions
-
חיפוש שירות: קבלת מייל יומי מסוכם עם היתרות עו"ש בבנקים@מנחם כתב בחיפוש שירות: קבלת מייל יומי מסוכם עם היתרות עו"ש בבנקים:
היתרות צריך לחשב לבד
מסתבר שאפשר בקלות עם נוסחה..
@מנחם כתב בחיפוש שירות: קבלת מייל יומי מסוכם עם היתרות עו"ש בבנקים:
ומייל גם לא נשלח
אפשר להגדיר באמצעות גוגל סקריפט שיישלח מייל עם הסיכומים, כל X זמן, או בכל עדכון של הקובץ
-
האם יש דרך ליצור סקריפט כזה@מעמד-מוצלח כתבתי בעבר תוסף דומה, התאמתי אותו כעת לבדיקת לינקים של ערוצים, והוספתי פונקציה (אופציונלית) - שכרגע עדיין לא פעילה, ששולחת את הסטטוס של כל לינק לשרת - כך שבהמשך יהיה אפשר ליצור מאגר github מתעדכן עם רשימת הערוצים והסטטוס שלהם, (אם יהיה בזה עניין ציבורי..)
-
האם יש דרך ליצור סקריפט כזה@מני-דונט אני מאמין שלנטפרי יש דרך פשוטה להביא את הרשימה,
אולי תנסה דרכם?
-
עזרה עם שגיאה בהעלאת קובץ בחלקים לימות המשיח בc#עדכון:
שלחתי פנייה לימות המשיח, והבעיה אכן לא היתה המחלקות השונות אלא איפשהו בשרת של ימות, לטענתם התקלה סודרה,
ומבדיקה שלי אצלי, אכן כעת זה עובד כמו שצריך,
-
באיזה עדכון לווינדוס 10 הוכנס pyqt6?@הפצת-אנקי כתב בבאיזה עדכון לווינדוס 10 הוכנס pyqt6?:
@אביי זה אמור להיות מותקן במחשב שאין בו גישה לאינטרנט.
אתה יכול להתקין פייתון אופליין, וכן pip יש דרך לשימוש באופליין,
https://stackoverflow.com/questions/30181678/offline-installation-of-python-pip
-
עזרה עם שגיאה בהעלאת קובץ בחלקים לימות המשיח בc#curl ^"https://private.call2all.co.il/ym/api//UploadFile^" ^ -H ^"Accept: application/json^" ^ -H ^"Accept-Language: he-IL,he;q=0.9^" ^ -H ^"Cache-Control: no-cache^" ^ -H ^"Connection: keep-alive^" ^ -H ^"Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryIMbkXAPvau1ArzUz^" ^ -H ^"Cookie: XXXXXXXXXX -H ^"DNT: 1^" ^ -H ^"Origin: https://private.call2all.co.il^" ^ -H ^"Referer: https://private.call2all.co.il/yemot-admin-g1/^" ^ -H ^"Sec-Fetch-Dest: empty^" ^ -H ^"Sec-Fetch-Mode: cors^" ^ -H ^"Sec-Fetch-Site: same-origin^" ^ -H ^"User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36^" ^ -H ^"X-Requested-With: XMLHttpRequest^" ^ -H ^"sec-ch-ua: ^\^"Chromium^\^";v=^\^"130^\^", ^\^"Google Chrome^\^";v=^\^"130^\^", ^\^"Not?A_Brand^\^";v=^\^"99^\^"^" ^ -H ^"sec-ch-ua-mobile: ?0^" ^ -H ^"sec-ch-ua-platform: ^\^"Windows^\^"^" ^ --data-raw ^"------WebKitFormBoundaryIMbkXAPvau1ArzUz^ Content-Disposition: form-data; name=^\^"uploader^\^"^ ^ yemot-admin^ ------WebKitFormBoundaryIMbkXAPvau1ArzUz^ Content-Disposition: form-data; name=^\^"token^\^"^ ^ XXXXXXXXXXXXXXXXX^ ------WebKitFormBoundaryIMbkXAPvau1ArzUz^ Content-Disposition: form-data; name=^\^"path^\^"^ ^ ivr/22/^ ------WebKitFormBoundaryIMbkXAPvau1ArzUz^ Content-Disposition: form-data; name=^\^"convertAudio^\^"^ ^ 0^ ------WebKitFormBoundaryIMbkXAPvau1ArzUz^ Content-Disposition: form-data; name=^\^"autoNumbering^\^"^ ^ true^ ------WebKitFormBoundaryIMbkXAPvau1ArzUz^ Content-Disposition: form-data; name=^\^"qqpartindex^\^"^ ^ 0^ ------WebKitFormBoundaryIMbkXAPvau1ArzUz^ Content-Disposition: form-data; name=^\^"qqpartbyteoffset^\^"^ ^ 0^ ------WebKitFormBoundaryIMbkXAPvau1ArzUz^ Content-Disposition: form-data; name=^\^"qqchunksize^\^"^ ^ 4000000^ ------WebKitFormBoundaryIMbkXAPvau1ArzUz^ Content-Disposition: form-data; name=^\^"qqtotalparts^\^"^ ^ 18^ ------WebKitFormBoundaryIMbkXAPvau1ArzUz^ Content-Disposition: form-data; name=^\^"qqtotalfilesize^\^"^ ^ 70504094^ ------WebKitFormBoundaryIMbkXAPvau1ArzUz^ Content-Disposition: form-data; name=^\^"qqfilename^\^"^ ^ ^מ^פ^ע^ל ^ה^פ^ו^ר^מ^ט^י^ם ^מ^מ^ז^ג ^א^ו^ד^י^ו ^ה^ק^ל^ט^ה ^א^ר^ו^כ^ה+^ה^ק^ל^ט^ה ^א^ר^ו^כ^ה+^ש^מ^ח^ת ^ח^ג+^ש^ח^ר ^ק^מ^ת^י.wav^ ------WebKitFormBoundaryIMbkXAPvau1ArzUz^ Content-Disposition: form-data; name=^\^"qquuid^\^"^ ^ 908c3432-3081-45ee-b778-91e1248902f4^ ------WebKitFormBoundaryIMbkXAPvau1ArzUz^ Content-Disposition: form-data; name=^\^"qqfile^\^"; filename=^\^"blob^\^"^ Content-Type: application/octet-stream^ ^ RIFF^^Î3^WAVEfmt ^^
מעניין שבתגובה התקינה, הערך שחוזר בשגיאה כnull, חוזר כnull גם כן.. (ייתכן שאין קשר, והשגיאה בכלל לא קשורה לערך הזה..)
{ "success": true, "uuid": "908c3432-3081-45ee-b778-91e1248902f4", "uploadName": null }
-
עזרה עם שגיאה בהעלאת קובץ בחלקים לימות המשיח בc#@צדיק-תמים מהאתר החדש עובד,
בדקתי גם במערכת בשרת אחר (פרייבט) ואותו הדבר,
מה שכן שמתי לב שם, שימות עצמם רושמים את הpath כך :
ivr/22
(ניסיתי, ועובד בקטנים, ואותה שגיאה בהעלאה בחלקים..)יש עניין להביא cURL של אחד החלקים? (מהאתר החדש)
-
עזרה עם שגיאה בהעלאת קובץ בחלקים לימות המשיח בc#@צדיק-תמים זה לא משנה בימות, ובהתחלה זה היה בלי, והוספתי כי אמרתי אולי זה הבעיה..
-
עזרה עם שגיאה בהעלאת קובץ בחלקים לימות המשיח בc#איזה path כתבת?
-
פיתוח אפליקציה לטסלה-כיצד?@מתושלח-הבבלי1 לפי מה שאני הבנתי, זה לא חנות, אלא טסלה "מפתחת" (ליתר דיוק מסתבר מטמיעה) אפליקציות פופלאריות מסוימות במערכת שלה, אבל אין חנות בכלל,
מכאן זה גם נראה ככה
https://www.tesla.com/ownersmanual/model3/he_il/GUID-79A49D40-A028-435B-A7F6-8E48846AB9E9.html -
עזרה עם שגיאה בהעלאת קובץ בחלקים לימות המשיח בc#@dovid כתב בעזרה עם שגיאה בהעלאת קובץ בחלקים לימות המשיח בc#:
אם תסכים לשתף אותי בטוקן שלך במייל אשמח
תודה!
שלחתי במייל -
עזרה עם שגיאה בהעלאת קובץ בחלקים לימות המשיח בc#@dovid שכחתי לציין במפורש, רק הלארג', הבעיה היא איפשהו בהעלאת החלקים,
גם כי העלאת קובץ גדול (עד 50) בUploadSmallFileAsync עובדת מצויין, וגם כי אני מקבל את השגיאה רק אחרי העלאת כל חלק, אבל בתגובה לבקשת סיום ההעלאה חוזרת תגובה של הצלחה מימות המשיח, (רק שהקובץ שנוצר ריק, כי אין חלקים..)
-
עזרה עם שגיאה בהעלאת קובץ בחלקים לימות המשיח בc#תגובה: העלאת קובץ בapi לימות המשיח | קוד שבפייתון עובד וב nodejs לא כל כך
כתבתי את המחלקה הזו,
הקובץ המועלה - ריק,כשהוספתי דיבאג להעלאת החלקים, אני מקבל אחרי כל חלק את השגיאה:
Failed to upload chunk 1: {"error":"Server error. Uploads directory isn't writable","uploadName":null}
זה המחלקה,
(השוותי ידנית וגם ניסיתי עם קלוד, למחלקות בפייתון וnode שפורסמו שם, ללא הצלחה)using System.Collections.Generic; using System.IO; using System.Net.Http; using System.Threading.Tasks; using System; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using System.Windows.Forms; public class YemotUploader { // הגדרה אחת בלבד של גודל הצ'אנק private static readonly int ChunkSizeBytes = 8000000; // 8MB private byte[] ReadFileBytes(string filePath) { return File.ReadAllBytes(filePath); } private List<byte[]> ReadInChunks(string filePath) { var fileBytes = ReadFileBytes(filePath); var chunks = new List<byte[]>(); for (int offset = 0; offset < fileBytes.Length; offset += ChunkSizeBytes) { int currentChunkSize = Math.Min(ChunkSizeBytes, fileBytes.Length - offset); var chunk = new byte[currentChunkSize]; Array.Copy(fileBytes, offset, chunk, 0, currentChunkSize); chunks.Add(chunk); } return chunks; } public async Task<string> UploadFileAsync(string filePath, string tokenYemot, string path, string convertAudio, string autoNumbering) { var fileInfo = new FileInfo(filePath); var contentName = Path.GetFileName(filePath); var contentSize = fileInfo.Length; if (contentSize <= ChunkSizeBytes) { // העלאת קובץ קטן return await UploadSmallFileAsync(filePath, tokenYemot, path, convertAudio, autoNumbering); } else { // העלאת קובץ גדול return await UploadLargeFileAsync(filePath, tokenYemot, path, convertAudio, autoNumbering); } } private async Task<string> UploadSmallFileAsync(string filePath, string tokenYemot, string path, string convertAudio, string autoNumbering) { using (var httpClient = new HttpClient()) using (var formData = new MultipartFormDataContent()) { formData.Add(new StringContent(tokenYemot), "token"); formData.Add(new StringContent(path), "path"); formData.Add(new StringContent(convertAudio), "convertAudio"); formData.Add(new StringContent(autoNumbering), "autoNumbering"); var fileBytes = File.ReadAllBytes(filePath); var fileContent = new ByteArrayContent(fileBytes); fileContent.Headers.ContentDisposition = new System.Net.Http.Headers.ContentDispositionHeaderValue("form-data") { Name = "\"file\"", FileName = $"\"{Path.GetFileName(filePath)}\"" }; fileContent.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/octet-stream"); formData.Add(fileContent, "file"); var response = await httpClient.PostAsync("https://www.call2all.co.il/ym/api/UploadFile", formData); return await response.Content.ReadAsStringAsync(); } } private async Task<string> UploadLargeFileAsync(string filePath, string tokenYemot, string path, string convertAudio, string autoNumbering) { var contentName = Path.GetFileName(filePath); var contentSize = new FileInfo(filePath).Length; var qquuid = Guid.NewGuid().ToString(); var chunks = ReadInChunks(filePath); var failedChunks = new List<int>(); // העלאת כל הצ'אנקים for (int i = 0; i < chunks.Count; i++) { try { using (var httpClient = new HttpClient()) using (var content = new MultipartFormDataContent()) { var chunk = chunks[i]; var offset = i * ChunkSizeBytes; content.Add(new StringContent(tokenYemot), "token"); content.Add(new StringContent(path), "path"); content.Add(new StringContent(qquuid), "qquuid"); content.Add(new StringContent(convertAudio), "convertAudio"); content.Add(new StringContent(autoNumbering), "autoNumbering"); content.Add(new StringContent("yemot-admin"), "uploader"); content.Add(new StringContent(contentName), "qqfilename"); content.Add(new StringContent(contentSize.ToString()), "qqtotalfilesize"); content.Add(new StringContent(chunks.Count.ToString()), "qqtotalparts"); content.Add(new StringContent(chunk.Length.ToString()), "qqchunksize"); content.Add(new StringContent(offset.ToString()), "qqpartbyteoffset"); content.Add(new StringContent(i.ToString()), "qqpartindex"); var fileContent = new ByteArrayContent(chunk); fileContent.Headers.ContentDisposition = new System.Net.Http.Headers.ContentDispositionHeaderValue("form-data") { Name = "\"qqfile\"", FileName = $"\"{contentName}\"" }; fileContent.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/octet-stream"); content.Add(fileContent, "qqfile"); var response = await httpClient.PostAsync("https://www.call2all.co.il/ym/api/UploadFile", content); var responseText = await response.Content.ReadAsStringAsync(); // בדיקה האם התגובה תקינה if (!response.IsSuccessStatusCode || responseText.Contains("error")) { failedChunks.Add(i); MessageBox.Show($"Failed to upload chunk {i}: {responseText}"); Console.WriteLine($"Failed to upload chunk {i}: {responseText}"); } else { Console.WriteLine($"Successfully uploaded chunk {i}"); } } } catch (Exception ex) { failedChunks.Add(i); Console.WriteLine($"Error uploading chunk {i}: {ex.Message}"); } } // בדיקה האם כל הצ'אנקים הועלו בהצלחה if (failedChunks.Count > 0) { throw new Exception($"Failed to upload chunks: {string.Join(", ", failedChunks)}"); } // שליחת בקשת סיום using (var httpClient = new HttpClient()) { var finalFormData = new FormUrlEncodedContent(new Dictionary<string, string> { { "token", tokenYemot }, { "path", path }, { "uploader", "yemot-admin" }, { "convertAudio", convertAudio }, { "autoNumbering", autoNumbering }, { "qquuid", qquuid }, { "qqfilename", contentName }, { "qqtotalfilesize", contentSize.ToString() }, { "qqtotalparts", chunks.Count.ToString() } }); try { var doneResponse = await httpClient.PostAsync( "https://www.call2all.co.il/ym/api/UploadFile?done", finalFormData ); var responseText = await doneResponse.Content.ReadAsStringAsync(); Console.WriteLine($"Done response: {responseText}"); // ניסיון לפרסור של הjson הכפול if (!string.IsNullOrEmpty(responseText)) { // מציאת ה-JSON הראשון בתגובה int firstBrace = responseText.IndexOf('{'); int lastBrace = responseText.LastIndexOf('}'); if (firstBrace >= 0 && lastBrace > firstBrace) { string jsonPart = responseText.Substring(firstBrace, lastBrace - firstBrace + 1); try { // בדיקה האם ה-JSON תקין var jObject = JObject.Parse(jsonPart); return jsonPart; } catch (JsonReaderException) { Console.WriteLine($"Invalid JSON response: {jsonPart}"); } } } return responseText; } catch (Exception ex) { Console.WriteLine($"Error in done request: {ex.Message}"); throw; } } } }
-
זיהוי אקרודים בפייתון@אביחיל כתב בזיהוי אקרודים בפייתון:
ובדרך אגב מה הסיפור הזה בפייתון שכל עידכון גירסה שלהם משבש את חלק ניכר מהספריות למה אין להם תאימות מינימלית
זה מזכיר שפות מלפני 20 שנה
חשבתי שבעידן הזה אין כאלה בעיותבוא לnode ותדבר
-
זיהוי אקרודים בפייתון@אביחיל שמעתי על pychord, אני חושב אבל שצריך לתת לה פרטים מסויימים על השמע, שניתן לקבל באמצעות הספרייה aubio,
(אני לא מכיר אישית, מישהו כתב על השילוב ביניהם לפני כמה חודשים איפשהו)
-
מתי להגדיר אינדקס במסד נתונים@yossiz כתב במתי להגדיר אינדקס במסד נתונים:
דהיינו להוסיף where לפקודה של יצירת האינדקס
טוב לדעת, לא ידעתי שאפשרי,
(אני בד"כ לא מאנדקס אותם בכלל, כי זה כמעט תמיד נוטה לצד הtrue)