![]() ![]() If I have some time left after all of that, I might get some work done on the results page. It will involve quite a bit of work as I have to pay attention to lots of small things to make sure that will later be handy for generating graphs and other interesting stats about compliance. Then, I will get the back end for running tests done. In the next week, I will start by adding JUnit and writing some unit tests. There are few changes left to be made in the back end, which will be hopefully done by Monday morning. Credentials adding pageĬredentials adding/updating page is almost complete. Other than that, there was mostly copying code from the existing ComplianceTester and ServerStatus projects, and modifying it for use in this project. At least now I know that annotation processing is not some sort of voodoo witchcraft. It took quite a bit of effort to get it running, as I had never used maven or custom annotations before, and I kept on making very silly mistakes. All this work can be delegated to the annotation processor, which runs at compile time to generate a source file with all the required tests stored in a list. This way, we don’t have to manually maintain a list of tests to run. Not only will these annotations store the metadata for a test, but also used to generate a list of all the tests. I created custom annotations for the compliance tests. Here are some of the highlights of the work I did in this period: Annotation processing and other structural changes I managed to get some work done on the weekends after a bit of slow start during the weekdays, owing to unexpected personal schedule. It has been a good first week for my GSoC project. I made some decisions, like writing a custom graphing library (or something based on d3.js) in JS for plotting graphs for visualization.Īll in all, I didn’t have much to do in Community bonding period, as I had exams during that time and had already discussed many of the details of the project with Daniel beforehand.There are a few rough edges in the mobile UI as I am not very experienced in web development, but hate using frameworks like Bootstrap. I made mockups for the user interface.I would have written instructions for Openfire too, had I not found it a bit too cumbersome(I will try to reattempt it later) I wrote instructions for getting different specifications implemented in ejabberd, prosody and metronome servers that will be used in the results page. I got an XMPP server(Prosody) running on my Raspberry Pi and an ejabberd server on my laptop, with some help from Daniel. Previous versions of ejabberd are available from our ejabberd Download Archive License.(If you have any name ideas, feel free to suggest) Other than that, these are some key highlights from that period: For the time being, this new project is called Compliance as a Service. I am very thankful for any help, whether it's getting my current version to allow registration or compiling the current version which seems easier to work with, as all of the solutions I've seen on the internet won't work with my version.GSoC Week 1 & earlier: Annotation processing and UI designĪfter having a talk with Daniel, my mentor, we decided to create a new project, instead of just working on top of the existing Compliance Tester project. When the "mod_register" line is enabled/uncommented (or any other not by default enabled mod), ejabberdctl live gives following output: Cannot load /etc/ejabberd/ejabberd.yml: Syntax error on line 272 at position 2: did not find expected key System: Raspberry Pi 4 (4GB)OS: TwisterOS 1.9.6 (Based on Raspbian 32bit)Ejabberd Version: 18.12.1-2 On the tested clients it says "server doesn't allow registration", although I have enabled everything that says anything about registration allowance. I can register from ejabberdctl, but that's it. I also tried to compile the newest version, but I get an error output every time.It works fine so far, but it differs from what I've seen online.My problem is, that registration from outside doesn't work at all. ![]() The Pico is the Foundations 4 single-board. The Debug Probe is a device to help debug bare-metal software on the Raspberry Pi Pico. I've tried it with ejabberd and installed it from the repo. The Raspberry Pi Foundation has a new gadget: a cheap, easy USB probe for debugging bare-metal code on a Pi Pico but it should work with several other devices too. Some friends and I want to leave WhatsApp for good and as I've been playing around with my Rpi4 for years now, I thought I'd use that to set up an XMPP-Server for us to use, to have a secure and customizable experience. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |