You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@clerezza.apache.org by Yusuf Karadağ <yu...@gmail.com> on 2021/08/20 15:11:06 UTC

Re: GSoC Weekly Reports

Dear mentors,
I've attached the refactored final version of the report for GSoC to this
report for your information. Any feedback, suggestion will be appreciated.
I mentioned the library, 2 web services, 2 pull-requests, the ontology,
debugging in Android and what needs to be done more(about integrating into
Signal client), basically everything I have done so far. Additionally, i
would love to thank you Mr. Hasan for your technical support everyday and
Mr. Kamaci for all administration stuff. I've seen my strengths and
weaknesses in this project period. Hopefully I will be a better developer
and one day a senior developer like you mentoring students, juniors. It was
a great meeting and working with you. I hope we will be in  touch for
future improvements and ideas.
Best regards!


On Thu, Aug 12, 2021 at 2:45 PM Hasan Hasan <xu...@gmail.com> wrote:

> Thanks Yusuf for the report.
>
> One important task in this project is to be able to hook into the Signal
> library or client (whatever client you choose). Please provide the
> information in the report as well in this respect. You should especially
> mention
> 1. which client code you are using to place a hook (links to github
> project, etc. where the client code is publicly available)
> 2. the location of the client code where you can place a hook (an excerpt
> of the class and method)
> 3. how the hook is written (post requests to your server)
> 4. whether any extra library you need to make the client works as expected
>
> Best regards
> Hasan
>
> On Wed, Aug 11, 2021 at 9:57 AM Yusuf Karadağ <yu...@gmail.com>
> wrote:
>
>> Hello,
>> I'm sending this mail to inform you what has been done in week 8 and 9.
>>
>> *Week 6:*
>>
>>    - I created corresponding methods in the web service to parse the
>>    graph, serialize the graph into a file and build the graph with the
>>    incoming json.
>>    - If the incoming conversation exists, it will overwrite the
>>    conversation and person and will just store the message.
>>    - With the help of Mr. Hasan, we managed to store the messages in the
>>    correct way.
>>
>> *Week 7:*
>>
>>    - I took classes and methods related to Signal and put them into
>>    separate library.
>>    - Mr. Hasan said to remove methods that are not used by the library.
>>    I will do that.
>>    - I will also create another service to make it work with Java 8.
>>    - A Little bit more detailed report is attached to this mail.
>>
>>
>> Best regards!
>>
>> On Wed, Jul 21, 2021 at 10:15 AM Yusuf Karadağ <
>> yusufkaradag1402@gmail.com> wrote:
>>
>>> Hello,
>>> I'm sending this mail to inform you what has been done in week 6 and 7.
>>> I realized that i didn't send the report for week 6, i am sorry.
>>>
>>> *Week 6:*
>>>
>>>    - I created a dummy REST service to receive messages from Signal
>>>    clients. (1 GET and 1 POST to see if that's actually working. We've tested
>>>    with Mr. Hasan it's working) with Quarkus. It's a microservice framework
>>>    developed by RedHat.
>>>    - In the Signal Android app, I assign 2 variables for messageText
>>>    and timestamp. And if the message is not empty, send it to the server. Then
>>>    I created a method to send data to the server with Java Http library.
>>>
>>> *Week 7:*
>>>
>>>    - This week we couldn't meet with Mr. Hasan. I assume he was busy.
>>>    - I've changed the input type coming from the client. It was *Map<String,
>>>    String> *before and I've changed it to *ObjectNode*. It's basically
>>>    a representation of a JSON object in
>>> *Jackson Databind library. *
>>>    - Then in the service, I deserialized it to an ObjectNode as well. I
>>>    got the message and timestamp and stored it in a graph as in Example 1.
>>>
>>>
>>> Best regards!
>>>
>>> On Thu, Jul 8, 2021 at 8:38 AM Hasan <ha...@apache.org> wrote:
>>>
>>>> Thanks a lot!
>>>>
>>>> Best regards
>>>> Hasan
>>>>
>>>> On Wed, Jul 7, 2021 at 7:48 PM Yusuf Karadağ <
>>>> yusufkaradag1402@gmail.com> wrote:
>>>>
>>>>> Hello,
>>>>> I'm sending this mail to inform you what has been done in week 5.
>>>>>
>>>>> *Week 5:*
>>>>>
>>>>>    - Mr. Hasan merged my *pull-request*
>>>>>    <https://github.com/apache/clerezza/pull/21#event-4985268757> into
>>>>>    the CLEREZZA-1068-schemagen
>>>>>    <https://github.com/apache/clerezza/tree/CLEREZZA-1068-schemagen>
>>>>>    branch. He will do a final review and refactoring and then hopefully will
>>>>>    merge to the master.
>>>>>    - Last week I tested my ontology and tried to generate the class
>>>>>    with the *schemagen plugin.* It generated the class successfully.
>>>>>    - I found out which function Signal Messenger is encrypting and
>>>>>    decrypting the message in android. If you put a breakpoint to line 113, you
>>>>>    can see the message content before encrypting by typing to the evaluator in
>>>>>    Android Studio:* ((EnvelopeContent.Encrypted)
>>>>>    content).content.getDataMessage().getBody(). *And if we put
>>>>>    another breakpoint to the line 156 by typing to the evaluator:  *content.getDataMessage().getBody
>>>>>    *we can see the decrypted message.
>>>>>    - We discussed with Mr. Hasan how I am going to store the message
>>>>>    to the RDF graph. We came up with 2 possible solutions. First one is to
>>>>>    integrate Clerezza into the Android environment and the second one is to
>>>>>    store messages in *libsignal-service-java*
>>>>>    <https://github.com/signalapp/libsignal-service-java> module. We
>>>>>    found the second option more precise.
>>>>>    - This week I will create a web service with one endpoint to
>>>>>    receive message contents that will be sent from
>>>>>    *libsignal-service-java*
>>>>>    <https://github.com/signalapp/libsignal-service-java>* and try to
>>>>>    store them in memory.*
>>>>>    - I also wrote a small documentation about how to debug in Android
>>>>>    Studio and see messages before encrypting and after decrypting.
>>>>> * The report attached to this email. *
>>>>>
>>>>>
>>>>> Best regards!
>>>>>
>>>>> On Tue, Jul 6, 2021 at 8:48 AM Yusuf Karadağ <
>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>
>>>>>> Hi,
>>>>>> Thanks for the resources. I've solved the problem and found the
>>>>>> message encrypting and decrypting in Signal Android. I'll write the report
>>>>>> to this mail after we have the meeting tomorrow.
>>>>>>
>>>>>> Best regards!
>>>>>>
>>>>>> On Tue, Jul 6, 2021 at 7:39 AM Hasan <ha...@apache.org> wrote:
>>>>>>
>>>>>>> Hi Yusuf
>>>>>>>
>>>>>>> Probably these resources can help
>>>>>>>
>>>>>>> https://github.com/signalapp/libsignal-service-java
>>>>>>>
>>>>>>> https://github.com/Turasa/libsignal-service-java
>>>>>>> https://github.com/AsamK/signal-cli
>>>>>>>
>>>>>>> Hasan
>>>>>>>
>>>>>>> On Wed, Jun 30, 2021 at 9:26 AM Yusuf Karadağ <
>>>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>>>
>>>>>>>> Hello Mr. KAMACI,
>>>>>>>> I'm sending this mail to inform you what has been done in week 4.
>>>>>>>>
>>>>>>>> *Week 4:*
>>>>>>>>
>>>>>>>>    - I have fixed a few issues in PR regarding the dependency
>>>>>>>>    version. It's ready to review.
>>>>>>>>    - I have created random data based on the model I have created.
>>>>>>>>    The scenario is: 2 people, 5 messages and 1 conversation. I've attached the
>>>>>>>>    random data and its visualization to this mail.
>>>>>>>>    - I had a look at Signal API and Android client since it's the
>>>>>>>>    only client that's written with Java. I got familiar with the code.
>>>>>>>>    - I had to install Android Studio to debug the application and
>>>>>>>>    try to find where the message is encrypting/decrypting in order to store
>>>>>>>>    them. I'm struggling with debugging because it's massive and the emulator
>>>>>>>>    keeps freezing during debug mode. I will continue debugging this week and
>>>>>>>>    will find out.
>>>>>>>>    - We didn't have a meeting this week so we couldn't discuss
>>>>>>>>    this data and next tasks. But I will dig in a little bit more and will
>>>>>>>>    create a new module.
>>>>>>>>
>>>>>>>>
>>>>>>>> Best regards!
>>>>>>>>
>>>>>>>> On Wed, Jun 23, 2021 at 9:48 PM Yusuf Karadağ <
>>>>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>>>>
>>>>>>>>> Hello Mr. KAMACI,
>>>>>>>>> I'm sending this mail to inform you what we have discussed with
>>>>>>>>> Mr. Hasan and what has been done in week 3.
>>>>>>>>>
>>>>>>>>> *Week 3:*
>>>>>>>>>
>>>>>>>>>    - I've updated the PR since Mr. Hasan released new versions of
>>>>>>>>>    jenar parser and serializer.
>>>>>>>>>    - By fixing those bugs with the new release all tutorials are
>>>>>>>>>    working right now. I'll create a new PR for them this week as well.(
>>>>>>>>>    https://github.com/apache/clerezza/pull/21)
>>>>>>>>>    - We've discussed the final model of ontology for signal with
>>>>>>>>>    Mr. Hasan. For now, it seems okay. But if over time I realize sth is wrong,
>>>>>>>>>    i'll refactor it according to need. I've attached the visualization of
>>>>>>>>>    ontology to this mail as well.
>>>>>>>>>    - We've checked my PR for schemagen and ontology plugins. It
>>>>>>>>>    didn't work before because the ontology module was using the old
>>>>>>>>>    dependency. After updating dependency and configurations, we've tried with
>>>>>>>>>    *foaf* ontology and it successfully generated *FOAF.java *as
>>>>>>>>>    expected.
>>>>>>>>>    - I pushed the latest changes to my branch so everything is in
>>>>>>>>>    the PR that I opened.
>>>>>>>>>    - This week I will create some random data with the model I
>>>>>>>>>    designed to get more familiar with RDF concepts.
>>>>>>>>>    - Last but not least, I will have a look and get familiar with
>>>>>>>>>    the Signal API and will try to find where the message is encrypting and
>>>>>>>>>    where it is decrypting in the Signal Android client hopefully.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Best regards!
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Wed, Jun 16, 2021 at 10:13 AM Yusuf Karadağ <
>>>>>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>>>>>
>>>>>>>>>> Hello Mr. KAMACI,
>>>>>>>>>> I'm sending this mail to inform you what we have discussed with
>>>>>>>>>> Mr. Hasan and what has been done.
>>>>>>>>>>
>>>>>>>>>> *Week 1:*
>>>>>>>>>>
>>>>>>>>>>    - Discussed about Signal model ontology.
>>>>>>>>>>    - Discussed about to have an idea about next-steps and
>>>>>>>>>>    milestone.
>>>>>>>>>>    - Discussed about *schemagen* module from legacy branch and
>>>>>>>>>>    pull-request to bring it back to main.
>>>>>>>>>>    - Created model classes for the Signal to take as reference
>>>>>>>>>>    to ontology.
>>>>>>>>>>    - Created some random data to visualize the created model to
>>>>>>>>>>    Neo4J database.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> *Week 2:*
>>>>>>>>>>
>>>>>>>>>>    - Discussed about the PR i created. Mr. Hasan will open an
>>>>>>>>>>    issue on Jira and i'll commit the changes with the issue name to Jira issue
>>>>>>>>>>    to link them.
>>>>>>>>>>    - I've created an ontology and visualization of it.
>>>>>>>>>>    - We've discussed about the model and made some changes about
>>>>>>>>>>    how the model would look. Changed some property names, types and
>>>>>>>>>>    relationships.
>>>>>>>>>>    - We've looked at to some existing ontologies and see if we
>>>>>>>>>>    can use existing classes from them.
>>>>>>>>>>    - I will have a look deeper to the ontologies and will find
>>>>>>>>>>    the compatible classes with ours.(like skos, foaf etc)
>>>>>>>>>>    - I took some notes abut the new model and will send it
>>>>>>>>>>    through group once i visualize it.
>>>>>>>>>>    - The online tool that i am using for visualization is:
>>>>>>>>>>    http://www.visualdataweb.de/webvowl
>>>>>>>>>>    - I've also asked which syntax should i use while writing the
>>>>>>>>>>    ontology. Mr. Hasan said that doesn't matter but xml is a bit more
>>>>>>>>>>    difficult to read so i'll do it with n-triple or turtle. I'll do some
>>>>>>>>>>    hands-on activity to get familiar with both syntaxes.
>>>>>>>>>>
>>>>>>>>>> I think those were all we've discussed. I'll keep sending you
>>>>>>>>>> emails as a report for what have done and discussed. If you want me to
>>>>>>>>>> write reports according to a template, i can do that too.
>>>>>>>>>> Best regards!
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Yusuf
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Yusuf
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Yusuf
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>> --
>>>>>> Yusuf
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Yusuf
>>>>>
>>>>
>>>
>>> --
>>> Yusuf
>>>
>>
>>
>> --
>> Yusuf
>>
>

-- 
Yusuf

Re: GSoC Weekly Reports

Posted by Yusuf Karadağ <yu...@gmail.com>.
Hello again,
Just to inform you, I gave the link in the final evaluation as
https://github.com/miador/clerezza-signal where the main library is located
and all the resources and external services pointed(including project
report and web services).
Best regards!

On Sun, Aug 22, 2021 at 2:20 PM Yusuf Karadağ <yu...@gmail.com>
wrote:

> Thank you so much sir.
> See you soon.
> Best regards.
>
> Yusuf Karadag
>
> On Sun, Aug 22, 2021, 15:02 Hasan <ha...@apache.org> wrote:
>
>> Many thanks Yusuf for the updated report.
>>
>> Wish you success in your life and work.
>> See you sometime.
>>
>> Hasan
>>
>> On Sun, Aug 22, 2021 at 1:19 PM Yusuf Karadağ <yu...@gmail.com>
>> wrote:
>>
>>> Dear Mr. Hasan,
>>> I attached the refactored report to this mail. I created 2 images to
>>> show architecture, added them into the report and tried to describe the
>>> functionality/logic behind it. I hope that's fine with you.
>>>
>>> On Sun, Aug 22, 2021 at 8:58 AM Hasan <ha...@apache.org> wrote:
>>>
>>>> Hi Yusuf
>>>>
>>>> Thanks for the report.
>>>> I have one suggestion for improvements. Add a new chapter after the
>>>> ontology.
>>>> Chapter 2: Implementation Architecture
>>>> - An image containing a high level overview of involved components
>>>>   - Signal Messaging System (two or more signal clients and one signal
>>>> server)
>>>>     - Name one of the client Intercepting Signal Client and highlight it
>>>>   - Apache Clerezza based Messaging Graph Store Web Service
>>>>
>>>> - A short description of each component (functional description)
>>>>   - One of the clients in Signal Messaging System is named Intercepting
>>>> Signal Client,
>>>>     because it contains some hooks to intercept data flow and interact
>>>> with Web Service
>>>>   - ...
>>>>
>>>> - You can add a Message Sequence Diagram of the interaction between the
>>>> Intercepting Signal Client
>>>>   and the Signal Server, showing the data flow interception and the
>>>> place of the hooks for both
>>>>   incoming as well as outgoing messages
>>>>
>>>> Please send us the new version after you make your changes. I hope you
>>>> still have time to make changes
>>>> before submission.
>>>>
>>>> Hasan
>>>>
>>>> On Fri, Aug 20, 2021 at 5:11 PM Yusuf Karadağ <
>>>> yusufkaradag1402@gmail.com> wrote:
>>>>
>>>>> Dear mentors,
>>>>> I've attached the refactored final version of the report for GSoC to
>>>>> this report for your information. Any feedback, suggestion will be
>>>>> appreciated. I mentioned the library, 2 web services, 2 pull-requests, the
>>>>> ontology, debugging in Android and what needs to be done more(about
>>>>> integrating into Signal client), basically everything I have done so far.
>>>>> Additionally, i would love to thank you Mr. Hasan for your technical
>>>>> support everyday and Mr. Kamaci for all administration stuff. I've seen my
>>>>> strengths and weaknesses in this project period. Hopefully I will be a
>>>>> better developer and one day a senior developer like you mentoring
>>>>> students, juniors. It was a great meeting and working with you. I hope we
>>>>> will be in  touch for future improvements and ideas.
>>>>> Best regards!
>>>>>
>>>>>
>>>>> On Thu, Aug 12, 2021 at 2:45 PM Hasan Hasan <xu...@gmail.com>
>>>>> wrote:
>>>>>
>>>>>> Thanks Yusuf for the report.
>>>>>>
>>>>>> One important task in this project is to be able to hook into the
>>>>>> Signal library or client (whatever client you choose). Please provide the
>>>>>> information in the report as well in this respect. You should especially
>>>>>> mention
>>>>>> 1. which client code you are using to place a hook (links to github
>>>>>> project, etc. where the client code is publicly available)
>>>>>> 2. the location of the client code where you can place a hook (an
>>>>>> excerpt of the class and method)
>>>>>> 3. how the hook is written (post requests to your server)
>>>>>> 4. whether any extra library you need to make the client works as
>>>>>> expected
>>>>>>
>>>>>> Best regards
>>>>>> Hasan
>>>>>>
>>>>>> On Wed, Aug 11, 2021 at 9:57 AM Yusuf Karadağ <
>>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>>
>>>>>>> Hello,
>>>>>>> I'm sending this mail to inform you what has been done in week 8 and
>>>>>>> 9.
>>>>>>>
>>>>>>> *Week 6:*
>>>>>>>
>>>>>>>    - I created corresponding methods in the web service to parse
>>>>>>>    the graph, serialize the graph into a file and build the graph with the
>>>>>>>    incoming json.
>>>>>>>    - If the incoming conversation exists, it will overwrite the
>>>>>>>    conversation and person and will just store the message.
>>>>>>>    - With the help of Mr. Hasan, we managed to store the messages
>>>>>>>    in the correct way.
>>>>>>>
>>>>>>> *Week 7:*
>>>>>>>
>>>>>>>    - I took classes and methods related to Signal and put them into
>>>>>>>    separate library.
>>>>>>>    - Mr. Hasan said to remove methods that are not used by the
>>>>>>>    library. I will do that.
>>>>>>>    - I will also create another service to make it work with Java 8.
>>>>>>>    - A Little bit more detailed report is attached to this mail.
>>>>>>>
>>>>>>>
>>>>>>> Best regards!
>>>>>>>
>>>>>>> On Wed, Jul 21, 2021 at 10:15 AM Yusuf Karadağ <
>>>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>>>
>>>>>>>> Hello,
>>>>>>>> I'm sending this mail to inform you what has been done in week 6
>>>>>>>> and 7. I realized that i didn't send the report for week 6, i am sorry.
>>>>>>>>
>>>>>>>> *Week 6:*
>>>>>>>>
>>>>>>>>    - I created a dummy REST service to receive messages from
>>>>>>>>    Signal clients. (1 GET and 1 POST to see if that's actually working. We've
>>>>>>>>    tested with Mr. Hasan it's working) with Quarkus. It's a microservice
>>>>>>>>    framework developed by RedHat.
>>>>>>>>    - In the Signal Android app, I assign 2 variables for
>>>>>>>>    messageText and timestamp. And if the message is not empty, send it to the
>>>>>>>>    server. Then I created a method to send data to the server with Java Http
>>>>>>>>    library.
>>>>>>>>
>>>>>>>> *Week 7:*
>>>>>>>>
>>>>>>>>    - This week we couldn't meet with Mr. Hasan. I assume he was
>>>>>>>>    busy.
>>>>>>>>    - I've changed the input type coming from the client. It was *Map<String,
>>>>>>>>    String> *before and I've changed it to *ObjectNode*. It's
>>>>>>>>    basically a representation of a JSON object in
>>>>>>>> *Jackson Databind library. *
>>>>>>>>    - Then in the service, I deserialized it to an ObjectNode as
>>>>>>>>    well. I got the message and timestamp and stored it in a graph as in
>>>>>>>>    Example 1.
>>>>>>>>
>>>>>>>>
>>>>>>>> Best regards!
>>>>>>>>
>>>>>>>> On Thu, Jul 8, 2021 at 8:38 AM Hasan <ha...@apache.org> wrote:
>>>>>>>>
>>>>>>>>> Thanks a lot!
>>>>>>>>>
>>>>>>>>> Best regards
>>>>>>>>> Hasan
>>>>>>>>>
>>>>>>>>> On Wed, Jul 7, 2021 at 7:48 PM Yusuf Karadağ <
>>>>>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>>>>>
>>>>>>>>>> Hello,
>>>>>>>>>> I'm sending this mail to inform you what has been done in week 5.
>>>>>>>>>>
>>>>>>>>>> *Week 5:*
>>>>>>>>>>
>>>>>>>>>>    - Mr. Hasan merged my *pull-request*
>>>>>>>>>>    <https://github.com/apache/clerezza/pull/21#event-4985268757>
>>>>>>>>>>    into the CLEREZZA-1068-schemagen
>>>>>>>>>>    <https://github.com/apache/clerezza/tree/CLEREZZA-1068-schemagen>
>>>>>>>>>>    branch. He will do a final review and refactoring and then hopefully will
>>>>>>>>>>    merge to the master.
>>>>>>>>>>    - Last week I tested my ontology and tried to generate the
>>>>>>>>>>    class with the *schemagen plugin.* It generated the class
>>>>>>>>>>    successfully.
>>>>>>>>>>    - I found out which function Signal Messenger is encrypting
>>>>>>>>>>    and decrypting the message in android. If you put a breakpoint to line 113,
>>>>>>>>>>    you can see the message content before encrypting by typing to the
>>>>>>>>>>    evaluator in Android Studio:* ((EnvelopeContent.Encrypted)
>>>>>>>>>>    content).content.getDataMessage().getBody(). *And if we put
>>>>>>>>>>    another breakpoint to the line 156 by typing to the evaluator:  *content.getDataMessage().getBody
>>>>>>>>>>    *we can see the decrypted message.
>>>>>>>>>>    - We discussed with Mr. Hasan how I am going to store the
>>>>>>>>>>    message to the RDF graph. We came up with 2 possible solutions. First one
>>>>>>>>>>    is to integrate Clerezza into the Android environment and the second one is
>>>>>>>>>>    to store messages in *libsignal-service-java*
>>>>>>>>>>    <https://github.com/signalapp/libsignal-service-java> module.
>>>>>>>>>>    We found the second option more precise.
>>>>>>>>>>    - This week I will create a web service with one endpoint to
>>>>>>>>>>    receive message contents that will be sent from
>>>>>>>>>>    *libsignal-service-java*
>>>>>>>>>>    <https://github.com/signalapp/libsignal-service-java>* and
>>>>>>>>>>    try to store them in memory.*
>>>>>>>>>>    - I also wrote a small documentation about how to debug in
>>>>>>>>>>    Android Studio and see messages before encrypting and after decrypting.
>>>>>>>>>> * The report attached to this email. *
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Best regards!
>>>>>>>>>>
>>>>>>>>>> On Tue, Jul 6, 2021 at 8:48 AM Yusuf Karadağ <
>>>>>>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>>>>>>
>>>>>>>>>>> Hi,
>>>>>>>>>>> Thanks for the resources. I've solved the problem and found the
>>>>>>>>>>> message encrypting and decrypting in Signal Android. I'll write the report
>>>>>>>>>>> to this mail after we have the meeting tomorrow.
>>>>>>>>>>>
>>>>>>>>>>> Best regards!
>>>>>>>>>>>
>>>>>>>>>>> On Tue, Jul 6, 2021 at 7:39 AM Hasan <ha...@apache.org> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Hi Yusuf
>>>>>>>>>>>>
>>>>>>>>>>>> Probably these resources can help
>>>>>>>>>>>>
>>>>>>>>>>>> https://github.com/signalapp/libsignal-service-java
>>>>>>>>>>>>
>>>>>>>>>>>> https://github.com/Turasa/libsignal-service-java
>>>>>>>>>>>> https://github.com/AsamK/signal-cli
>>>>>>>>>>>>
>>>>>>>>>>>> Hasan
>>>>>>>>>>>>
>>>>>>>>>>>> On Wed, Jun 30, 2021 at 9:26 AM Yusuf Karadağ <
>>>>>>>>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> Hello Mr. KAMACI,
>>>>>>>>>>>>> I'm sending this mail to inform you what has been done in week
>>>>>>>>>>>>> 4.
>>>>>>>>>>>>>
>>>>>>>>>>>>> *Week 4:*
>>>>>>>>>>>>>
>>>>>>>>>>>>>    - I have fixed a few issues in PR regarding the dependency
>>>>>>>>>>>>>    version. It's ready to review.
>>>>>>>>>>>>>    - I have created random data based on the model I have
>>>>>>>>>>>>>    created. The scenario is: 2 people, 5 messages and 1 conversation. I've
>>>>>>>>>>>>>    attached the random data and its visualization to this mail.
>>>>>>>>>>>>>    - I had a look at Signal API and Android client since it's
>>>>>>>>>>>>>    the only client that's written with Java. I got familiar with the code.
>>>>>>>>>>>>>    - I had to install Android Studio to debug the application
>>>>>>>>>>>>>    and try to find where the message is encrypting/decrypting in order to
>>>>>>>>>>>>>    store them. I'm struggling with debugging because it's massive and the
>>>>>>>>>>>>>    emulator keeps freezing during debug mode. I will continue debugging this
>>>>>>>>>>>>>    week and will find out.
>>>>>>>>>>>>>    - We didn't have a meeting this week so we couldn't
>>>>>>>>>>>>>    discuss this data and next tasks. But I will dig in a little bit more and
>>>>>>>>>>>>>    will create a new module.
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Best regards!
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Wed, Jun 23, 2021 at 9:48 PM Yusuf Karadağ <
>>>>>>>>>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> Hello Mr. KAMACI,
>>>>>>>>>>>>>> I'm sending this mail to inform you what we have discussed
>>>>>>>>>>>>>> with Mr. Hasan and what has been done in week 3.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> *Week 3:*
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>    - I've updated the PR since Mr. Hasan released new
>>>>>>>>>>>>>>    versions of jenar parser and serializer.
>>>>>>>>>>>>>>    - By fixing those bugs with the new release all tutorials
>>>>>>>>>>>>>>    are working right now. I'll create a new PR for them this week as well.(
>>>>>>>>>>>>>>    https://github.com/apache/clerezza/pull/21)
>>>>>>>>>>>>>>    - We've discussed the final model of ontology for signal
>>>>>>>>>>>>>>    with Mr. Hasan. For now, it seems okay. But if over time I realize sth is
>>>>>>>>>>>>>>    wrong, i'll refactor it according to need. I've attached the visualization
>>>>>>>>>>>>>>    of ontology to this mail as well.
>>>>>>>>>>>>>>    - We've checked my PR for schemagen and ontology plugins.
>>>>>>>>>>>>>>    It didn't work before because the ontology module was using the old
>>>>>>>>>>>>>>    dependency. After updating dependency and configurations, we've tried with
>>>>>>>>>>>>>>    *foaf* ontology and it successfully generated *FOAF.java *as
>>>>>>>>>>>>>>    expected.
>>>>>>>>>>>>>>    - I pushed the latest changes to my branch so everything
>>>>>>>>>>>>>>    is in the PR that I opened.
>>>>>>>>>>>>>>    - This week I will create some random data with the model
>>>>>>>>>>>>>>    I designed to get more familiar with RDF concepts.
>>>>>>>>>>>>>>    - Last but not least, I will have a look and get familiar
>>>>>>>>>>>>>>    with the Signal API and will try to find where the message is encrypting
>>>>>>>>>>>>>>    and where it is decrypting in the Signal Android client hopefully.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Best regards!
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On Wed, Jun 16, 2021 at 10:13 AM Yusuf Karadağ <
>>>>>>>>>>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Hello Mr. KAMACI,
>>>>>>>>>>>>>>> I'm sending this mail to inform you what we have discussed
>>>>>>>>>>>>>>> with Mr. Hasan and what has been done.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> *Week 1:*
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>    - Discussed about Signal model ontology.
>>>>>>>>>>>>>>>    - Discussed about to have an idea about next-steps and
>>>>>>>>>>>>>>>    milestone.
>>>>>>>>>>>>>>>    - Discussed about *schemagen* module from legacy branch
>>>>>>>>>>>>>>>    and pull-request to bring it back to main.
>>>>>>>>>>>>>>>    - Created model classes for the Signal to take as
>>>>>>>>>>>>>>>    reference to ontology.
>>>>>>>>>>>>>>>    - Created some random data to visualize the created
>>>>>>>>>>>>>>>    model to Neo4J database.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> *Week 2:*
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>    - Discussed about the PR i created. Mr. Hasan will open
>>>>>>>>>>>>>>>    an issue on Jira and i'll commit the changes with the issue name to Jira
>>>>>>>>>>>>>>>    issue to link them.
>>>>>>>>>>>>>>>    - I've created an ontology and visualization of it.
>>>>>>>>>>>>>>>    - We've discussed about the model and made some changes
>>>>>>>>>>>>>>>    about how the model would look. Changed some property names, types and
>>>>>>>>>>>>>>>    relationships.
>>>>>>>>>>>>>>>    - We've looked at to some existing ontologies and see if
>>>>>>>>>>>>>>>    we can use existing classes from them.
>>>>>>>>>>>>>>>    - I will have a look deeper to the ontologies and will
>>>>>>>>>>>>>>>    find the compatible classes with ours.(like skos, foaf etc)
>>>>>>>>>>>>>>>    - I took some notes abut the new model and will send it
>>>>>>>>>>>>>>>    through group once i visualize it.
>>>>>>>>>>>>>>>    - The online tool that i am using for visualization is:
>>>>>>>>>>>>>>>    http://www.visualdataweb.de/webvowl
>>>>>>>>>>>>>>>    - I've also asked which syntax should i use while
>>>>>>>>>>>>>>>    writing the ontology. Mr. Hasan said that doesn't matter but xml is a bit
>>>>>>>>>>>>>>>    more difficult to read so i'll do it with n-triple or turtle. I'll do some
>>>>>>>>>>>>>>>    hands-on activity to get familiar with both syntaxes.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> I think those were all we've discussed. I'll keep sending
>>>>>>>>>>>>>>> you emails as a report for what have done and discussed. If you want me to
>>>>>>>>>>>>>>> write reports according to a template, i can do that too.
>>>>>>>>>>>>>>> Best regards!
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>> Yusuf
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> --
>>>>>>>>>>>>>> Yusuf
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> --
>>>>>>>>>>>>> Yusuf
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>> Yusuf
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Yusuf
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Yusuf
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Yusuf
>>>>>>>
>>>>>>
>>>>>
>>>>> --
>>>>> Yusuf
>>>>>
>>>>
>>>
>>> --
>>> Yusuf
>>>
>>

-- 
Yusuf

Re: GSoC Weekly Reports

Posted by Yusuf Karadağ <yu...@gmail.com>.
Thank you so much sir.
See you soon.
Best regards.

Yusuf Karadag

On Sun, Aug 22, 2021, 15:02 Hasan <ha...@apache.org> wrote:

> Many thanks Yusuf for the updated report.
>
> Wish you success in your life and work.
> See you sometime.
>
> Hasan
>
> On Sun, Aug 22, 2021 at 1:19 PM Yusuf Karadağ <yu...@gmail.com>
> wrote:
>
>> Dear Mr. Hasan,
>> I attached the refactored report to this mail. I created 2 images to show
>> architecture, added them into the report and tried to describe the
>> functionality/logic behind it. I hope that's fine with you.
>>
>> On Sun, Aug 22, 2021 at 8:58 AM Hasan <ha...@apache.org> wrote:
>>
>>> Hi Yusuf
>>>
>>> Thanks for the report.
>>> I have one suggestion for improvements. Add a new chapter after the
>>> ontology.
>>> Chapter 2: Implementation Architecture
>>> - An image containing a high level overview of involved components
>>>   - Signal Messaging System (two or more signal clients and one signal
>>> server)
>>>     - Name one of the client Intercepting Signal Client and highlight it
>>>   - Apache Clerezza based Messaging Graph Store Web Service
>>>
>>> - A short description of each component (functional description)
>>>   - One of the clients in Signal Messaging System is named Intercepting
>>> Signal Client,
>>>     because it contains some hooks to intercept data flow and interact
>>> with Web Service
>>>   - ...
>>>
>>> - You can add a Message Sequence Diagram of the interaction between the
>>> Intercepting Signal Client
>>>   and the Signal Server, showing the data flow interception and the
>>> place of the hooks for both
>>>   incoming as well as outgoing messages
>>>
>>> Please send us the new version after you make your changes. I hope you
>>> still have time to make changes
>>> before submission.
>>>
>>> Hasan
>>>
>>> On Fri, Aug 20, 2021 at 5:11 PM Yusuf Karadağ <
>>> yusufkaradag1402@gmail.com> wrote:
>>>
>>>> Dear mentors,
>>>> I've attached the refactored final version of the report for GSoC to
>>>> this report for your information. Any feedback, suggestion will be
>>>> appreciated. I mentioned the library, 2 web services, 2 pull-requests, the
>>>> ontology, debugging in Android and what needs to be done more(about
>>>> integrating into Signal client), basically everything I have done so far.
>>>> Additionally, i would love to thank you Mr. Hasan for your technical
>>>> support everyday and Mr. Kamaci for all administration stuff. I've seen my
>>>> strengths and weaknesses in this project period. Hopefully I will be a
>>>> better developer and one day a senior developer like you mentoring
>>>> students, juniors. It was a great meeting and working with you. I hope we
>>>> will be in  touch for future improvements and ideas.
>>>> Best regards!
>>>>
>>>>
>>>> On Thu, Aug 12, 2021 at 2:45 PM Hasan Hasan <xu...@gmail.com>
>>>> wrote:
>>>>
>>>>> Thanks Yusuf for the report.
>>>>>
>>>>> One important task in this project is to be able to hook into the
>>>>> Signal library or client (whatever client you choose). Please provide the
>>>>> information in the report as well in this respect. You should especially
>>>>> mention
>>>>> 1. which client code you are using to place a hook (links to github
>>>>> project, etc. where the client code is publicly available)
>>>>> 2. the location of the client code where you can place a hook (an
>>>>> excerpt of the class and method)
>>>>> 3. how the hook is written (post requests to your server)
>>>>> 4. whether any extra library you need to make the client works as
>>>>> expected
>>>>>
>>>>> Best regards
>>>>> Hasan
>>>>>
>>>>> On Wed, Aug 11, 2021 at 9:57 AM Yusuf Karadağ <
>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>
>>>>>> Hello,
>>>>>> I'm sending this mail to inform you what has been done in week 8 and
>>>>>> 9.
>>>>>>
>>>>>> *Week 6:*
>>>>>>
>>>>>>    - I created corresponding methods in the web service to parse the
>>>>>>    graph, serialize the graph into a file and build the graph with the
>>>>>>    incoming json.
>>>>>>    - If the incoming conversation exists, it will overwrite the
>>>>>>    conversation and person and will just store the message.
>>>>>>    - With the help of Mr. Hasan, we managed to store the messages in
>>>>>>    the correct way.
>>>>>>
>>>>>> *Week 7:*
>>>>>>
>>>>>>    - I took classes and methods related to Signal and put them into
>>>>>>    separate library.
>>>>>>    - Mr. Hasan said to remove methods that are not used by the
>>>>>>    library. I will do that.
>>>>>>    - I will also create another service to make it work with Java 8.
>>>>>>    - A Little bit more detailed report is attached to this mail.
>>>>>>
>>>>>>
>>>>>> Best regards!
>>>>>>
>>>>>> On Wed, Jul 21, 2021 at 10:15 AM Yusuf Karadağ <
>>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>>
>>>>>>> Hello,
>>>>>>> I'm sending this mail to inform you what has been done in week 6 and
>>>>>>> 7. I realized that i didn't send the report for week 6, i am sorry.
>>>>>>>
>>>>>>> *Week 6:*
>>>>>>>
>>>>>>>    - I created a dummy REST service to receive messages from Signal
>>>>>>>    clients. (1 GET and 1 POST to see if that's actually working. We've tested
>>>>>>>    with Mr. Hasan it's working) with Quarkus. It's a microservice framework
>>>>>>>    developed by RedHat.
>>>>>>>    - In the Signal Android app, I assign 2 variables for
>>>>>>>    messageText and timestamp. And if the message is not empty, send it to the
>>>>>>>    server. Then I created a method to send data to the server with Java Http
>>>>>>>    library.
>>>>>>>
>>>>>>> *Week 7:*
>>>>>>>
>>>>>>>    - This week we couldn't meet with Mr. Hasan. I assume he was
>>>>>>>    busy.
>>>>>>>    - I've changed the input type coming from the client. It was *Map<String,
>>>>>>>    String> *before and I've changed it to *ObjectNode*. It's
>>>>>>>    basically a representation of a JSON object in
>>>>>>> *Jackson Databind library. *
>>>>>>>    - Then in the service, I deserialized it to an ObjectNode as
>>>>>>>    well. I got the message and timestamp and stored it in a graph as in
>>>>>>>    Example 1.
>>>>>>>
>>>>>>>
>>>>>>> Best regards!
>>>>>>>
>>>>>>> On Thu, Jul 8, 2021 at 8:38 AM Hasan <ha...@apache.org> wrote:
>>>>>>>
>>>>>>>> Thanks a lot!
>>>>>>>>
>>>>>>>> Best regards
>>>>>>>> Hasan
>>>>>>>>
>>>>>>>> On Wed, Jul 7, 2021 at 7:48 PM Yusuf Karadağ <
>>>>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>>>>
>>>>>>>>> Hello,
>>>>>>>>> I'm sending this mail to inform you what has been done in week 5.
>>>>>>>>>
>>>>>>>>> *Week 5:*
>>>>>>>>>
>>>>>>>>>    - Mr. Hasan merged my *pull-request*
>>>>>>>>>    <https://github.com/apache/clerezza/pull/21#event-4985268757>
>>>>>>>>>    into the CLEREZZA-1068-schemagen
>>>>>>>>>    <https://github.com/apache/clerezza/tree/CLEREZZA-1068-schemagen>
>>>>>>>>>    branch. He will do a final review and refactoring and then hopefully will
>>>>>>>>>    merge to the master.
>>>>>>>>>    - Last week I tested my ontology and tried to generate the
>>>>>>>>>    class with the *schemagen plugin.* It generated the class
>>>>>>>>>    successfully.
>>>>>>>>>    - I found out which function Signal Messenger is encrypting
>>>>>>>>>    and decrypting the message in android. If you put a breakpoint to line 113,
>>>>>>>>>    you can see the message content before encrypting by typing to the
>>>>>>>>>    evaluator in Android Studio:* ((EnvelopeContent.Encrypted)
>>>>>>>>>    content).content.getDataMessage().getBody(). *And if we put
>>>>>>>>>    another breakpoint to the line 156 by typing to the evaluator:  *content.getDataMessage().getBody
>>>>>>>>>    *we can see the decrypted message.
>>>>>>>>>    - We discussed with Mr. Hasan how I am going to store the
>>>>>>>>>    message to the RDF graph. We came up with 2 possible solutions. First one
>>>>>>>>>    is to integrate Clerezza into the Android environment and the second one is
>>>>>>>>>    to store messages in *libsignal-service-java*
>>>>>>>>>    <https://github.com/signalapp/libsignal-service-java> module.
>>>>>>>>>    We found the second option more precise.
>>>>>>>>>    - This week I will create a web service with one endpoint to
>>>>>>>>>    receive message contents that will be sent from
>>>>>>>>>    *libsignal-service-java*
>>>>>>>>>    <https://github.com/signalapp/libsignal-service-java>* and try
>>>>>>>>>    to store them in memory.*
>>>>>>>>>    - I also wrote a small documentation about how to debug in
>>>>>>>>>    Android Studio and see messages before encrypting and after decrypting.
>>>>>>>>> * The report attached to this email. *
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Best regards!
>>>>>>>>>
>>>>>>>>> On Tue, Jul 6, 2021 at 8:48 AM Yusuf Karadağ <
>>>>>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>>>>>
>>>>>>>>>> Hi,
>>>>>>>>>> Thanks for the resources. I've solved the problem and found the
>>>>>>>>>> message encrypting and decrypting in Signal Android. I'll write the report
>>>>>>>>>> to this mail after we have the meeting tomorrow.
>>>>>>>>>>
>>>>>>>>>> Best regards!
>>>>>>>>>>
>>>>>>>>>> On Tue, Jul 6, 2021 at 7:39 AM Hasan <ha...@apache.org> wrote:
>>>>>>>>>>
>>>>>>>>>>> Hi Yusuf
>>>>>>>>>>>
>>>>>>>>>>> Probably these resources can help
>>>>>>>>>>>
>>>>>>>>>>> https://github.com/signalapp/libsignal-service-java
>>>>>>>>>>>
>>>>>>>>>>> https://github.com/Turasa/libsignal-service-java
>>>>>>>>>>> https://github.com/AsamK/signal-cli
>>>>>>>>>>>
>>>>>>>>>>> Hasan
>>>>>>>>>>>
>>>>>>>>>>> On Wed, Jun 30, 2021 at 9:26 AM Yusuf Karadağ <
>>>>>>>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Hello Mr. KAMACI,
>>>>>>>>>>>> I'm sending this mail to inform you what has been done in week
>>>>>>>>>>>> 4.
>>>>>>>>>>>>
>>>>>>>>>>>> *Week 4:*
>>>>>>>>>>>>
>>>>>>>>>>>>    - I have fixed a few issues in PR regarding the dependency
>>>>>>>>>>>>    version. It's ready to review.
>>>>>>>>>>>>    - I have created random data based on the model I have
>>>>>>>>>>>>    created. The scenario is: 2 people, 5 messages and 1 conversation. I've
>>>>>>>>>>>>    attached the random data and its visualization to this mail.
>>>>>>>>>>>>    - I had a look at Signal API and Android client since it's
>>>>>>>>>>>>    the only client that's written with Java. I got familiar with the code.
>>>>>>>>>>>>    - I had to install Android Studio to debug the application
>>>>>>>>>>>>    and try to find where the message is encrypting/decrypting in order to
>>>>>>>>>>>>    store them. I'm struggling with debugging because it's massive and the
>>>>>>>>>>>>    emulator keeps freezing during debug mode. I will continue debugging this
>>>>>>>>>>>>    week and will find out.
>>>>>>>>>>>>    - We didn't have a meeting this week so we couldn't discuss
>>>>>>>>>>>>    this data and next tasks. But I will dig in a little bit more and will
>>>>>>>>>>>>    create a new module.
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Best regards!
>>>>>>>>>>>>
>>>>>>>>>>>> On Wed, Jun 23, 2021 at 9:48 PM Yusuf Karadağ <
>>>>>>>>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> Hello Mr. KAMACI,
>>>>>>>>>>>>> I'm sending this mail to inform you what we have discussed
>>>>>>>>>>>>> with Mr. Hasan and what has been done in week 3.
>>>>>>>>>>>>>
>>>>>>>>>>>>> *Week 3:*
>>>>>>>>>>>>>
>>>>>>>>>>>>>    - I've updated the PR since Mr. Hasan released new
>>>>>>>>>>>>>    versions of jenar parser and serializer.
>>>>>>>>>>>>>    - By fixing those bugs with the new release all tutorials
>>>>>>>>>>>>>    are working right now. I'll create a new PR for them this week as well.(
>>>>>>>>>>>>>    https://github.com/apache/clerezza/pull/21)
>>>>>>>>>>>>>    - We've discussed the final model of ontology for signal
>>>>>>>>>>>>>    with Mr. Hasan. For now, it seems okay. But if over time I realize sth is
>>>>>>>>>>>>>    wrong, i'll refactor it according to need. I've attached the visualization
>>>>>>>>>>>>>    of ontology to this mail as well.
>>>>>>>>>>>>>    - We've checked my PR for schemagen and ontology plugins.
>>>>>>>>>>>>>    It didn't work before because the ontology module was using the old
>>>>>>>>>>>>>    dependency. After updating dependency and configurations, we've tried with
>>>>>>>>>>>>>    *foaf* ontology and it successfully generated *FOAF.java *as
>>>>>>>>>>>>>    expected.
>>>>>>>>>>>>>    - I pushed the latest changes to my branch so everything
>>>>>>>>>>>>>    is in the PR that I opened.
>>>>>>>>>>>>>    - This week I will create some random data with the model
>>>>>>>>>>>>>    I designed to get more familiar with RDF concepts.
>>>>>>>>>>>>>    - Last but not least, I will have a look and get familiar
>>>>>>>>>>>>>    with the Signal API and will try to find where the message is encrypting
>>>>>>>>>>>>>    and where it is decrypting in the Signal Android client hopefully.
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Best regards!
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Wed, Jun 16, 2021 at 10:13 AM Yusuf Karadağ <
>>>>>>>>>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> Hello Mr. KAMACI,
>>>>>>>>>>>>>> I'm sending this mail to inform you what we have discussed
>>>>>>>>>>>>>> with Mr. Hasan and what has been done.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> *Week 1:*
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>    - Discussed about Signal model ontology.
>>>>>>>>>>>>>>    - Discussed about to have an idea about next-steps and
>>>>>>>>>>>>>>    milestone.
>>>>>>>>>>>>>>    - Discussed about *schemagen* module from legacy branch
>>>>>>>>>>>>>>    and pull-request to bring it back to main.
>>>>>>>>>>>>>>    - Created model classes for the Signal to take as
>>>>>>>>>>>>>>    reference to ontology.
>>>>>>>>>>>>>>    - Created some random data to visualize the created model
>>>>>>>>>>>>>>    to Neo4J database.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> *Week 2:*
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>    - Discussed about the PR i created. Mr. Hasan will open
>>>>>>>>>>>>>>    an issue on Jira and i'll commit the changes with the issue name to Jira
>>>>>>>>>>>>>>    issue to link them.
>>>>>>>>>>>>>>    - I've created an ontology and visualization of it.
>>>>>>>>>>>>>>    - We've discussed about the model and made some changes
>>>>>>>>>>>>>>    about how the model would look. Changed some property names, types and
>>>>>>>>>>>>>>    relationships.
>>>>>>>>>>>>>>    - We've looked at to some existing ontologies and see if
>>>>>>>>>>>>>>    we can use existing classes from them.
>>>>>>>>>>>>>>    - I will have a look deeper to the ontologies and will
>>>>>>>>>>>>>>    find the compatible classes with ours.(like skos, foaf etc)
>>>>>>>>>>>>>>    - I took some notes abut the new model and will send it
>>>>>>>>>>>>>>    through group once i visualize it.
>>>>>>>>>>>>>>    - The online tool that i am using for visualization is:
>>>>>>>>>>>>>>    http://www.visualdataweb.de/webvowl
>>>>>>>>>>>>>>    - I've also asked which syntax should i use while writing
>>>>>>>>>>>>>>    the ontology. Mr. Hasan said that doesn't matter but xml is a bit more
>>>>>>>>>>>>>>    difficult to read so i'll do it with n-triple or turtle. I'll do some
>>>>>>>>>>>>>>    hands-on activity to get familiar with both syntaxes.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> I think those were all we've discussed. I'll keep sending you
>>>>>>>>>>>>>> emails as a report for what have done and discussed. If you want me to
>>>>>>>>>>>>>> write reports according to a template, i can do that too.
>>>>>>>>>>>>>> Best regards!
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> --
>>>>>>>>>>>>>> Yusuf
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> --
>>>>>>>>>>>>> Yusuf
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> --
>>>>>>>>>>>> Yusuf
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Yusuf
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Yusuf
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Yusuf
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Yusuf
>>>>>>
>>>>>
>>>>
>>>> --
>>>> Yusuf
>>>>
>>>
>>
>> --
>> Yusuf
>>
>

Re: GSoC Weekly Reports

Posted by Hasan <ha...@apache.org>.
Many thanks Yusuf for the updated report.

Wish you success in your life and work.
See you sometime.

Hasan

On Sun, Aug 22, 2021 at 1:19 PM Yusuf Karadağ <yu...@gmail.com>
wrote:

> Dear Mr. Hasan,
> I attached the refactored report to this mail. I created 2 images to show
> architecture, added them into the report and tried to describe the
> functionality/logic behind it. I hope that's fine with you.
>
> On Sun, Aug 22, 2021 at 8:58 AM Hasan <ha...@apache.org> wrote:
>
>> Hi Yusuf
>>
>> Thanks for the report.
>> I have one suggestion for improvements. Add a new chapter after the
>> ontology.
>> Chapter 2: Implementation Architecture
>> - An image containing a high level overview of involved components
>>   - Signal Messaging System (two or more signal clients and one signal
>> server)
>>     - Name one of the client Intercepting Signal Client and highlight it
>>   - Apache Clerezza based Messaging Graph Store Web Service
>>
>> - A short description of each component (functional description)
>>   - One of the clients in Signal Messaging System is named Intercepting
>> Signal Client,
>>     because it contains some hooks to intercept data flow and interact
>> with Web Service
>>   - ...
>>
>> - You can add a Message Sequence Diagram of the interaction between the
>> Intercepting Signal Client
>>   and the Signal Server, showing the data flow interception and the place
>> of the hooks for both
>>   incoming as well as outgoing messages
>>
>> Please send us the new version after you make your changes. I hope you
>> still have time to make changes
>> before submission.
>>
>> Hasan
>>
>> On Fri, Aug 20, 2021 at 5:11 PM Yusuf Karadağ <yu...@gmail.com>
>> wrote:
>>
>>> Dear mentors,
>>> I've attached the refactored final version of the report for GSoC to
>>> this report for your information. Any feedback, suggestion will be
>>> appreciated. I mentioned the library, 2 web services, 2 pull-requests, the
>>> ontology, debugging in Android and what needs to be done more(about
>>> integrating into Signal client), basically everything I have done so far.
>>> Additionally, i would love to thank you Mr. Hasan for your technical
>>> support everyday and Mr. Kamaci for all administration stuff. I've seen my
>>> strengths and weaknesses in this project period. Hopefully I will be a
>>> better developer and one day a senior developer like you mentoring
>>> students, juniors. It was a great meeting and working with you. I hope we
>>> will be in  touch for future improvements and ideas.
>>> Best regards!
>>>
>>>
>>> On Thu, Aug 12, 2021 at 2:45 PM Hasan Hasan <xu...@gmail.com>
>>> wrote:
>>>
>>>> Thanks Yusuf for the report.
>>>>
>>>> One important task in this project is to be able to hook into the
>>>> Signal library or client (whatever client you choose). Please provide the
>>>> information in the report as well in this respect. You should especially
>>>> mention
>>>> 1. which client code you are using to place a hook (links to github
>>>> project, etc. where the client code is publicly available)
>>>> 2. the location of the client code where you can place a hook (an
>>>> excerpt of the class and method)
>>>> 3. how the hook is written (post requests to your server)
>>>> 4. whether any extra library you need to make the client works as
>>>> expected
>>>>
>>>> Best regards
>>>> Hasan
>>>>
>>>> On Wed, Aug 11, 2021 at 9:57 AM Yusuf Karadağ <
>>>> yusufkaradag1402@gmail.com> wrote:
>>>>
>>>>> Hello,
>>>>> I'm sending this mail to inform you what has been done in week 8 and 9.
>>>>>
>>>>> *Week 6:*
>>>>>
>>>>>    - I created corresponding methods in the web service to parse the
>>>>>    graph, serialize the graph into a file and build the graph with the
>>>>>    incoming json.
>>>>>    - If the incoming conversation exists, it will overwrite the
>>>>>    conversation and person and will just store the message.
>>>>>    - With the help of Mr. Hasan, we managed to store the messages in
>>>>>    the correct way.
>>>>>
>>>>> *Week 7:*
>>>>>
>>>>>    - I took classes and methods related to Signal and put them into
>>>>>    separate library.
>>>>>    - Mr. Hasan said to remove methods that are not used by the
>>>>>    library. I will do that.
>>>>>    - I will also create another service to make it work with Java 8.
>>>>>    - A Little bit more detailed report is attached to this mail.
>>>>>
>>>>>
>>>>> Best regards!
>>>>>
>>>>> On Wed, Jul 21, 2021 at 10:15 AM Yusuf Karadağ <
>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>
>>>>>> Hello,
>>>>>> I'm sending this mail to inform you what has been done in week 6 and
>>>>>> 7. I realized that i didn't send the report for week 6, i am sorry.
>>>>>>
>>>>>> *Week 6:*
>>>>>>
>>>>>>    - I created a dummy REST service to receive messages from Signal
>>>>>>    clients. (1 GET and 1 POST to see if that's actually working. We've tested
>>>>>>    with Mr. Hasan it's working) with Quarkus. It's a microservice framework
>>>>>>    developed by RedHat.
>>>>>>    - In the Signal Android app, I assign 2 variables for messageText
>>>>>>    and timestamp. And if the message is not empty, send it to the server. Then
>>>>>>    I created a method to send data to the server with Java Http library.
>>>>>>
>>>>>> *Week 7:*
>>>>>>
>>>>>>    - This week we couldn't meet with Mr. Hasan. I assume he was busy.
>>>>>>    - I've changed the input type coming from the client. It was *Map<String,
>>>>>>    String> *before and I've changed it to *ObjectNode*. It's
>>>>>>    basically a representation of a JSON object in
>>>>>> *Jackson Databind library. *
>>>>>>    - Then in the service, I deserialized it to an ObjectNode as
>>>>>>    well. I got the message and timestamp and stored it in a graph as in
>>>>>>    Example 1.
>>>>>>
>>>>>>
>>>>>> Best regards!
>>>>>>
>>>>>> On Thu, Jul 8, 2021 at 8:38 AM Hasan <ha...@apache.org> wrote:
>>>>>>
>>>>>>> Thanks a lot!
>>>>>>>
>>>>>>> Best regards
>>>>>>> Hasan
>>>>>>>
>>>>>>> On Wed, Jul 7, 2021 at 7:48 PM Yusuf Karadağ <
>>>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>>>
>>>>>>>> Hello,
>>>>>>>> I'm sending this mail to inform you what has been done in week 5.
>>>>>>>>
>>>>>>>> *Week 5:*
>>>>>>>>
>>>>>>>>    - Mr. Hasan merged my *pull-request*
>>>>>>>>    <https://github.com/apache/clerezza/pull/21#event-4985268757>
>>>>>>>>    into the CLEREZZA-1068-schemagen
>>>>>>>>    <https://github.com/apache/clerezza/tree/CLEREZZA-1068-schemagen>
>>>>>>>>    branch. He will do a final review and refactoring and then hopefully will
>>>>>>>>    merge to the master.
>>>>>>>>    - Last week I tested my ontology and tried to generate the
>>>>>>>>    class with the *schemagen plugin.* It generated the class
>>>>>>>>    successfully.
>>>>>>>>    - I found out which function Signal Messenger is encrypting and
>>>>>>>>    decrypting the message in android. If you put a breakpoint to line 113, you
>>>>>>>>    can see the message content before encrypting by typing to the evaluator in
>>>>>>>>    Android Studio:* ((EnvelopeContent.Encrypted)
>>>>>>>>    content).content.getDataMessage().getBody(). *And if we put
>>>>>>>>    another breakpoint to the line 156 by typing to the evaluator:  *content.getDataMessage().getBody
>>>>>>>>    *we can see the decrypted message.
>>>>>>>>    - We discussed with Mr. Hasan how I am going to store the
>>>>>>>>    message to the RDF graph. We came up with 2 possible solutions. First one
>>>>>>>>    is to integrate Clerezza into the Android environment and the second one is
>>>>>>>>    to store messages in *libsignal-service-java*
>>>>>>>>    <https://github.com/signalapp/libsignal-service-java> module.
>>>>>>>>    We found the second option more precise.
>>>>>>>>    - This week I will create a web service with one endpoint to
>>>>>>>>    receive message contents that will be sent from
>>>>>>>>    *libsignal-service-java*
>>>>>>>>    <https://github.com/signalapp/libsignal-service-java>* and try
>>>>>>>>    to store them in memory.*
>>>>>>>>    - I also wrote a small documentation about how to debug in
>>>>>>>>    Android Studio and see messages before encrypting and after decrypting.
>>>>>>>> * The report attached to this email. *
>>>>>>>>
>>>>>>>>
>>>>>>>> Best regards!
>>>>>>>>
>>>>>>>> On Tue, Jul 6, 2021 at 8:48 AM Yusuf Karadağ <
>>>>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>>>>
>>>>>>>>> Hi,
>>>>>>>>> Thanks for the resources. I've solved the problem and found the
>>>>>>>>> message encrypting and decrypting in Signal Android. I'll write the report
>>>>>>>>> to this mail after we have the meeting tomorrow.
>>>>>>>>>
>>>>>>>>> Best regards!
>>>>>>>>>
>>>>>>>>> On Tue, Jul 6, 2021 at 7:39 AM Hasan <ha...@apache.org> wrote:
>>>>>>>>>
>>>>>>>>>> Hi Yusuf
>>>>>>>>>>
>>>>>>>>>> Probably these resources can help
>>>>>>>>>>
>>>>>>>>>> https://github.com/signalapp/libsignal-service-java
>>>>>>>>>>
>>>>>>>>>> https://github.com/Turasa/libsignal-service-java
>>>>>>>>>> https://github.com/AsamK/signal-cli
>>>>>>>>>>
>>>>>>>>>> Hasan
>>>>>>>>>>
>>>>>>>>>> On Wed, Jun 30, 2021 at 9:26 AM Yusuf Karadağ <
>>>>>>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>>>>>>
>>>>>>>>>>> Hello Mr. KAMACI,
>>>>>>>>>>> I'm sending this mail to inform you what has been done in week
>>>>>>>>>>> 4.
>>>>>>>>>>>
>>>>>>>>>>> *Week 4:*
>>>>>>>>>>>
>>>>>>>>>>>    - I have fixed a few issues in PR regarding the dependency
>>>>>>>>>>>    version. It's ready to review.
>>>>>>>>>>>    - I have created random data based on the model I have
>>>>>>>>>>>    created. The scenario is: 2 people, 5 messages and 1 conversation. I've
>>>>>>>>>>>    attached the random data and its visualization to this mail.
>>>>>>>>>>>    - I had a look at Signal API and Android client since it's
>>>>>>>>>>>    the only client that's written with Java. I got familiar with the code.
>>>>>>>>>>>    - I had to install Android Studio to debug the application
>>>>>>>>>>>    and try to find where the message is encrypting/decrypting in order to
>>>>>>>>>>>    store them. I'm struggling with debugging because it's massive and the
>>>>>>>>>>>    emulator keeps freezing during debug mode. I will continue debugging this
>>>>>>>>>>>    week and will find out.
>>>>>>>>>>>    - We didn't have a meeting this week so we couldn't discuss
>>>>>>>>>>>    this data and next tasks. But I will dig in a little bit more and will
>>>>>>>>>>>    create a new module.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Best regards!
>>>>>>>>>>>
>>>>>>>>>>> On Wed, Jun 23, 2021 at 9:48 PM Yusuf Karadağ <
>>>>>>>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Hello Mr. KAMACI,
>>>>>>>>>>>> I'm sending this mail to inform you what we have discussed with
>>>>>>>>>>>> Mr. Hasan and what has been done in week 3.
>>>>>>>>>>>>
>>>>>>>>>>>> *Week 3:*
>>>>>>>>>>>>
>>>>>>>>>>>>    - I've updated the PR since Mr. Hasan released new versions
>>>>>>>>>>>>    of jenar parser and serializer.
>>>>>>>>>>>>    - By fixing those bugs with the new release all tutorials
>>>>>>>>>>>>    are working right now. I'll create a new PR for them this week as well.(
>>>>>>>>>>>>    https://github.com/apache/clerezza/pull/21)
>>>>>>>>>>>>    - We've discussed the final model of ontology for signal
>>>>>>>>>>>>    with Mr. Hasan. For now, it seems okay. But if over time I realize sth is
>>>>>>>>>>>>    wrong, i'll refactor it according to need. I've attached the visualization
>>>>>>>>>>>>    of ontology to this mail as well.
>>>>>>>>>>>>    - We've checked my PR for schemagen and ontology plugins.
>>>>>>>>>>>>    It didn't work before because the ontology module was using the old
>>>>>>>>>>>>    dependency. After updating dependency and configurations, we've tried with
>>>>>>>>>>>>    *foaf* ontology and it successfully generated *FOAF.java *as
>>>>>>>>>>>>    expected.
>>>>>>>>>>>>    - I pushed the latest changes to my branch so everything is
>>>>>>>>>>>>    in the PR that I opened.
>>>>>>>>>>>>    - This week I will create some random data with the model I
>>>>>>>>>>>>    designed to get more familiar with RDF concepts.
>>>>>>>>>>>>    - Last but not least, I will have a look and get familiar
>>>>>>>>>>>>    with the Signal API and will try to find where the message is encrypting
>>>>>>>>>>>>    and where it is decrypting in the Signal Android client hopefully.
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Best regards!
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> On Wed, Jun 16, 2021 at 10:13 AM Yusuf Karadağ <
>>>>>>>>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> Hello Mr. KAMACI,
>>>>>>>>>>>>> I'm sending this mail to inform you what we have discussed
>>>>>>>>>>>>> with Mr. Hasan and what has been done.
>>>>>>>>>>>>>
>>>>>>>>>>>>> *Week 1:*
>>>>>>>>>>>>>
>>>>>>>>>>>>>    - Discussed about Signal model ontology.
>>>>>>>>>>>>>    - Discussed about to have an idea about next-steps and
>>>>>>>>>>>>>    milestone.
>>>>>>>>>>>>>    - Discussed about *schemagen* module from legacy branch
>>>>>>>>>>>>>    and pull-request to bring it back to main.
>>>>>>>>>>>>>    - Created model classes for the Signal to take as
>>>>>>>>>>>>>    reference to ontology.
>>>>>>>>>>>>>    - Created some random data to visualize the created model
>>>>>>>>>>>>>    to Neo4J database.
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> *Week 2:*
>>>>>>>>>>>>>
>>>>>>>>>>>>>    - Discussed about the PR i created. Mr. Hasan will open an
>>>>>>>>>>>>>    issue on Jira and i'll commit the changes with the issue name to Jira issue
>>>>>>>>>>>>>    to link them.
>>>>>>>>>>>>>    - I've created an ontology and visualization of it.
>>>>>>>>>>>>>    - We've discussed about the model and made some changes
>>>>>>>>>>>>>    about how the model would look. Changed some property names, types and
>>>>>>>>>>>>>    relationships.
>>>>>>>>>>>>>    - We've looked at to some existing ontologies and see if
>>>>>>>>>>>>>    we can use existing classes from them.
>>>>>>>>>>>>>    - I will have a look deeper to the ontologies and will
>>>>>>>>>>>>>    find the compatible classes with ours.(like skos, foaf etc)
>>>>>>>>>>>>>    - I took some notes abut the new model and will send it
>>>>>>>>>>>>>    through group once i visualize it.
>>>>>>>>>>>>>    - The online tool that i am using for visualization is:
>>>>>>>>>>>>>    http://www.visualdataweb.de/webvowl
>>>>>>>>>>>>>    - I've also asked which syntax should i use while writing
>>>>>>>>>>>>>    the ontology. Mr. Hasan said that doesn't matter but xml is a bit more
>>>>>>>>>>>>>    difficult to read so i'll do it with n-triple or turtle. I'll do some
>>>>>>>>>>>>>    hands-on activity to get familiar with both syntaxes.
>>>>>>>>>>>>>
>>>>>>>>>>>>> I think those were all we've discussed. I'll keep sending you
>>>>>>>>>>>>> emails as a report for what have done and discussed. If you want me to
>>>>>>>>>>>>> write reports according to a template, i can do that too.
>>>>>>>>>>>>> Best regards!
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> --
>>>>>>>>>>>>> Yusuf
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> --
>>>>>>>>>>>> Yusuf
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>> Yusuf
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Yusuf
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Yusuf
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>> --
>>>>>> Yusuf
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Yusuf
>>>>>
>>>>
>>>
>>> --
>>> Yusuf
>>>
>>
>
> --
> Yusuf
>

Re: GSoC Weekly Reports

Posted by Hasan <ha...@apache.org>.
Hi Yusuf

Thanks for the report.
I have one suggestion for improvements. Add a new chapter after the
ontology.
Chapter 2: Implementation Architecture
- An image containing a high level overview of involved components
  - Signal Messaging System (two or more signal clients and one signal
server)
    - Name one of the client Intercepting Signal Client and highlight it
  - Apache Clerezza based Messaging Graph Store Web Service

- A short description of each component (functional description)
  - One of the clients in Signal Messaging System is named Intercepting
Signal Client,
    because it contains some hooks to intercept data flow and interact with
Web Service
  - ...

- You can add a Message Sequence Diagram of the interaction between the
Intercepting Signal Client
  and the Signal Server, showing the data flow interception and the place
of the hooks for both
  incoming as well as outgoing messages

Please send us the new version after you make your changes. I hope you
still have time to make changes
before submission.

Hasan

On Fri, Aug 20, 2021 at 5:11 PM Yusuf Karadağ <yu...@gmail.com>
wrote:

> Dear mentors,
> I've attached the refactored final version of the report for GSoC to this
> report for your information. Any feedback, suggestion will be appreciated.
> I mentioned the library, 2 web services, 2 pull-requests, the ontology,
> debugging in Android and what needs to be done more(about integrating into
> Signal client), basically everything I have done so far. Additionally, i
> would love to thank you Mr. Hasan for your technical support everyday and
> Mr. Kamaci for all administration stuff. I've seen my strengths and
> weaknesses in this project period. Hopefully I will be a better developer
> and one day a senior developer like you mentoring students, juniors. It was
> a great meeting and working with you. I hope we will be in  touch for
> future improvements and ideas.
> Best regards!
>
>
> On Thu, Aug 12, 2021 at 2:45 PM Hasan Hasan <xu...@gmail.com> wrote:
>
>> Thanks Yusuf for the report.
>>
>> One important task in this project is to be able to hook into the Signal
>> library or client (whatever client you choose). Please provide the
>> information in the report as well in this respect. You should especially
>> mention
>> 1. which client code you are using to place a hook (links to github
>> project, etc. where the client code is publicly available)
>> 2. the location of the client code where you can place a hook (an excerpt
>> of the class and method)
>> 3. how the hook is written (post requests to your server)
>> 4. whether any extra library you need to make the client works as expected
>>
>> Best regards
>> Hasan
>>
>> On Wed, Aug 11, 2021 at 9:57 AM Yusuf Karadağ <yu...@gmail.com>
>> wrote:
>>
>>> Hello,
>>> I'm sending this mail to inform you what has been done in week 8 and 9.
>>>
>>> *Week 6:*
>>>
>>>    - I created corresponding methods in the web service to parse the
>>>    graph, serialize the graph into a file and build the graph with the
>>>    incoming json.
>>>    - If the incoming conversation exists, it will overwrite the
>>>    conversation and person and will just store the message.
>>>    - With the help of Mr. Hasan, we managed to store the messages in
>>>    the correct way.
>>>
>>> *Week 7:*
>>>
>>>    - I took classes and methods related to Signal and put them into
>>>    separate library.
>>>    - Mr. Hasan said to remove methods that are not used by the library.
>>>    I will do that.
>>>    - I will also create another service to make it work with Java 8.
>>>    - A Little bit more detailed report is attached to this mail.
>>>
>>>
>>> Best regards!
>>>
>>> On Wed, Jul 21, 2021 at 10:15 AM Yusuf Karadağ <
>>> yusufkaradag1402@gmail.com> wrote:
>>>
>>>> Hello,
>>>> I'm sending this mail to inform you what has been done in week 6 and 7.
>>>> I realized that i didn't send the report for week 6, i am sorry.
>>>>
>>>> *Week 6:*
>>>>
>>>>    - I created a dummy REST service to receive messages from Signal
>>>>    clients. (1 GET and 1 POST to see if that's actually working. We've tested
>>>>    with Mr. Hasan it's working) with Quarkus. It's a microservice framework
>>>>    developed by RedHat.
>>>>    - In the Signal Android app, I assign 2 variables for messageText
>>>>    and timestamp. And if the message is not empty, send it to the server. Then
>>>>    I created a method to send data to the server with Java Http library.
>>>>
>>>> *Week 7:*
>>>>
>>>>    - This week we couldn't meet with Mr. Hasan. I assume he was busy.
>>>>    - I've changed the input type coming from the client. It was *Map<String,
>>>>    String> *before and I've changed it to *ObjectNode*. It's basically
>>>>    a representation of a JSON object in
>>>> *Jackson Databind library. *
>>>>    - Then in the service, I deserialized it to an ObjectNode as well.
>>>>    I got the message and timestamp and stored it in a graph as in Example 1.
>>>>
>>>>
>>>> Best regards!
>>>>
>>>> On Thu, Jul 8, 2021 at 8:38 AM Hasan <ha...@apache.org> wrote:
>>>>
>>>>> Thanks a lot!
>>>>>
>>>>> Best regards
>>>>> Hasan
>>>>>
>>>>> On Wed, Jul 7, 2021 at 7:48 PM Yusuf Karadağ <
>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>
>>>>>> Hello,
>>>>>> I'm sending this mail to inform you what has been done in week 5.
>>>>>>
>>>>>> *Week 5:*
>>>>>>
>>>>>>    - Mr. Hasan merged my *pull-request*
>>>>>>    <https://github.com/apache/clerezza/pull/21#event-4985268757>
>>>>>>    into the CLEREZZA-1068-schemagen
>>>>>>    <https://github.com/apache/clerezza/tree/CLEREZZA-1068-schemagen>
>>>>>>    branch. He will do a final review and refactoring and then hopefully will
>>>>>>    merge to the master.
>>>>>>    - Last week I tested my ontology and tried to generate the class
>>>>>>    with the *schemagen plugin.* It generated the class successfully.
>>>>>>    - I found out which function Signal Messenger is encrypting and
>>>>>>    decrypting the message in android. If you put a breakpoint to line 113, you
>>>>>>    can see the message content before encrypting by typing to the evaluator in
>>>>>>    Android Studio:* ((EnvelopeContent.Encrypted)
>>>>>>    content).content.getDataMessage().getBody(). *And if we put
>>>>>>    another breakpoint to the line 156 by typing to the evaluator:  *content.getDataMessage().getBody
>>>>>>    *we can see the decrypted message.
>>>>>>    - We discussed with Mr. Hasan how I am going to store the message
>>>>>>    to the RDF graph. We came up with 2 possible solutions. First one is to
>>>>>>    integrate Clerezza into the Android environment and the second one is to
>>>>>>    store messages in *libsignal-service-java*
>>>>>>    <https://github.com/signalapp/libsignal-service-java> module. We
>>>>>>    found the second option more precise.
>>>>>>    - This week I will create a web service with one endpoint to
>>>>>>    receive message contents that will be sent from
>>>>>>    *libsignal-service-java*
>>>>>>    <https://github.com/signalapp/libsignal-service-java>* and try to
>>>>>>    store them in memory.*
>>>>>>    - I also wrote a small documentation about how to debug in
>>>>>>    Android Studio and see messages before encrypting and after decrypting.
>>>>>> * The report attached to this email. *
>>>>>>
>>>>>>
>>>>>> Best regards!
>>>>>>
>>>>>> On Tue, Jul 6, 2021 at 8:48 AM Yusuf Karadağ <
>>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>>
>>>>>>> Hi,
>>>>>>> Thanks for the resources. I've solved the problem and found the
>>>>>>> message encrypting and decrypting in Signal Android. I'll write the report
>>>>>>> to this mail after we have the meeting tomorrow.
>>>>>>>
>>>>>>> Best regards!
>>>>>>>
>>>>>>> On Tue, Jul 6, 2021 at 7:39 AM Hasan <ha...@apache.org> wrote:
>>>>>>>
>>>>>>>> Hi Yusuf
>>>>>>>>
>>>>>>>> Probably these resources can help
>>>>>>>>
>>>>>>>> https://github.com/signalapp/libsignal-service-java
>>>>>>>>
>>>>>>>> https://github.com/Turasa/libsignal-service-java
>>>>>>>> https://github.com/AsamK/signal-cli
>>>>>>>>
>>>>>>>> Hasan
>>>>>>>>
>>>>>>>> On Wed, Jun 30, 2021 at 9:26 AM Yusuf Karadağ <
>>>>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>>>>
>>>>>>>>> Hello Mr. KAMACI,
>>>>>>>>> I'm sending this mail to inform you what has been done in week 4.
>>>>>>>>>
>>>>>>>>> *Week 4:*
>>>>>>>>>
>>>>>>>>>    - I have fixed a few issues in PR regarding the dependency
>>>>>>>>>    version. It's ready to review.
>>>>>>>>>    - I have created random data based on the model I have
>>>>>>>>>    created. The scenario is: 2 people, 5 messages and 1 conversation. I've
>>>>>>>>>    attached the random data and its visualization to this mail.
>>>>>>>>>    - I had a look at Signal API and Android client since it's the
>>>>>>>>>    only client that's written with Java. I got familiar with the code.
>>>>>>>>>    - I had to install Android Studio to debug the application and
>>>>>>>>>    try to find where the message is encrypting/decrypting in order to store
>>>>>>>>>    them. I'm struggling with debugging because it's massive and the emulator
>>>>>>>>>    keeps freezing during debug mode. I will continue debugging this week and
>>>>>>>>>    will find out.
>>>>>>>>>    - We didn't have a meeting this week so we couldn't discuss
>>>>>>>>>    this data and next tasks. But I will dig in a little bit more and will
>>>>>>>>>    create a new module.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Best regards!
>>>>>>>>>
>>>>>>>>> On Wed, Jun 23, 2021 at 9:48 PM Yusuf Karadağ <
>>>>>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>>>>>
>>>>>>>>>> Hello Mr. KAMACI,
>>>>>>>>>> I'm sending this mail to inform you what we have discussed with
>>>>>>>>>> Mr. Hasan and what has been done in week 3.
>>>>>>>>>>
>>>>>>>>>> *Week 3:*
>>>>>>>>>>
>>>>>>>>>>    - I've updated the PR since Mr. Hasan released new versions
>>>>>>>>>>    of jenar parser and serializer.
>>>>>>>>>>    - By fixing those bugs with the new release all tutorials are
>>>>>>>>>>    working right now. I'll create a new PR for them this week as well.(
>>>>>>>>>>    https://github.com/apache/clerezza/pull/21)
>>>>>>>>>>    - We've discussed the final model of ontology for signal with
>>>>>>>>>>    Mr. Hasan. For now, it seems okay. But if over time I realize sth is wrong,
>>>>>>>>>>    i'll refactor it according to need. I've attached the visualization of
>>>>>>>>>>    ontology to this mail as well.
>>>>>>>>>>    - We've checked my PR for schemagen and ontology plugins. It
>>>>>>>>>>    didn't work before because the ontology module was using the old
>>>>>>>>>>    dependency. After updating dependency and configurations, we've tried with
>>>>>>>>>>    *foaf* ontology and it successfully generated *FOAF.java *as
>>>>>>>>>>    expected.
>>>>>>>>>>    - I pushed the latest changes to my branch so everything is
>>>>>>>>>>    in the PR that I opened.
>>>>>>>>>>    - This week I will create some random data with the model I
>>>>>>>>>>    designed to get more familiar with RDF concepts.
>>>>>>>>>>    - Last but not least, I will have a look and get familiar
>>>>>>>>>>    with the Signal API and will try to find where the message is encrypting
>>>>>>>>>>    and where it is decrypting in the Signal Android client hopefully.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Best regards!
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Wed, Jun 16, 2021 at 10:13 AM Yusuf Karadağ <
>>>>>>>>>> yusufkaradag1402@gmail.com> wrote:
>>>>>>>>>>
>>>>>>>>>>> Hello Mr. KAMACI,
>>>>>>>>>>> I'm sending this mail to inform you what we have discussed with
>>>>>>>>>>> Mr. Hasan and what has been done.
>>>>>>>>>>>
>>>>>>>>>>> *Week 1:*
>>>>>>>>>>>
>>>>>>>>>>>    - Discussed about Signal model ontology.
>>>>>>>>>>>    - Discussed about to have an idea about next-steps and
>>>>>>>>>>>    milestone.
>>>>>>>>>>>    - Discussed about *schemagen* module from legacy branch and
>>>>>>>>>>>    pull-request to bring it back to main.
>>>>>>>>>>>    - Created model classes for the Signal to take as reference
>>>>>>>>>>>    to ontology.
>>>>>>>>>>>    - Created some random data to visualize the created model to
>>>>>>>>>>>    Neo4J database.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> *Week 2:*
>>>>>>>>>>>
>>>>>>>>>>>    - Discussed about the PR i created. Mr. Hasan will open an
>>>>>>>>>>>    issue on Jira and i'll commit the changes with the issue name to Jira issue
>>>>>>>>>>>    to link them.
>>>>>>>>>>>    - I've created an ontology and visualization of it.
>>>>>>>>>>>    - We've discussed about the model and made some changes
>>>>>>>>>>>    about how the model would look. Changed some property names, types and
>>>>>>>>>>>    relationships.
>>>>>>>>>>>    - We've looked at to some existing ontologies and see if we
>>>>>>>>>>>    can use existing classes from them.
>>>>>>>>>>>    - I will have a look deeper to the ontologies and will find
>>>>>>>>>>>    the compatible classes with ours.(like skos, foaf etc)
>>>>>>>>>>>    - I took some notes abut the new model and will send it
>>>>>>>>>>>    through group once i visualize it.
>>>>>>>>>>>    - The online tool that i am using for visualization is:
>>>>>>>>>>>    http://www.visualdataweb.de/webvowl
>>>>>>>>>>>    - I've also asked which syntax should i use while writing
>>>>>>>>>>>    the ontology. Mr. Hasan said that doesn't matter but xml is a bit more
>>>>>>>>>>>    difficult to read so i'll do it with n-triple or turtle. I'll do some
>>>>>>>>>>>    hands-on activity to get familiar with both syntaxes.
>>>>>>>>>>>
>>>>>>>>>>> I think those were all we've discussed. I'll keep sending you
>>>>>>>>>>> emails as a report for what have done and discussed. If you want me to
>>>>>>>>>>> write reports according to a template, i can do that too.
>>>>>>>>>>> Best regards!
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>> Yusuf
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Yusuf
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Yusuf
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Yusuf
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Yusuf
>>>>>>
>>>>>
>>>>
>>>> --
>>>> Yusuf
>>>>
>>>
>>>
>>> --
>>> Yusuf
>>>
>>
>
> --
> Yusuf
>