Configuration↵
config.ps1
# Ping Device $PingDevice = $true # Email2Call $SkipCertificateCheck = $False $Server = "mail.example.com" $Domain = "example.com" $Account = "[email protected]" $Password = "P@ssw0rd" $MoveMailToFolder = "Junk" # Model Configuration (A6PRO, SIM800) $Model = "A6PRO" # UTF Support $UTF = $false # Call $CallDuration = "30" # Baud Rate $BaudRate = "115200"
Ping Device↵
PingDevice↵
- Switch for enabling device ping / port availability check. Ping can prevent device sleep, it is recommended to be
$true
.
Email2Call↵
SkipCertificateCheck↵
- Switch for skipping SSL check if your IMAP is using self signed cert or if root CA is not on the system.
$Server↵
- URL of IMAP server.
$Domain↵
- Domain is used for contacts validation in mail check.
$Account↵
- Unified mailbox/account where emails are sent/forwarded.
$Password↵
- Password of
$Account
$MoveMailToFolder↵
- Script is moving processed email to defined IMAP folder.
Model Configuration↵
$Model↵
- Select your device model for compatible syntax.
UTF Support↵
$UTF↵
$false
or$true
, however not all hardware support UCS2 over CSCS.- If disabled character limit is 160
- If enabled limit is 70 and will accept UTF8 characters.
Call↵
$CallDuration↵
- This is timer after which call is dropped.
Depending of carrier load or signal, it could take anywhere from 1 to ~5 seconds to establish call, this time is deducted from $CallDuration (default value 30
). Meaning the phone will ring for ~25s if establishing call took 5s.
Baud Rate↵
$BaudRate↵
- For most devices default BaudRate is
115200
, if stated otherwise, replace it in config.
Contacts↵
contacts.ps1
Contact emails are matched to phone number for$contacts = @{ '[email protected]' = "123456789" '[email protected]' = "223456789" '[email protected]' = "323456789" }
Email2Call
feature.
Server Configuration↵
server.ps1
# Enter PSScriptRoot cd $PSScriptRoot Start-PodeServer -Threads 4 -RootPath "$PWD" { Add-PodeEndpoint -Address * -Port 8080 -Protocol Http New-PodeLoggingMethod -Terminal | Enable-PodeErrorLogging -Levels @("Error", "Warning") Add-PodeRoute -Method Get -Path '/call' -ScriptBlock { & "$PSScriptRoot\add2queueCALL.ps1" -number $WebEvent.Query['number'] } Add-PodeRoute -Method Get -Path '/sms' -ScriptBlock { $parameters = $WebEvent.Query Write-Output $parameters $result = (& "$PSScriptRoot\add2queueSMS.ps1" @parameters) } Add-PodeSchedule -Name 'startup-remove-lock' -Cron '*/1 * * * *' -Limit 1 -ScriptBlock { pwsh -Command "Remove-Item `"$using:PWD\Instance.Lock`" -Force" } Add-PodeSchedule -Name 'mail-check' -Cron '*/1 * * * *' -ScriptBlock { pwsh -File "$using:PWD/mail-check.ps1" } Add-PodeSchedule -Name 'task' -Cron '*/1 * * * *' -ScriptBlock { pwsh -File "$using:PWD/task.ps1" } }
Pode server is preconfigured to run with 4 threads. More info
Currently server is not parameterized and features can't be excluded with config, but feel free to comment out any feature that is not wanted.
✏️ Last Change:
📖 Publication Date: 2024-06-14 11:41