77from helper_sql import *
88from addresses import decodeAddress
99from pyelliptic .openssl import OpenSSL
10+ from utils import str_broadcast_subscribers
1011import time
1112
1213def accountClass (address ):
1314 if not shared .config .has_section (address ):
14- subscription = SubscriptionAccount (address )
15- if subscription .type != 'subscription' :
16- return None
15+ if address == str_broadcast_subscribers :
16+ subscription = BroadcastAccount (address )
17+ if subscription .type != 'broadcast' :
18+ return None
19+ else :
20+ subscription = SubscriptionAccount (address )
21+ if subscription .type != 'subscription' :
22+ return None
23+ return subscription
1724 try :
1825 gateway = shared .config .get (address , "gateway" )
1926 for name , cls in inspect .getmembers (sys .modules [__name__ ], inspect .isclass ):
@@ -36,9 +43,11 @@ def __init__(self, address = None):
3643 self .type = "chan"
3744 elif shared .safeConfigGetBoolean (self .address , 'mailinglist' ):
3845 self .type = "mailinglist"
46+ elif self .address == str_broadcast_subscribers :
47+ self .type = 'broadcast'
3948 else :
4049 queryreturn = sqlQuery (
41- '''select label from subscriptions where address=?''' , address )
50+ '''select label from subscriptions where address=?''' , self . address )
4251 if queryreturn :
4352 self .type = 'subscription'
4453
@@ -72,6 +81,10 @@ def parseMessage(self, toAddress, fromAddress, subject, message):
7281
7382class SubscriptionAccount (BMAccount ):
7483 pass
84+
85+
86+ class BroadcastAccount (BMAccount ):
87+ pass
7588
7689
7790class GatewayAccount (BMAccount ):
0 commit comments