Բովանդակություն:

Seroma: Server Room Manager: 20 Steps
Seroma: Server Room Manager: 20 Steps

Video: Seroma: Server Room Manager: 20 Steps

Video: Seroma: Server Room Manager: 20 Steps
Video: 10 most expensive schools in uganda 2024, Նոյեմբեր
Anonim
Seroma: Server Room Manager
Seroma: Server Room Manager

Seroma- ն սերվերի սենյակի մենեջեր է, որը թույլ է տալիս օգտվողներին ստուգել սերվերների կարգավիճակը (ջերմաստիճան և խոնավություն), սերվերային սենյակի մուտքի տեղեկամատյանները, ինչպես նաև վերահսկել սերվերների սենյակը ինքնին `անվտանգության որևէ խախտման համար:

Քայլ 1: Մուտք գործեք ձեր AWS հաշիվ:

Մուտք գործեք ձեր AWS հաշիվ
Մուտք գործեք ձեր AWS հաշիվ
Մուտք գործեք ձեր AWS հաշիվ
Մուտք գործեք ձեր AWS հաշիվ
Մուտք գործեք ձեր AWS հաշիվ
Մուտք գործեք ձեր AWS հաշիվ
Մուտք գործեք ձեր AWS հաշիվ
Մուտք գործեք ձեր AWS հաշիվ
  1. Մեր համար մենք մուտք ենք գործել AWS կրթական ուսանողի դարպասի միջոցով, քանի որ ունենք ուսանողի aws հաշիվ:
  2. Անցեք դեպի «AWS հաշիվ» ներդիրը ՝ նավիգացիայի ցանկի վերևի աջ մասում:
  3. Կտտացրեք «Գնացեք ձեր AWS Educate Starter հաշիվ»
  4. Բացեք վահանակը ՝ ձեր AWS կառավարման վահանակից օգտվելու համար:

Քայլ 2. AWS IOT «իրերով» սկսել

Ինչպես սկսել AWS IOT- ով
Ինչպես սկսել AWS IOT- ով
Ինչպես սկսել AWS IOT- ով
Ինչպես սկսել AWS IOT- ով
  1. Որոնեք «AWS IoT» ՝ AWS ծառայությունների որոնման տողում:
  2. Կտտացրեք «Սկսել» կոճակին ՝ AWS IoT վահանակի վահանակ անցնելու համար, որտեղ կարող եք դիտել ձեր AWS հաշվում գրանցված բոլոր IoT սարքերը:

Քայլ 3. AWS IOT «բանի» գրանցում

AWS IOT- ի գրանցում
AWS IOT- ի գրանցում
AWS IOT- ի գրանցում
AWS IOT- ի գրանցում
AWS IOT- ի գրանցում
AWS IOT- ի գրանցում
  1. Նավարկման բարում նավարկեք ՝ ձեր IoT «Իրերը» կառավարելու համար:
  2. Կտտացրեք «Գրանցել բան», եթե դեռ բան չունեք: (Եթե արդեն ունեք որևէ բան, ապա կտտացրեք «Ստեղծել» կոճակին էկրանի վերևի աջ մասում ՝ որոնման ներդիրի կողքին):
  3. Կտտացրեք առաջին կոճակին, որը կոչվում է «Ստեղծել մեկ բան»:
  4. Որպես իրի անվանում մուտքագրեք «RaspberryPi»: Այս քայլի համար «Անուն» -ից բացի այլ մուտքագրում չի պահանջվում: Դա անելուց հետո կտտացրեք հաջորդը:

Քայլ 4: Վկայագրի ակտիվացում

Վկայագրի ակտիվացում
Վկայագրի ակտիվացում
Վկայագրի ակտիվացում
Վկայագրի ակտիվացում
  1. Հաջորդ քայլում կտտացրեք «ստեղծել վկայագիր» կոճակին:
  2. Ներբեռնեք և պահեք հաջորդ էջի ներբեռնման 4 հղումները աշխատանքային գրացուցակում կամ թղթապանակում: Արմատական CA ֆայլը պահելու համար աջ սեղմեք և պահեք-as:
  3. Կտտացրեք «Ակտիվացնել» և հաջողության հաղորդագրություն պետք է հայտնվի:
  4. Ֆայլերի համար օգտագործեք ընկերական անուններ ՝ յուրաքանչյուր ֆայլի անվան դիմաց գտնվող թվերը հեռացնելով և արմատական CA ֆայլը վերանվանելով «rootca.pem»:
  5. Շարունակելու համար կտտացրեք «Կցել քաղաքականություն» կոճակին:

Քայլ 5. Ձեր վկայականին քաղաքականություն ավելացնելը

Ձեր վկայականին քաղաքականություն ավելացնելը
Ձեր վկայականին քաղաքականություն ավելացնելը
Ձեր վկայականին քաղաքականություն ավելացնելը
Ձեր վկայականին քաղաքականություն ավելացնելը
Ձեր վկայականին քաղաքականություն ավելացնելը
Ձեր վկայականին քաղաքականություն ավելացնելը
  1. Հաջորդ էջում, եթե չունեք քաղաքականություն, դրանք ձեզ կառաջարկեն կատարել «Ստեղծել քաղաքականություն» կոճակը:
  2. Եթե արդեն ունեք գործող քաղաքականություն, կտտացրեք ներքևի «Ստեղծել նոր քաղաքականություն» կոճակին:
  3. Հետևյալ տեղեկատվությունը տեղադրեք քաղաքականության ձևի մեջ:

    Անուն ՝ RaspberryPiSecurityPolicy

    Գործողություն ՝ iot:*

    Ռեսուրս ARN: *

    Ազդեցություն. Թույլատրել

  4. Ձեր քաղաքականությունը պետք է հայտնվի «Քաղաքականություն» ներդիրում «Անվտանգություն» բաժնում:
  5. Հաջորդը, անցեք «Վկայագրեր» ներդիրին, որը նույնպես գտնվում է «Անվտանգություն» ենթակայքում և ձեր քաղաքականությունը կցեք նախկինում ստեղծած վկայագրին:
  6. Հաջորդ էջում կտտացրեք ձեր քաղաքականությանը և այնուհետև կտտացրեք «Կցել»:
  7. Ձեր ստեղծած գործի Մանրամասների էջում «Ինտերակտիվ» ներդիրում կա REST API վերջնակետ, որը պետք է պատճենվի և պահվի:
  8. AWS- ն այժմ պետք է ունենա բան, որը կցված է քաղաքականությանը և ունի վկայական:

Քայլ 6. AWS SNS թեմայի նախնական կարգավորում

AWS SNS թեմայի նախնական կարգավորում
AWS SNS թեմայի նախնական կարգավորում
AWS SNS թեմայի նախնական կարգավորում
AWS SNS թեմայի նախնական կարգավորում

SSH մեջ Raspberry Pi և տեղադրեք AWS CLI ՝ օգտագործելով հետևյալ pip հրամանը.

sudo pip տեղադրել awscli

AWS CLI- ն ներառում է հրամանի լրացման հնարավորությունը, սակայն այն լռելյայն տեղադրված չէ: Օգտագործեք հետևյալ հրամանը ՝ Raspberry Pi- ի CLI ինտերֆեյսի վրա հրամանի լրացման հնարավորությունը տեղադրելու համար.

ամբողջական -C aws_completer aws

Կարգավորեք AWS CLI- ը Access Key ID- ով, Secret Access Key- ով, AWS Region Name- ի և Command Output ձևաչափով ՝ օգտագործելով հետևյալ հրամանը.

aws կազմաձևել

Վահանակն այնուհետև ձեզ հուշում է լրացնել հետևյալ տվյալները.

pi@raspberrypi: ~ $ aws կազմաձևում

AWS Access Key ID [Ոչ մեկը]. «Տեղադրեք ձեր օգտվողի մուտքի բանալու ID- ն այստեղ» AWS գաղտնի մուտքի բանալին [Ոչ մեկը]. Ոչ մեկը]: json pi@raspberrypi: ~ $

Քայլ 7: Iot-role.trust.json ֆայլի ստեղծում

Iot-role.trust.json ֆայլի ստեղծում
Iot-role.trust.json ֆայլի ստեղծում
Iot-role.trust.json ֆայլի ստեղծում
Iot-role.trust.json ֆայլի ստեղծում
  1. Ստեղծեք JSON ֆայլ վերը նշված IAM քաղաքականությամբ ՝ iot-role.trust.json ֆայլի անունով:
  2. Ստեղծեք դերը ՝ օգտագործելով AWS CLI- ն ՝ օգտագործելով հետևյալ հրամանը

aws iam create-role-role-name my-iot-role-assume-role-policy-document file: //iot-role-trust.json

Քայլ 8. Ստեղծեք Iot-policy.json ֆայլ

Ստեղծվում է Iot-policy.json ֆայլ
Ստեղծվում է Iot-policy.json ֆայլ
Ստեղծվում է Iot-policy.json ֆայլ
Ստեղծվում է Iot-policy.json ֆայլ
  1. Ստեղծեք JSON ֆայլ վերը նշված քաղաքականությամբ ՝ iot-policy.json ֆայլի անունով:
  2. Ստեղծեք դերի քաղաքականություն ՝ օգտագործելով AWS CLI- ն ՝ օգտագործելով հետևյալ հրամանը.

aws iam put-role-policy-role-name IoTRole-քաղաքականության անուն iot-policy-քաղաքականություն-փաստաթղթի ֆայլ ՝ //iot-policy.json

Քայլ 9. Ստեղծեք AWS SNS թեմա (մաս 1)

Ստեղծեք AWS SNS թեմա (մաս 1)
Ստեղծեք AWS SNS թեմա (մաս 1)
Ստեղծեք AWS SNS թեմա (մաս 1)
Ստեղծեք AWS SNS թեմա (մաս 1)
Ստեղծեք AWS SNS թեմա (մաս 1)
Ստեղծեք AWS SNS թեմա (մաս 1)
  1. AWS ծառայությունների որոնման տողում փնտրեք «SNS» ծառայություն կամ գնացեք
  2. Քանի որ այժմ թեմաներ չունեք, թեմա ստեղծելու համար կտտացրեք «Ստեղծել նոր թեմա»:
  3. Մուտքագրեք ձեր թեմայի անունը և ցուցադրվող անունը և կտտացրեք «Ստեղծել թեմա», և նոր թեմա կհայտնվի, երբ բոլոր քայլերը հաջող լինեն:
  4. Կտտացրեք «Գործողություններ» բացվող կոճակին և «Խմբագրել թեմայի քաղաքականությանը»:

Քայլ 10. Ստեղծեք AWS SNS թեմա (մաս 2)

Ստեղծեք AWS SNS թեմա (մաս 2)
Ստեղծեք AWS SNS թեմա (մաս 2)
Ստեղծեք AWS SNS թեմա (մաս 2)
Ստեղծեք AWS SNS թեմա (մաս 2)
Ստեղծեք AWS SNS թեմա (մաս 2)
Ստեղծեք AWS SNS թեմա (մաս 2)
  1. Սահմանեք քաղաքականությունը, որը թույլ կտա բոլորին հրապարակել և բաժանորդագրվել, քանի որ սա AWSEducate հաշվի սահմանափակումներից է:
  2. Բաժանորդագրվեք այս թեմային ՝ այս թեմայով հրապարակված թարմացումներ ստանալու համար:
  3. Փոխեք արձանագրությունը «Էլփոստ» և վերջում նշեք ձեր էլ.

  4. Անցեք ձեր էլ. Փոստին, որտեղ մուտքագրել եք ձեր վերջնակետը, կտտացրեք հաստատման հղմանը `թեմային բաժանորդագրվելու համար ձեր էլ. Փոստի բաժանորդագրությունը հաստատելու համար:
  5. Գնացեք դեպի «AWS IoT» ծառայություններ, ձախում նավարկության ընտրացանկում կտտացրեք «Գործել»: Այս էջը ցուցադրվում է ձեր կանոններով և հասանելի է դիտելու և խմբագրելու համար: Ներկայումս ձեր IoT բանի համար կանոններ չկան, կտտացրեք «Ստեղծեք կանոն»:

Քայլ 11: Ստեղծեք AWS SNS թեմա (մաս 3)

Ստեղծեք AWS SNS թեմա (մաս 3)
Ստեղծեք AWS SNS թեմա (մաս 3)
Ստեղծեք AWS SNS թեմա (մաս 3)
Ստեղծեք AWS SNS թեմա (մաս 3)
Ստեղծեք AWS SNS թեմա (մաս 3)
Ստեղծեք AWS SNS թեմա (մաս 3)
  1. Ձեր կանոնի համար Անուն դաշտում մուտքագրեք անուն: Նկարագրության դաշտում մուտքագրեք ձեր կանոնի նկարագրությունը: Շարունակելով Հաղորդագրության աղբյուրի բաժինը ՝ մենք կընտրենք SQL- ի ամենաթարմ տարբերակը «SQL տարբերակի օգտագործումը» բաժնում: Մուտքագրեք * հատկանիշում ՝ թեմայից ամբողջ MQTT հաղորդագրությունը ընտրելու համար, մեր դեպքում մեր թեման «TempHumid» է:
  2. Այնուհետեւ ավելացրեք «SNS» ծանուցման գործողություն ձեր կանոնի համար: Այնուհետև կտտացրեք «Կարգավորել գործողությունը»:
  3. «Կազմաձևել գործողությունը» էջում ընտրեք SNS թեման, որը հենց ստեղծեցիք և հաղորդագրության ձևաչափը ՝ որպես RAW: Դրանից հետո ընտրեք ձեր ստեղծած դերը AWS CLI- ի միջոցով և կտտացրեք «Ավելացնել գործողություն»:
  4. Ձեր գործողությունը կկարգավորվի և կվերադառնա «Ստեղծեք կանոն»:
  5. Եթե ցանկանում եք փոփոխել կանոնը, կտտացրեք խմբագրել:

Քայլ 12: Ստեղծեք դույլ Amazon S3- ում

Ստեղծեք դույլ Amazon S3- ում
Ստեղծեք դույլ Amazon S3- ում
Ստեղծեք դույլ Amazon S3- ում
Ստեղծեք դույլ Amazon S3- ում
Ստեղծեք դույլ Amazon S3- ում
Ստեղծեք դույլ Amazon S3- ում
  1. Որոնեք S3- ը AWS որոնման տողում:
  2. Amazon S3 էջում սկսելու համար կտտացրեք «Ստեղծել դույլ» կոճակին:
  3. Լրացրեք թռուցիկ ձևը, որը հայտնվում է հետևյալ տեղեկատվությամբ.

    • Շերեփի անուն. Seroma-bucket (սա պետք է լինի եզակի Amazon S3- ի բոլոր առկա դույլերի համար)
    • Տարածաշրջան: ԱՄՆ Արևմուտք (Օրեգոն)
    • Պատճենել կարգավորումները. (Անտեսել)
  4. 2 -ից 3 -րդ քայլերի համար պարզապես բաց թողեք այն ՝ կտտացնելով «Հաջորդ», քանի որ փոփոխման բան չկա: Քայլ 4 -ում կտտացրեք «Ստեղծել դույլ»:
  5. Ստեղծվելուց հետո դուք պետք է ձեր դույլը տեսնեք գլխավոր էջում:

Քայլ 13. Ստեղծեք AWS քաղաքականություն (մաս 1)

Ստեղծեք AWS քաղաքականություն (մաս 1)
Ստեղծեք AWS քաղաքականություն (մաս 1)
Ստեղծեք AWS քաղաքականություն (մաս 1)
Ստեղծեք AWS քաղաքականություն (մաս 1)
Ստեղծեք AWS քաղաքականություն (մաս 1)
Ստեղծեք AWS քաղաքականություն (մաս 1)
  1. Սեղմեք ձեր ստեղծած դույլի վրա ՝ վերը նշված էջը մտնելու համար, այնուհետև «Թույլտվություններ» ներդիրում անցեք «Շերեփի քաղաքականություն»:
  2. Հաջորդը, կտտացրեք «Քաղաքականության գեներատոր» հղմանը էջի ներքևում ՝ ձեր AWS քաղաքականությունը ստեղծելու համար:
  3. Ձևում մուտքագրեք հետևյալ արժեքները.

    • Քաղաքականության տեսակը ՝ S3 Bucket Policy
    • Ազդեցություն. Թույլատրել
    • Սկզբունքային: *
    • AWS ծառայություն. Amazon S3
    • Գործողություններ. GetObject
    • Amazon Resource Name (ARN): arn: aws: s3::: seroma-bucket
  4. Տեղեկությունը լրացնելուց հետո կտտացրեք Ավելացնել հայտարարություն:
  5. Կտտացրեք «Ստեղծել քաղաքականություն» կոճակին:

Քայլ 14. Ստեղծեք AWS քաղաքականություն (մաս 2)

Ստեղծեք AWS քաղաքականություն (մաս 2)
Ստեղծեք AWS քաղաքականություն (մաս 2)
Ստեղծեք AWS քաղաքականություն (մաս 2)
Ստեղծեք AWS քաղաքականություն (մաս 2)
Ստեղծեք AWS քաղաքականություն (մաս 2)
Ստեղծեք AWS քաղաքականություն (մաս 2)
Ստեղծեք AWS քաղաքականություն (մաս 2)
Ստեղծեք AWS քաղաքականություն (մաս 2)
  1. Պատճենեք ստեղծված կոդերը և կտտացրեք փակել:
  2. Վերադարձեք ձեր Amazon S3 Bucket Policy- ի խմբագրիչ և տեղադրեք նախկինում պատճենված կոդերը:
  3. Ավելացրեք «/*» կոդերի մեջ հենց ռեսուրսային ծածկագրերի հետևում, ինչպես վերևում պատկերվածը, այնուհետև կտտացրեք պահպանել:
  4. Դա անելուց հետո ձեր դույլը հաջողությամբ կտեղադրվի և պատրաստ կլինի օգտագործման համար:

Քայլ 15. Աղյուսակների ստեղծում DynamoDB- ի համար

Աղյուսակների ստեղծում DynamoDB- ի համար
Աղյուսակների ստեղծում DynamoDB- ի համար
Աղյուսակների ստեղծում DynamoDB- ի համար
Աղյուսակների ստեղծում DynamoDB- ի համար
  1. Որոնեք DynamoDB- ը AWS ծառայությունների որոնման տողում
  2. Կտտացրեք «Ստեղծել աղյուսակ» և ստորև բերված տեղեկատվությամբ ստեղծեք 3 աղյուսակ. (Փոխված են միայն «սեղանի անունը» և «առաջնային բանալին»)

    • accesslog, pk datetimevalue
    • roomstatus, pk datetimevalue
    • staffdata, pk օգտվողի անուն

Քայլ 16: Roomstatus.py

Roomstatus.py
Roomstatus.py
Roomstatus.py
Roomstatus.py
Roomstatus.py
Roomstatus.py
Roomstatus.py
Roomstatus.py

Այս բաժինը պարունակում է roomstatus.py ծածկագիրը, որը գրում է սերվերային սենյակի վերաբերյալ բոլոր տվյալները ամեն րոպե: Սա ներառում է ջերմաստիճանը, խոնավությունը, շարժումը (պատկերներ և տեսանյութեր, եթե դրանք ճշմարիտ են) և մուտքի տեղեկամատյանները: Այն նաև գրում է տվյալներ Google Աղյուսակում, տվյալներ DynamoDB- ում, պատկերներ և տեսանյութեր (առկայության դեպքում) S3- ում, ցուցադրում է տեղեկատվություն LCD էկրանին, SMS և էլ. Նամակ է ուղարկում կասկածելի խախտման դեպքում, կամ երբ ջերմաստիճանը կամ խոնավությունը անկանոն են:.

Python ֆայլերը գործարկելու համար փոխեք գրացուցակը, որտեղ գտնվում է ֆայլը և մուտքագրեք մխիթարել ՝ «sudo python»

Լուսանկար 2. Գործառույթներ, որոնք հայտարարված են SMS և էլփոստի ազդանշաններ թույլատրելու և S3- ում վերբեռնելու համար

Նկար 3. Գործառույթների և RPi- ի աշխատանքի համար հայտարարված փոփոխականներ

Նկար 4. Օղակի սկիզբ, որը ստանում է ջերմաստիճանի և խոնավության արժեքները RPi- ից: Այն նաև տվյալները գրում է Google աղյուսակի վրա

Լուսանկար 5. Օղակի անվտանգության մասը: Այն կակտիվանա միայն երեկոյան 7 -ից 7 -ը (անջատված ժամեր): Այն մեկ րոպեի ընթացքում կստուգի շարժունակությունը: Եթե շարժումը հայտնաբերվի, այն կպահանջի պատկեր և տեսանյութ, կբեռնի այն S3- ում ՝ միաժամանակ տեղեկություններ գրելով DynamoDB- ին ՝ հետագայում հղման համար: Այնուհետև այն SMS և էլփոստ կուղարկի, եթե ինչ -որ բան անկանոն է:

Լուսանկար 6. Օղակի վերջը: Այն նաև տվյալներ է գրում DynamoDB- ին և համապատասխանաբար ահազանգեր է ուղարկում: Օղակի վերջին տողը կստիպի սցենարը քնել մինչև հաջորդ րոպեի հասնելը:

Քայլ 17: Rfid.py

Rfid.py
Rfid.py
Rfid.py
Rfid.py
Rfid.py
Rfid.py
Rfid.py
Rfid.py

Այս բաժինը պարունակում է rfid.py ծածկագիրը, որն ավելացնում է գործառույթը ՝ հետևելու համար, երբ անձնակազմի անդամը մուտք է գործում սերվերային սենյակ: Այն նաև մաս է կազմում Seroma- ի անվտանգության տեսանկյունից, որտեղ անձնակազմի անդամին չի թույլատրվում մուտք գործել սերվերային սենյակ աշխատանքային ժամից հետո `տվյալների խախտումը կանխելու համար: Այն նաև նամակ և SMS է ուղարկում բոլոր աշխատակիցներին, եթե խախտման կասկած կա:

Լուսանկար 2: RFID ընթերցողի տրամաբանության սկիզբ: Ամեն անգամ, երբ քարտը սկանավորվում է ընթերցողի դեմ, վերցվում է քարտի եզակի id (uid) քարտը: Այնուհետև մենք փորձում ենք գտնել քարտի uid արժեքը աշխատակազմի տվյալների աղյուսակում ՝ տեսնելու, թե արդյոք քարտը պատկանում է անձնակազմին որևէ մեկին: ոչ աշխատանքային ժամեր: Եթե դա այդպես է, այն SMS- ի և էլփոստի միջոցով կզգուշացնի մնացած աշխատակիցներին բաժանորդագրված էլ. Եթե դա դեռ գրասենյակային ժամերի ընթացքում է, ապա այն համապատասխան տվյալների հետ տող է գրելու տվյալների շտեմարանի Accesslog աղյուսակին: Այն նաև կցուցադրի ողջույնի ուղերձ LCD էկրանին:

Քայլ 18: Server.py

Server.py
Server.py
Server.py
Server.py
Server.py
Server.py

Սա server.py ֆայլն է: Մենք կօգտագործենք Flask շրջանակը վեբ պորտալի համար: Կցված են նաև HTML ձևանմուշները, որոնք պետք է տեղադրվեն /ձևանմուշներում:

Լուսանկար 1. Ֆլասկի առաջին երթուղին որոշված է: Այն օգտագործողին կուղղորդի մուտքի էջ, եթե նա մուտք չի գործել, և վահանակի էջ ՝ եթե դրանք մուտքագրված են: Նաև սահմանում է ուղիղ հեռարձակման գործառույթում օգտագործվող գործառույթ

Լուսանկար 2, 3, 4: Ֆլասկի ուղիներ: Այն ստանում է տվյալներ DynamoDB աղյուսակից, այնուհետև դրանք վերադարձնում HTML ֆայլերին, որպեսզի դրանք կարողանան օգտագործվել այնտեղ:

Նկար 5: Վերջին 2 երթուղիները Ֆլասկի համար: Այն կարգավորում է ելքի և ուղիղ հեռարձակման գործառույթը: Այն նաև սահմանում է այն նավահանգիստը, որով կայքը կաշխատի:

Քայլ 19: Telegram.py

Telegram.py
Telegram.py
Telegram.py
Telegram.py
Telegram.py
Telegram.py

Այս բաժինը ներառում է Սերոմայի հեռագրային բոտի ծածկագիրը: Այն օգտագործում է telepot գրադարանը ՝ Telegram- ի Bot API- ին հպելու համար: Այն աշխատում է ՝ ընդունելով ստացած հարցումները և ցուցադրելով համապատասխան տեղեկությունները օգտվողին: Օգտագործողը կարող է մուտքագրել «օգնություն» հրամանների ամբողջական ցանկի համար:

Նկար 1, 2: Հեռագրի բոտ ստեղծելու համար անհրաժեշտ է օգտագործել BotFather- ը: Պարզապես գործարկեք հրահանգները ՝ մեր ծածկագրում մեզ անհրաժեշտ HTTP API- ն ստանալու համար:

Նկար 4. Ֆունկցիայի օրինակ, որը տվյալների բազայից վերցնում է տվյալների որոշակի տող օգտվողի խնդրանքի հիման վրա

Նկար 5. Ինչպես ենք մենք ընդունում օգտվողի տվյալները և որոշում, թե ինչ է գործելու համապատասխանաբար:

Քայլ 20: Ուղիղ հեռարձակում (camera_pi.py)

Ուղիղ հեռարձակում (camera_pi.py)
Ուղիղ հեռարձակում (camera_pi.py)
Ուղիղ հեռարձակում (camera_pi.py)
Ուղիղ հեռարձակում (camera_pi.py)
Ուղիղ հեռարձակում (camera_pi.py)
Ուղիղ հեռարձակում (camera_pi.py)

Մենք սերվերի սենյակների մոնիտորինգի համակարգի համար նոր գործառույթ ենք ներդրել, այն, ինչ կատարվում է Server Server- ում, որը հասանելի է ցանկացած պահի, ցանկացած վայրում: Ինչպես է աշխատում այս ուղիղ հեռարձակումը. Դա մի գործառույթ է, որն արվում է Ֆլասկում ՝ Pi տեսախցիկի հետ միասին: Տեսանյութի շրջանակները ներբեռնվում են այնպես, ինչպես դա տեղի է ունենում իրական կյանքում, այնպես որ իրականում կարող եք տեսնել, որ փոքր ուշացում կա (1-2 վայրկյան), քանի որ տեսանյութերի շրջանակները ներբեռնվում և հավաքվում են միասին: Դա հնարավոր չէր անել առանց թելելու, քանի որ ֆոնային շարանը կարդում է տեսախցիկի շրջանակները և պահում ընթացիկ շրջանակը: Այս բոլոր շրջանակները միացնելով ՝ կենդանի հոսք կարձակվի:

Լուսանկար 2. Սա առանձին ֆայլ է, որտեղ պահվում են տեսաֆիլմերի բոլոր շրջանակները, և ինչպես տեսնում եք, մենք օգտագործում ենք picamera մոդուլը ՝ մեր ազնվամորու pi տեսախցիկ մուտք գործելու համար, քանի որ դա այն է, ինչ մեզ առավել հայտնի է: Մենք ունենք դասի տեսախցիկ, որպեսզի կարողանանք գործառույթ ներմուծել այնպես, ասես դա ուղիղ հեռարձակում է և ոչ թե բազմաթիվ պատկերներ, որոնք հավաքվում են միասին, ուստի հիմնական հավելվածի ֆայլում այն ընդունվելու է որպես ուղիղ հեռարձակում ՝ առանց անհանգստանալու այն, ինչ կատարվում է կուլիսներում:

Լուսանկար 3. Սա մեր server.py ֆայլի մի մասն է, որտեղ ուղիղ հեռարձակման մասը կոդավորված է: Հիմնական դասը, որը մենք ներմուծեցինք դրա համար, Camera- ն է մեր camera_pi.py ֆայլից ՝ մեր server.py ֆայլի վերևում: Մենք ֆունկցիա ենք սահմանել մեր արմատային գրացուցակում, gen, սակայն այն օգտագործվում է միայն այն դեպքում, երբ մենք գնում ենք դեպի /video_feed, որտեղ գտնվում է մեր ուղիղ հեռարձակումը, որտեղ այն կանցնի այս գործառույթի միջոցով և կենդանի հոսքը կվերադարձնի վեբ էջին:

Խորհուրդ ենք տալիս: