å人ãšã®äŒè©±äžã«ã圌ãã®åŠæ ¡ã® 8 幎çãã 10 幎çã®åäŸãã¡ã¯ããã°ã©ãã³ã°ããŸã£ããæããããŠããªãããšãçªç¶ç¥ããŸããã WordãExcelããã®ä»ãã¹ãŠã ããŽããPascal ããExcel çšã® VBA ããããŸããã
ç§ã¯ãšãŠãé©ããã€ã³ã¿ãŒããããéããŠèªã¿å§ããŸããã
å°éåŠæ ¡ã®äœ¿åœã®äžã€ã¯ãæ
å ±å瀟äŒã®çºéæ°Žæºãã©ã€ãã¹ã¿ã€ã«ã®ç¶æ³ã«å¿ããæ°ããäžä»£ã®æè²ãæšé²ããããšã§ãã
ãã®ã³ãŒã¹ã§ã¯ãåŠçã Pascal ããã°ã©ãã³ã°èšèªã®åºæ¬æ§é ã«é¢ããç¥èãå®è·µçã«åŒ·åããããšãã§ããŸãã ïŒ2017幎床æäœè²é€šããã°ã©ã ããïŒ
æçµçã«ãç§ã¯æ°æéãè²»ãããŠããåŠç«¥åãã®ç°¡åãªãããã®äœææ¹æ³ãã®äŸãã¹ã±ããããããšã«ããŸããã
ãã®äžã«ã¯ãPowershell ã§å¥ã®åçŽãªããããäœæããWebhookããã¯ã€ã IPãå°çšãµãŒããŒãã¯ã©ãŠãã«å±éãããä»®æ³ãã·ã³ãªã©ã䜿çšããã«ãéåžžã® Windows ãæèŒããéåžžã®å®¶åºçš PC ã§åäœãããæ¹æ³ã瀺ãããŠããŸãã
TLDR: ãããŸãéå±ãªèšäºã§ãææ³çããã³äºå®äžã®ééãããããèªãã¹ããã®ã¯ãªãããŠãŒã¢ã¢ãåçããããŸããã
ãã®èšäºã«ã¯æ°ããããšã¯äœããããŸããã以åã«æžãããã»ãŒãã¹ãŠã®èšäºããããšãã°èšäºãªã©ã§ãã§ã«ããã¬ã«ã€ããŠæžãããŠããŸãã
ãŸããæ¯åæè²æç®ã«èšåããªãããã«ãèšäºã¯æå³çã«åé·ã«ãªã£ãŠããŸãã æ¬æäžã«ã¯ãGang 4ãPowerShell Deep DivesããŸã㯠AWS Well-Architected ãã¬ãŒã ã¯ãŒã¯ã® 5 ã€ã®æ±ãžã®èšåã¯ãããŸããã
åºæã®ä»£ããã«ã次ã®éšåãã¹ãããã§ããŸãã
ãèªç±ã«ã¹ãããããŠãã ãã2006 幎ãMicrosoft ã¯åœæã® Windows XPãVistaãããã³ Server 1.0 çšã® PowerShell 2003 ããªãªãŒã¹ããŸããã ããæå³ãcmdbat ã¹ã¯ãªãããvb ã¹ã¯ãªãããWindows Script HostãJScript ãªã©ã眮ãæããŸããã
çŸåšã§ããPowerShell ã¯ãã«ãŒããã¯ã©ã¹ãé¢æ°ãMS GUI åŒã³åºããååšããã«ããããããããããããŸã 䜿çšãããŠãã Delphi (ãŸãã¯ããããå€ããã®) ã§ã¯ãªããã㎠ãªãã·ã§ã³ã®æ¬¡ã®ã¹ããããšããŠã®ã¿èæ
®ãããŠããŸãã
Powershell ã䜿çšãããããšã¯æ¯èŒçãŸãã§ãPowerShell CoreãVMware vSphere PowerCLIãAzure PowerShellãMS ExchangeãDesired State Configurationã
Powershell ã«ã¯æ¬¡ã® XNUMX ã€ã®å€§ããªå©ç¹ããããŸãã
- ããã¯æ¯èŒçåçŽã§ãããã«é¢ããæç®ãäŸããããããããŸããããšãã°ãForeach ã«é¢ãããã·ã¢èªã®èšäºããããŸã - æ¬ãã
PowerShell ã®è©³çŽ° - ()ãš{}ã®éãã«ã€ã㊠- 圌ã¯ç·šéè
ãšäžç·ã«è¡ããŸã
ISE ãWindows ã«å«ãŸããŠããŸãã ããçš®ã®ãããã¬ããããŸãã - ããããé»è©±ããããã®ã¯ç°¡åã§ã
ã°ã©ãã£ã«ã«ã€ã³ã¿ãŒãã§ã€ã¹ãæ§ç¯ããããã®ã³ã³ããŒãã³ã .
0. æºåã
æã ã¯å¿ èŠã«ãªããŸãïŒ
- Windows PC (Windows 10 ã䜿çšããŠããŸã)
- å°ãªããšãããçš®ã®ã€ã³ã¿ãŒããã ã¢ã¯ã»ã¹ (NAT çµç±ãªã©)
- Telegram ãžã®ã¢ã¯ã»ã¹ãå¶éãããŠãããŠãŒã¶ãŒåã - ãã©ãŠã¶ã« freegate ãã€ã³ã¹ããŒã«ããŠèšå®ããŸããå Žåã«ãã£ãŠã¯ãSymple DNS Crypt ã䜿çšããŸãã
- æºåž¯é»è©±äžã§åäœããé»å ±ã¯ã©ã€ã¢ã³ãã䜿çšãã
- å€æ°ãé åãã«ãŒããšã¯äœããšããéåžžã«åºæ¬çãªããšãç解ããŸãã
èšäºãéããŠèªã -
1. å¥ã®ãã¹ãããããäœæããŸãããã
ããã¯èª°ãããã§ã«ç¥ã£ãŠããããã§ã«èµ·ãã£ãŠããããšãªã®ã§ãã¹ãããããããšãã§ããŸãäžèšèšäºã«ããéã ïœãŸãã¯Telegramçšã®ãããïœ ããã¯äŸç¶ãšããŠãŠãŒã¶ãŒåŽã§å®è¡ãããTelegram Bot API ã«ãªã¯ãšã¹ããè¡ãã¢ããªã±ãŒã·ã§ã³ã§ãã ããã«ãAPI ã¯æ確ã§ãããããã¯ãã©ã¡ãŒã¿ãŒã䜿çšããŠç¹å®ã® URL ã«ã¢ã¯ã»ã¹ããTelegram 㯠JSON ãªããžã§ã¯ãã§å¿çããŸãã
é¢é£ããåé¡: æªç¥ã®æ¹æ³ã§ JSON ãªããžã§ã¯ãããã³ãŒããååŸãããããäœããã®æ¹æ³ã§ (æå³çã§ã¯ãªã) å®è¡ã®ããã«éä¿¡ããå Žåããã®ã³ãŒãã¯èªåçã«å®è¡ãããŸãã
äœæããã»ã¹ã¯äžèšã® 12344321 ã€ã®èšäºã§èª¬æãããŠããŸãããç¹°ãè¿ããŸããé»å ±ã§é£çµ¡å ãéãã@botfather ãæ¢ãã/newbot ã«äŒããããã Botfortest1234 ãäœæããMynext1234544311bot ãšããååãä»ããäžæã®ããŒãæã€ã¡ãã»ãŒãžãåä¿¡ããŸãããã©ãŒã XNUMX:AbcDefNNNNNNNNNNNNNN
éµã¯å€§åã«ä¿ç®¡ãã絶察ã«æž¡ããªãããã«ããŸãããïŒ
次ã«ãã°ã«ãŒããžã®è¿œå ãçŠæ¢ãããªã©ãããããæ§æã§ããŸãããæåã®ã¹ãããã§ã¯ããã¯å¿ èŠãããŸããã
BotFather ã«ã/mybotããèŠæ±ããŠãæ°ã«å ¥ããªãå Žåã¯èšå®ã調æŽããŸãããã
ããäžåºŠé£çµ¡å
ãéãããã㧠@Botfortest12344321 ãèŠã€ã㊠(@ ã§æ€çŽ¢ãéå§ããããšãå¿
é ã§ã)ããéå§ããã¯ãªãã¯ããŠãããã«ã/ããããã«æ å
ãããšæžã蟌ã¿ãŸãã / èšå·ã¯å¿
é ã§ãããåŒçšç¬Šã¯å¿
èŠãããŸããã
ãã¡ããããããã¯äœãå¿çããŸããã
ããããäœæãããããšã確èªããŠéããŠã¿ãŸãããã
ããã§ã1234544311:AbcDefNNNNNNNNNNNNNN ã¯ä»¥åã«åãåã£ãããŒã§ãã
ãããŠæ¬¡ã®ãããªè¡ãååŸããŸã
{"ok":true,"çµæ":{""}}
æåã®ç§å¯ãã¬ãŒãº (ããŒã¯ã³) ãã§ããŸããã 次ã«ã1234544311 çªç®ã®ç§å¯çªå·ãã€ãŸãããããšã®ãã£ããã® ID ãèŠã€ããå¿ èŠããããŸãã åãã£ãããã°ã«ãŒããªã©ã¯åå¥ã§ãããç¬èªã®çªå·ãä»ããŠããŸã (ãªãŒãã³ ã°ã«ãŒãã®å Žåã¯ãã€ãã¹ãä»ããŠããå ŽåããããŸã)ã ãã®çªå·ã調ã¹ãã«ã¯ããã©ãŠã¶ã§ã¢ãã¬ã¹ããªã¯ãšã¹ãããå¿ èŠããããŸã (å®éããã©ãŠã¶ã§ã¯ãŸã£ããå¿ èŠãããŸããããããããç解ããããã«ããããå§ãããšããã§ããã) (XNUMX:NNNNNNNNNN ã¯ããŒã¯ã³ã§ã)
https://api.telegram.org/bot1234544311:NNNNNNNNN/getUpdates
ãããŠæ¬¡ã®ãããªå¿çãåŸãããŸã
{"ok":true,"result":[{"update_id":...,... ãã£ãã":{"ID":123456789
chat_id ãå¿ èŠã§ãã
ãã£ããã«æåã§æžã蟌ããããšã確èªããŠã¿ãŸããã: ãã©ãŠã¶ããã¢ãã¬ã¹ãåŒã³åºããŸã
https://api.telegram.org/botваÑÑПкеМ/sendMessage?chat_id=123456789&text="Life is directed motion"
ãã£ããã§ãããããã¡ãã»ãŒãžãåä¿¡ããå Žåã¯ã次ã®æ®µéã«é²ã¿ãŸãã
ãã®æ¹æ³ (ãã©ãŠã¶çµç±) ã§ããªã³ã¯çæã«åé¡ããããã©ããããŸãã¯äœããã©ããã«é ãããŠæ©èœããŠããªããã©ããããã€ã§ã確èªã§ããŸãã
èªã¿ç¶ããåã«ç¥ã£ãŠããã¹ãããš
Telegram ã«ã¯ããã€ãã®ã¿ã€ãã®ã°ã«ãŒã ãã£ãã (ãªãŒãã³ãã¯ããŒãº) ããããŸãã ãããã®ãã£ããã§ã¯ãäžéšã®æ©èœ (ID ãªã©) ãç°ãªããããåé¡ãçºçããããšããããŸãã
ä»ã 2019 幎ã®çµããããããŠçŸä»£ã®è±éã§ããæåãªãã³ ãªãŒã±ã¹ãã© (管çè
ãåŒè·å£«ãæ
å ±ã»ãã¥ãªã㣠ã¹ãã·ã£ãªã¹ããããã°ã©ããŒããããŠå®è³ªç㪠MVP) ã§ãããšãã²ã㌠V ã§ããã$i å€æ°ãšé
åãåºå¥ããŠãããšä»®å®ããŸããããã«ãŒãããã¹ã¿ãŒããŸãããä»åŸæ°å¹Žã§ Chocolatey ããã¹ã¿ãŒããã§ãããã
1. ããããäœãããããèãã
ã¢ã€ãã¢ã¯ãªãã£ãã®ã§ãèããå¿ èŠããããŸããã ç§ã¯ãã§ã«ãããããŒãããã¯ãäœæããŸããã ç§ã¯ãã©ããã«äœããéä¿¡ãããããããäœããããããŸããã§ããã Azure ã«æ¥ç¶ããã«ã¯ã¯ã¬ãžãã ã«ãŒããå¿ èŠã§ãããåŠçã¯ã©ãããã¯ã¬ãžãã ã«ãŒããå ¥æããŸãã? ãã¹ãŠãããã»ã©æªããªãããšã«æ³šæããå¿ èŠããããŸããäž»èŠãªã¯ã©ãŠãã§ã¯ãããçš®ã®ãã¹ãæéãç¡æã§æäŸãããŸãïŒãã ããã¯ã¬ãžããã«ãŒãçªå·ãå¿ èŠã§ãããããããXNUMXãã«ãåŒãèœãšãããããã§ãããã©ããã¯èŠããŠããŸããïŒåŸæ¥è¿åŽãããŸãããïŒ
AI ML ããªããã°ããããã®è²§ä¹è©©äººãŠã£ãŒããŒãäœãã®ã¯ããã»ã©é¢çœããããŸããã
èŸæžã«èŒã£ãŠããè±åèªãç§ã« (ãŸãã¯ç§ã«ã§ã¯ãªã) æãåºãããããããäœæããããšã«ããŸããã
ããŒã¿ããŒã¹ã®æäœãé¿ããããã«ãèŸæžã¯ããã¹ã ãã¡ã€ã«ã«ä¿åãããæåã§æŽæ°ãããŸãã
ãã®å Žåãä»äºã¯ä»äºã®åºæ¬ã瀺ãããšã§ãããå°ãªããšãéšåçã«å®æãã補åãäœãããšã§ã¯ãããŸããã
2. åããŠäœãã©ã®ããã«è©Šãã
C:poshtranslate ãšãããã©ã«ããŒãäœæããŸããã
ãŸããã©ã®ãããªçš®é¡ã® PowerShell ããããã確èªããŸããããstart-run çµç±ã§ ISE ãèµ·åããŠã¿ãŸãããã
ãã¯ãŒã·ã§ã«
ãŸãã¯ãã€ã³ã¹ããŒã«ãããŠããããã°ã©ã 㧠Powershell ISE ãèŠã€ããŸãã
èµ·ååŸããã€ãããªãã¿ã®ãããçš®ã®ãšãã£ã¿ããéããŸãããããã¹ããã£ãŒã«ãããªãå Žåã¯ããã€ã§ãããã¡ã€ã« - æ°èŠäœæããã¯ãªãã¯ã§ããŸãã
PowerShell ã®ããŒãžã§ã³ãèŠãŠã¿ãŸããã - ããã¹ã ãã£ãŒã«ãã«æžã蟌ã¿ãŸãã
get-host
ãããŠF5ãæŒããŸãã
Powershell ã¯ä¿åãææ¡ããŸã - ãå®è¡ããããšããŠããã¹ã¯ãªããã¯ä¿åãããŸããããšåæããpowershell ãããã¡ã€ã«ã C: poshtranslate ã®ååã§ä¿åããŸãã myfirstbotBT100
.
èµ·ååŸãäžéšã®ããã¹ã ãŠã£ã³ããŠã«ããŒã¿ ããŒãã«ã衚瀺ãããŸãã
Name : Windows PowerShell ISE Host
Version : 5.1.(О Ñак Ўалее)
ç§ã¯5.1ã®ãã®ãæã£ãŠããŸããããã§ååã§ãã å€ã Wââindows 7/8 ã䜿çšããŠããå Žåã¯ã倧ããªåé¡ã¯ãããŸããããã ããPowerShell ãããŒãžã§ã³ 5 ã«æŽæ°ããå¿
èŠããããŸãã
以äžã®ã³ãã³ã ã©ã€ã³ã«ãGet-Dateããšå
¥åããEnter ããŒãæŒããŠæéã確èªãã次ã®ã³ãã³ãã§ã«ãŒã ãã©ã«ããŒã«ç§»åããŸãã
cd
cls ã³ãã³ãã䜿çšããŠç»é¢ãã¯ãªã¢ããŸã (ããããrm ã䜿çšããå¿
èŠã¯ãããŸãã)ã
ã§ã¯ãäœãã©ã®ããã«æ©èœããã®ãã確èªããŠã¿ãŸããããã³ãŒãã§ã¯ãªã XNUMX è¡ãæžããŠããã®åäœãç解ããŠã¿ãŸãããã get-host ã®è¡ã # èšå·ã§ã³ã¡ã³ãã¢ãŠãããå°ãè¿œå ããŠã¿ãŸãããã
# ÐÑÐžÐŒÐµÑ ÑаблПМа бПÑа
# get-host
<# ÑÑП пÑÐžÐŒÐµÑ ÐŒÐœÐŸÐ³ÐŸÑÑÑПÑМПгП кПЌЌеМÑаÑÐžÑ #>
$TimeNow = Get-Date
$TimeNow
(èå³æ·±ãã®ã¯ãHabré ã®ã³ãŒãæžåŒèšå®ããããããŠã³ ãªã¹ãã«ã¯ XNUMX åã®ãªãã·ã§ã³ãããããšã§ãããã ããPowershell ã¯ååšããŸãããDos ã¯ååšããŸããPerl ã¯ååšããŸãã)
ãããŠãGUI ãã F5 ãŸã㯠">" ãæŒããŠã³ãŒããå®è¡ããŠã¿ãŸãããã
次ã®åºåãåŸãããŸãã
Saturday, December 8, 2019 21:00:50 PM (ОлО ÑÑП-ÑП ÑОпа)
ããã§ããããã® XNUMX è¡ãšããã€ãã®èå³æ·±ãç¹ãèŠãŠãå°æ¥ãã®åé¡ã«æ»ããªãããã«ããŸãããã
Pascal (ã ãã§ã¯ãããŸãã) ãšã¯ç°ãªããPowerShell èªäœãå€æ°ã«ã©ã®åãå²ãåœãŠããã決å®ããããšããŸããããã«ã€ããŠã®è©³çŽ°ã¯èšäºã«æžãããŠããŸãã
ãããã£ãŠã$TimeNow å€æ°ãäœæããããã«çŸåšã®æ¥ä»ãšæå»ã®å€ãå²ãåœãŠã (Get-Date) ããšã§ãããã«ã©ã®ãããªçš®é¡ã®ããŒã¿ãååšãããã«ã€ããŠããŸãå¿é
ããå¿
èŠããªããªããŸãã
確ãã«ããã®ç¡ç¥ãåŸã
害ãåãŒããããããŸããããããã¯åŸã®è©±ã§ãã 以äžã®æ¬æã«äŸã瀺ããŸãã
äœãåŸããããèŠãŠã¿ãŸãããã å®è¡ããŠã¿ãŸãããïŒã³ãã³ãã©ã€ã³ã§ïŒ
$TimeNow | Get-member
ç解ã§ããªãããã¹ãã®ããŒãžã衚瀺ãããŸã
ç解ã§ããªãæç« ã®äŸãã®ïŒ
PS C:> $TimeNow | Get-member
TypeName: System.DateTime
Name MemberType Definition
---- ---------- ----------
Add <b>Method </b>datetime Add(timespan value)
..
DisplayHint NoteProperty DisplayHintType DisplayHint=DateTime
Date <b>Property </b>datetime Date {get;}
Year Property int Year {get;}
..
DateTime ScriptProperty System.Object DateTime {get=if ((& { Set-StrictMode -Version 1; $this.DisplayHint }) -ieq "Date")...
ã芧ã®ãšãããTypeName: System.DateTime åã®å€æ°ããå€æ°ã®ã¡ãœãã (ãã®å€æ°ãªããžã§ã¯ãã§äœãã§ããããšããæå³ã§) ãšããããã£ã䜿çšããŠäœæãããŠããŸãã
é»è©±ããŸããã $TimeNow.DayOfYear
â ãã®å¹Žã®äœæ¥ç®ããååŸããŸãã
é»è©±ããŸããã $TimeNow.DayOfYear | Get-Member
- æã
ãåŸã TypeName: System.Int32
ãããŠã¡ãœããã®ã°ã«ãŒãã
é»è©±ããŸããã $TimeNow.ToUniversalTime()
- UTC ã§æå»ãååŸããŸã
ãããã¬ãŒ
ããã°ã©ã ãç¹å®ã®è¡ãŸã§å®è¡ããŠããã®æç¹ã®ããã°ã©ã ã®ç¶æ
ã確èªããå¿
èŠãããå ŽåããããŸãã ãã®ç®çã®ããã«ãISE ã«ã¯ãããã°æ©èœ (ãã¬ãŒã¯ ãã€ã³ãã®åãæ¿ã) ããããŸãã
äžéã®ã©ããã«ãã¬ãŒã¯ãã€ã³ãã眮ããããã XNUMX è¡ãå®è¡ããŠããã¬ãŒã¯ãã©ã®ããã«ãªããã確èªããŸãã
3. Telegram ããããšã®å¯Ÿè©±ãç解ãã
ãã¡ãããããããšã®å¯Ÿè©±ããã¹ãŠã® getpush ãªã©ã«ã€ããŠã¯ããã«å€ãã®æç®ãæžãããŠããŸãããçè«ã®åé¡ã¯ä»»æã«èæ ®ã§ããŸãã
ç§ãã¡ã®å Žåã次ã®ããšãå¿ èŠã§ãã
- éä¿¡ã§äœããéãããšãåŠã¶
- éä¿¡ããäœããåŸãããšãåŠã¶
3.1 éä¿¡ã§äœããéããããããåãåãããšãåŠã¶
ã¡ãã£ãšããã³ãŒã - ããŒã 3
Write-output "This is part 3"
$MyToken = "1234544311:AbcDefNNNNNNNNNNNNN"
$MyChatID = "123456789"
$MyProxy = "http://1.2.3.4:5678"
$TimeNow = Get-Date
$TimeNow.ToUniversalTime()
$ScriptDir = Split-Path $script:MyInvocation.MyCommand.Path
$BotVersion = "BT102"
$MyText01 = "Life is directed motion - " + $TimeNow
$URL4SEND = "https://api.telegram.org/bot$MyToken/sendMessage?chat_id=$MyChatID&text=$MyText01"
Invoke-WebRequest -Uri $URL4SEND
ãã®æç¹ã§ãã·ã¢é£éŠã§ã¯ãããªã¢ãŒã ãµãŒããŒã«æ¥ç¶ã§ããŸããããšãããšã©ãŒã衚瀺ãããŸãã
ãŸãã¯ãåä¿¡ããŸãã - éä¿¡äºæ¥è
ãšãããã·ãèšå®ããæ©èœããŠãããã©ããã«ãã£ãŠç°ãªããŸã
ããŠãæ®ã£ãŠããã®ã¯ãããã·ãè¿œå ããããšã ãã§ãã æå·åãããŠããªãäžè¬çã«è©æ¬ºçãªãããã·ã䜿çšãããšãå¥åº·ã«éåžžã«å±éºã§ããããšã«æ³šæããŠãã ããã
åäœãããããã·ãèŠã€ããã¿ã¹ã¯ã¯ããã»ã©é£ãããããŸãããå ¬éãããŠãã http ãããã·ã®ã»ãšãã©ã¯åäœããŸãã XNUMXã€ç®ã¯ç§ã«ãšã£ãŠã¯ããŸããã£ããšæããŸãã
ãããã·ã䜿çšããæ§æ:
Invoke-WebRequest -Uri $URL4SEND -Proxy $MyProxy
ããããšã®ãã£ããã§ã¡ãã»ãŒãžãåä¿¡ããå Žåã¯ããã¹ãŠåé¡ãªããå ã«é²ãããšãã§ããŸãã ããã§ãªãå Žåã¯ããããã°ãç¶è¡ããŸãã
$URL4SEND æååãã©ã®ããã«ãªããã確èªãã次ã®ããã«ãã©ãŠã¶ã§ãªã¯ãšã¹ãããŠã¿ãŠãã ããã
$URL4SEND2 = '"'+$URL4SEND+'"'
start chrome $URL4SEND2
3.2. ãã£ããã«ãäœãããæžãæ¹æ³ãåŠãã ã®ã§ãä»åºŠã¯ãããèªãã§ã¿ãŸããã
ããã« 4 è¡è¿œå ããŠã | ã®äžèº«ãèŠãŠã¿ãŸãããã ã¡ã³ããŒã®ååŸ
$URLGET = "https://api.telegram.org/bot$MyToken/getUpdates"
$MyMessageGet = Invoke-WebRequest -Uri $URLGET -Method Get -Proxy $MyProxy
Write-Host "Get-Member"
$MyMessageGet | Get-Member
æãèå³æ·±ããã®ã¯ç§ãã¡ã«æäŸãããŸã
Content Property string Content {get;}
ParsedHtml Property mshtml.IHTMLDocument2 ParsedHtml {get;}
RawContent Property string RawContent {get;set;}
äœãå ¥ã£ãŠãããèŠãŠã¿ãŸããã:
Write-Host "ParsedHtml"
$MyMessageGet.ParsedHtml # ÑÑÑ ÐžÐœÑеÑеÑМПе
Write-Host "RawContent"
$MyMessageGet.RawContent # О ÑÑÑ ÐžÐœÑеÑеÑМПе, МП еÑе к ÑÐŸÐŒÑ Ð¶Ðµ О ÑОÑаеЌПе.
Write-Host "Content"
$MyMessageGet.Content
ãã¹ãŠãããŸããããšã次ã®ãããªé·ãè¡ã衚瀺ãããŸãã
{"ok":true,"result":[{"update_id":12345678,
"message":{"message_id":3,"from":{"id"
幞ããªããšã«ã以åã«å ¬éãããèšäºãã·ã¹ãã 管çè åãã® Telegram ããããã®æ¬¡ã®è¡ (ã¯ãã $MyMessageGet.RawContent ã«ãããš | get-member 㯠System.String ã§ãïŒããã§ã«è§£äœãããŠããŸãã
4. åä¿¡ãããã®ãåŠçãã (éä¿¡æ¹æ³ã¯ãã§ã«ç¥ã£ãŠããŸã)
ãã§ã«æžãããŠããããã«
ãŸããWeb ã€ã³ã¿ãŒãã§ã€ã¹ãŸãã¯é»è©±ãããããã«ããã«ããã€ãã®ãã¬ãŒãºãæžã蟌ã¿ãŸã
/message1
/message2
/message3
ãããŠããã©ãŠã¶ãéã㊠$URLGET å€æ°ã§åœ¢æãããã¢ãã¬ã¹ã確èªããŸãã
次ã®ãããªãã®ã衚瀺ãããŸãã
{"ok":true,"result":[{"update_id":NNNNNNN,
"message":{"message_id":10, .. "text":"/message1"
"message":{"message_id":11, .. "text":"/message2
"message":{"message_id":12, .. "text":"/message3
ããã¯äœã§ããïŒ ãšã³ãããŒãšã³ãã®ã¡ãã»ãŒãžèå¥åããã£ããèå¥åãéä¿¡èå¥åããã®ä»å€ãã®æ å ±ãå«ããªããžã§ã¯ãã®é åãããªãè€éãªãªããžã§ã¯ãã
ãã ããããããã©ã®ãããªçš®é¡ã®ãªããžã§ã¯ãã§ãããããç解ããå¿ èŠã¯ãããŸãããäœæ¥ã®äžéšã¯ãã§ã«è¡ãããŠããŸãã äžèº«ãèŠãŠã¿ãŸããã:
åä¿¡ã¡ãã»ãŒãžã®èªã¿åããŸãã¯ãã® 4
Write-Host "This is part 4" <# кПМеÑМП ÑÑа ÑÑÑПка МаЌ Ме ÐœÑжМа в ОÑПгПвПЌ ÑекÑÑе, МП пП Мей ÑЎПбМП ОÑкаÑÑ. #>
$Content4Pars01 = ConvertFrom-Json $MyMessageGet.Content
$Content4Pars01 | Get-Member
$Content4Pars01.result
$Content4Pars01.result[0]
$Content4Pars01.result[0] | Get-Member
$Content4Pars01.result[0].update_id
$Content4Pars01.result[0].message
$Content4Pars01.result[0].message.text
$Content4Pars01.result[1].message.text
$Content4Pars01.result[2].message.text
5. ããã«ã€ããŠä»äœããã¹ãã§ãã?
çµæã®ãã¡ã€ã«ã myfirstbotBT105 ãªã©ã®ä»»æã®ååã§ä¿åããã¿ã€ãã«ãå€æŽããŠãæ¢ã«èšè¿°ãããŠãããã¹ãŠã®ã³ãŒããã³ã¡ã³ãã¢ãŠãããŸãã
<#start comment 105 end comment 105#>
ããã§ãèŸæžãã©ãã§ååŸããã (ãã¡ã€ã«å ã®ãã£ã¹ã¯äžã®ã©ã)ããããŠãããã©ã®ããã«è¡šç€ºããããã決å®ããå¿ èŠããããŸãã
ãã¡ãããã¹ã¯ãªããã®ããã¹ãå
ã«èšå€§ãªèŸæžãèšè¿°ããããšãã§ããŸãããããã¯ãŸã£ããçå€ãã§ãã
ããã§ã¯ãPowerShell ãæ£åžžã«åäœã§ãããã®ãèŠãŠã¿ãŸãããã
äžè¬ã«ã圌ã¯ã©ã®ãã¡ã€ã«ãæ±ããã¯æ°ã«ããŸãããç§ãã¡ã«ãšã£ãŠã¯é¢ä¿ãããŸããã
éžæè¢ãšããŠã¯ãtxt (䜿çšã§ããŸããããªã)ãcsvãxml ããããŸãã
ã¿ããªèŠãŠãããã§ãã? ã¿ããªã«äŒããŸãããã
ã¯ã©ã¹ MyVocabClassExample1 ãšå€æ° $MyVocabExample1 ãäœæããŸããã
ã¯ã©ã¹ã$ãªãã§æžãããŠããããšã«æ³šæããŠãã ãã
ã³ãŒã#5
write-host "This is part 5"
class MyVocabClassExample1 {
[string]$Original # ÑлПвП
[string]$Transcript
[string]$Translate
[string]$Example
[int]$VocWordID # ПÑÐµÐœÑ ÐžÐœÑеÑеÑÐœÑй ЌПЌеМÑ. ÐÑпПлÑзПваМОе int Ñ ÐµÐ³ÐŸ ПгÑаМОÑеМОÑЌО ÐŒÐŸÐ¶ÐµÑ Ð¿ÐŸÑПй пÑОвПЎОÑÑ Ðº ЎОкОЌ пПÑлеЎÑÑвОÑÐŒ, ÐŽÐ»Ñ Ð¿ÑОЌеÑа - МеЎавМОй ÑлÑÑай Ñ SSD HPE. ÐзМаÑалÑМП Ñ ÐœÐµ ÑÑал ЎПбавлÑÑÑ ÑÑÐŸÑ ÑлеЌеМÑ, пПÑПЌ вÑе же ЎПпОÑал О закПЌЌеМÑОÑПвал.
}
$MyVocabExample1 = [MyVocabClassExample1]::new()
$MyVocabExample1.Original = "Apple"
$MyVocabExample1.Transcript = "[ ËapÉl ]"
$MyVocabExample1.Translate = "ЯблПкП"
$MyVocabExample1.Example = "An apple is a sweet, edible fruit produced by an apple tree (Malus domestica)"
# $MyVocabExample1.$VocWordID = 1
$MyVocabExample2 = [MyVocabClassExample1]::new()
$MyVocabExample2.Original = "Pear"
$MyVocabExample2.Transcript = "[ pe(É)r ]"
$MyVocabExample2.Translate = "ÐÑÑÑа"
$MyVocabExample2.Example = "The pear (/ËpÉÉr/) tree and shrub are a species of genus Pyrus"
# $MyVocabExample1.$VocWordID = 2
ããããã¡ã€ã«ã«æžã蟌ãã§ã¿ãŸããã
äžéšã®ã³ãŒã #5.1
Write-Host $ScriptDir # МаЎеÑÑÑ $ScriptDir Ð²Ñ ÐœÐµ закПЌЌеМÑОÑПвалО
$MyFilenameExample01 = $ScriptDir + "Example01.txt"
$MyFilenameExample02 = $ScriptDir + "Example02.txt"
Write-Host $MyFilenameExample01
Out-File -FilePath $MyFilenameExample01 -InputObject $MyVocabExample1
Out-File -FilePath $MyFilenameExample01 -InputObject -Append $MyVocabExample2
notepad $MyFilenameExample01
- ãããŠãOut-File -FilePath $MyFilenameExample01 -InputObject -Append $MyVocabExample2 ã®è¡ã§ãšã©ãŒãçºçããŸãã
圌ã¯ããããããããªããŠæ®å¿µãªããšã ããšä»ãå ãããã¯ãªãã£ãã
$MyVocabExample3AsArray = @($MyVocabExample1,$MyVocabExample2)
Out-File -FilePath $MyFilenameExample02 -InputObject $MyVocabExample3AsArray
notepad $MyFilenameExample02
ãã°ããæ§åãèŠãŠã¿ãŸãããã çŽ æŽãããããã¹ããã¥ãŒã§ãããããããšã¯ã¹ããŒãããŠæ»ãã«ã¯ã©ãããã°ããã§ãããã? ã«ã³ããªã©ã®äœããã®ããã¹ãåºåãæåãå°å ¥ããå¿ èŠããããŸãã?
ãããŠæçµçã«ãã«ã³ãåºåãå€ïŒCSVïŒãã¡ã€ã«AããåŸãããŸãã
#
$MyFilenameExample03 = $ScriptDir + "Example03.csv"
$MyFilenameExample04 = $ScriptDir + "Example04.csv"
Export-Csv -Path $MyFilenameExample03 -InputObject $MyVocabExample1
Export-Csv -Path $MyFilenameExample03 -InputObject $MyVocabExample2 -Append
Export-Csv -Path $MyFilenameExample04 -InputObject $MyVocabExample3AsArray
ç°¡åã«ãããããã«ãMS ã¯ãã®ããžãã¯ã«ãã£ãŠç¹ã«åºå¥ãããŸãããåæ§ã®æé ã«å¯ŸããŠãããå Žåã«ã¯ -FilePath ã䜿çšãããå¥ã®å Žåã«ã¯ -Path ã䜿çšãããŸãã
ããã«ãXNUMX çªç®ã®ãã¡ã€ã«ã§ã¯ãã·ã¢èªãæ¶ããŠããŸããããXNUMX çªç®ã®ãã¡ã€ã«ã§ã¯ãäœããèµ·ãã£ãããšãå€æããŸããã #TYPE ã·ã¹ãã .ãªããžã§ã¯ã[] 00
# "Count","Length","LongLength","Rank","SyncRoot","IsReadOnly","IsFixedSize","IsSynchronized"
#
å°ãæžãçŽããŠã¿ãŸããã:
Export-Csv -Path $MyFilenameExample03 -InputObject $MyVocabExample1 -Encoding Unicode
Export-Csv -Path $MyFilenameExample03 -InputObject $MyVocabExample2 -Append -Encoding Unicode
notepad $MyFilenameExample03
notepad $MyFilenameExample04
圹ã«ç«ã£ãããã§ãããç§ã¯ãŸã ãã®åœ¢åŒã奜ãã§ã¯ãããŸããã
ç¹ã«æ°ã«å
¥ããªãã®ã¯ããªããžã§ã¯ãã®è¡ããã¡ã€ã«ã«çŽæ¥æžã蟌ããªãããšã§ãã
ãšããã§ããã¡ã€ã«ãžã®æžã蟌ã¿ãéå§ããã®ã§ãèµ·åãã°ãèšé²ãå§ããŠãããã§ãããã? å€æ°ãšããŠæéãæã£ãŠããããã¡ã€ã«åãèšå®ã§ããŸãã
確ãã«ããŸã æžãããšã¯ãããŸãããããã°ãããŒããŒã·ã§ã³ããæé©ãªæ¹æ³ãèããããšãã§ããŸãã
ãšããããxmlãè©ŠããŠã¿ãŸãããã
ããã€ãã® XML
$MyFilenameExample05 = $ScriptDir + "Example05.xml"
$MyFilenameExample06 = $ScriptDir + "Example06.xml"
Export-Clixml -Path $MyFilenameExample05 -InputObject $MyVocabExample1
Export-Clixml -Path $MyFilenameExample05 -InputObject $MyVocabExample2 -Append -Encoding Unicode
Export-Clixml -Path $MyFilenameExample06 -InputObject $MyVocabExample3AsArray
notepad $MyFilenameExample05
notepad $MyFilenameExample06
XML ãžã®ãšã¯ã¹ããŒãã«ã¯ãå¯èªæ§ããªããžã§ã¯ãå šäœã®ãšã¯ã¹ããŒããããã³æŽæ°ãå®è¡ããå¿ èŠããªããªã©ãå€ãã®å©ç¹ããããŸãã
ãã£ãŠã¿ãã
XML ããã®ã¡ãã£ãšããèªã¿åã
$MyFilenameExample06 = $ScriptDir + "Example06.xml"
$MyVocabExample4AsArray = Import-Clixml -Path $MyFilenameExample06
# $MyVocabExample4AsArray
# $MyVocabExample4AsArray[0]
# О МеЌМПгП П ÑПвеÑÑеММП МеПÑевОЎМÑÑ
ÐœÑаМÑаÑ
. Powershell вÑÐµÐŒÑ ÐŸÑ Ð²ÑеЌеМО Ð²ÐµÐŽÐµÑ ÑÐµÐ±Ñ ÐœÐµ Ñак, как вÑПЎе Ð±Ñ ÐºÐ°Ðº Ð±Ñ ÑÑПОлП Ð±Ñ ÐŸÐ¶ÐžÐŽÐ°ÑÑ Ð±Ñ.
# МапÑÐžÐŒÐµÑ Ñ ÐŒÐµÐœÑ ÑÑО Ўва вÑвПЎа ПÑлОÑаÑÑÑÑ
# Write-Output $MyVocabExample4AsArray
# write-host $MyVocabExample4AsArray
ã¿ã¹ã¯ã«æ»ããŸãããã ãã¹ã ãã¡ã€ã«ãäœæãããããèªã¿åããŸãããä¿å圢åŒã¯æ確ã§ããå¿ èŠã«å¿ããŠãè¡ãè¿œå ããã³åé€ããããã®å¥ã®å°ããªãã¡ã€ã« ãšãã£ã¿ãäœæã§ããŸãã
ã¿ã¹ã¯ã¯å°ããªãã¬ãŒãã³ã° ããããäœæããããšã§ãã£ãããšãæãåºãããŠãã ããã
äœæ¥åœ¢åŒ: ãäŸãã³ãã³ãããããã«éä¿¡ãããšããããã¯ã©ã³ãã ã«éžæãããåèªãšæåèµ·ãããéä¿¡ãã10 ç§åŸã«ç¿»èš³ãšã³ã¡ã³ããéä¿¡ããŸãã ç§ãã¡ã¯ã³ãã³ãã®èªã¿æ¹ãç¥ã£ãŠããŸããããããã·ãèªåçã«éžæããŠãã§ãã¯ããã¡ãã»ãŒãž ã«ãŠã³ã¿ãŒãå¿åŽã®åœŒæ¹ã«ãªã»ããããæ¹æ³ãåŠã³ãããšèããŠããŸãã
以åã«äžèŠãšããŠã³ã¡ã³ãã¢ãŠãããããã¹ãŠã®ã³ã¡ã³ãã解é€ããtxt ãš csv ã䜿çšããŠäžèŠã«ãªã£ãäŸãã³ã¡ã³ãã¢ãŠãããŠããã¡ã€ã«ãããŒãžã§ã³ B106 ãšããŠä¿åããŸãããã
ãããããã§ãã ããäžåºŠãããã«äœããéä¿¡ããŠã¿ãŸãããã
6. æ©èœããã®æŽŸé£ãªã©
åä¿¡åŠçãè¡ãåã«ããã¹ãã¡ãã»ãŒãžä»¥å€ã®ãå°ãªããšãäœãããéä¿¡ããæ©èœãäœæããå¿ èŠããããŸãã
ãã¡ããããã®äŸã§ã¯éä¿¡ãšåŠç㯠XNUMX åã ãã§ãããåãããšãè€æ°åè¡ãå¿ èŠãããå Žåã¯ã©ãããã°ããã§ããããã
é¢æ°ãæžãæ¹ãç°¡åã§ãã ãããã£ãŠããã¡ã€ã«ããèªã¿åãããã¿ã€ã ãªããžã§ã¯ã $MyVocabExample4AsArray ã®å€æ°ããæ倧 XNUMX ã€ã®èŠçŽ ãããªãé
åã®åœ¢åŒã«ãªããŸãã
åæã«ãæèšãæ±ããŸã; åŸã§å¿ èŠã«ãªããŸã (å®éããã®äŸã§ã¯æèšã¯å¿ èŠãããŸãã:)
äžéšã®ã³ãŒã #6.1
Write-Output "This is Part 6"
$Timezone = (Get-TimeZone)
IF($Timezone.SupportsDaylightSavingTime -eq $True){
$TimeAdjust = ($Timezone.BaseUtcOffset.TotalSeconds + 3600) } # пÑОвеЎеММПе вÑеЌÑ
ELSE{$TimeAdjust = ($Timezone.BaseUtcOffset.TotalSeconds)
}
function MyFirstFunction($SomeExampleForFunction1){
$TimeNow = Get-Date
$TimeNow.ToUniversalTime()
# $MyText02 = $TimeNow + " " + $SomeExampleForFunction1 # О Ð²ÐŸÑ ÑÑÑ ÐŒÑ Ð¿ÐŸÐ»ÑÑОЌ ПÑОбкÑ
$MyText02 = $SomeExampleForFunction1 + " " + $TimeNow # а ÑÑÑ ÐœÐµ пПлÑÑОЌ, кÑП ЎПгаЎаеÑÑÑ Ð¿ÐŸÑÐµÐŒÑ - ÑÐŸÑ ÐŒÐŸÐ»ÐŸÐŽÐµÑ.
$URL4SendFromFunction = "https://api.telegram.org/bot$MyToken/sendMessage?chat_id=$MyChatID&text=$MyText02"
Invoke-WebRequest -Uri $URL4SendFromFunction -Proxy $MyProxy
}
ç°¡åã«ãããããã«ããã®é¢æ°ã¯ãåã«ããŒãã³ãŒãã£ã³ã°ããã $MyToken ãš $MyChatID ãåŒã³åºããŸãã
ãããè¡ãå¿ èŠã¯ãªãã$MyToken ããããããšã« XNUMX ã€ã§ããå Žåã$MyChatID ã¯ãã£ããã«å¿ããŠå€ãããŸãã
ãã ããããã¯äŸã§ãããããããã§ã¯ç¡èŠããŸãã
$MyVocabExample4AsArray ã¯é åã«éåžžã«äŒŒãŠããŸãããé åã§ã¯ãªãããã ãã åãåãããšã¯ã§ããŸãã ãã®é·ããèŠæ±ããŸãã
ããäžåºŠãç§ãã¡ã¯ã§ããªãããšãããªããã°ãªããŸãã - èŠåã«åŸã£ãŠããªããã©ã·ã¥ãŒã - ãããåãåã£ãŠæ°ããŠãã ãã
äžéšã®ã³ãŒã #6.2
$MaxRandomExample = 0
foreach ($Obj in $MyVocabExample4AsArray) {
$MaxRandomExample ++
}
Write-Output $MaxRandomExample
$RandomExample = Get-Random -Minimum 0 -Maximum ($MaxRandomExample)
$TextForExample1 = $MyVocabExample4AsArray[$RandomExample].Original
# MyFirstFunction($TextForExample1)
# ОлО в ÐŸÐŽÐœÑ ÑÑÑПкÑ
# MyFirstFunction($MyVocabExample4AsArray[Get-Random -Minimum 0 -Maximum ($MaxRandomExample -1)].Example)
# УгаЎайÑе ÑаЌО, какПй пÑÐžÐŒÐµÑ Ð»ÐµÐ³Ñе ÑОÑаеÑÑÑ Ð¿ÐŸÑÑПÑПММОЌО лÑÐŽÑЌО.
ã©ã³ãã
ããããååŸã§ããŸãããç¹å¥ãªäŸããããŸãã äŸ 2: 0 ãã 99 ãŸã§ã®ã©ã³ãã ãªæŽæ°ãååŸãã Get-Random -Minimum 100
ãããã£ãŠã0..1 ã®å Žåã¯ãæ倧èŠçŽ æ° = 0 ã§ãµã€ãº 2..1 ãèšå®ããå¿
èŠããããŸãã
7. åä¿¡ã¡ãã»ãŒãžã®åŠçãšæ倧ãã¥ãŒé·
å
ã»ã©ã©ãã«ç«ã¡å¯ããŸãããïŒ åãåã£ãå€æ° $MyMessageGet ããããŸã
ããã³ããããååŸããã $Content4Pars01ããã®ãã¡ãContent4Pars01.result é
åã®èŠçŽ ã«èå³ããããŸãã
$Content4Pars01.result[0].update_id
$Content4Pars01.result[0].message
$Content4Pars01.result[0].message.text
ãããã« /message10ã/message11ã/message12ã/word ãéä¿¡ããããã« /word ãš /hello ãéä¿¡ããŠã¿ãŸãããã
äœãåŸããããèŠãŠã¿ãŸããã:
$Content4Pars01.result[0].message.text
$Content4Pars01.result[2].message.text
åä¿¡ãããã®ããã¹ãŠèª¿ã¹ãŠãã¡ãã»ãŒãžã /word ã ã£ãå Žåã¯å¿çãéä¿¡ããŸããã
if-elseif ãšè¡šçŸãããæ§é äœã®å Žåã¯ãPowerShell ã§åŒã³åºãããŸãã
äžéšã®ã³ãŒã #7.1
Write-Output "This is part 7"
Foreach ($Result in $Content4Pars01.result) # Ðа, ЌПжМП ÑЎелаÑÑ Ð±ÑÑÑÑее
{
switch -wildcard ($Result.message.text)
{
"/word" {MyFirstFunction($TextForExample1)}
}
}
ã¹ã¯ãªãããæ°åå®è¡ããŠã¿ãŸãããã ç¹ã«ã©ã³ãã ã®å®è£ ã«èª€ãããã£ãå Žåãå®è¡è©Šè¡ããšã«åãåèªã XNUMX åååŸãããŸãã
ã§ããããŠãã ããã /word ãå床éä¿¡ããŠããªãã®ã«ãã¡ãã»ãŒãžãå床åŠçãããã®ã¯ãªãã§ãã?
ãããã«ã¡ãã»ãŒãžãéä¿¡ãããã¥ãŒã®é·ãã¯æé (100 ã¡ãã»ãŒãžã 200 ã¡ãã»ãŒãžã ãšæããŸã) ãªã®ã§ãæåã§ã¯ãªã¢ããå¿ èŠããããŸãã
ãã¡ããããã¯ããã¥ã¡ã³ãã«èšèŒãããŠããŸãããå¿ ãèªãå¿ èŠããããŸãã
ãã®å Žåã?chat_id ãã©ã¡ãŒã¿ãå¿ èŠã§ããã&timeoutã&limitã&parse_mode=HTMLãããã³ &disable_web_page_preview=true ã¯ãŸã å¿ èŠãããŸããã
ã®ããã¥ã¡ã³ã
è¿ãããæåã®æŽæ°ã®èå¥åã 以åã«åä¿¡ããæŽæ°ã®èå¥åã®äžã§æã倧ãããã®ãã XNUMX 倧ãããªããã°ãªããŸããã ããã©ã«ãã§ã¯ãæãå€ããã®ããæŽæ°ãããŸãã
æªç¢ºèª ã¢ããããŒããè¿ãããŸãã getUpdates ã ãªãã»ãã ããé«ã update_id ãããã è² ã®ãªãã»ãããæå®ãããšãæŽæ°ãã¥ãŒã®æåŸãã -offset update ããå§ãŸãæŽæ°ãååŸã§ããŸãã 以åã®æŽæ°ã¯ãã¹ãŠå¿ããããŸãã
ãèŠãããïŒ
$Content4Pars01.result[0].update_id
$Content4Pars01.result[1].update_id
$Content4Pars01.result | select -last 1
($Content4Pars01.result | select -last 1).update_id
ã¯ãããªã»ããããŠé¢æ°ãå°ãæžãçŽããŸãã ãªãã·ã§ã³ã¯ XNUMX ã€ãããŸããã¡ãã»ãŒãžå šäœãé¢æ°ã«æž¡ããŠé¢æ°å ã§å®å šã«åŠçããããã¡ãã»ãŒãž ID ã®ã¿ãæå®ããŠãªã»ãããããã§ãã ããšãã°ãXNUMX çªç®ã®ãã®ã¯ããåçŽã«èŠããŸãã
以åã¯ãããã¹ãŠã®ã¡ãã»ãŒãžãã¯ãšãªæååã¯æ¬¡ã®ããã«ãªã£ãŠããŸããã
$URLGET = "https://api.telegram.org/bot$MyToken/getUpdates"
ãããŠããã¯æ¬¡ã®ããã«ãªããŸã
$LastMessageId = ($Content4Pars01.result | select -last 1).update_id
$URLGET1 = "https://api.telegram.org/bot$mytoken/getUpdates?offset=$LastMessageId&limit=100"
$MyMessageGet = Invoke-WebRequest -Uri $URLGET1 -Method Get -Proxy $MyProxy
æåã«ãã¹ãŠã®ã¡ãã»ãŒãžãåä¿¡ããŠââåŠçããåŠçãæåããåŸã§ã®ã¿ãªã¯ãšã¹ããæªç¢ºèªâ確èªãããããšã誰ãçŠããŠããŸããã
ãã¹ãŠã®åŠçãå®äºããåŸã«ç¢ºèªãåŒã³åºãã®ã¯ãªãæå³ãããã®ã§ãããã? å®è¡äžã«å€±æããå¯èœæ§ã¯ãããŸããç¡æã®ãã£ãããããã®äŸã§ã¯ãXNUMX ã€ã®ã¡ãã»ãŒãžã倱ãããããšã¯ç¹å¥ãªããšã§ã¯ãããŸãããã誰ãã®çµŠäžãã«ãŒãååŒãåŠçããŠããå Žåã«ã¯ãçµæã¯ããã«æªåããå¯èœæ§ããããŸãã
ããã«æ°è¡ã®ã³ãŒã
$LastMessageId = ($Content4Pars01.result | select -last 1).update_id #ПÑÐžÐ±ÐºÑ Ð² ÑÑПЌ ЌеÑÑе пÑеЎпПлагаеÑÑÑ ÐžÑпÑавОÑÑ ÑаЌПÑÑПÑÑелÑМП.
$URLGET1 = "https://api.telegram.org/bot$mytoken/getUpdates?offset=$LastMessageId&limit=100"
Invoke-WebRequest -Uri $URLGET1 -Method Get -Proxy $MyProxy
8. çµè«ã§ã¯ãªã
åºæ¬çãªæ©èœ - ã¡ãã»ãŒãžã®èªã¿åãããã¥ãŒã®ãªã»ããããã¡ã€ã«ããã®èªã¿åãããã¡ã€ã«ãžã®æžã蟌ã¿ãå®è¡ããã衚瀺ãããŸãã
ããã¹ãããšã¯ããš XNUMX ã€ã ãã§ãã
- ãã£ããã§ã®ãªã¯ãšã¹ãã«å¯Ÿããæ£ããåçã®éä¿¡
- ããããè¿œå ããããã£ãããžã®å¿çã®éä¿¡
- ã«ãŒãå ã§ã³ãŒããå®è¡ãã
- Windows ã¹ã±ãžã¥ãŒã©ããããããèµ·åããŸãã
ãããã®ã¿ã¹ã¯ã¯ãã¹ãŠåçŽã§ã次ã®ãããªãã©ã¡ãŒã¿ã«é¢ããããã¥ã¡ã³ããèªãããšã§ç°¡åã«å®è¡ã§ããŸãã
Set-ExecutionPolicy Unrestricted ããã³ -ExecutionPolicy Bypass
ãã©ãŒã ã®ãµã€ã¯ã«
$TimeToSleep = 3 # ПпÑÐŸÑ ÐºÐ°Ð¶ÐŽÑе 3 ÑекÑМЎÑ
$TimeToWork = 10 # ЌОМÑÑ
$HowManyTimes = $TimeToWork*60/$TimeToSleep # ÑÑеÑÑОк ÐŽÐ»Ñ ÑОкла
$MainCounter = 0
for ($MainCounter=0; $MainCounter -le $HowManyTimes) {
sleep $TimeToSleep
$MainCounter ++
èªãã§ãã ãã£ãçæ§ãããããšãããããŸããã
åºæïŒ habr.com