Allekirjoita Navalnyn nimitys. Skannaus passistasi jokaista allekirjoitusta varten. Synkronointi sähköisen tietokannan kanssa

Kopioi iframe

Navalnyia ei rekisteröity, Sobtšak kerää allekirjoituksia, ja Vladimir Putin jopa jättää huomiotta aloiteryhmänsä. Venäjällä on presidentinvaaleihin asti alle kolme kuukausia ja on jo enemmän tai vähemmän selvää, miltä äänestysliput näyttävät.

43 presidenttiehdokasta. 18 puolueen ehdokasta, 25 itse asettuneet ehdokkaat presidentiksi ja Vladimir Putinin suurimman poliittisen vastustajan, poliitikko Aleksei Navalnyn poissaololle. Välitulokset kasvavasta Venäjän poliittisesta kampanjasta No1.

PIETARIN ASIAKKAAT

"Jos Navalnyi olisi hyväksytty eilen, Äänestäisin häntä, koska häntä ei sallittu, en tiedä tai menenkö, mutta nyt minä Minun on päätettävä kenen puolesta tai en mene."

"Olisi mielenkiintoista, jos hän osallistuisi, olisi mahdollisuus näyttää Žirinovskille, että hänen oli aika lähteä, koska Navalnyilla oli mahdollisuus tulla toiseksi."

"Tässä on kaksijakoinen tilanne, koska toisaalta on laki, toisaalta kaikilla pitäisi olla yhtäläiset mahdollisuudet, en tiedä, no, en todellakaan pidä Navalnysta."

Päivää aiemmin Venäjän keskusvaalilautakunta kieltäytyi virallisesti rekisteröimästä Navalnyia presidenttiehdokkaaksi. Keskusvaalilautakunnan mukaan poliitikolla ei ole oikeutta asettua ehdolle rikosrekisterinsä vuoksi Kirovles-tapauksessa. Keskusvaalilautakunnan kieltäytymisen jälkeen Navalny kehotti kannattajiaan boikotoimaan maaliskuun vaaleja.

"Keskusvaalilautakunnan päätös olla sallimatta minua osallistua vaaleihin sulkee miljoonia ihmisiä näistä vaaleista, sulkee miljoonia ihmisiä vaalien ulkopuolelle. poliittinen järjestelmä, koska se ei anna heille lainkaan mahdollisuutta osallistua vaaleihin, ja päätöksesi koskee juuri tätä”, Aleksei Navalny sanoi.

Dozhdin TV-juontaja Ksenia Sobchak puolestaan ​​sai rekisteröinnin. Se tulee Kansalaisaloite-puolueelta, jolla ei ole paikkoja valtionduumassa ja jonka on siksi kerättävä vähintään 100 tuhatta allekirjoitusta 7. tammikuuta mennessä. Sobtsak on jo kutsunut Navalnyn uskottavakseen.

”Meillä on jo 50 pääkonttoria eri puolilla Venäjää, minulla on suunnitteilla suuri määrä matkoja kaupunkeihin. Menin jo ja avasin osan päämajasta, ja meillä on siellä kiire”, Sobchak sanoi.

Mitä tulee pääehdokkaaseen ja nykyiseen presidenttiin, Vladimir Putin ei edes saapunut aloiteryhmänsä kokoukseen. Putinin lehdistösihteeri Peskov viittasi presidentin kiireiseen aikatauluun ja sanoi, että Navalnyn boikotointikehotuksia "on tutkittava lain noudattamiseksi".

Samanaikaisesti asiantuntijat eivät näe mahdollisuutta laajalle protestille, tulokset ovat ennalta määrättyjä, sanoo Alexander Konfisakhor.

"Odotamme, että se, joka voittaa, voittaa. Kuvittelemme, minkä tuloksen hän saa aikaan näissä vaaleissa. Toisin sanoen odotettujen ja todellisten tapahtumien välillä ei ole dissonanssia. Ja on erittäin vaikeaa saada ihmisiä protestoimaan, kun ei ole syytä tai syytä protestoida", sanoi Pietarin osavaltion yliopiston poliittisen psykologian laitoksen apulaisprofessori Alexander Konfisakhor.

Bloggaaja ja liikemies Pavel Grudinin on ehdolla Venäjällä kommunistien vaaleissa. LDPR- ja Yabloko-puolueet päättivät olla vaihtamatta hevosia risteyksessä Zhirinovski ja Yavlinsky. Mutta lähes viidestäkymmenestä presidenttiehdokkaasta huolimatta esimerkiksi Ranskan presidentti on jo suunnitellut tapaamisen Putinin kanssa, joka järjestetään maaliskuun 18. päiväksi ilmoitettujen vaalien jälkeen.

Kampanja +1. Keräämme 1 000 000 allekirjoitusta

​Ehdokkaan asettamiseen tarvittavien 300 000 allekirjoituksen keräämiseksi presidentinvaalit vuonna 2018 se kesti 4 kuukautta. Meidän uusi tavoite- miljoona, ja käynnistämme "+1" -kampanjan.

Venäjän federaation lakien mukaan rekisteröityäkseen presidenttiehdokkaaksi hakijan on toimitettava keskusvaalilautakunnalle 300 000 vahvistettua allekirjoitusta, jotka on kerättävä erittäin nopeasti. Lyhytaikainen. Keräykseen on varattu vain 40 päivää, ja meidän tapauksessamme - vielä vähemmän, koska nämä 40 päivää kuuluvat uudenvuoden lomat. Itse asiassa tämä on toinen viranomaisten luoma keinotekoinen este. Lisäksi allekirjoituksia on kerättävä maan 40 alueella - enintään 7 500 jokaiselta Venäjän federaation subjektilta.


Kuva: Evgeny Feldman

Jotta voimme toimittaa tarvittavat 300 000 CEC:lle ajoissa, meidän on tiedettävä, että kaikilla alueilla, joilla pääkonttorimme avataan, voimme luottaa 7 500 allekirjoitukseen. Ja että ne kerätään täsmälleen ajoissa ja täysin menettelyn mukaisesti.

Ne ehdokkaat, jotka Kreml haluaa nähdä vaaleissa, ottavat allekirjoituksiksi leikatun paperin, olemme nähneet tämän useammin kuin kerran. Allekirjoituksiamme tarkastellaan mikroskoopin alla

Aleksei Navalny


Kuva: Evgeny Feldman

Todennäköisesti CEC tutkii Navalnyin päämajan toimittamia allekirjoituksia erityisen huolellisesti - siksi meidän on vakuutettava itsemme mahdollisimman paljon ja kerättävä paljon enemmän kuin pöytäkirjassa määrätään. Keräämme sähköpostiosoitteiden lisäksi myös puhelinnumeroita ja lyhyitä profiileja kaikilta, jotka ovat valmiita tukemaan Aleksei Navalnyn nimitystä. Tämä tehdään, jotta tiedämme tarkalleen, millä alueilla kannattajamme ovat ja kuinka paljon heitä on.

Ympärilläsi on meri ihmisiä, jotka haluavat tukea itsenäistä opposition ehdokasta. Ainakin kilpailusyistä vaaleissa. Jopa zaputinilaiset kannattavat kilpailua ja haluavat nähdä riippumattomia ehdokkaita äänestyksessä

Aleksei Navalny


Seuraava tavoitteemme on miljoona allekirjoitusta, mikä takaa meille vuoden lopussa tarvitsemamme 300 000 allekirjoitusta. Tätä varten käynnistämme "+1" -kampanjan ja kehotamme kaikkia sivustolle jo rekisteröityneitä vakuuttamaan vähintään yhden henkilön rekisteröitymään. Tai vielä parempi, kaksi tai viisi - ja sitten vaadittu miljoona saavutetaan kesään mennessä.

Nyt tarvitsemme todella apuasi. Käytä 10-15 minuuttia aikaasi ja kannusta ystävääsi, sukulaistasi tai työtoveriasi allekirjoittamaan.


Kuva: Evgeny Feldman

Kirjoita kirje tai viesti useille ystäville sosiaalisessa mediassa:
"Hei. Allekirjoitin Navalnyn nimityksen ehdokkaaksi. Voisitko toimittaa sen myös? Se tulee olemaan oikein"

Aleksei Navalny

Ne 385 531 ihmistä, jotka ovat jo ilmoittautuneet, ovat valtava voima. Otetaan siitä kaikki irti. Liity +1-kampanjaan.

Pietari, Mars-kenttä, 17. joulukuuta 2017: 1 797 ihmistä äänesti Navalnyn nimittämistä Venäjän federaation presidenttiehdokkaaksi pohjoisessa pääkaupungissa Kuva: Twitter / @teamnavalny

Allekirjoitusten kerääminen Aleksei Navalnyn nimittämiseksi presidentiksi tapahtui Pietarissa, Marsin kentällä. Nevan myrskytuulesta huolimatta oppositiopoliitikkoa äänesti puolentoista tunnin sisällä noin kaksituhatta kärsivällisesti jonossa seisonutta ihmistä. Lain mukaan vain 500 allekirjoitusta olisi riittänyt, joten normi ylittyi lähes neljä kertaa.

Champ de Marsin keskelle Pietarin kaikkien oppositiotoimien jatkuvat seuralaiset kokoontuivat - iloiset nodoviitit avasivat musta-oranssiraitaisia ​​lippujaan ja laittoivat ne päälle vahvistimien kautta. isänmaallisia lauluja. "Nouse, valtava maa..." huudahti Navalnyin kannattajia hajallaan kentällä olevien pöytien luo.

Jäätyneet kansalaiset kokoontuivat ikuisen liekin lähelle ja keskustelivat siitä, mitä oli tapahtumassa. Joku otti ulos tulosteen Putinin vaalilupauksista vuonna 2000 ja luki äänekkäästi kohtia vallan ja liiketoiminnan välisestä etäisyydestä, lehdistönvapaudesta... "Unohtuiko hän lupauksensa?" - naiivin nuoren naisen ääni kirjaimellisesti hukkui yleiseen nauruun.

"Jostain syystä emme näe notaaria täällä! - kommentoi toimittajalle hämmästyneenä NT Champ de Mars -tapahtumat Oleg Zatsepa, kaupunginvaalilautakunnan äänivaltainen jäsen. "Järjestäjät väittävät, että hän suorittaa tekonsa myöhemmin jälkikäteen, mutta tämä ei ole vielä fakta!"

"Notaari voi sitten hyväksyä listat videolla", Navalnyn Pietarin pääkonttorin johtaja Denis Mihailov selitti tilannetta. - Laki ei edellytä notaarin läsnäoloa täällä, hän voi todistaa tekemämme protokollavideon avulla. Vahvistamme myös rekisteröintilomakkeet ja lähetämme ne CEC:lle. Ja notaarin tuomiseksi tänne (tarvitset) puolitoista miljoonaa (ruplaa), meillä ei ole sellaisia ​​varoja."

Keskipäivällä, kun kanuunalaukaus kuului Pietari ja Paavalin linnoitus Navalnyille oli niin paljon halukkaita allekirjoittamaan, että pitkät jonot ulottuivat paperipöytiin.

– Minusta näyttää siltä, ​​että jos Navalnyin olisi päästetty televisioon edes kuukaudeksi, Putin ei olisi voinut saada häntä kiinni. Koska emme luota presidenttiin!"

"Täällä on paljon aikuisia, ei vain nuoria, vain nuoria, jotka ovat ketterämpiä", 54-vuotias Shahnaz selitti osallistumistaan ​​toimintaan. - No, Putin tulee, vielä 6 vuotta - ja mitä tapahtuu hänen jälkeensä? Hänen jälkeensä tuleva presidentti on epäonninen - kaikki on tuhottu! Tyttäreni opiskelee yliopistossa, hän kertoo, kuinka he kampanjoivat Navalnyia vastaan ​​yliopistossa, hän sanoo - äiti, me silti ymmärrämme kaiken! Minusta näyttää siltä, ​​että jos Navalnyin olisi päästetty televisioon edes kuukaudeksi, Putin ei olisi voinut saada häntä kiinni. Koska emme luota presidenttiin!"

Kaikki ilmoittautuneet jaettiin 50 kolonniin, joissa kussakin oli noin 40 henkilöä, ja asetettiin riviin muistomerkkikompleksiäänten laskemiseen.

"Herrat, nostakaa korttianne, jos kannatatte Aleksei Navalnyn nimittämistä presidenttiehdokkaaksi!" - Mihailov puhui yleisölle. Punaisten lehtien metsä nousi kentän yli. Onko olemassa "vastaa"? - yksi punainen kortti ilmestyi väkijoukon laitamille. "Pidättyi äänestämästä?" 1 797 ihmistä äänesti Navalnyin puolesta, Fontanka.ru raportoi myöhemmin.

"Joten, Navalny soitti vaadittu määräääniä!" - totesi päämajan päällikkö ja päätti kokouksen. Champs de Marsin sivuilla koko mielenosoituksen ajan olleet poliisit vaelsivat takaisin autoihinsa.

Jekaterinburg: tiedottajat ovat Navalnyia vastaan, opiskelijat puolesta


Jekaterinburg, 24. joulukuuta 2017Kuva: Twitter / @teamnavalny_ekb

Jo puoli tuntia ennen kokouksen alkua paikalle oli kerääntynyt runsaasti ihmisiä Jekaterinburgin perustajien muistomerkin lähelle kaupungin keskustassa. Keski-ikäisiä, eläkeläisiä, mutta yhä enemmän nuoria virtaa sisäänkäynnin poliisietsintöjen kautta pienillä aidoilla ympäröimään tilaan. "Ja tällä kertaa poliiseja ei ole niin paljon", huomauttaa yksi läsnä olevista. - SISÄÄN viime kerta"Saimme kiinni paljon enemmän ihmisiä, mutta kaikkiaan sata ihmistä osallistui mielenosoitukseen."

Lainvalvontaviranomaisia ​​on todellakin suhteellisen vähän ja he ovat melko ystävällisiä. Samoin kokouksen osallistujat. Vain yksi vanha mies, kun he erehdyksessä yrittävät tutkia häntä uudelleen, alkaa kiroilemaan, puristamaan nyrkkiään poliisille ja kysymään uhkaavasti: ”Mitä? Haluatko uuden tunnuksen?" Pian miehen vallankumouksellinen into hiipuu kokouksen ystävällisessä ilmapiirissä - monet tapasivat täällä tuttuja ja ystäviä, jotkut tulivat perheensä kanssa.

Jotkut Jekaterinburgin asukkaat eivät pelänneet tuoda lapsiaan kokoukseen. Ja tämä on lokakuun jälkeen, jolloin Navalnyin mielenosoituksissa oli kolme tusinaa ihmistä. Viranomaiset eivät kuitenkaan hyväksyneet toimintaa, mutta nyt sitä valvovat poliisin lisäksi myös Sverdlovskin aluevaalilautakunnan työntekijät. He laskevat saapuneet ja varmistavat myöhemmin, että menettely sujuu sujuvasti.

”Venäjän valtion psykologian ja kasvatustieteen yliopistossamme eräs vanhempi opiskelija kokosi listan kaikista Navalnyin kannattajista ja vei sen dekaaniin. Todellinen vuosi 1937!"

Ihmisiä tulee edelleen. Kaupungin liberaalivaramies Dmitri Golovin, Sverdlovskin alueen julkisen valvontakomission jäsen Vjatšeslav Baškov ja Ural-opposition "harmaa eminenssi", politologi Fjodor Krasheninnikov saapuivat tukemaan heidän ehdokastaan. Vapaaehtoiset jakavat ilmoittautumislomakkeet, joihin sinun tulee merkitä passitietosi ja allekirjoitus, sekä valtuutukset - äänestämiseen vaadittavat punaiset suorakulmiot.

Perustajaisien muistomerkin alla vanha mies kertoo kahdelle nuorelle opettavaisen tarinan siitä, kuinka hän kaksi päivää ennen Jekaterinburgin pormestarin vaaleja päätti olla äänestämättä Roizmania, koska hän "ei mene joka tapauksessa läpi". Ja kun "kansan ehdokas" ja huumekaupan vastustaja yllättäen voitti kaikille, hän harkitsi asemaansa - ja uskoo nyt, että myös Navalnyilla on mahdollisuus. Vastauksena opiskelijat kertovat oman tarinansa: ”RSUPU:ssamme eräs vanhempi opiskelija teki listan kaikista Navalnyin kannattajista ja vei sen dekanaattiin. Todellinen vuosi 1937!"

Lopuksi lomakkeet täytetään ja toimeksiannot jaetaan. Varmuuden vuoksi järjestäjät eivät tuoneet 500, vaan 1000 äänestyskorttia - ne irrottivat ne kaikki, joten myöhästyneet jouduttiin kääntämään pois. Esityslistalla on neljä kysymystä: pitäisikö meidän pitää kokous auki, pitäisikö meidän ilmoittaa aloiteryhmän perustamisesta Navalnyin nimittämiseksi, pitäisikö meidän nimittää hänet, pitäisikö kokous lopulta päättää?

Yli 950 ihmistä vastasi kysymyksiin positiivisesti heiluttaen punaisia ​​korttejaan (ilmeisesti osa yleisöstä putosi pakkasen takia). Kokouksen järjestäjä Barmin on julkistamassa tulosta, mutta sitten hän tajuaa: ehkä joku on sitä vastaan? Kuka pidättyi äänestämästä? Ei siellä ole yhtään. Neljä vastasi "ei" vain viimeiseen kysymykseen - kokouksen päättämisestä.

Tunti virallisen alun jälkeen ihmiset alkavat hajaantua. Keskusvaalilautakunnalta ei kommentoitu, tapahtuma sujui ja päättyi rauhallisesti, ilman yhteenottoja tai provokaatioita. Kokouksen osanottajat odottavat saavansa uudelleen kutsun jättämään passitietonsa ja allekirjoituksensa, kun Navalnyin kampanja alkaa vaalikampanjassa.


Vladivostok, 24. joulukuuta 2018 Kuva: 2018.navalny.com / Anton Lavrusyuk


Perm, 24. joulukuuta 2018 Kuva: 2018.navalny.com / Valeri Avramenko


Tjumen, 24. joulukuuta 2018 Kuva: 2018.navalny.com / Sergey Sysoev



Tšeljabinsk, 24. joulukuuta 2018 Kuva: 2018.navalny.com / Andrey Abramov


Rostov-on-Don, 24. joulukuuta 2018 Kuva: 2018.navalny.com / Vladislav Kulchitsky


Volgograd, 24. joulukuuta 2018 Kuva: 2018.navalny.com / Alexey Kopaev

Tilauslomake on järjestelmämme pääasiakirja. Ensimmäinen asia, jonka haluat tehdä työskennellessäsi suuren objektikokoelman kanssa, on määrittää niille yksilöllinen tunniste, joka liittää jokaisen objektin tietokannan tietueeseen. Mutta allekirjoituslomakkeen muoto on laissa erittäin tiukasti määrätty, mikä tahansa sen rikkominen on syy hylätä kaikki ehdokkaan allekirjoitukset. Vaalilautakunnalle toimitettavassa arkissa ei saa olla tarpeettomia merkkejä tai symboleja.

Allekirjoituksia kerättäessä Novosibirskissä sijoitimme jokaisen arkin multiforaan (läpinäkyvä ”tiedosto”), johon kirjoitettiin merkinnällä arkin tunnus ja kaikki palveluhuomautukset. Tämä toimi neljälle tuhannelle arkille, mutta ei toimi sadoille tuhansille. Tällä kertaa pidimme multiforsin käyttöä epäluotettavana ja hankalana ratkaisuna.

Lakimiehet keksivät menetelmän, jonka avulla pystyimme tunnistamaan jokaisen arkin ilman, että allekirjoituslomakkeen muotoa häirittiin. Laki ei sano mitään tilauslomakkeen fyysisestä koosta. Näin pystyimme suunnittelemaan arkin niin, että tunnistekoodit asetettiin sen yläosaan ja ne yksinkertaisesti leikattiin pois ennen sen toimittamista vaalitoimikunnalle.

Arkin koodi koostuu 6 merkistä. Voit käyttää latinalaisia ​​numeroita ja kirjaimia, joilla on graafisia analogeja kyrillisellä kirjaimella (muodoissa, joita voit kirjoittaa missä tahansa asettelussa). Lisäsimme erottimet: 91−X7−BA.

Sama tunniste tulostetaan QR-koodina automaattista tunnistamista varten eri työvaiheissa. QR-koodit ovat ylittäneet kaikki muut viivakoodityypit luotettavuuden ja tunnistusnopeuden suhteen.

Pääkonttorin elämä on täynnä vaikeuksia, joten QR-koodit testattiin huolellisesti erilaisissa stressitilanteissa arkkien...

... ja päätti, että kolme koodia riittäisi käsittelemään minkä tahansa elävän lehden.

Lakimiehet ja suunnittelijat tekivät kovasti töitä varmistaakseen, että ulkoasu on sekä lain että maalaisjärkeä. Arkin allekirjoitusten määrä testattiin erikseen. Vähän allekirjoituksia - liian monta arkkia, paljon turhaa kirjoitusta (tiedot keräilijältä ja valtuutetulta edustajalta), enemmän virheitä sertifioinnissa. Allekirjoituksia on monia - äänestäjien tietojen syöttäminen on hankalaa, allekirjoitusriveissä on enemmän virheitä. Prototyyppien kokeilun jälkeen päädyimme viiteen allekirjoitukseen.

Jokainen arkki (tarkemmin sanottuna arkin tunniste) luodaan tietokantaan, jonka jälkeen se voidaan tulostaa A4-paperille. Mutta et voi vain ottaa arkkia ja tulostaa sitä lähimmällä tulostimella. Lain mukaan allekirjoituslehtien tuottaminen on maksettava ehdokkaan vaalitililtä. Ne on yleensä valmistanut ulkopuolinen urakoitsija. Niin teimme tekninen puoli mahdollisimman ystävällinen ja joustava. Arkit tulostetaan joko suoraan selaimesta tai tallennetaan valmiiksi monisivuiseksi PDF-tiedostoksi, joka voidaan lähettää urakoitsijalle haluamallaan tavalla.

Sych: valmistautuminen allekirjoitusten keräämiseen

Fyysisten allekirjoitusten kerääminen allekirjoituslomakkeille voidaan aloittaa vasta ehdokkaan asettamisen ja erityisen vaalitilin avaamisen jälkeen. Laki antaa tähän hyvin vähän aikaa. Se oli meille tärkeää lisää operaatioita tehdä etukäteen kaikkien prosessien virheenkorjaus ja vaalien virallisen ilmoituksen jälkeen työn nopeuttaminen mahdollisimman paljon. Olemme käynnistäneet varmistusmenettelyn kannattajiemme tietojen alustavan tarkistamiseksi, päämajan kouluttamiseksi ja keräysmekaniikan testaamiseksi.

Todentaminen on beta-versio allekirjoitusten keräämisestä: oikeassa päämajassa, samoilla laitteilla, samoilla tiukoilla asiakirjojen tarkistuksilla, mutta ilman allekirjoitusta paperiarkille. Sych-sovellus kehitettiin toimimaan vahvistettujen ihmisten tietojen kanssa.

Sych

Taustajärjestelmä RESTful API:lla: Python 3.6, aiohttp, aiohttp_admin, SQLAlchemy.
Tietokannat: PostgreSQL, Redis.
Ilmoitus daemon.
Passin numeron tunnistusdemoni.
Daemon rakennusanalytiikkaan.
Palvelu passin tarkistamiseksi sen numeron perusteella.
Kladr-API:n laatikkoversio osoitteiden käsittelyyn (PHP 5.6 + MongoDB).

Päätimme tehdä Sychille erillisen taustaohjelman RESTful API:lla, koska suunnittelimme integroivan sen useisiin palveluihin, mukaan lukien Navalny 20!8 -verkkosivusto. Välimuistiin tallennuksena käytettiin erillistä PostgreSQL-tietokantaa ja Redisiä. Käyttäjien hallintaan käytettiin aiohttp_admin-kirjastoa, jota muokkasimme tarpeidemme mukaan.

Operaattorin sisäinen käyttöliittymä on vaiheittainen passin skannaus ja henkilötietojen täyttäminen. Koska Suuri määrä mahdolliset tilat, tämä lomake on kirjoitettu Reactissa.

Vuorovaikutus Navalny 20!8 -sivuston kanssa toteutettiin API:n kautta, joka on suojattu tunnuksella ja johon pääsee vain paikallinen verkko virtuaalikoneiden välillä.

Rekisteröidy vahvistusta varten

Jakaakseen työtaakan tasaisesti pääkonttorilla ajan mittaan, he sopivat tapaamisen tarkastusta varten. Sivustolle rekisteröitymisen jälkeen henkilö pääsi tallennusliittymään, jossa hän valitsi kätevän päämajan ja ajan.

Työkuorman hallintaan, tietueiden ja aikataulujen hallintaan olemme kehittäneet erillisen käyttöliittymän aluejohtajan ja päämajakoordinaattorin käyttöön:

Jos päämajassa on hätätilanne, koordinaattori voi peruuttaa tulevia varmistusaikoja massalla. Hän ei kuitenkaan voi tehdä tätä yksin - hänen on pyydettävä aluejohtajalta peruutusvahvistuskoodi. Jouduimme käyttämään tätä vaihtoehtoa useita kertoja.

Ilmoitukset

Sychissä otettiin käyttöön haarautunut ilmoitusjärjestelmä. Allekirjoittajan olisi pitänyt saada ilmoitukset postitse, kun hän ilmoittautui tarkastukseen, oli poissa tapaamisesta, viikko ajan peruuttamisen jälkeen, onnistuneen tarkistuksen jälkeen, pääkonttorin ajan peruttuaan ja useissa muissa tapauksissa.

Tekstiviesti-ilmoitukset lähetettiin muistuttamaan tapaamisesta kolme tuntia etukäteen ja ilmoittamaan, että pääkonttori oli perunut ajan. Ilmoitusjono tehtiin samalla periaatteella kuin Navalny 20!8 -verkkosivustolla: tietokannan taulukot, joissa viestit lähetettiin ryhmissä postin ja SMS-yhdyskäytävien kautta.

Passitietojen tunnistus

Operaattoreiden työn arvioimiseksi ja virheiden prosenttiosuuden määrittämiseksi tietoja syötettäessä halusimme lisää skannaustunnistusta. Luotettava automaattinen tunnistus oli mahdotonta passien vaihtelevuuden vuoksi, joten harkittiin kahta vaihtoehtoa: skannausten lähettäminen Yandex.Tolokaan, jotta sen käyttäjät voisivat tunnistaa ne, tai vapaaehtoisryhmän palkkaaminen, joka tekisi tämän toimistossa. Mutta henkilötietojen turvakysymys pysäytti molemmat vaihtoehdot, ja jätimme automaattisen tunnistamisen vain passin numerolle.

Analytics Sycha

Tarkastuksen aikana emme vain selventäneet ja tarkastaneet kannattajakuntaamme, vaan myös testasimme pääkonttorin toimintaa, infrastruktuuria, laitteistoa ja allekirjoitusten keräämisen mekaniikkaa. Prosessin seuraamiseksi ja korjaamiseksi teimme yksinkertaisen analytiikan.

Koska päämajassa on kolme prosessinhallinnan tasoa - päämajakoordinaattorit (vastaavat yhden päämajan työstä), aluejohtajat (seuraavat pääkonttoreiden ryhmää useilla alueilla) ja liittovaltion päämajan hallinta (seuraa kaikkea ja kaikkia), järjestelmä ryhmitti tiedot. eri tavoin kullekin käyttäjäryhmälle.

Näytimme suurimman osan yksityiskohdista päämajan koordinaattorille. Hän näki kaikkien toimijoiden tilastot ja avainindikaattoreiden dynamiikan ja pystyi tekemään niiden perusteella johdon päätöksiä: ottaa käyttöön enemmän tai vähemmän operaattoreita, lisätä hälytyksiä, muuttaa viikonloppuisin työaikataulua, irtisanoa tai kouluttaa uudelleen usein virheitä tekeviä työntekijöitä jne.

Säästimme aluejohtajaa tarpeettomilta yksityiskohdilta, ja ensimmäisellä näytöllä hän näki vain tärkeimmät asiat pääkonttoriryhmälleen: avainindikaattorit, luokitukset ja ongelmalliset päämajat (merkitty hälyttävän punaisella). Luokittelimme pääkonttorin "ongelmalliseksi" indikaattoreilla N % alle keskiarvon, kroonisesti alikuormitetuiksi (he tarvitsivat lisäilmoitusta) ja ylikuormitettuja ilmoittautumisten määrällä (tämä tarkoitti, että kaikki ihmiset eivät voineet ilmoittautua ja operaattorien määrää oli lisättävä) .


Ymmärtääkseen paremmin havaittua ongelmaa aluejohtaja saattoi helposti tarkastella kunkin päämajan yksityiskohtaisia ​​tilastoja ja nähdä kaikki tiedot, jotka olivat koordinaattorin käytettävissä.

Liittovaltion päämajan oli tärkeää nähdä välittömästi koko kuva, joten kokosimme kampanjan tärkeimmät tiedot yhdelle näytölle ja loimme yhteenvetotaulukon kaikista kaupungeista, joissa vahvistus on käynnissä. Voit valita taulukosta kiinnostavan pääkonttorin nähdäksesi sen täydelliset tiedot.

Analytiikassa näytettiin kaikkiaan yli 50 indikaattoria. SQLAlchemy oli tarpeeksi joustava, jotta se ei koskaan vaihtanut puhtaaseen SQL:ään ja varmistaa, että koodi pysyi luettavissa. Työvoimavaltaisimpia indikaattoreita tallensimme ensin välimuistiin Redisissä, mutta osoittautui helpommaksi laskea ne ajoittain taustalla ja ottaa ne tiedostosta pyyntöjä tehdessä.

Reaper 2018: järjestelmä allekirjoitusten keräämiseen

Samanaikaisesti varmennusprosessin kanssa kehitettiin järjestelmä allekirjoitusten keräämiseksi. Järjestelmän arkkitehtuuri, jota käytetään Novosibirskissä ja pystyy toimimaan sen kanssa fyysisiä esineitä- arkit ja allekirjoitukset.

Taustapuolelta Reaper 2018 on vanhan Reaperin seuraaja, mutta se sai käyttöliittymän varmennusjärjestelmästä. Joitakin näyttöjä paranneltiin Sychin työstä saadun palautteen analysoinnin jälkeen. Lisäksi on lisätty rajapintoja useiden eritasoisten tietojen varmentamiseen ja arkkien liikkeen hallintaan.

Käyttöliittymä

Allekirjoitusta hankittaessa operaattorin tulee skannata äänestäjän passi, täyttää lomake (ottaen huomioon, että rekisteröintileimassa oleva osoite ei välttämättä ole kirjoitettu vaaditussa muodossa) ja syötettävä tiedot allekirjoituslomakkeeseen, järjestelmän ohjeita. Mutta ensin meidän on tarkistettava, täyttääkö äänestäjä kolme keskeistä ehtoa:

1. Hänen tulee olla vaalien aikaan yli 18-vuotias.
2. Jos äänestäjä on 20 tai 45 vuotta vanha, hänellä on oltava uusi passi.
3. Passi ei saa olla kelpaamattomien luettelossa.

Virheellisten passien tietokannan tarkistaminen on yksinkertainen toimenpide, mutta siinä on myös omat hienovaraisuutensa. Tietokantaa jakaa sisäasiainministeriö verkkosivuillaan. Aiemmin, ennen vaaleja, jostain syystä he sulkivat tämän tietokannan latausmahdollisuuden, joten aloitimme lataamisen päivittäin etukäteen nykyinen versio pohja (älä unohda sammuttaa sitä).

Nyt tietokanta sisältää yli 110 miljoonaa tietuetta (sarja- ja passinumerot). Pienellä tietokannalla ja indekseillä nopeaa hakua varten keksittiin seuraava kaava: PostgreSQL:ssä luodaan miljoona tietuetta sisältävä taulukko, jonka ensisijainen avain on passin numero (0 - 999999), ja toinen kenttä sisältää kaikki sarjat. tälle numerolle kelpaamattomista passeista. Äänenvoimakkuuden vähentämiseksi sarjat käännettiin binäärimuotoon (kaksi tavua kukin) ja pakattiin zlibillä (haluin vain). Aluksi tietokanta vie noin 1 Gt ilman indeksejä. Käsittelyn jälkeen saamme 260 Mt indeksin mukaan lukien. Yksi tietue tarkistetaan keskimäärin 15 ms:ssa.

Virheellisten passien tietokannasta löytyi 0,6 % todennettujen henkilöiden passeista. Tämä tarkoittaa, että ilman tällaista tarkistusta käyttäisimme 12 % kelpaamattomien allekirjoitusten rajasta tämä tyyppi virheitä.

0,88 % passeista ei sopinut meille, koska kansalainen oli 20- tai 45-vuotias, mutta ei ollut vielä vaihtanut passiaan. Ja tämä on vielä 18 % virheellisten allekirjoitusten rajasta.


Tilauslomakkeessa on 4 operaattorin täyttämää saraketta: koko nimi, syntymävuosi, passin numero ja osoite pysyvä rekisteröinti. Kaikki nämä tiedot kulkivat Reaperin läpi tarkistettavaksi ja korjattavaksi mahdollisia virheitä. Esimerkiksi etunimen ja isänimen kentissä kirjoitusvirheiden haku toimii:

Nimivihjeitä varten API:lla on menetelmä, joka vertaa arvoa suureen luetteloon ja palauttaa kolme mahdollista vastausta:

Kaikki on kunnossa, on sellainen nimi;
- on samanlainen nimi (sellainen ja sellainen);
- tuntematon nimi ( harvinainen nimi tai vakavia kirjoitusvirheitä).

Erillinen tarina on kirjain "e". On olemassa passeja, jotka käyttävät sitä, mutta useimmissa tapauksissa se korvataan "e":llä, joten näytämme varoituksen, jos jossakin passitietojen kentässä on "e".

Järjestelmä ei itse korjaa mitään, se vain informoi. Toiminnanharjoittajan ja tarkastajien on kiinnitettävä huomiota tällaisiin tapauksiin ja tehtävä oikea päätös.

Asiakirjojen skannaus

Käytämme skannereita asiakirjojen kuvien ottamiseen omaa tuotantoa, ja operaattoriasemana - Raspberry Pi. Tämä kuvataan yksityiskohtaisesti toisessa luvussa.


Tämä kuva ei ole skannattu passista, vaan se on kerätty graafisessa editorissa satunnaisista tiedoista.

Kuva saadaan asiakaspuolelta HTML 5 Canvas API:sta ja lähetetään palvelimelle base64-merkkijonona, joka sisältää JPEG:n. Käyttöliittymän näkökulmasta skannerit voivat toimia kahdessa tilassa: USB-verkkokamera ja videon suoratoisto paikallisessa aliverkossa olevasta tietokoneesta. Owl toimii vain USB-kameroiden kanssa, kun taas Reaper 2018 mahdollistaa tilan vaihtamisen. Käyttäjä valitsee itse, mitä skanneria käyttää.

Viereisten tietokoneiden videovirran valinnassa oli pieni ongelma: pöytiä ja skannereita voidaan siirtää ja kuljettajat voivat vaihtaa paikkaa. Emme tiedä, mikä skanneri on seuraavan kerran operaattorin vieressä. Minun täytyi lajitella päämajan aliverkkoa ja antaa operaattorille mahdollisuus valita mikä tahansa reaaliaikainen skanneri. Mutta kävi ilmi, että skannerin videolähetyspalvelin, vaikka se asettaa oikeat CORS-otsikot (Access-Control-Allow-Origin: *), ei vastaa OPTIONS-pyyntöihin. Selain kielsi ajax-pyynnöt naapurikoneille, mikä teki mahdottomaksi käyttää tavallista jQuery.ajax()-tiedostoa hakuun. Myöskään JSONP-pyynnöt eivät auttaneet, koska niitä ei voitu peruuttaa ohjelmallisesti ja useat kymmenet odottavat pyynnöt estivät sivun kokonaan. Kuvat auttoivat ratkaisemaan ongelman. Lisäsimme tunnisteita DOM:iin ja määritimme niille videovirran src:n. Jos kuvan koko muuttui streamin koon mukaan, striimiä pidettiin suorana ja se näytettiin operaattorille.

Videovirran näyttäminen selaimessa kuormittaa huomattavasti vaatimattomat Raspberry Pi -prosessorit, joten jouduimme tekemään "näytönsäästäjän": 5 minuutin toimettomuuden jälkeen selain keskeyttää lähetyksen.

Meille on tärkeää valita ajantasaiset tiedot ilmoittautumispaikasta. Passin kaksoissivulla voi olla 6 leimaa, mutta tarvitaan vain yksi. Käyttöliittymä tarjoaa sinulle mahdollisuuden valita se käyttämällä näppäimistön nuolia tai napsauttamalla haluamaasi leimaa esikatselussa.

Ilmoittautumisia ei ehkä vielä ole. Tällaiset äänestäjät kirjataan erilliselle allekirjoitussivulle, jossa on tyhjä alue ja osoite, ja rekisteröintiskannaus ohitetaan.

Osoitteiden käsittely

Vaikein osa allekirjoituslomakkeen täyttämisessä on äänestäjän osoite. Yli puolet allekirjoituksen mitätöivistä virheistä liittyy osoitteeseen.

Rekisteröintiosoitteelle on olemassa pitkä lista lakisääteisiä vaatimuksia. Esimerkiksi:

Tämän on oltava FIAS-tietokannan (liittovaltion tietojärjestelmän) mukainen osoite;
- uudelleennimetyille kaduille on ilmoitettava uudet nimet, vaikka vanha olisi ollut passissa;
- Laki määrää tietyn muodon tallennettavien osoiteobjektien hierarkialle (esimerkiksi kaupunkialuetta ei voi ilmoittaa).

Nämä ovat vain peruskohtia, mutta on myös monia pieniä asioita, joiden luetteloa täydennettiin jokaisen kanssakäymisen yhteydessä vaalilautakunta. Vähäistenkin vaatimusten noudattamatta jättäminen on syynä siihen, että vaalilautakunta ei hyväksy allekirjoitusta.

Novosibirskin allekirjoitusten keräämisessä "osoite"-kenttään tehtyjen valitusten vuoksi noin 3,5 % allekirjoituksista mitätöitiin. Ja tämä on 70 % rajasta, joka on asetettu allekirjoituksille presidenttiehdokkaan asettamiselle.

Täyttääksemme kaikki vaatimukset joudumme ajamaan jokaisen osoitteen tietokoneen läpi, luomaan oikean muodon ja ilmoittamaan kerääjälle hahmoon asti, mitä hänen tulee kirjoittaa tilauslomakkeeseen.

Pyrimme mahdollisuuksien mukaan olemaan käyttämättä kolmannen osapuolen palveluiden API:ta, jotta emme luovuta käyttäjiämme koskevia tietoja ja joutuisimme tilanteeseen, jossa API katkeaa yhtäkkiä aikaisintaan. ratkaiseva hetki. Osoitteiden käsittely on kriittinen toiminto allekirjoitusten keräämisessä, joten meidän piti luoda oma API FIAS-tietokantaan.

FIAS-tietokannassa ei ole vielä riittävän laadukasta ja täydellistä tietoa taloista ja asunnoista, joten pysähdyimme katutasolle. Tässä muodossa tietokanta kaikkine lisärakenteineen painaa noin 2 Gt ja elää varsin mukavasti PostgreSQL:n muodossa. Tuonnissa käytettiin muokattuja skriptejä fias2pgsql-arkistosta.

Yleisvenäläiselle osoitteensyöttölomakkeelle ei voi tehdä kenttiä "kaupunki", "katu", "talo", koska on olemassa monia erilaisia ​​osoitemuotoja ja osoiteobjekteja. Tunnettu esimerkki epätavallisesta muodosta on Zelenograd, jossa on taloja ilman kadunnimeä. Mutta uskokaa minua, tämä on kansallisessa mittakaavassa melko triviaali tapaus.

Kokeilusarjan jälkeen päädyimme lomakkeeseen, jossa oli kolme kenttää:

Venäjän federaation aihe - se on aina olemassa, tämä on ymmärrettävin kenttä;
- FIAS:n mukainen osoite - kenttä, jossa on automaattinen täydennys tietyn FIAS-alueen osoitteille;
- talo/rakennus/asunto - rivi, jolle tiedot kopioidaan täsmälleen pysyvän rekisteröintileiman mukaisesti.

Lakimiehet laativat osoitteenmuunnostaulukon, jonka avulla saamme FIAS-osoitteet vaalilainsäädäntöä noudattavaan muotoon. Useimmiten jouduttiin sulkemaan pois jokin osoitteen elementeistä. Jotkut osoitteet jätettiin kokonaan pois (autotalliosuuskunnat, piha-alueet ja muut vastaavat kohteet). IT-osasto sai vastauksena taulukon säännöistä ja lakiosasto 10 esimerkkiä jokaisesta 44 osoitteesta.

Useiden tällaisten iteraatioiden jälkeen alusta oli valmis käytettäväksi.

Tehtävän tekninen osa oli järjestää kätevä ja nopea haku automaattisella täydennyksellä, joka kestäisi miljoonan pyynnön kuormituksen päivässä. Sfinksiä käytettiin hakukoneena. Pyyntö puhdistetaan tarpeettomista merkeistä ja lähetetään Sphinxille, ja se palauttaa objektien täydelliset osoitteet ja asettaa ne määritettyjen sääntöjen mukaan.

Sphinx indeksoi osoitekentän, joka on kirjoitettu XML-muodossa. Tämä tallennusmuoto osoittautui käteväksi, koska kaikki metatiedot voidaan piilottaa XML-attribuutteihin, joita Sphinx ei käytä etsimiseen, vaan säilyttää muistissa ja palauttaa tuloksiin ilman lisäpääsyä tietokantaan. Jossain käyttöliittymässä näitä määritteitä käytetään kauniin osoitepalkin muodostamiseen.

Ratkaisu osoittautui käteväksi ja nopeaksi. Yksi ehdotussovellusliittymän pyyntö suoritetaan 15–20 ms:ssa, ja taustajärjestelmä pystyy käsittelemään helposti 300 samanaikaista yhteyttä ei niin tehokkaassa virtuaalikoneessa.

Tilauslomakkeen täyttäminen

Allekirjoitukset on merkittävä Venäjän federaation subjektin arkeille, jolle kansalaisen pysyvä rekisteröintiosoite kuuluu (tai erityislehdille ilman aluetta, jos rekisteröintiä ei ole). Viikatemies kertoo operaattorille, minkä alueen arkki on otettava, eikä anna hänen allekirjoittaa toisen alueen arkkia.
Kuvittele, että haluat ratkaista tällaisen ongelman ilman tietokonetta, keräämällä allekirjoituksia rautatieasemalla, jossa on paljon ihmisiä eri alueilta, eikä siellä ole arkistokaappia tyhjillä arkeilla, jotka on lajiteltu alueen mukaan. Noin kolmanneksessa passeista rekisteröintileima ei sisällä alueen nimeä, ja satunnaiset ohikulkijat eivät tiedä pelin sääntöjä ja voivat helposti sekoittaa jotain. Tämä näyttää aiheuttavan suuren määrän virheitä, mitä ei voida hyväksyä lakisääteisen 5 prosentin rajan alle.

Tilauslomakkeen täyttäminen on monimutkainen ja vastuullinen toimenpide. Lehti sisältää allekirjoitusrivit, keräilijän todistuksen ja valtuutetun edustajan allekirjoituksen. Kaikki nämä lohkot on täytettävä tiukkojen muotovaatimusten mukaisesti. Jokaisessa täyttövaiheessa voi olla virheitä, jotka voivat tehdä koko arkin tai osan allekirjoituksista virheellisiä.

Olemme kehittäneet operaattorin työskenaarioita, jotka vähentävät todennäköisyyttä tyypillisiä virheitä. "Kotialueen" arkkeihin (noin 80% allekirjoituksista tulee alueelta, jolla pääkonttori sijaitsee) täyttää todistusmerkinnät etukäteen, rauhallisessa ilmapiirissä. Kaikille arkkilohkoille Reaper näyttää tarkasti, kuinka ne tulee täyttää.


Täyttöliittymä jäljittelee todellista tilauslomaketta, joka Tämä hetki makaa pöydällä käyttäjän edessä. Näytössä ovat varatut rivit, täytettävät sarakkeet, arkin numero ja suuret syötettävät tiedot.

Täytetyn rivin kohdalla käyttäjän on ilmoitettava sen tila (riviä ei aina ole mahdollista täyttää onnistuneesti ensimmäisellä kerralla). Jokaiseen korjaukseen ja poistoon on liitettävä muistiinpano arkille kerääjältä ja vastaava tila tietokannassa.

Kun koko arkki on täytetty, siihen kiinnitetään päivämäärä ja keräilijän allekirjoitus. Arkki toimitetaan tarkistettavaksi.

Allekirjoitusten tarkistaminen, arkkien käsittely päämajassa

Jokaisen työpäivän lopussa kaikki allekirjoituksilla varustetut arkit menevät varmennukseen, joka tapahtuu myöhään illalla tai yöllä (pääkonttorimme on pieni, kaikkia prosesseja ei yksinkertaisesti ole missään suorittaa rinnakkain). Tarkastaja (joka on myös ehdokkaan valtuutettu edustaja) tarkastelee jokaista arkkia ja jokaista allekirjoitusta, vertaa sitä passin skannattujen sivujen osiin ja vertaa kaikki tärkeät osat tarkistuslistaan. Jos virheitä havaitaan, se merkitään erityiseen käyttöliittymään.
Sertifiointitietue tarkistetaan erikseen. Sertifiointivirheet ovat erityisen vaarallisia, koska ne vaikuttavat koko arkkiin kerralla. Tällaiset virheet muodostavat noin 9 % kaikista virheellisistä allekirjoituksista.

Jotkut virheet voidaan korjata, mutta vain keräilijä voi tehdä korjauksia allekirjoitusriveihin, eikä hän ole päämajassa illalla/yöllä, joten kaikki korjaukseen tarvittavat tiedot siirretään sähköisessä muodossa. Ymmärtääksesi kontekstin, sinun on nähtävä kaikki, mitä riville tapahtui aiemmin. Näin "chat" syntyi tarkastajan, operaattorin ja asianajajan välille.


Kaikki kuvassa olevat nimet ja muut tiedot ovat kuvitteellisia

Jos virheet vaikuttavat kohtalokkailta tai on epäselvyyttä, lomake lähetetään asianajajalle. Jos allekirjoitukset eivät sisällä virheitä tai kaikki korjaukset on jo tehty, tarkastaja allekirjoittaa valtuutetun henkilön ja siirtää lomakkeen lähetettäväksi keskustoimipaikkaan.

Hymiöt ja onnen neurofysiologia

Tarkastettavan rivin tilan valitsemiseksi nopeasti ja tarkasti käytimme hymiöiden muodossa olevia painikkeita. Tähän on syviä neurofysiologisia syitä. Aivojen näköjärjestelmässä on ikivanhoja, matalan tason mekanismeja, jotka reagoivat tiettyihin kuviin. Näköjärjestelmä reagoi nopeimmin eri suuntaisiin suoriin viivasegmentteihin, koska primaarinen näkökuori havaitsee viivat helposti. Toissijaisessa näkökuoressa yksinkertainen geometrisia kuvioita(sinun on opittava tämä) ja kasvokaavio. Lisäksi ei tunnisteta vain kasvoja, vaan peruskasvojen ilmeitä. Eli hymiöitä. Kuten suorien viivojen tunnistaminen, se on synnynnäinen kyky. Tämän matalan tason järjestelmän ansiosta hymiöt tunnistetaan paljon nopeammin ja tarkemmin kuin teksti.


Hymiöjen muodossa olevat kuvakkeet vastaavat hyvin niiden tilojen merkityksiä, jotka tarkastaja voi antaa allekirjoitukselle: "hyvä", "ongelmia on", "huono". "Näytä asianajaja" -hymiö herätti epäilyksiä, mutta pääsimme siitä yli.

On myös mielipide, että hymiöt inhimillistävät käyttöliittymää ja parantavat siten hieman operaattorin elämää. Tämä on tärkeää, koska Operaattoreiden piti viettää pitkiä tunteja järjestelmämme parissa ja pysyä valppaina.

Arkkien lähettäminen

Valmiit arkit lähetetään keskuspäämajaan joka päivä. Arkkeja voi olla useita, useita satoja. Haluamme tietää tarkalleen, mitkä arkit ovat valmiita ja lähteneet päämajasta, mutta niiden manuaalinen rekisteröiminen on aikaa vievää ja epäluotettavaa. Lähetettyjen arkkien seurantaa varten on kirjoitettu mobiilisovellus.

Siinä on tila, jonka avulla voit nopeasti skannata satojen arkkien ja raporttien koodit, jos ne yrittävät lähettää arkin vahingossa, kun se ei ole vielä käynyt läpi kaikkia käsittelyvaiheita päämajassa. Yhden arkin skannaus kestää 1-2 sekuntia.

Skannauksen jälkeen arkit pakataan ja lähetetään Moskovaan.

Lomakkeen tiedot

Kaikki passitiedot syötetään ja näytetään monospace Source Code Pro Regular -fontilla. Siinä nolla on helppo erottaa O-kirjaimesta ja symbolit ovat melko samanlaisia ​​kuin nykyaikaisissa passeissa yleisesti käytettyjä.

Kaikki lomakkeet on tehty siten, että voit vaihtaa kenttien ja pääpainikkeiden välillä välilehtien avulla. Syöttökohdistus on päällä Vaadittu kenttä ei vain sivun latautuessa, vaan myös virheilmoituksen sulkemisen jälkeen. Modaaliset valintaikkunat sieppaavat tarkennuksen niin, että vaihto tapahtuu vain niiden säätimien välillä.

Kaikki painikkeet, kun niitä painetaan, tapahtuu jotain pysyvää, osoittavat tämän kaikessa ulkonäössään. Syöttökentät eivät ole käytössä, kun tietoja lähetetään. Virheiden sattuessa näkyviin tulee yksityiskohtaisia ​​selityksiä.

Arkkien logistiikka ja fyysinen varastointi

Papereiden läpäiseminen on yksi niistä toiminnoista, joissa ihmiskunta on saavuttanut uskomatonta menestystä. Vaikuttaa siltä, ​​​​että voit mennä paperitavarakauppaan, ostaa sarjan "liittovaltion" allekirjoitusten keräämiseen ja olla ajattelematta yksityiskohtia. Mutta on ongelma: kaikki toimistoratkaisut ovat liian kalliita. Emme voi toimittaa jokaiseen pääkonttoriin asiakirjaskannereita useilla kymmenillä tuhansilla ruplilla ja kaappeja roikkuvilla kansioilla sadan tuhannen hinnalla, joten jokaisessa vaiheessa piti keksiä jotain ja luoda jotain romumateriaalista.

Joitakin faktoja prosessin fysiikasta

Meidän on toimitettava 315 tuhatta allekirjoitusta. Tätä varten, ottaen huomioon alueelliset kiintiöt ja erilaisten virheiden marginaalit, on kerättävä ja käsiteltävä noin miljoona allekirjoitusta. Jokaisella arkilla voi olla korkeintaan viisi allekirjoitusta, mutta todellisuudessa niitä tulee olemaan jossain 3-4. Tämä antaa meille karkeasti sanottuna 300 tuhatta arkkia.

A4-paperiarkin pinta-ala on 1/16 m².
Tavallisen toimistopaperin tiheys on 80 g/m², yksi arkki painaa 5 g.
500 arkin pakkauksen korkeus on tyhjillä arkeilla 4,5 cm, täytetyillä arkeilla yli 6 cm.

Osoittautuu, että kaikki kerätyt arkit painavat 1,5 tonnia ja yhdeksi nipuksi taitettuna ne ovat noin 36 metriä korkeita.

Kuinka säilyttää tämä kaikki?

Allekirjoitusarkit tulostetaan, täytetään allekirjoituksilla, tarkastetaan, varmennetaan ja lähetetään päivittäin keskuspäämajaan. Yksi päätoimipaikka lähettää useita satoja arkkeja päivässä, joten tässä vaiheessa ei pitäisi olla ongelmaa.

Hauskuus alkaa keskuspäämajasta. Siellä sinun on järjestettävä säilytysjärjestelmä, jonka avulla on helppo vastaanottaa arkkeja alueellisesta päämajasta ja työskennellä niiden kanssa keräyksen loppuun asti. Keräyksen päätyttyä arkit tulee ryhmitellä alueittain ja nitoa kansioihin vaalitoimikuntaa varten.

Emme voi yksinkertaisesti laittaa paperiarkkeja loputtomiin pinoihin, koska asianajajat voivat milloin tahansa haluta poistaa joitakin arkkeja tiettyä näytettä varten. Sinun on tiedettävä, missä tarkalleen jokainen arkki sijaitsee, voitava nopeasti saada se ja palauttaa se.

Nopeaa käyttöä varten keksittiin järjestelmä arkkien fyysisen tietokannan indeksoimiseksi. Hakemisto koostuu useista tasoista: pääkonttori (laatikko), laatikko, kansio. Kansion osoite arkistossa näyttää tältä: 77−1−15. Jokaisessa kansiossa on 25 arkkia (ei tietyssä järjestyksessä).


Vasemmassa yläkuvassa on laatikko 500 tilausarkille paperikansioissa.
Oikeassa kuvassa 2000 arkin laatikko roikkuvissa kansioissa.

Arkkien vastaanotto ja lajittelu

Kaikki alueilta saapuvat arkit skannataan automaattisella kaksipuolisella skannerilla (se oli jo toimistossa, joten meidän ei tarvinnut itse koota sitä LEGOsta ja Arduinosta). Tämä laite voi ladata tuloksen palvelimelle SFTP:n kautta. Siellä skannaukset suoritetaan python-skriptin kautta, joka etsii QR-koodeja vakiopaikoista, tunnistaa ne ja linkittää skannaukset yhteiseen tietokantaan. Käsikirjoitus käsittelee luotettavasti jopa rypistyneet arkit.

Skannauksen jälkeen arkit menevät lajitteluun. Jokainen arkki skannataan mobiilisovelluksella (lajittelutila). Se löytää arkin järjestelmästä, muuttaa sen tilaksi "saapui keskuspäämajaan" ja näyttää sen kansion koordinaatit, johon arkki tulee sijoittaa. Operaattori vahvistaa, että hän on asettanut arkin määritettyyn kansioon (sulkee tapahtuman).

Saman alueen arkit sijoitetaan kansioon peräkkäin niin kauan kuin siinä on tilaa, joten koko prosessi tapahtuu erittäin nopeasti.

Backend

Reaper 2018 on valmistettu Djangossa vakiomallimoottorilla ja ORM:lla. Tietokantana käytetään PostgreSQL:ää. Järjestelmän palveluosat - FIAS, passin varmistus, työ ennakkorekisteröintitiedoilla - on sijoitettu erillisiin moduuleihin (django-sovellus), joissa on omat tietokannat.

Allekirjoitusten fyysinen maailma esitetään useiden objektiluokkien muodossa: allekirjoitusarkki, rivi arkissa, allekirjoitus. Näiden luokkien objekteilla on attribuutteja, jotka kuvastavat kohteen tilaa todellisessa maailmassa. Tilojen hallintaan käytimme äärellisen tilan konemallia ja django-fsm-kirjastoa. Kaikki tilojen väliset siirtymät kirjoitetaan FSM-tapahtumien muodossa, joiden sisällä suoritetaan tarvittavat tarkistukset ja lisätoimenpiteet objektin kanssa.

Tilakaavio näyttää suunnilleen tältä:

Arkin sijainti avaruudessa määräytyy sen sisältämien rivien tilan mukaan. Jos on rivejä, jotka asianajajan on tarkistettava, arkki saa tilan "lakimies". Heti kun asianajaja otti lomakkeen ja syötti sen koodin varmennusliittymään, lomake saa tilan "lakimiehen kanssa". Näin ollen tiedämme aina kaikkien arkkien tarkan sijainnin ja ymmärrämme niiden välittömän kohtalon.

Testaus

Allekirjoituksenkeruujärjestelmässä on liian monta eri tilaa ja siirtymää niiden välillä manuaalisesti tarkistettavaksi. Tarkastusten automatisoimiseksi kaikki toimijoiden ja tarkastajien työhön liittyvät skenaariot peitetään django-puolella testeillä.

On turha tarkastella järjestelmää miljoonan allekirjoituksen keräämiseen, kun sillä ei ole niitä allekirjoituksia. Tietokannan täyttämiseksi kirjoitettiin komentosarjoja, jotka alustavat tietokannan tyypillisen tilan keräysprosessin aikana, jotta voit katsoa järjestelmää, joka on täytetty jollain todellisella tiedolla.

Allekirjoitusten kerääminen on ajallisesti hyvin rajallista, ja merkittävä osa ajasta osuu tällä kertaa uudenvuoden lomiin. Odotimme, että pääkonttorin ja keräysjärjestelmän kuormitus olisi epätasainen. Oli tärkeää, että järjestelmä selviytyi helposti realistisesta allekirjoitusvirrasta. Ruuhka-aikoina odotettiin jopa 10 000 allekirjoitusta tunnissa. Tavallisella verkkosivustolla tämä ei vaikuta vakavalta, mutta meidän tapauksessamme tämä "vierailijoiden" järjestys voi aiheuttaa suuren kuormituksen palvelimelle. Kyse ei ole vain vierailuista tai rekisteröinneistä: jokaisen allekirjoituksen saamiseen liittyy noin 50 pyyntöä palvelimelle ja useiden korkearesoluutioisten kuvien käsittely.

Kuormitustestaus suoritettiin Locustilla. Tämä on yksinkertainen työkalu, joka on saatavilla PyPI:n kautta. Skenaariot kuvataan Python-koodissa, aivan kuten Djangon yksikkötestit:

Testit voidaan suorittaa web-käyttöliittymän kautta, joka näyttää kaavioita pyyntöjen nopeudesta, asiakkaiden määrästä ja palvelimen vasteajasta.

Projektin käyttöönotto on järjestetty samalla tavalla kuin Navalny 20!8 -verkkosivustolla.
Reaper-verkkosovelluksia voi käyttää vain päämajan VPN-verkon kautta.

Valvonta

Käytämme erilaisia ​​työkaluja allekirjoitusten keruujärjestelmään liittyvien palvelimien ja sovellusten valvontaan.

Zabbix valvoo kaikkien projektin virtuaalikoneiden tilaa.

Elasticsearch kerää nginx-lokeja kaikista virtuaalikoneista, Kibana näyttää tämän kaavioiden muodossa.

Sentry sisältää kaikki virheet sovelluksista ja käyttöliittymistä. Käyttöliittymät sijoitetaan erilliseen "organisaatioon", jotta ne eivät pilaa taustajärjestelmän virheiden tilastoja. Kätevä asia, mutta Sentryn saaminen toimimaan meidän kuormituksen alla oli melko vaikeaa.

Hanhi

Tämä on toiminnallinen valvonta, jossain määrin samanlainen kuin uptime.com, vain kotitekoinen. Tausta on rakennettu djangolle, jonot tehdään selleriin, jonka taustaohjelma on redis.

Hankkeen verkkotunnukset lisätään Gooseen. Jokaiselle toimialueelle ilmoitetaan tarkkailtavat osoitteet, tarkistusväli ja tarkistuksen tyyppi. Voit tarkistaa varmenteen, sisällön, HTTP-otsikot, uudelleenohjaukset ja muut hyödylliset asiat.

Jos jokin menee pieleen, Gus voi lähettää kirjeitä ja tekstiviestejä tai soittaa keskellä yötä ja selittää tilanteen ihmisäänellä (Twillio-palvelua käytetään puheluihin ja puhesynteesiin).

Verkkokäyttöliittymästä näet aina, missä verkkotunnuksissa on virheitä ja kuinka tarkistusjono toimii. 20-25 tarkistusta tehdään joka minuutti. Lisää tageja

Bloggaajaan pettynyt funktionääri puhui päämajan vaikeasta tilanteesta.

Bloggaajan päämajassa Aleksei Navalnyi, joka jatkaa varojen keräämistä presidentinvaalikampanjaa varten CEC:n kiellosta ja selityksistä huolimatta perustuslakituomioistuin, taas hämmennystä. Tuore FBK:n toimihenkilö ja ihmisoikeusaktivisti kirjoittaa Facebook-sivullaan mielenosoittajien johtamiskriisistä Vitali Serkuanov. Serukanov selitti Navalnyin joukkueesta lähtöään "itsekunnioituksen tarpeella".

Vitali Serkuanovin mukaan Navalnyin pääkonttori ei pysty tyydyttämään rahastolahjoittajien vaatimuksia ja julkaisemaan tilastoja alueilla kerätyistä allekirjoituksista. Syy aktivistille on ilmeinen: bloggaajalta puuttuu 250 tuhatta ääntä ehdolle tullakseen, mutta tarvittavan kannattajamäärän saaminen ennen määräaikaa on mahdoton tehtävä. Määräaika asiakirjojen jättämiselle CEC:lle rekisteröintiä varten päättyy 31.1.2018 klo 18.00. Tästä syystä, kuten Serukanov huomauttaa, Navalnyin joukkue muuttaa taktiikkaa periaatteen mukaisesti Niccolo Machiavelli"Tavoite oikeuttaa keinot". Luvattomat mielenosoitukset 24. joulukuuta on suunniteltu kovaksi vaiheeksi siirtymisessä kampanjan epäonnistumisesta tulevan vaalien boikotin vaiheeseen.

"Volkov (Navalnyin esikuntapäällikkö) ei keksinyt mitään uutta, paitsi välttääkseen vastaamasta kysymyksiin kampanjan epäonnistumisen syistä, lähinnä taktisista syistä, pidätyksiä, pidätyksiä ja negatiivista julkisuutta. Herätä joukkojen myötätunto, taistele hallinnollisilla pidätyksellä, kun taas tavalliset osallistujat saavat rikosoikeudellisia tuomioita”, Serukanov kirjoittaa.

Lakimies Ilja käsityö, joka suoritti riippumattoman tutkimuksen FBK:n toiminnasta kommentissa Uutistoimisto "Politics Today" totesi, että pettyneiden Navalnyin kannattajien määrä on luonnollisesti kasvussa.

Viraston keskustelukumppani sijoittaa entiset vapaaehtoiset tähän kategoriaan Aleksanteri Turovski Ja Denis Lebedev. Ensimmäinen loukkaantui etsinnässä bloggaajan päämajassa, mutta Navalny ei vaivautunut mainitsemaan hänen nimeään. Samanlainen tarina tapahtui Lebedevin kanssa kolme vuotta sitten. Hänen jalkansa murtui yhdellä hänen FBK-liiketoimintamatkallaan, mutta rahasto teki aktivistille selväksi, että he eivät aio käsitellä hänen ongelmiaan.

Remeslo on varma, että Navalnyin pääkonttori ymmärtää erittäin hyvin, että he eivät pysty tilittämään käytettyjä lahjoituksia ja keräämään tarvittavaa määrää allekirjoituksia.

"Tukea ei todellakaan ole. Tämä tilanne osoittaa, että he eivät voi järjestää perustyötä, koska nämä ihmiset eivät ole koskaan työskennelleet missään tai tienaanneet rahaa rehellisellä työllä. Ei Volkov eikä Navalny. Siksi he vetoavat toisiinsa. Jos heillä olisi vaadittu taso tukea, silloin ihmiset valuisivat ulos pysähtymättä. Keräsimme nämä allekirjoitukset, vaikka Volkov ja Navalny olisivat täysin lahjattomia, mutta koska he ovat myös lahjattomia ja tukitasoa ei ole, niin saamme mitä saamme, Remeslo kommentoi.



Mitä muuta luettavaa