Changeset 103:53ed1f0943b8

Show
Ignore:
Timestamp:
10/26/08 18:20:58 (3 years ago)
Author:
chris
Branch:
unix
Message:

added an OSD alert device

Files:
1 added
1 modified

Legend:

Unmodified
Added
Removed
  • StormConfig.py

    r100 r103  
    5252from SmsAlertDevice import * 
    5353from ExecutionAlertDevice import * 
     54from OsdAlertDevice import * 
    5455 
    5556__APPNAME__ = "StormXmlSiren" 
     
    6061                self.devices           = [] 
    6162                self.__history_file    = '' 
    62                 self.__jabber_support  = False 
    6363                self.log               = logging.getLogger('StormConfig') 
    6464                self.__max_history     = History.DEFAULT_MAX_HISTORICAL_EVENTS 
     
    7373                jabberLoadAttempted = False 
    7474                jabber_available    = False 
     75                osdLoadAttempted = False 
     76                osd_available    = False 
     77 
    7578                smtpInfo            = EmailAlertDeviceInfo() 
    7679                jabberInfo          = JabberAlertDeviceInfo() 
    7780                mediaInfo           = MediaAlertDeviceInfo() 
    7881                exeInfo             = ExecutionAlertDeviceInfo() 
     82                osdInfo             = OsdAlertDeviceInfo() 
    7983 
    8084                xstates = self.getRequired('main','states') 
     
    133137                                                self.devices.append(JabberAlertDevice(to,jabberInfo,alerts,areas)) 
    134138                                        else: 
    135                                                 self.log.warning("Jabber Support Not Enabled, but Jabber Device Requested!") 
     139                                                self.log.error("Jabber Support Not Enabled, but Jabber Device Requested!") 
     140                                if(dev == "osd"): 
     141                                        if(not osdLoadAttempted): 
     142                                                osd_available = self.__loadOsd() 
     143                                                osdLoadAttempted = True 
     144 
     145                                        if(osd_available): 
     146                                                position = self.get(str(i),"position", DEFAULT_OSD_POSITION) 
     147                                                alignment = self.get(str(i),"alignment", DEFAULT_OSD_ALIGNMENT) 
     148                                                offset = int(self.get(str(i),"offset", DEFAULT_OSD_OFFSET)) 
     149                                                timeout = int(self.get(str(i),"timeout", DEFAULT_OSD_TIMEOUT)) 
     150                                                color = self.get(str(i),"color", DEFAULT_OSD_COLOR) 
     151                                                font = self.get(str(i),"font", DEFAULT_OSD_FONT) 
     152                                                self.devices.append(OsdAlertDevice(OsdAlertDeviceInfo(position, 
     153                                                                                                                                                                alignment, 
     154                                                                                                                                                                offset, 
     155                                                                                                                                                                timeout, 
     156                                                                                                                                                                color, 
     157                                                                                                                                                                font), 
     158                                                                                                                        alerts,areas)) 
     159                                        else: 
     160                                                self.log.error("OSD Support Not Enabled, but OSD Device Requested!") 
    136161                                if(dev == "mythtv"): 
    137162                                        to = self.getRequired(str(i),"to") 
     
    160185        def __loadXmpp(self): 
    161186                try: 
     187                        import xmpp 
    162188                        self.log.info("Jabber support enabled") 
    163                         import xmpp 
    164                         self.jabber_support = True 
    165189                        return True 
    166190                except ImportError: 
     
    168192                        return False 
    169193 
     194        def __loadOsd(self): 
     195                try: 
     196                        import pyosd 
     197                        self.log.info("Osd support enabled") 
     198                        return True 
     199                except ImportError: 
     200                        self.log.error("pyosd not found, disabling OSD support") 
     201                        return False 
     202 
    170203        def getStates(self): 
    171204                return self.__states