OpenTl.Server — the server-side implementation of the messenger

Good afternoon, today I want to present you an OpenTl Project, which will be developed in real-time. OpenTl.Server is an attempt to create an open instant messenger that supports encryption between clients that support the open API Telegram messenger.



The development of the project will be divided into 3 parts:

the

    OpenTl.Server. In project you can find all the server-side implementation Manager. This stream just about it.

    OpenTl.ClientApi. implementing an API for access to the OpenTl messenger, and Telegram.

    OpenTl.Schema. the Implementation of contracts between the client and server.


Logic OpenTl.Server will be divided into 2 parts:

the

    OpenTl.Server.Front is responsible for connecting clients and routing requests. Use the library DotNetty

    OpenTl.Server.Back is responsible for handling client requests. Use the library Orleans


The project is developed in dotnet core C# language. Supported .4.6.1 net (in the absence of the library's port Orleans on dotnet core)

Used technologies and libraries:

the
    the
  • core dotnet 1.1
  • the
  • DotNetty 0.4.5
  • the
  • Orleans 1.4.x
  • the
  • Autofac 4.6.x
  • the
  • xUnit.net 2.x
  • the
  • IDE and plug-ins
  • the
  • Basic IDE on the mood or Visual Studio 2017 + JetBrains Resharper or JetBrains Rider
  • the
  • Basic editor the Visual Studio Code
  • on the Git client SmartGit


The broadcast will be held in the training mode, you can ask questions and see all records.

This project is suitable for those who are interested in the C# language, seeks to understand the depth .Net and is not afraid of difficult tasks. There will be a lot as practice and theory. The project will be reviewed to detail the architecture of server applications.

In order to better grasp the information you will need:

the
    the
  • knowledge of C# \ .Net is not less than the level of middle developer
  • the
  • OOP (where the same without him)
  • the
  • basic working knowledge of Git
  • the
  • Knowledge of basic design patterns
  • the
  • SOLID, at least why IoC

About the author: Victor, 29 years, including 8 years of experience in commercial software development on the platform .Net. Working in the company BARS group as head of the development Department. Lives in Novosibirsk, Russia. All projects can be found on GitHub.

Broadcast out every Friday at 16: 00 MSK

Schedule:

the

    2 Jun 16:00 overview of the project. Architectural overview

    9 Jun 16:00 creates a relationship between the Front and Back servers

    23 Jun 16:00 implementation of the Protocol MTProto. Part 1

    30 June 16:00 implementation of the Protocol MTProto. Part 2

    7 July 16:00 implementation of the Protocol MTProto. Part 3

    14 Jul 16:00 Implementation of authentication. Part 1

    21 Jul 16:00 Implementation of authentication. Part 2


~~To be continued~~

Broadcast of the project and the recording will be available here.
Article based on information from habrahabr.ru

Комментарии

Популярные сообщения из этого блога

Performance comparison of hierarchical models, Django and PostgreSQL

google life search

Transport Tycoon Deluxe / Emscripten part 2