Use message sender ID for replying, additionally remove the keyboard after a bill...
[SonOfLokstallBot.git] / src / rules.php
1 <?php declare(strict_types=1);
2
3 return [
4 'Electricity' => [
5 'imapQuery' => 'FROM "@synergy.net.au"',
6 'regex' => '/New charges: \$(?<amount>[0-9]+(\.[0-9]{2})?) Due (?<due>\d{1,2} \w{3} \d+)/'
7 ],
8 'Water' => [
9 'imapQuery' => 'FROM "@watercorporation.com.au"',
10 'regex' => '/Due date:.*?(?<due>\d{1,2}\/\d{2}\/\d{4}).*?Amount to pay:.*\$(?<amount>[0-9]+(\.[0-9]{2})?)/',
11 'messageTransform' =>(glue(" "), map('trim'), lines, 'strip_tags', 'base64_decode'),
12 'dateTransform' => function($date) {
13 return str_replace('/', '-', $date);
14 }
15 ],
16 'Internet' => [
17 'imapQuery' => 'FROM "@online.telstra.com"',
18 'regex' => '/Total \$(?<amount>[0-9]+(\.[0-9]{2})?).*?Due Date (?<due>\d{1,2} \w{3} \d{4})/',
19 'messageTransform' =>(glue(" "), map('trim'), lines, 'strip_tags', 'html_entity_decode')
20 ],
21 'Gas' => [
22 'imapQuery' => 'FROM "@energy.agl.com.au"',
23 'regex' => '/Direct Debit amount: \$(?<amount>[0-9]+(\.[0-9]{2})?).*?Direct Debit date: (?<due>\d{1,2} \w{3} \d+)/',
24 'messageTransform' =>(glue(" "), map('trim'), lines)
25 ]
26 ];