महत्त्वपूर्ण

We are currently a small number of developers active on the project. As such, we cannot answer and tag all of the opened issues immediately, but we do notice and read them. Good bug reports provide us important feedback, which we thank you for and always appreciate.

कीड़े रिपोर्ट गाइड

इस गाइड में आपको जेमी में आने वाली बग्स और समस्याओं की रिपोर्ट करने के लिए चरण-दर-चरण निर्देश शामिल हैं।

अपने वातावरण को व्यवस्थित करें

  • डेटा हानि के लिए तैयार रहें। अपने खाते का बैकअप लें और जितना संभव हो उतना उपकरणों से अपने खाते को लिंक करें।

  • Jami के नवीनतम संस्करण (या यहां तक कि बीटा संस्करण) को स्थापित करें। पुराने संस्करणों के साथ बग / मुद्दों की रिपोर्ट करना कम उपयोगी है, और यह संभावना है कि इसे पहले से ही नए संस्करणों में ठीक किया गया है।

बग की रिपोर्ट कैसे करें

  1. [जमी GitLab]https://git.jami.net/users/sign_up पर एक खाता बनाएं) यदि आपके पास पहले से कोई खाता नहीं है।

  2. अपनी समस्या को पोस्ट करने के लिए सही परियोजना चुनेंः

    • एंड्रॉयड क्लाइंट

    • {gitlab-project}`Qt ग्राहक

    • {gitlab-project}`आईओएस क्लाइंट

    • macOS क्लाइंट (किटलैब-प्रोजेक्ट द्वारा घटाया गया)

    • {gitlab-project}`जमी परियोजना सामान्यतः (या यदि आप निश्चित नहीं हैं)

    • [यदि आप जानते हैं कि आप क्या कर रहे हैं तो आप अन्य परियोजनाओं में से एक चुन सकते हैं]https://git.jami.net)

  3. यदि आपके पास कई समस्याएं हैं, तो कृपया अलग से बग रिपोर्ट दर्ज करें। इस तरह से उन्हें ट्रैक करना बहुत आसान होगा।

  4. शीर्षक बग का स्पष्ट सारांश है (उदाहरण के लिएः शीर्षक पट्टी आइकन आकार के कारण बहुत बड़ा है)

  5. बग को पुनः उत्पन्न करने के लिए चरणों का पता लगाएंः

    • यदि आपके पास इसे पुनः पेश करने के लिए सटीक कदम हैं (उत्तम!) तो आप एक उपयोगी बग रिपोर्ट बनाने के रास्ते पर हैं।

    • यदि आप कभी-कभी पुनरुत्पादन कर सकते हैं, लेकिन विशिष्ट चरणों का पालन करने के बाद नहीं, तो कृपया अन्य लोगों को समझने और इसे पुनः उत्पन्न करने का प्रयास करने के लिए इस मुद्दे के बारे में अतिरिक्त जानकारी प्रदान करें।

    • If you can not reproduce the problem, there may be little chance of it being reasonably fixable. If you do report it, please try your best to provide as much information/clues about its occurrence as possible.

  6. अपने सॉफ़्टवेयर को अद्यतित रखें। आदर्श रूप से, यह देखने के लिए कि क्या आपकी बग पहले ही ठीक हो गई है, एक विकसित संस्करण का परीक्षण करें।

  7. पर्यावरण से अलग होने और प्रजनन करने का प्रयास करें (यानी कई उपकरणों पर परीक्षण करें) ।

  8. निम्नलिखित निर्दिष्ट करके अपने वातावरण का वर्णन करेंः

    • ओएस संस्करण

    • सटीक डिवाइस मॉडल (मोबाइल उपकरणों के लिए महत्वपूर्ण)

    • यदि आप बीटा संस्करण का उपयोग कर रहे हैं

    • what build you are using (F-Droid, Play Store, App Store, from dl.jami.net, your own build, etc.). If you have built your own version of Jami, please specify the exact Jami Daemon version and client version (you can obtain it using jamid -v and jami -v; but note that our packages are updated quite often) and the Git commit.

    • network conditions:

      • are both devices on the same local network?

      • Different networks?

      • Is one or both behind NAT?

      • Are you using LTE?

      • Are you using WiFi?

    • other elements if needed:

      • SIP provider,

      • hardware,

      • etc.

स्पष्ट सारांश लिखना

आप बग को लगभग 10 शब्दों का उपयोग करके कैसे वर्णन करेंगे? यह आपके बग रिपोर्ट का पहला हिस्सा है जिसे एक डेवलपर देखेगा।

एक अच्छा सारांश बग रिपोर्ट की जल्दी और अद्वितीय रूप से पहचान करना चाहिए। यह समस्या की व्याख्या करना चाहिए, न कि आपके सुझावित समाधान।

Good: "Cancelling a file transfer crashes Jami"
Bad: "Software crashes"
Good: "All calls hang up after 32 seconds"
Bad: "Not able to call my friends"

पुनरुत्पादन के लिए सटीक कदम लिखना

  • एक डेवलपर अपने डिवाइस पर बग को कैसे पुनः उत्पन्न कर सकता है?

    बगल की रिपोर्ट में बगल को पुनः पेश करने के लिए कदम सबसे महत्वपूर्ण होते हैं। यदि कोई डेवलपर बग को पुनः पेश करने में सक्षम है, तो बग को ठीक करने की संभावना बहुत अधिक है। यदि चरण अस्पष्ट हैं, तो यह जानना भी संभव नहीं हो सकता है कि क्या बग को ठीक किया गया है। हम पूरी तरह से जानते हैं कि कुछ बग आपके लिए स्पष्ट लग सकते हैं, लेकिन वे संभवतः आपके वातावरण से संबंधित हैं। आप जितना अधिक सटीक हैं, उतना ही तेजी से बग को ठीक किया जा सकता है।

  • आपको बग रिपोर्ट में क्या शामिल करना चाहिए?

    बताएं कि क्या आप अपनी मर्जी से बग को कभी-कभी पुनः पेश कर सकते हैं या बिल्कुल नहीं। प्रत्येक कदम के इरादे के अलावा Jami के साथ बातचीत करने की अपनी विधि का वर्णन करें। अपने चरणों के बाद, देखे गए (वास्तविक) परिणाम और अपेक्षित परिणाम का सटीक रूप से वर्णन करें। तथ्यों (निरीक्षणों) को अटकलों से स्पष्ट रूप से अलग करें।

Good

मैं हमेशा इन चरणों का पालन करके प्रजनन कर सकते हैंः

1. Start Jami by clicking on the desktop icon
2. Start a new conversation with anyone
3. Click the file transfer icon

Expected results: A window opens and asks me to choose a file to send.
Actual results: When I click the file transfer icon, nothing happens.

Bad

Try to transfer a file.
It doesn't work.

प्राप्त परिणाम

कृपया निम्नलिखित को शामिल करेंः

  • Jami डेमोन (jamid या libjami या लिबरिंग) और क्लाइंट डिबग लॉग।

  • अगर कोई भी उत्पादन किया गया था तो मूल कचरा।

अपेक्षित परिणाम

यह अपेक्षित या वांछित व्यवहार का वर्णन है।

अतिरिक्त जानकारी प्रदान करना

अधिकांश बग रिपोर्ट के लिए निम्नलिखित जानकारी मांगी जाती है। आप अपेक्षित परिणामों के नीचे यह जानकारी प्रदान करके समय बचा सकते हैं।

लॉग

Qt आधारित Jami क्लाइंट (GNU/Linux, Windows, macOS)

Go to the General settings. In the Troubleshoot section, you can click on "Open logs", where you will be able to get statistics ("Show stats") or start recording information via "Receive logs". Then you can just copy the result and explain your scenario.

GNU/Linux पर

क्लासिक लॉग (डिफ़ॉल्ट रूप से केवल >= चेतावनी लॉग लॉग किए जाते हैं):

journalctl --since "24h ago" | grep jami

Full log: The Jami client (GUI) and daemon are separate processes. To obtain logs from both processes, start each process manually, one at a time.

  1. सुनिश्चित करें कि कोई भी Jami क्लाइंट या डेमॉन उदाहरण चल रहे हैंः एक टर्मिनल में ps aux पकड़े जाम चलाकर जांचें।

    • आपकी पसंद के आधार पर, जामी अभी भी चल सकती है भले ही कोई खिड़की खुली न हो।

    • यदि कोई क्लाइंट या डेमन चल रहा है, तो kill PID का उपयोग करके उन्हें समाप्त करें।

  2. एक टर्मिनल में, jamid -d -c के साथ डेमोन शुरू करें

    • यह निष्पादित करने योग्य PATH में नहीं होता है, और डेबियन/ट्रिस्क्वल/उबंटू पैकेज में, यह /usr/lib/x86_64-linux-gnu/jamid -d -c या /usr/libexec/jamid -d -c पर स्थित है।

  3. In another terminal, start the client, using jami -d.

एक बैकट्रैक प्राप्त करने के लिए, आप GDB के अंदर कार्यक्रम चला सकते हैंः

gdb -ex run --args jami -d, or gdb -ex run --args /usr/libexec/jamid -cd, depending on the component you need to debug.

जब यह दुर्घटनाग्रस्त हो जाता है, तो आप टाइप कर सकते हैं bt (या बेहतर, thread सभी bt लागू करें) फिर Enter दबाएं। फिर बैकट्रैक को कॉपी करें और इसे अंक में पेस्ट करें।

macOS पर

  • /Applications/Jami.app/Contents/MacOS/ पर जाएं।

  • डबल क्लिक करें Jami. यह Jami को लॉन्च करेगा और लॉग को टर्मिनल पर प्रिंट करेगा.

  • टर्मिनल से लॉग को फ़ाइल में कॉपी करें।

वैकल्पिक रूप से, आप टर्मिनल से /<path to Jami>/Jami.app/Contents/MacOS/Jami -d चला सकते हैं।

एंड्रॉइड पर

अपने फोन के माध्यम से लॉग एकत्र करने के लिए Jami के स्वयं का उपयोगः

  • वार्तालाप

  • शीर्ष दाईं ओर तीन बिंदु मेनू पर टैप करें

  • सेटिंग्स

  • डायग्नोस्टिक लॉग्स

Android डिबग ब्रिज (adb) का उपयोग करके अपने कंप्यूटर के माध्यम से लॉग एकत्र करने के लिएः

  • आपको अपने कंप्यूटर पर एडबी सेट करने की आवश्यकता है।

  • अपने स्मार्टफोन पर Jami लॉन्च और फिर निष्पादित

  • ```b लॉगकट *:D grep adb shell ps  egrep 'cx.ring'  कट -c10-15 > लॉगरिंग.txt``

  • अब आप एक फ़ाइल है जिसमें ग्राहक की लॉग है

विंडोज के लिए

एक टर्मिनल (cmd.exe) खोलें और निम्नलिखित विकल्पों के साथ Jami.exe लॉन्च करेंः

  • लॉग प्राप्त करने के लिए एक अलग कंसोल विंडो खोलने के लिए -d

  • -f लॉग लिखने के लिए %localappdata%\jami\jami.log