📜 ⬆️ ⬇️

Personal experience of creating a reference information center based on Kiosk (or terminal) with a touch panel

The article will talk about:
  1. What and how it works.
  2. Some moments of setting up such a device on openSUSE 11.3.
  3. Some points related to the creation of the interface (web interface).
  4. My point of view on the topic “Why some system administrators, sometimes, need to do such things, despite the fact that it was possible to hire a company and“ do not soar ””.

I admit right away - it all works through the web interface.



So, we have a kiosk or terminal on the one hand and a task on the other.
')
Task. There is a retail network of bla-bla-bla and cosmetics, expensive cosmetics. The task of the terminal is to stand on the trading floor and help sales consultants and / or customers. That is, all products are categorized, the client or consultant chooses what he needs, and gets a list of the desired items. This was the statement of the task from the management. From myself it was added:

Iron itself. The same as mobile top-ups in crowded places, but an order of magnitude neater and without a bill acceptor. Made by some company that has a welder, a can of paint and a disk with windows xp. But I must admit, it was done with high quality and with soul. Onboard the Intel Atom, 1 GB of RAM, a tightly screwed monitor, and an overlay like Touch Kit (it is the touch panel).

UPD. Fotik is not there, yet. It is called CK-I / P-1. The cost is about $ 2,000.

1. What and how it works

The whole network works on the yellow program version 7.7, with a very sensible specific configuration. Everything works like a star, there is a warehouse that sees everyone, all the remnants and movements. The points work each with its own base, I reset the information once in n minutes about myself (checks, information about received invoices, etc.). And here's the problem - the structure of the database does not correspond to the new task. It would be possible to add several fields and pull data through the web interface, but somehow I did not want to. I would have to add new processing, sculpt the web part, etc.
I rummaged around a bit on the Internet and found an interesting component for joomla - VirtueMart , which was completely suitable for the task. Namely:

The solution and the whole process of work turned out like this:
First, I made a service category like “New product”, which is not public , that is, they are not displayed in the front-end. Next sync. MS-SQL uploads the entire directory to the csv file (approximately 40,000 positions), but uploads only two fields — a certain code and a name. Code is not an id, but it is unique, and contains only numbers. Then cron runs the script and delays it all in MySQL. This is where “service” categories came in handy. In the “new product” get only new positions, all others are ignored. It is necessary to unload the entire directory, because sometimes they can change the name, you need to check two directories, find all new and changed products. If the product is renamed then delete from all categories. Managers see a new product, add descriptions and assign categories.
And then all the delights of CMS - cross-platform, users, fields for pictures, descriptions, etc ...
Synchronization is also carried out on the residuals, the code and the sum of residuals across all branches are merged into the same csv file, if more than zero, then the button “search by branches” becomes available. There is already a query in MS-SQL, which displays the result in the form of a beautiful plate - where and how much is this product.

Facilities in this bundle:


2. Some moments of setting up such a device on openSUSE 11.3

Since winxp was not white and fluffy, and even with a couple of Trojans on board, it was decided to put something Linux. The choice fell on opensuse because I work with him and I know him. Although there are a lot of distributions for such a task, but according to reviews they did not cause confidence.
So the surprise from openSUSE - to know does not know how to work with the panel. On Windows, there was a utility and a driver from eGalaxTouch, I found it for Linux - the panel came to life, but it was dull, the axes were mixed up, and only half were working, did not respond to the settings.
After googling, I found the evtouch driver (x11-input-evtouch.rpm). The panel came to life again, but working with it is still not possible. I had to do the calibration manually. Something like this I got the config:

Section "InputClass"
Identifier "touchscreen"
MatchIsTouchscreen "On"
MatchDevicePath "/dev/input/event*"
Driver "evtouch"
Option "Rotate" "CW"
Option "SwapX" "1"
Option "SwapY" "1"
Option "MinX" "380"
Option "MinY" "200"
Option "MaxX" "1560"
Option "MaxY" "1550"
Option "ReportingMode" "Raw"
EndSection


If someone tells you in which units the value of Min - Max will be very grateful.

Next, I had to run firefox 3.6 on full screen. But here, too, there was a problem, on gnome and kde the browser in full screen mode was terribly slow. I remembered the lxde, which really turned out to be very light, the brakes were gone, and indeed the system became livelier. Firefox required a few more things - it would start automatically on the same full screen, remove all panels, buttons, etc., and then few people will have playful pens. And the last thing is to go to the start page with idle time of n minutes. It is solved by two extensions - fullfullscreen (which makes it clear from the name, plus removes all panels, menus, etc.), and ResetKiosk - when idle, n minutes goes to the home page.
It's all here.

3. Some points related to the creation of the interface (web interface)

My conclusions on this subject, which may save someone time:

After I redid it, it became much more comfortable for me to work. We immediately see where the controls are, and where the design elements are, and immediately I understand what I clicked.

But with the web interface there was another misfortune. Either my fingers are not right, or the panel is too sensitive, in general I don’t know why, but it was terribly inconvenient to press. The fact is that firefox allows all the elements to “drag and drop”, and when pressed, in half of the cases, an attempt is made to drag the element. Ugly, and the link does not go. Here jquery came in handy. With it, I screwed the jcarousel to scroll the contents (it turned out very nicely), and here it came in handy:

 <script type="text/javascript" >                          $(document).bind("dragstart", function() {                      return false;                                                 }); </script> 


I found this solution somewhere on the forum, but after that ... The result was a straight iPad, everything is pressed clearly and pleasantly.

A little out of topic, but I want to speak.

4. My point of view on the topic “Why some system administrators sometimes need to do such things, despite the fact that it was possible to hire a company and“ do not soar ””

Working as a system administrator in a non-core company, from time to time you have to do something else but your job. Often it is annoying, and sometimes it is necessary to do it, for example, to justify yourself in the workplace in front of your superiors. I will try to explain.

Who is interested in backups, domain controllers, bases, etc. ... When everything works stably for a long time, conversations like “Sit down, look at the monitor, do nothing, and get paid”. In general, no one is interested, and they do not understand what needs to be redone and where, because when they were in a hurry, they did so quickly, that the company is growing very quickly, and I try to keep up, predict the growth of databases, increase traffic, knock out new equipment etc. and so on ... Yes, and a sapport 24/7 for all sorts of aunts who, until retirement, have a little bit left. This situation is probably familiar to many, alas, I can not change anything, there are few specialized organizations, and they all cope without administrators.

And I think that the root of the problem is that people who are not understanding just do not see our work, therefore, there is disagreement. The loader, it is clear that it works, there was cement in the car - it became in stock, this is work, and we press buttons.
I am pleased with my leadership, sometimes, by the work you see, several Internet services for your employees, not complicated, for a week of work, and they love me very much, and they raise my salary. Made a help center, again love and gave the award.
My conclusion is that they need to be understood, and sometimes give what they want.

Source: https://habr.com/ru/post/122414/


All Articles