Microsoft Word - 09_Andranik's article_74--78.doc Mathematical Problems of Computer Science 49, 74--78, 2018. 74 Unimail Info-Communicational Software Andranik E. Mkhitaryan, Aram S. Nanassian and Eduard Z. Matveev Institute for Informatics and Automation Problems of NAS RA e-mail: and.mkhitaryan@gmail.com, ananas@sci.am, edo.matveev1996@mail.ru Abstract In this paper, the design and features of the independent info- communicational software resource are presented based on e-mail and SMS technologies, named Unimail. The components of the server and their responsibilities are also considered. Peculiarities of the Unimail’s architecture and principles of workflow are discussed. Acceptable commands and configuration details are described for users. Keywords: Unimail, info-communication, mail2sms, e-mail, SMS, Notification. 1. Introduction E-mail and SMS are world-spread info-communicational technologies. E-mail provides an exchange mechanism of text messages between computers via the Internet. Despite the fast delivery of the message to the addressee, email is a typical "on demand" system. Another mechanism to send/receive text messages is SMS. However, it has several disadvantages that are listed below: • the size of the transmitted message is limited, • message delivery is possible only in the coverage area of the cellular network or according to the roaming agreements of the local cellular operator. Despite its disadvantages, SMS technology has an undeniable advantage - the messages are being delivered directly to the “pocket” of the addressee (mobile subscriber). The most important disadvantages of e-mail and SMS can be solved by combined use of both technologies [1][2]. The limitation of the size of message as in case of SMS will be overcome by e-mail and the problem of “on demand” of e-mail will be overcome by SMS [3]. 2. Unimail Software Unimail is an independent software product designed and implemented by the Institute for Informatics and Automation Problems of NAS RA. With the use of both SMS and e-mail technologies, Unimail gives possibility to the e-mail users to send an informative SMS notification in parallel to the letter to the addressee. The initiator of sending notification for this A. Mkhitaryan, A. Nanassian and E. Matveev 75 system is the sender of the e-mail message, which makes it unique and different from the existing instances. The structure of Unimail (Figure 1) consists of three general components. The first part is responsible for sending and receiving e-mails. Unimail has its own mail server (SMTP), and there is a separated block, which provides functionality to communicate with that server. The second section is responsible for working with GSM network. As a part of Unimail there also is a GSM modem. The independent block provides the ability to control GSM modem. In general, Unimail uses the modem to send SMS messages/notifications. The third section – the general one, is the core of Unimail software, which is responsible for the main logic. The components of Unimail core are described in Figure 2. It consists of seven different subsections. The received e-mails at first are being filtered by the following steps:  Acceptable and correct command exists in the subject of the e-mail  Addressee has not blocked the services of Unimail  Addressee’s black/white lists allow the sender to notify him by Unimail  The specified phone number (in commands where phone number is required) is a valid number from the current regional cellular network. Fig. 2. Main components of Unimail software. Fig. 1. Structure of Unimail server. Unimail Info-Communicational Software 76 By design, Unimail should work server side. As an optimal solution, it is being run as a service to avoid using additional resources. It is repetitively requesting for new e-mails from the mail server and is storing them for further processing. In case there is a new e-mail, it will go through the mail filter. Usually there are lots of spam and useless e-mails in mailbox. There are several requirements that each mail should satisfy to pass the filtering process. First, it should contain a command in the subject. In case the subject does not contain any command, or the command is specified incorrectly, the mail will be ignored by Unimail. For the monitoring of Unimail the informative logging mechanism on standard ‘/var/log/unimail’ directory is implemented. Figure 2 presents the software in action by logs. In the logs the current operations of the server are presented. For this specific case the user has sent an e-mail message to two addressees and Unimail notifying them by SMS. This is a usual lifecycle of the server. It filters all the inbox messages, then finds out if there is an e-mail satisfying the requirements. In the subject of that e-mail there is a command that notifies the addressees about the e-mail sent. Unimail sends notifications one by one and checks the results. 3. Basic Functions of UNIMail-ASNET To use any service of Unimail, the users should send (To / CC / BCC) a copy of the e-mail to the address of the server - unimail@unimail.asnet.am. To send an SMS notification in parallel to an e-mail to the addressee, in the subject there should be specified a list of phone numbers with asterisks (Subject: **). Similar markers could also be used on the body of e-mail to append the mentioned part to the SMS message (Body: **). The selected fragment should not exceed 110 characters, including spaces. If there is no selected fragment, a standard notification will be sent by SMS. As a result, the addressee will receive an SMS in format: “UniMail: You got email from :
” In case there is no e-mail address specified in To, CC or BCC fields of the received e-mail, except for the address of the server, then just the SMS message will be sent to the specified phone numbers instead of the notification. To summarize, for this specific case, Unimail allows to send SMS via e-mail. The initiator of notifying about the e-mail is the sender. However, the receiver should have an opportunity to control the list of people who are permitted to send him SMS notifications. To be able to control the lists, the user should tie his phone number with a personal email address. For this configuration, Unimail requires a simple registration:  To: unimail@unimail.asnet.am Fig. 3. Output log file of Unimail. A. Mkhitaryan, A. Nanassian and E. Matveev 77  Subject: *reg: * After sending the e-mail, an SMS containing a randomly generated 4 or 5-digit number will be sent to the specified phone number. The user should send that number back to the server from the same e-mail address:  To: unimail@unimail.asnet.am  Subject: ** Once the registration is complete, the user’s e-mail address and phone number will be paired. The next operations are allowed for the registered users only. Unimail supports two well-known systems of controlling permitted lists, i.e., black and white lists. Any registered user can choose the appropriate type of control. By default, the mode being chosen is “a black list” mode. To change the mode the user should send an e-mail to the address of the Unimail server with subject:  For switching to “white list” mode: o *use white list *  For switching to “black list” mode: o *use black list * To include or exclude someone in/out of the black or white lists, the user should send an e-mail to the same e-mail address with the following indicators:  Subject: o *add white/black list * o *del white/black list *  Body: o * / , / , …* The registered user can also block/unblock all the services provided by Unimail by sending an e- mail with subject:  * block sms *  * unblock sms * 4. Conclusion Unimail is an info-communication autonomous software resource, which allows you to send SMS notifications in parallel to the e-mail. It uses a unique approach when the initiator of notification is the sender, who considers his e-mail to be important enough. At the same time, the receiver can easily control the list of people who are permitted to send him notifications. Receivers can even turn off all the services provided by Unimail. To sum up, Unimail provides a complete package to control notification system of both senders and receivers. It operates with any e-mail provider and can notify anyone from the regional cellular network. References [1] Д. Геворкян, А. Нанасян, К. Хачатрян, «Новые WEB ресурсы ASNET.AM», Proceedings of International Conference of Computer Science and Information Technօlogies, CSIT-2011, Ереван, pp. 311-312, 2011. Unimail Info-Communicational Software 78 [2] D. Gevorkyan, K. Khachatryan, A. Nanassian, A. Petrosyan, G.Petrosyan, V. Sahakyan and E. Vardanyan, “Mail informer- selective incoming instant phone notification system”, Proceedings of International Conference Computer Science and Information Technologies, CSIT, Yerevan, Armenia, pp. 466-467, 2009. [3] А. Нанасян и К. Хачатрян «Mail2sms.asnet.am – система оповещения о входящих письмах», Proceedings of International Conference of Computer Science and Information Technologies CSIT-2013. Ереван, 2013. [4] А. Мхитарян, Э. Матвеев, А. Нанасян, В. Саакян и A. Petrosyan, “Гибридная инфокоммуникационная email/sms система UNIMail”, Proceedings of International Conference of Computer Science and Information Technologies, CSIT, Yerevan, Armenia, pp. 389-391, 2017. Submitted 22.11.2017, accepted 12.02.2018. UNIMail-ի տեղեկատվական հաղորդակցման համակարգի ծրագրային ապահովում Ա. Մխիթարյան, Ա. Նանասյան և Է. Մատվեև Ամփոփում Աշխատանքում ներկայացված են SMS և email տեխնոլոգիաների վրա հիմնված տեղեկատվական հաղորդակցման անկախ ծրագրային ռեսուրսը՝ Unimail անվամբ, Unimail սերվերի առանձին մասերը և դրանց պարտականությունները։ Դիտարկվել են Unimail-ի կառուցվածքային առանձնահատկությունները և աշխատանքի սկզբունքները։ Նկարագրված է հրամանների ցանկը և կարգավորումների մանրամասները օգտատերերի համար։ Программная поддержка инфо- коммуникационной системы UniMail А. Мхитарян, А. Нанасян и Э. Матвеев Аннотация Инфокоммуникационная система UNIMail - независимый аппаратно- программный ресурс на основе технологий электронной почты и SMS. Приведены функциональные компоненты сервера UNIMail. Обсуждаются особенности архитектуры и принципы работы, базовые команды системы.