Sisseehitatud funktsioonid. MajorDoMo. Nutikas kodu oma kätega Muutub arusaamatuks, miks Koduomanike Ühingute Liidu "Mittekaubanduslik" partnerlus, mille eesmärk on aidata üürnikke majaomanike ühistute loomisel, tegutseb vastupidises suunas, võttes majaomanikelt maju. 'ühendused kontrollitavateks

12.10.2020 Majapidamispumbad
Avaldan oma arvamust toote kohta, ehk on sellest kellelegi kasu.
Spetsialistid, esiteks, integreerijad ei ole tõenäoliselt MajorDoMo vastu huvitatud, kuni pole tavalist karbitooteid, normaalset tehnilist dokumentatsiooni, 7 \ 24 tuge, edasimüüjate võrku ega boonuseid.

Ka iseehitajad pole sellest tõenäoliselt huvitatud, pole globaalseid erinevusi näiteks OpenHabist või ioBrokerist.

Kuid neil, kes alles hakkavad targa kodu süsteemi üles ehitama ja tahavad aru saada, mida nad ikkagi tahavad ja mida nutikas kodu saab teha, on ilmselt mõttekas süsteemiga mõnda aega nokitseda. Isiklikult olen juba kümneid sõpru MajorDoMo külge haaranud.

Kõik juhtub tühiselt, õhtul tulevad külalised grillima - bukhaching. Õhtuhämaruses lülitab MajorDoMo verandal automaatselt valguse sisse, et efekti tõhustada, annan UD -le häälkäskluse raadio või muusika sisselülitamiseks. Kasutan oma häält helitaseme juhtimiseks või teise raadiojaama või loo vahetamiseks.

Siis toon külalised majja ja jälle palun häälega targal majal endast rääkida. (Mul on see demorežiim seadistatud). UD hakkab valgust välja lülitama, ütleb ilmateade, lülitab telerid sisse, jagub ja veel tosin erinevat show-offi.

Pärast küsimusele vastamist, kui palju see maksab? on vaba. Arvestage, et klient on küps.

Alles pärast seda, kui olete mõne tunni nendele tundidele kulutanud, ilma programmeerimise põhiteadmisteta, loogikast, struktuurist ja muust aru saamata, lihtsalt rumalalt korrates kõiki video toiminguid, saate.

Hääl, et seadistada arvutis äratuskell koos muusika või raadio käivitamisega
Hääljuhtimine teie arvuti meediumipleieril
Korraldage videovalve mis tahes nutitelefoni või tahvelarvuti abil
Jälgige näiteks GPS -i kasutavate laste liikumist ja asukohta
Hääljuhtimine Interneti -raadiojaamades arvutis
Võta vastu tark nimekiri ostlemine
Kuulake häälega oma arvutis ilmateadet
Küsige häälega küsimusi ja hankige vastused wikist
Lisa ja eemalda päevikust ülesandeid häälega.
Häälmeeldetuletused.
Soovi korral saate praeguse vahetuskursi häälega
Sissetulevate SMS -ide lugemine häälega
Lülitage arvuti eemalt välja
Jälgige nutitelefoni aku laetust ja võtke vastu kriitilisi tühjenemisteateid
Kuulata uudiste pealkirju või uudiseid ja märkusi filmidele endile

Kuradi väsinud kirjutamisest, noh, palju asju on veel ...

Ja see kõik pole kirjutatud ühele koodiridale (kogu kood on video all)

Viimase pooleteise aasta jooksul on üha rohkem integraatoreid ja ehitustööstuse inimesi meile koputanud palvega õpetada meile tarkvaraga töötamist ja "targa kodu loomist".
Hetkel rakendavad Majordomos juba mitukümmend integraatorit (kogu SRÜ territooriumil) nutikaid kodusid. Me ei maksa neile midagi (ei boonuseid ega edasimüüja allahindlusi) - see on õige. AGA ja nende kliendid ei pea tarkvara eest maksma. Ja kasutage Majordomo abiga rohkem eelarvelisi seadmeid.
Kõik see vähendab oluliselt klientide lõppkulude maksumust.

Vastavalt dokumentatsioonile - tegime teadmistebaasi, täidame selle

Autor: Openhab / ioBroker vs Majordomo - Ma tean palju juhtumeid, kui poisid vahetasid Openhab / ioBrokerilt meie poole - samal põhjusel: suurt erinevust pole, kuid venekeelseid kasutajaid on palju rohkem ja keegi on rääkima

Mõni aeg tagasi jõudsid meie tähelepanu nn mitteärilise partnerluse "Vologda Majaomanike Ühingute (HCC) ja Koduomanike Liit" tegevusele.

Nagu ütlevad Majaomanike Liidu juhid Mittekaubandusliku partnerluse "Vologda Majaomanike Ühingute (HOA) ja Koduomanike Liit" loomise ja toimimise eesmärgid on kujundada majaomanike koordineerimise, vastastikuse teavitamise ja suhtlemise süsteem, samuti esindada ja kaitsta nende huve ametiasutustes riigivõim, kohalik omavalitsus, õigusasutused.


Tegelikkuses aga, nagu enamikul juhtudel, pole kõik nii lihtne.

Avatud andmete kohaselt on NP "Vologda Majaomanike Ühenduste Assotsiatsiooni (HCC) asutajad ja eluasemeomanikud" 2 üksikisikud: Sukhikh Artjom Vladimirovitš ja Ivanov Nikolai Leonidovitš.


Ja Koduomanike Ühingute Liit tegeleb ka poliitikaga, edendades oma kandidaate valimistel, kulutades raha.

Need isikud on juba üle aasta teinud kampaaniat, et kinnisvaraomanikud läheksid üle oma kinnisvara isehaldamisele. Majaomanike ühistute liidu asutajate peamine eesmärk on korterelamud, milles kinnisvara (korterite) omanikud unistavad oma partnerluse loomisest.

Esialgu pakub Majaomanike Ühingute Liit ulgumise omanikele abi majaomanike liidu registreerimiseks vajalike dokumentide koostamisel. Selliste HOAde juhatuse liikmed on reeglina eluaseme- ja kommunaalteenuste ning korterelamute haldamise valdkonnast kauged isikud, kes saavad oma materiaalse huvi tõttu täielikult HOAde liidu kontrolli alla.

Sellise koostöö tulemus on alati sama: HOA sõltumatus töövõtjate valimisel, tööde tegemisel kõrgendatud hindadega, loobumine Raha mille eesmärk on HOA organisatsioonide liidu kontrolli all olevate elamute remont ja hooldus.

NP skeem "Majaomanike ühenduste liit"

Mida on nende organisatsioonide kohta teada?

1. LLC UK "Sokol".

Organisatsiooni peadirektor ja ainus asutaja on Bazhenov Aleksander Nikolajevitš. Juriidiline aadress: Vologda tn. Mira, 17. 211. Vastavalt andmetele alates avatud allikad see aadress on veel kuue organisatsiooni registreerimise koht, millest mõned on likvideerimisel.

LLC "Sokol" esindaja on Sukhikh Artem Vladimirovitš kümne aasta jooksul välja antud volikirja alusel, sama Sukhikh A.The. kes on koos Ivanoviga Koduomanike Ühingute Liidu kaasasutaja.

Aprillis 2019 saime teavet kaebuste kohta Vologda linna Lavrovi tänava maja nr 9 elanikelt seoses Sokol Management Company LLC juhtimisel asuva maja ebaseadusliku arestimisega.

Varem loodi selles korterelamus initsiatiivikodanike poolt majaomanike ühistu, kes korterelamut haldas.

Niipea, kui LLC UK "Sokol" hakkas juhtima, tundsid omanikud, nagu nad enda kohta ütlevad. Soojusvaheti loputamise tulemusena sattus majaelanikele tarnitud vette jahutusvedelik, mille tagajärjel muutus vesi roheline värv... Poolel majal puudub endiselt soe vesi. Keldris olevad torud lekivad pidevalt. LLC UK "Sokol" ei võta tagastamiseks mingeid meetmeid kuum vesi omanike korterites, samuti ei võta meetmeid soojusvaheti parandamiseks ega asendamiseks. Maja üldkasutatavate ruumide puhastamine on halva kvaliteediga ja mõnikord seda üldse ei tehta. Ainus asi, mida LLC UK "Sokol" teeb õigeaegselt ja kvaliteetselt, on teenuste eest tasumise kviitungite hajutamine postkastid ja Sukhikh Artem kõnnib omanike juurde ja nõuab tasu. Inimesed on nördinud, et neilt küsitakse tasu tegelikult tegemata töö eest.

Lisaks üritab Sokol Management Company LLC raha välja võtta, väidetavalt ühe maja lifti remondiks, kuigi tehnilise ekspertiisi tulemuste kohaselt on järeldus, et lift on nõuetekohases seisukorras ja ei remonti nõuda.

Hetkel tänaval asuva maja number 9 ebaõige haldamine. Vologdas asuvat Lavrovit kinnitab LLC UK Sokol kontrollitud akt .

Jääb arusaamatuks, miks majaomanike liitude ühingu „Mitteäriline” partnerlus, mille eesmärk on aidata elanikel majaomanike ühistute loomisel, toimib vastupidises suunas, viies majad HOA-lt kontrollitavatele organisatsioonid, milleks on LLC UK "Sokol".

LLC UK "Sokol" juht on direktor Alexander Bazhenov, mida kontrollivad N. Ivanov ja A. Sukhikh.

Tuleb märkida, et tänu hoolivatele üürnikele tunnistas Vologda linnakohus omanike otsuse valida OÜ UK "Sokol" ebaseaduslikuks ja tühistas selle täielikult.

2. OÜ "SU-35"

Borodiy Ulyana Pavlovna ja Dobrelya Maxim Alekseevich on SU-35 LLC osalejad. Viimasega on Artem pidevas ärisuhtes.

Hetkel tunnistati SU-35 LLC Vologda piirkonna vahekohtu otsusega maksejõuetuks (pankrotis), pankrotimenetlus algatati.

Esialgu 10. aprillil 2017 A.V. Sukhikhi vahel ja OOO SU-35 sõlmisid töölepingu, mille kohaselt võttis Sukhikh üle asedirektori ülesanded õigusasjades.

Seejärel, pärast vaatlusmenetluse kasutuselevõttu OOO SU-35 vastu, üritas Sukhikh koos OOO Su-35 juhtkonnaga raha tagasi võtta. Selle katse elluviimiseks sõlmiti SU-35 LLC ja Sukhikhi vahel kokkulepe olemasolevate lepingutingimuste muutmiseks ilma ajutise juhi nõusolekuta.

Tegelikult varem kokkulepitud kuupalga suuruses 30 000 rubla 00 kopikat, mis ületab määratud makseid, samade ülesannete täitmiseks, mis määrati A. V. Sukhikhile. tööleping, pooled konsensus kasvas palgad 270 500 rubla eestigakuine. (811 500 rubla ajavahemikul 28.04.2018 kuni 17.07.2018)

Selleks, et raha väljavõtmine näeks välja seaduslik, on 20. novembril 2018 Sukhikh A.V. esitatud hagiavaldus summas palgavõlgade sissenõudmise eest ettevõttelt SU-35 LLC 1 082 229 rubla 99 kopikat. Vologda linnakohus rahuldas aga Sukhikh A.The nõuded. ainult osaliselt, olles kogunud ettevõttelt SU-35 LLC võla summas 70 117 rubla 46 kopikat.

Hiljem, Vahekohtu poolt Vologda oblastis tunnistati kehtetuks töölepingu kehtivate tingimuste muutmise kokkulepe. Kohtuotsus tuvastati ebaaus käitumine Sukhikh A.The. , mida väljendatakse Lepingu sõlmimisel kohtu poolt kindlaks määratud tingimustel LLC SU-35 maksejõuetuse (pankroti) fakti kohta (vaatlusmenetluses) ja leppides kokku tööülesannete täitmiseks palga tõstmise tingimustes Sukikhile töölepingu alusel kehtestatud, mis näitab Vene Föderatsiooni tsiviilseadustiku artikliga 10 kehtestatud tehingu tühisuse tunnuste olemasolu (tehing, mis tehti seadustest möödahiilimise eesmärgil)

3. OÜ "Metprom"

OÜ Metroprom direktor on Artem Vladimirovitš Sukhikh. Praegu on LLC "Metrprom" föderaalse maksuteenistuse otsusega likvideeritud. Registris juriidilised isikud seoses ettevõttega "Metprom" on teavet juriidilise isiku aadressi andmete ebatäpsuse kohta.

Juriidilise aadressi ebausaldusväärsus on üks "ühepäevase" organisatsiooni märke

Mida veel Sukhikh Artjom Vladimirovitšist teatakse?


NP Assotsiatsiooni HOA asutaja ja juristina osutab Sukhikh majaomanike ühendustele õigusteenust.

Nagu teada saime, oli HOA aadressil Vologda, Tekhnicheskiy lane, 56, HOA, keda esindas A. V. Sukhikh. sõlmiti leping võlgade sissenõudmisteenuste osutamiseks kinnisvaraomanikelt, kes võlgnesid raha mitteeluruumide remondi- ja hooldusteenuste eest. Sellise teenuse maksumus oli hinnanguliselt kakskümmend tuhat rubla. (võrreldes turuga on see 10 korda ülehinnatud), kuid HOA esimehe sõnul ei pakutud võlgade sissenõudmisteenuseid väljamõeldud põhjusel Sukhikh A.V. Raha tagastamise katsed olid ebaõnnestunud, kuna majaomanike liidu esimees Ivanov Nikolai eitas igal võimalikul viisil oma suhet Sukhikhiga, kuigi tegelikult on seos ilmne, kuna Sukhikh on liidu kaasasutaja. . Raha ei tagastatud esimehele.

Teame ka teisest halvasti renderdatud juhtumist õigusteenused majaomanike partnerlus.

Detsembris 2016 Sukhikh A.V. esitas ta HOA nimel ühe arendaja vastu hagiavalduse, et nõuda tagasi maja ehitusel tehtud puuduste kõrvaldamiseks vajalike tööde maksumus. 2018. aasta detsembris keeldus Vologda piirkonna vahekohus nõudeid täielikult rahuldamast. kohus märkis oma otsuses järgmist:

„Samuti võttis kohus arvesse ja tunnistas põhjendatuks kõigi kostjate avalduse hageja õiguste kuritarvitamise kohta, kes, teades, et nõude esitamise ajal oli arendaja alustanud likvideerimisprotsessi, ning kohtuprotsess selle kostja esindaja teatas pankrotiasja aktsepteerimisest kohe kohtule. Ettevõttest ei esitanud ta ühtegi avaldust võlausaldajate nõuete registrisse kandmiseks, ei kasutanud oma õigusi võlausaldajana kostja pankrotimenetluse raames, ei osalenud võlausaldajate koosolekul, ei nõudnud tütarettevõtet vastutus ettevõttes osalejate eest, kui selleks oli alust. deklareeritud, see tähendab, et ta keeldus vabatahtlikult seadusest tulenevate õiguste kasutamisest. "

Sellise kohtuasja tulemus osutus HOA jaoks kurvaks. Uskudes HOA ühingu lubadustesse ja lootes A.V. Sukhikhi kõrgele kvalifikatsioonile. HOA sai vastutasuks ehituspuudujääkide kõrvaldamise raha eest 43 0003 rubla riigilõivu näol ainult kohtukulusid, tohutuid ehitusekspertiisi kulusid, mille maksumus ületas 100 000 rubla, teenuste eest tasumise kulud. "kõrgelt kvalifitseeritud spetsialisti" AV Sukhikh. Selle tulemusel rikastus ainult majaomanike ühenduste liidu "Mitteäriline partnerlus"

Keeldumine HOA, esindaja esindaja Sukhikh A.The. , viitab nende õiguste teostamisest pankrotistunud arendajaga korruptsioonikomponendile. Sellest tulenevalt on ohvrid vaid need, kes elavad ehituslike puudustega arendaja majas, kui A. V. Sukhikh. saab oma teenuste eest raha ja arendaja likvideeritakse edukalt, saamata vähimatki takistust.

Ühingu HOA töö tulemus on etteaimatav ja väga kurb. Omanikud saavad kujuteldava sõltumatuse ja kujuteldava võimu oma vara üle ning HOA ja selle kontrolli all olevad organisatsioonid rikastavad end majaomanike arvelt. Vastutus kehtivate õigusaktide kohaselt on sel juhul kõigi toimingute eest HOA -l endal ja ühendus ei vastuta oma tegevuse eest mingil viisil.

Jätkub.

Paljud algajad ei suuda MajorDoMoga sõbruneda, kuna see süsteem tundub neile esmapilgul üsna keeruline, kuid tegelikult on MajorDoMo ülesehitus väga lihtne. Kogu selle "keerukus" pole midagi muud kui koodide salvestuskohtade dubleerimine, mis on rakendatud puhtalt mugavuse huvides.

Proovime seda lähemalt uurida. Kõik, mida me teeme, rakendatakse enamasti PHP -koodi abil. See omakorda koosneb nii põhifunktsioonidest kui ka mõnest MajorDoMo enda käsust.

Mõistmise ja rakendamise hõlbustamiseks võite koodi paigutada erinevatesse kohtadesse. Mõistmiseks toon selle lähenemisviisi lihtsa näite. Oletame, et peame täitma mõne absoluutselt identse koodi nii menüüs nuppu vajutades kui ka häälkäskluse abil. Selle koodi saame kirjutada otse menüünupule ja häälkäsklusele. Tülikas, kas pole? Ja me võime selle skripti panna ja siis seda skripti helistada absoluutselt kõikjal ühel real. See on tegelikult kogu selle näilise keerukuse saladus. 🙂

Siit ka lihtne valem. Kui mingil põhjusel on plaanis kood käivitada ühest kohast, siis kirjutame selle otse sealt ja täidame selle. Kui vajate sellele juurdepääsu vähemalt kahest kohast, peaksite juba stsenaariumi üle mõtlema.

Kus need koodikohad asuvad?

  • Muidugi on need skriptid. (Haldusmenüü / OBJEKTID / Skriptid ).
  • Meetodid (Haldusmenüü / OBJEKTID / Objektid ), Puudutan seda üksikasjalikult hiljem.
  • Menüü (Haldusmenüü / OBJEKTID / Juhtmenüü ).
  • Hääljuhtimine (Haldusmenüü / OBJEKTID / Käitumismustrid ).
  • Hoone plaani visuaalne kontroll (Haldusmenüü / OBJEKTID / Stseenid ).
  • Andmete tõmbamine veebilehtedelt (sõelumine) (Haldusmenüü / OBJEKTID / Veebimuutujad ).

Tegelikult on see kõik enamasti piiratud. Kõik muu on intuitiivne ja hõlpsasti haaratav.

Skriptid.

Skriptidega on kõik selge. Nendesse kirjutame koodi, mida soovime erinevatest kohtadest käivitada.

Menüüd, hääljuhtimine ja stseenid.

Nendesse kirjutame need samad hinnalised indikaatorid, nupud, lülitid, regulaatorid ...

Need võivad sisaldada:

  1. Kogu kood.
  2. Otsene üleminek skriptile (valides loendist eelnevalt ettevalmistatud skripti).
  3. Segatüüp (näiteks kui töötame koodinuppu välja otse nupuga, näiteks selle tähise, siis läheme skripti juurde ja täidame selles kirjutatu).

Parsimine.

Enamasti on siin analüüsimine andmete hankimine teiste inimeste võrgus esitatud lehtedelt, määrates vajaliku tekstiosa alguse ja lõpu. PHP mängib siin pigem abistavat rolli ja seda kasutatakse suhteliselt harva.

Siin on näide. Oletame, et peate saidilt temperatuuri saama, tingimuslikult "Forecaster". Spetsiaalsete sümbolitega tähistame vajaliku tekstiosa algust ja lõppu (olgu see siis praeguse temperatuuri number). Lisaks loetakse see number meie määratud teatud perioodilisusega ja kirjutatakse atribuuti. Kinnistute kohta natuke hiljem. Vahepeal lihtsalt teadke, et loetud number salvestatakse teatud kohas, kuni see muutub. Niipea kui see juhtub, muutub number selles kohas (kinnistul). Töötleme atribuudis registreeritud parameetrit (temperatuurinäitajat) vajalikul viisil. Näiteks menüü jaoks lisame kuvatava numbri ette sõnad: „Väljaspool: " ja siis "° C » .

See näeb koodis välja selline:Väljas:% ThisComputer.Sinoptik_temp% ° C

Väljaspool: ja° C see on lihtsalt tekst.

V:ThisComputer.Sinoptik_temp see on täpselt meie vara, kusSee Arvuti see on klass jaSinoptik_temp see on selle klassi omadus ja perioodi kasutatakse eraldajana. Pärast natuke allpool lugemist saate sellest kõigest aru. Jah,% on menüüpiirid, koodis kasutatakse tavaliselt jutumärke.

Selle tulemusel näeme oma menüüs saidilt alati kehtivat temperatuuri.

Objektid.

Ja lõpuks, meile jäävad esemed, see on koht, kus asuvad meie omadused ja mitte ainult. Ka esemed tunduvad esmapilgul keerulised asjad. Kuid see on ainult esmapilgul. 🙂

Objekt see kujutab endast kõike, näiteks: arvutit (nagu ülaltoodud näites) või äratuskella või taimerit või isegi Skype'i ... Üldiselt mida iganes.

Identseid objekte võib olla palju. No näiteks. Mäletate, kui kirjutasin, kuidas ma süsteemi näen, ütlesin, et meil on ilmajaam sise- ja välisseadmetega. Seega on mõlemad plokid kokku pandud absoluutselt identsetele ESP-12 moodulitele. Igaüks neist on objekt ja nende kombinatsioon onKlass ... Siin tehakse kõike samamoodi mugavuse ja tarbetu kritseldamise välistamiseks, saate aru veelgi.

Struktuur on järgmine:

1. Klass identsed seadmed, nimetagem seda tinglikult ESP -ks (kuna võtsime näitena ESP -moodulid).

1.1. Seeklassi sa võid küsidaomadused (kui lihtsal viisil, siis seadistageklassi ESP varatemperatuur see ilmub automaatselt kõigisseklassi objektid ESP , see tähendab, et pole vaja luuavara , igaleobjekti ).

1.2 Seeklassi , saate ka määratameetodeid (st mõne koodi täitmine, needmeetodeid sarnaseltomadused kuvatakse kõigis meieobjektid ).

1.3. Ja lõpuks muidugi sisseklassi seal onobjektid ... Need on juba otseselt meie füüsilised ESP-d: ESP-12 nr 1, ESP-12 nr 2 jne.

Igaobjekt (ESP-12 # 1, ESP-12 # 2 jne) on omakorda omaomadused jameetodeid .

Kinnisvara on kahte tüüpi Klassi omadused ja Objekti omadused nende erinevus seisneb selles, et klassi registreeritud atribuudid ilmuvad automaatselt kõikidesse uutesse objektidesse ja objektile lisatud omadused on ainult selles. Seda tehakse selleks, et ühelt poolt vabaneda tarbetust kritseldusest, ja teiselt poolt pakkuda individuaalset omadused. Meetodid on loodud ainult klassis ja on juba registreeritud ainult objektis.

Selgitan näitega:

Oletame, et meil on ESP-12 # 1 ja ESP-12 # 2. Peame mõlema temperatuuri mõõtma, kuid lisaks sellele peame mõõtma ka esimesel niiskust ja teise abil kontrollima releed.

Me teemeKlass ESP , selles näeme ettevara Temperatuur ... See kuvatakse automaatselt nii ESP-12 # 1 kui ka ESP-12 # 2 atribuutides. Edasi otse, ESP-12 nr 1 jaoks, juba omaomadused , kirjutame etteNiiskus ... Vomadused sama, ESP-12 nr 2, määrame relee. Selle tulemusel on meil ESP-12 nr 1 omadustega, milles süsteem kirjutab meile temperatuuri ja niiskuse väärtused ning ESP-12 nr 2 omadustega, milles süsteem kirjutab üles temperatuuri väärtuse ja relee olek (0-väljas, 1-sees). Noh, ja vastavalt sellele meetodeid mis aitab meil neid andmeid töödelda, kui meil seda vaja on, alustame klassist ESP ja neis olev kood kirjutatakse juba iga objekti jaoks eraldi.

Tuleb märkida, et meetodeid saab kutsuda kõikjalt. callMethod ("Objekt.Meetod", $ params); või alternatiivne cm cm ("Objekt.Meetod", $ params);... Atribuudid on ka ülemaailmsed ja neile saab helistada kõikjalt. Funktsioonid sg (setGlobal) ja gg (getGlobal) teevad just seda. Näiteks rida:getURL (gg ('AlarmOne.UrlAlarmRing'), 0); avab atribuudile salvestatud lingiAlarmOne.UrlAlarmRing

Nüüd on teil kindlasti kõik, et mõista, kuidas MajorDoMo töötab.

Tugevdame seda konkreetse näitega:

Oleme oma ESP-12 mooduleid nr 1 ja # 2 värskendanud püsivaraga saidilt wifi-iot.com. Esimene neist loeb temperatuuri ja niiskust ning teine ​​temperatuuri ja juhib releed. Mõlemad ESP-12 saadavad andmeid regulaarselt MajorDoMo-le, kus need võetakse vastu skriptiga, mis lagundab saadud andmed atribuutideks. Ja lõpuks võtame need andmed atribuutidelt ja kasutame neid oma äranägemise järgi, st sisestame vajaliku atribuudi juba sinna, kus seda on vaja kuvada või rakendada.

Näiteks võtame tänava ja toatemperatuuril, töötleme neid teatud stsenaariumi järgi, saades seeläbi nutika termostaadi.

Samuti võtame samadest omadustest sama temperatuuri ja kuvame selle menüüs või laval visuaalseks esitlemiseks.

Ja hommikul käivitab äratuskella objektilt käivitatud meetod meile skripti, mis pärast seda, kui me lõpuks ärkasime ja meloodia välja lülitasime, annab meile praeguse ilmateate. Ja kust sa arvad, et ta saab temperatuuri ja niiskuse näitajad? Täpselt kinnistutelt!

Ja võite luua nii palju võimalusi kui soovite, kui ainult on piisavalt kujutlusvõimet, siin on paindlikkus, mida ma teile lubasin.

Mis järgmiseks?

Nüüd, kui olete juba aru saanud MajorDoMo struktuurist, räägin teile HDMI -maatriksist, kus näeme juba seadmete koostoimet MajorDoMo -s. Ja lõpuks liigun edasi tõsisema esitluse juurde, kus on kood, pildid, diagrammid ja muud rõõmud ... Üldiselt piisab paljast teooriast, nüüd on enamjaolt praktikat.

Seega HDMI 4 × 2 maatriks 4K x 2K 3D.

    Pean kohe ütlema, et püüan pilte nii palju kui võimalik kitsendada, nii et neid oleks võimalik vaadata isegi nutitelefonis lehe orientatsioonis, kuid see ei õnnestu alati 🙁. Kui näete, et kommentaaride tekst ronib üle piiride, keerake lihtsalt nutitelefon külili (maastiku orientatsioon), nutitelefonid, need on erinevad.

    Oma ajaveebi analüüsides leidsin mitmeid otsingupäringuid, näiteks: - Kus on fail menu.html või stseenid.html jne.
    Neile küsimustele on väga lihtne vastuseid eraldi blogi pühendada. Seetõttu vastan neile kommentaarides.
    Vaikimisi asuvad kõik terminali välimust moodustavad failid kaustas: / templates, kui teil on juba kolmanda osapoole ümbris, siis tuleks need failid otsida kaustast / templates_alt. Kaustal / templates_alt on kõrgem prioriteet kui / templates ja kõik selles olev töödeldakse esmalt. Kui midagi on puudu, pöördub mootor puuduva kausta / templates poole. Noh, ja arvatavasti eelneva põhjal väärib märkimist, et kui kavatsete oma malli (naha) MajorDoMo peale tõmmata, peaksite looma kausta / templates_alt (kui seda pole veel loodud) ja täitke kõik eksperimente selles. See säästab teid ebaõnnestumise korral kaotamast kõike, mille olete vaikimisi saanud.

    Oli ka selline palve: -MajorDoMo ei aktsepteeri andmeid ...
    MajorDoMo võtab reeglina andmeid vastu, täites skripti, mis need andmed vastu võtab või loeb, ja seejärel paneb skript selle nendeks omadusteks, mille olete selleks ette valmistanud, kust hiljem vajalikke andmeid loetakse ja kasutatakse. Neid skripte tavaliselt käitatakse; Või väljastpoolt, kolmanda osapoole serveri küljelt (no ütleme, nagu ESP8266 puhul, mis andmete saatmisega käivitab skripti espdata), nii oleme meie saame andmed (muide, lähitulevikus räägin teile kõike seda üksikasjalikumalt oma artiklis ilmajaama kohta). Või taimeriga mõtle andmed kõikjalt. Olemas on valmis mehhanismid, näiteks sarnane on ehitatud sihtmärgilehte küsitlevatesse veebimuutujatesse teatud sagedusega. Kirjeldatud juhul määratakse väljale sagedus Kontrollige intervalli, konkreetne veebimuutuja. Näiteks saame sel viisil päikesetõusu ja -loojangu aja. Veebimuutuja võtab mõnelt meteosiidilt ajaväärtuse, kirjutab selle atribuudile ja seejärel juba meetodis teostame töötlemist (teisisõnu võrdleme praegust aega loojanguajaga), mille tulemusel Alice , täpselt õigel ajal, ütleb meile - Päike loojub. ja vajadusel sooritab mis tahes toiminguid, noh, või 🙂 käivitab meile vajaliku skripti.
    Seega, kui MajorDoMo ei aktsepteeri mingeid andmeid, peaksite kõigepealt leidma skripti või allika (näiteks veebimuutuja puhul), kes selle eest vastutab, ja kontrollima selle toimivust. Selleks pakutakse kõiki mehhanisme alates skripti elementaarsest käivitamisest otse selle seadetest, klõpsates selle seadete lehel määratud lingil ja lõpetades logide analüüsiga, näiteks veebimuutujatega.

    Ja lõpuks kolmas soov, mida ma nägin: -MajorDoMo lihtsad objektid
    Siinkohal tuleb märkida, et päring oli koostatud pisut valesti. Kuigi objekti kõik võib olla, hiljuti on süsteemi lisatud täiendav kontseptsioon: Lihtsad seadmed... Seda tehti algajate elu lihtsustamiseks. Ausalt öeldes pole ma seda veel kasutanud, sest töötan just nende objektide tasemel. Kuid suunata väike mees õigele teele: (lihtsad seadmed) võiks sõna otseses mõttes sekunditega. Nii et ärge kartke, registreeruge ja küsige kommentaarides. Igal juhul vaatan neid palju sagedamini kui analüüsin otsingupäringuid.

    Istun, kirjutan vaikselt veekeetjast artiklit ja mul tekkis kiusatus meetrikaid vaadata. Andsin alla ja otsustasin vaadata. Ja ma näen teist otsingupäringut: - MajorDoMo andmebaasi struktuur
    Sellele küsimusele on raske kuidagi kohe vastata, teadmata esialgu, mida inimene konkreetselt soovis. Struktuur, kuna süsteem on täidetud, on igaühe jaoks erinev, keegi installib selle või selle mooduli, selle või selle rakenduse, kuid keegi ei vaja seda ... Vastavalt tabelitele on ka tüüpväljad kaugel. Seetõttu esitan selles etapis oma nimekirja ja siis, kui kedagi huvitab midagi konkreetset, paluge meil seda näha.

    Päring: Kuidas kinnisvarale väärtust kirjutada?
    Vastus: Enamikul juhtudel kirjutatakse vara väärtus automaatselt, kuid seda saab teha ka käsitsi. Lugege artiklit Broadlink SP3 pesa kohta ja teil ei teki enam kunagi sarnaseid küsimusi.

    Päring: MajorDoMo, veebi muutuv temperatuur?
    Vastus: Veebimuutujatele pühendatakse tõenäoliselt eraldi artikkel, et anda aimu kõige esmapilgul kõige keerukamast, nimelt filtreerimisest. Vahepeal konkreetne vastus konkreetsele küsimusele.
    Stabiilsuse ja püsivuse tõttu võtame Synopticu veebisaidilt praeguse temperatuuri.
    Looge veebimuutuja abil Nimi: Sinoptik_temp
    V Link kirjutame üles: https://sinoptik.com.ru/weather-volgograd Teie puhul muudame Volgogradi teie linnaks.
    V Otsimismuster:

    Seotud objekt: See Kompuuter
    Kinnisvara: Sinoptik_temp see omadus tuleb luua objektis This Compuer (lugege seda artiklit ja artiklit SP3 pesa kohta).
    Kontrolli intervall: 600
    See on kõik, nüüd loeb Mjor iga 10 minuti järel Forecasterist teie linna praeguse temperatuuri ja kirjutab selle kinnisvarale Sinoptik_temp, millega saate teha kõike, mida soovite, kuvada stsenaariumides jne.

    Päring: MajorDoMo, kas päike loojub?
    Vastus: MajorDoMo -s on kaks režiimi, nimelt öörežiim ja tume režiim. Öörežiim, lülitub sisse tunde järgi, vaikimisi kell 20.00–8.00. See režiim on väga mugav näiteks häälteate väljalülitamiseks. Režiim Öö lülitub päikeseloojangu ajal sisse ja päikesetõusu ajal välja, see režiim on mugav näiteks tänavavalgustuse juhtimiseks. Asukohapõhised andmed saadakse veebimuutujate rakendamisega. Mis hiljem salvestatakse atribuutidesse ThisComputer.SunRiseTime ja ThisComputer.SunSetTime ning töödeldakse klassi Timer meetodis onNewMinute.

    Päring: MajorDoMo globaalsed muutujad?
    Vastus: Funktsioonid gg (getGlobal) ja sg (setGlobal) räägivad enda eest, noh, ja meie omadused, arvestades asjaolu, et need kipuvad muutuma, on samad globaalsed muutujad. Oletame, et meil on stsenaarium ja me peame varaga midagi ette võtma, näiteks muutma termostaadi künnistemperatuuri. Funktsiooni getGlobal kasutades võtame atribuudi väärtuse oma skripti ja kirjutame selle kohalikule muutujale, olgu see siis: $ temp_term. Selle kohaliku muutujaga teeme oma skriptis juba vajalikke teisendusi ja lõpuks kirjutame muutuva oleku $ temp_term, kasutades funktsiooni setGlobal, atribuudi juurde. Noh, ja kinnisvaraga, nagu me juba teame, saame teha nii, nagu tahame. Näiteks kuvada selle väärtus ekraanil, saata see füüsilisele termostaadile või isegi rääkida süsteemi kõlarite kaudu ... Muide, globaalsetest muutujatest rääkides tasub märkida süsteemi sisseehitatud funktsioone. Tuleb meeles pidada, et süsteemi jaoks on rakendatud teatud funktsioonide ja muutujate kogum. Mäletate, et mainisin, et töötame enamasti PHP -ga, kuid sinna on sisse ehitatud ka midagi? Saate vaadata sisseehitatud funktsioone. Ja kui vaatate, pöörake tähelepanu üksusele "Silmuste (teenuste) haldamine", seal puutute kokku sisseehitatud globaalse muutujaga ja mõistate, et tehnika on igal pool sama.

    Päring: MajorDoMo html -ploki muutuja väärtus?
    Vastus: Ma teen näiteks järgmist: Väljas:% ESP8266003b5df7.dhtt1% ° C(st kirjutan klaviatuurilt sümboli °) ja siis on paigutus kuni buldooserini. Kraadisümbol on seatud ALT + 0176, numbrid trükitakse klaviatuuri numbrilisele osale (LINK WIKEPEDIA).
    Mõned teevad näiteks järgmist:
    % KitchenMain.dhtt1% & dеg; C ja siis pead panema C ainult inglise keeles. Mina isiklikult pole seda proovinud, aga selle kohta öeldi: (LINK FOORUMILE).
    Tähelepanu! Kui keegi otsustab kopeerida: % KitchenMain.dhtt1% & dеg; C pidage meeles, et siin blogis kuvatakse see mitte kraadi sümbolina, vaid kui & de g; Asendasin sümbolikoodi inglise kiri e vene keelde, ärge unustage seda tagasi muuta!
    No siiani ... Blah, blah, blah:% OBJECT OMADUS% blah, blah, blah. Blah, blah, blah mis tahes keeles, isegi hiina keeles.
    Kui teil on vaja näiteks niiskust kuvada, siis teeme järgmist. % ESP8266003b5df7.dhth1 %% teine% on lihtsalt sümbol.

    Päring: Et majordomo skript käiks iga tund?
    Vastus: Minge meetodi juurde: OBJECTS / Objects / Timer / onNewMinute ja lisage lõpus:

    Kui ($ m == "10") (
    runScript ("Stsenaariumi nimi");
    }

    Ärge unustage klõpsata nuppu "Värskenda"
    Stsenaarium käivitub iga tunni kümnenda minuti järel.

    Päring: MajorDoMo kuidas registreerida tee teistele lehtedele?
    Vastus:
    1. Kui soovite, et teie leht näeks välja nagu vaheleht, peaksite minema aadressile: Peamine haldusmenüü / SEADED / Kodulehed, klõpsake nuppu "Uus leht", Põllul Nimi (*) registreerige loendis vahekaardi nimi Tüüp vali URL, põllul Link, registreerige lehe aadress. Kohalike lehtede puhul piisab kohaliku tee määramisest, näiteks: / Template_alt / page name.html. Kui teil on leht oma kaustas ja selles on indeksfail, piisab ainult kausta määramisest, näiteks: / Kinoteatr /

    2. Oletame, et soovisite mõne saidi Internetist MajorDoMo -sse sisestada, et seda pidevalt kasutada. See on väga lihtne. Selleks peate kasutama rakendust "Saadetud lingid" ( Loe seda lisandmoodulite turul).
    Näide. Teil on tööl brauser. Brauseri järjehoidja tegemine Nimi: Saada MJD -le ja põllul URL kirjutame ette:

    javascript: (function () (var host = " Teie MajorDoMo aadress"; var title = prompt (" Title: ", document.title); if (title! =" "&& title! = null) (location.href =" http: // " + host +" /popup /app_readit. html? ajax = 1 & op = add & url = " + encodeURIComponent (location.href) +" & title = "(! LANG: + encodeURIComponent (title);)) ());

    ÄRA unusta muutust: Teie MajorDoMo aadress !!!
    Panime selle silmapaistvasse kohta, näiteks järjehoidjaribale (mis tuleb muidugi eelnevalt kuvada).
    Nüüd, olenemata sellest, millisel lehel olete, klõpsake lihtsalt sellel vahekaardil ja leht kuvatakse teie MajorDoMo vahekaardil Lingid. Pöörake tähelepanu (avatud vahekaardil Lingid) väikesele ikoonile vasakus ülanurgas, klõpsates sellel avate menüü, kus saate: Valige leht, mis kuvatakse kaadris püsivalt (vahekaardil), Lisage uus leht käsitsi (kui mingil põhjusel ei soovi järjehoidjat kasutada) ja viige lõpuks järjehoidja loomiseks just see link (Tähelepanu! Kui võtate lingi sealt, pöörake tähelepanu: host ="mycomp" !} mycomp see on link teie MajorDoMo -le, reeglina võib olla kohalik IP, see tuleb muuta kas väliseks IP -ks või domeeninimeks. Üldiselt soovitaksin teil kasutada domeeninime, see on igas mõttes mugavam. Näiteks kui teil on domeeninimi väljaspool ja registreerite selle seose kohalikus võrgus, on teil ainult üks link, mida saate igal pool kasutada, see on väga mugav mobiilirakendused, Tasker jne. pole vaja loota midagi vahetada, kui olete kodus ja seejärel väljas).

    3. Lõpuks võite soovi korral oma lehe otse stseeni sisestada. Näiteks kui teil on teatud valmis leht, millel on nuppude rühm jne. Võimalused leiate siit: (LINK)

    Päring: MajorDoMo käivitab objekti meetodi?
    Vastus: meetodit kutsutakse reaga:

    callMethod ("Objekt.Meetod", $ params);

    Varem globaalsete muutujate kommentaaris kirjutasin sisemistest funktsioonidest ja andsin (LINK), samas jaotises "Objektidega töötamine" leiate meetodite kohta.

    Päring: Kuidas kirjutada väärtust ühe objekti omaduselt teise omadusele?
    Vastus: Alustuseks tasub kindlaks teha, miks seda vaja on. Seda on vaja näiteks juhul, kui peate looma Lihtne seade , oletame, et temperatuuriandur, kuid füüsiliselt on teil keeruline seade, näiteks ESP -moodul, millega on ühendatud palju andureid, sealhulgas temperatuuriandur. Kuid arvestades asjaolu, et ESP ei ole lihtne seade ja kõigi selle andurite salvestamise skript on kombineeritud (st väärtus kirjutatakse atribuudile, koostades identifikaatori kui objekti ja tegelikult ka atribuudi. lühike, seal on üks kood ja andmed on kirjutatud erinevate ESP -de omadustele), selle otsene kasutamine lihtsates seadmetes on võimatu.
    Kuidas jätkata?
    1. Loome Lihtne seade , temperatuuriandur. Selle tulemusel saame paari objekti. Atribuudid, näiteks: Sensor_temp01.value mäleta seda.
    2. Uurige meile huvipakkuva ESP temperatuurianduri nime (oletame, et tahame kasutada temperatuuriandurit BME-280-st, mis on ühendatud esimese ESP-mooduliga, mis meil saalis on), minge saali ESP omadustele ja vaadake, et meil on temperatuuriandur nimega: ESP8256007b5b6d.bmet, mäleta seda.
    3. Loome skripti, mis kirjutab väärtuse ESP temperatuuri omadusest lihtsa seadme temperatuuri atribuuti iga minut. Nimetagem seda: Andur Assotsiatsioon
    Ja me kirjutame sellele koodi:

    // Kirjutab andmeid iga minut ESP8256007b5b6d.bmet -st väärtusele Sensor_temp01.value
    $ templ = getGlobal ("ESP8256007b5b6d.bmet");
    setGlobal (("Sensor_temp01.value"), $ templ);

    Salvestame oma skripti!

    4. Lõpuks paneme skripti iga minuti täitmiseks taimerimeetodisse: onNewMinute

    Päring: MajorDoMo näitajad?
    Vastus: Paljud algajad jäävad selle küsimusega sageli jänni. Jah, tõepoolest, ilma struktuuri ja eriti mallide põhjaliku tundmiseta pole näitajaid nii lihtne leida, kuid nende täpse asukoha teadmine ei ole absoluutselt probleem. Esimese asjana tahaksin öelda, et näitajad on malli osa, s.t. nn Veebikoonid või (kasutajaliides, kui soovite) miks? just sealt peaksite neid otsima. Ja nii võib meie veebikoon olla kahes kohas. 1. Kui kasutate tavalist malli, peaksite selle tõenäoliselt siit otsima: /www/templates/default.html 2. Kui teil, nagu minul, on rakendatud alternatiivne mall ja järgite samal ajal aadlike veebimeistrite reegleid, ärge vaikige vaikides (mida autor vaikimisi annab), ei tea kunagi, mida ja äkki peate seda rohkem uuesti tegema ilusti. Siis peaksite kindlasti otsima alternatiivset malli: /www/templates_alt/default.html. Oleme malli valinud, avage fail tekstiredaktoris: default.html ja et te ei rändaks läbi kaaluka teksti, otsime vajalikku otsides failist rida: System.IndicatorColor see atribuut (mille väärtus on pilt) süsteemi olekust, näitaja number üks! See on alati olemas, lisades oma sarnasusele omadused, milles pildid aset leiavad, saate pealehele nii palju vajalikke näitajaid kui soovite.

    Kuid see pole veel kõik. Siin sellel minu lehel (LINK) on minu mall peamiseks illustratsiooniks ja kui vaatate tähelepanelikult, märkate, et indikaatoritel on koht mitte ainult põhimalli paremal, vaid ka menüü. See pole kapriis ja mitte jama, kuna vaikimisi, mida ma MajorDroidis kasutan, ei ole pealehte näha, seal on avaleht menüü (teen broneeringu, see on minu puhul, sest kui te soovi korral saate ka stseeni seal vaikimisi kuvada!), seetõttu näete menüüs ka näidikute duplikaati.
    Kust neid leida? See on lihtne, peate need ise tegema, kui seda tõesti vajate.
    Kuidas siis seda teha?
    Menüüelemendi koostamine Nimi: Osariik ja asetage see menüü ülaossa ( Prioriteet: 100000 ), Vanema punkt: loomulikult peaks olema JUUR.
    V Tüüp: vali HTML -plokk.
    Sisestage väljale Andmed: järgmine kood:

    See on minu versioon, te juhindute ise, mis, kuidas ja kus see asub, saate juba raskusteta aru. Ja vabandust pildi pärast, lihtsalt minu süsteem on nii korraldatud, et võtab selle koodi üles. Nii et peate kirjutama pliiatsitega. Pange tähele: Liquid_Crystal on font, mis imiteerib LCD -kella, just selles stiilis tehakse minu mall, kui soovite sama, peate selle ise alla laadima, kui see teie jaoks midagi ei muuda, loob süsteem ühenduse Arial ilma Liquid_Crystali leidmata, kirjutage see üles.
    Ja lõpuks, lõigus: Automaatse uuendamise periood: Kirjuta üles 10 sek.
    Säästame ja saame, mida tahtsime.

ütle ($ ph, $ tase)- ütleb fraas (kasutab globaalseid muutujaid $ voicemode [täpselt rääkimiseks] ja $ commandLine [teisendab vastuse echo utf2win (), muidu lihtsalt echo]). $ tase näitab fraasi tähtsuse taset (sõltuvalt minimaalse hääldustaseme praegustest seadetest võib fraasi kas hääldada või lihtsalt sõnumite ajalukku salvestada).

processCommand (käsk $)- saadab täitmiseks tekstikäsu (näiteks "ütle mulle, mis kell on"). Käsud ise konfigureeritakse meetodiga ThisComputer-> commandReceived.

getGlobal ($ varname);- globaalse vara väärtuse saamine

setGlobal ($ varname, $ value);- globaalse vara määramine

processLine ($ rida);- käivitage sünkroonimisskript

getRandomLine ($ failinimi);- tekstifailist juhusliku rea võtmine. $ failinime võib lühendada, näiteks fail1 ja seejärel võetakse fail. / text / file1.txt

playSound ($ failinimi);- faili esitamine (mp3, wav jne). $ failinime võib lühendada, näiteks file1 ja seejärel võetakse fail. / sounds / file1.mp3

playMedia ($ tee);- esitage muusikat kataloogist $ path. Näide

runScript ($ id, $ data);- käivitab skripti antud ID -ga. Nime saab kasutada ID -na

getLogger ($ kontekst = null);- tagastab logija objekti. Näiteid logija kasutamise kohta

Töö objektidega

$ obj = getObject ($ nimi);- saab objekti nimega $ name. saate saadud objektiga töötada järgmiste meetoditega:
$ obj-> callMethod ("meetodi_nimi", $ params);
$ obj-> setProperty ("atribuudi_nimi", $ väärtus);
$ obj-> getProperty ("atribuudi_nimi");

callMethod ("Objekt.Meetod", $ params);- kutsub objekti meetodit määratud parameetritega (viimane on valikuline)

$ command = "Mis kell on"; callMethod ("ThisComputer.commandReceived", massiiv ("command" => $ käsk));

cm

$ väärtus = getGlobal ("Object.Property");- objekti vara väärtuse saamine

gg- eelmise funktsiooni alternatiivne nimi

setGlobal ("Object.Property", $ väärtus);- objekti omaduse väärtuse määramine

sg- eelmise funktsiooni alternatiivne nimi

$ objektid = getObjectsByClass ("klassi_nimi");- tagastab vorminimes määratud klassi objektide massiivi. Näide silmuse objektide üle iteratsioonist ja atribuutide väärtuste määramisest: $ objektid = getObjectsByClass ("klassi_nimi"); foreach ($ objektid kui $ obj) (setGlobal ($ obj ["TITLE"]. ". property_name", 1);)

Aeg / intervallid

aeg ()- tagastab praeguse aja ajatempli vormingus.

timeConvert ($ tm)- teisendab aja tänasest kuupäevast hh: mm kellaajaks ()

timeNow ($ tm)- tagastab teksti kujul aja nagu "16 tundi 40 minutit". Kui $ tm pole määratud, tagastab see praeguse aja. $ tm ajavormingus.

isWeekEnd ()- puhkepäev jah / ei = 1/0 isWeekDay ()- nädalapäevad jah / ei = 1/0

timeIs ($ tm)- kontrollib, kas praegune kellaaeg vastab hh: mm vormingus edastatavale

timeBefore ($ tm)- võrdleb aega $ tm (hh: mm) ja praegust. Kui vool on väiksem, siis 1 muidu 0

timeAfter ($ tm)- võrdleb aega $ tm (hh: mm) ja praegust. Kui vool on suurem, siis 1 muidu 0

timeBetween ($ tm1, $ tm2)- kontrollib, kas praegune aeg on määratud intervallis (iga hh: mm ja $ tm1 võib olla suurem kui $ tm2, näiteks 23:00 05:00)

tunnustamisaeg ($ tekst)- funktsioon püüab fraasist välja võtta kindla kellaaja / kuupäeva. Näiteks võib $ tekst olla "homme kell 9.30" või "5 minuti pärast"

Mis tahes meetodi (kuid mitte skripti!) Helistamisel on saadaval järgmised muutujad:

$ prevRun- viimase kõne aeg (ajatempli vormingus)

$ prevRunPassed- mitu sekundit on möödunud viimasest kõnest

$ see- Osuta iseendale. Kasutatakse klassimeetodites. Näiteks:

$ this-> setProperty ("olek", 1); // määrab oleku atribuudiks 1 objektil, mille jaoks see on kutsutud

Plaanitud ülesanded ja sündmused

AddScheduledJob ("pealkiri", "käsud", $ datetime, $ expire = 60);- $ aegub sekunditega

ClearScheduledJob ("pealkiri");- saab kasutada maski nagu "title%"

SetTimeOut ("pealkiri", "käsud", $ timeout);- $ timeout sekundites (analoog AddScheduledJob'iga ("title", "commands", time () + $ timeout));

ClearTimeOut ("pealkiri");- ClearScheduledJobi analoog ("pealkiri");

timeOutExists ("pealkiri");- tagastab kavandatud ülesande ID (või 0, kui seda pole)

registerEvent ($ eventName, $ details = "", $ expire_in = 365);- sündmuse registreerimine $ eventName

registrationEventTime ($ eventName);- tagastab sündmuse $ eventName viimase registreerimise aja (-1, kui sellist sündmust veel polnud)

Kirjade saatmine

SendMail ($ alates, $ kuni, $ subjekt, $ body);- saadab e -kirja aadressil $ määratud aadressile

SendMail_html ($ from, $ to, $ subject, $ body);- sarnane eelmise funktsiooniga, kuid eeldatakse, et e -kirja sisu on HTML -vormingus