iro/controller/viewinterface.py
branchdevel
changeset 115 323d06431100
parent 114 1ed072cc6793
child 117 351a02310dd8
equal deleted inserted replaced
114:1ed072cc6793 115:323d06431100
     1 # -*- coding: utf-8 -*-
     1 # -*- coding: utf-8 -*-
     2 from ..model.user import with_user
     2 from ..model.decorators import vUser, vRoute
     3 from ..validate import validate, boolean, validateHash
     3 from ..model.utils import vTyp
       
     4 from ..validate import validate, vBool, vHash, vTel, vEmail
       
     5 
     4 class Interface(object):
     6 class Interface(object):
     5     '''class for a xmlrpc user
     7     '''class for a xmlrpc user
     6     '''
     8     '''
     7     
     9     
     8     @validate(kwd="detailed", func=boolean, need=False)
    10     @validate(kwd="detailed", func=vBool, need=False)
     9     @validate(kwd="id", func=validateHash, need=False)
    11     @validate(kwd="id", func=vHash, need=False, maxlength=40)
    10     @with_user
    12     @vUser
    11     def status(self, user, id=None, detailed=False):
    13     def status(self, user, id=None, detailed=False):
    12         '''Gibt den aktuellen Status eines Auftrages oder Mehreren zurück.
    14         '''Gibt den aktuellen Status eines Auftrages oder Mehreren zurück.
    13 
    15 
    14         Keywords:
    16         Keywords:
    15         apikey[string]: Der API Key
    17         apikey[string]: Der API Key
    28         else:
    30         else:
    29             return str(user)
    31             return str(user)
    30         #return user.status(id,detailed)
    32         #return user.status(id,detailed)
    31         return ""
    33         return ""
    32 
    34 
    33     @with_user
    35     @vUser
       
    36     @validate(kwd="id", func=vHash,maxlength=40)
    34     def stop(self, user, id):
    37     def stop(self, user, id):
    35         '''Stoppt den angegeben Auftrag.
    38         '''Stoppt den angegeben Auftrag.
    36 
    39 
    37         Keywords:
    40         Keywords:
    38         apikey[string]: Der API Key
    41         apikey[string]: Der API Key
    41         Return:
    44         Return:
    42 
    45 
    43         '''
    46         '''
    44         return ""
    47         return ""
    45     
    48     
    46     @with_user
    49     @validate(kwd="recipients",func=vTel)
    47     def sms(self, user, message, recipients, route="default"):
    50     @vUser
       
    51     @vRoute(typ="sms")
       
    52     def sms(self, user, message, recipients, route="default", info=""):
    48         '''Versendet eine SMS.
    53         '''Versendet eine SMS.
    49 
    54 
    50         Keywords:
    55         Keywords:
    51         apikey[string]: Der API Key
    56         apikey[string]: Der API Key
    52         message[string]: Nachricht
    57         message[string]: Nachricht
    58         id[hash]: Die ID des Auftrages
    63         id[hash]: Die ID des Auftrages
    59 
    64 
    60         '''
    65         '''
    61         return ""
    66         return ""
    62    
    67    
    63     @with_user
    68     @validate(kwd="recipients",func=vTel)
    64     def fax(self, user, subject, fax, recipients, route="default"):
    69     @vUser
       
    70     @vRoute(typ="fax")
       
    71     def fax(self, user, subject, fax, recipients, route="default", info=""):
    65         '''Versendet ein FAX.
    72         '''Versendet ein FAX.
    66 
    73 
    67         Keywords:
    74         Keywords:
    68         apikey[string]: Der API Key
    75         apikey[string]: Der API Key
    69         subject[string]: Der Betreff
    76         subject[string]: Der Betreff
    76         id[hash]: Die ID des Auftrages
    83         id[hash]: Die ID des Auftrages
    77 
    84 
    78         '''
    85         '''
    79         return ""
    86         return ""
    80 
    87 
    81     @with_user
    88     @validate(kwd="recipients",func=vEmail)
    82     def mail(self, user, subject,  body, recipients, frm, route="default"):
    89     @vUser
       
    90     @vRoute(typ="mail")
       
    91     def mail(self, user, subject,  body, recipients, frm, route="default", info=""):
    83         '''Versendet eine Email.
    92         '''Versendet eine Email.
    84 
    93 
    85         Keywords:
    94         Keywords:
    86         apikey[string]: Der API Key
    95         apikey[string]: Der API Key
    87         subject[string]: Der Betreff
    96         subject[string]: Der Betreff
    95         id[hash]: Die ID des Auftrages
   104         id[hash]: Die ID des Auftrages
    96 
   105 
    97         '''
   106         '''
    98         return ""
   107         return ""
    99        
   108        
   100     @with_user
   109     @validate(kwd="typ", func=vTyp)
       
   110     @vUser
   101     def routes(self, user, typ):
   111     def routes(self, user, typ):
   102         '''Gibt eine Liste aller verfügbaren Provider zurück.
   112         '''Gibt eine Liste aller verfügbaren Provider zurück.
   103 
   113 
   104         Keywords:
   114         Keywords:
   105         apikey[string]: Der API Key
   115         apikey[string]: Der API Key
   110         providerlist[list]: Eine Liste aller möglichen Provider
   120         providerlist[list]: Eine Liste aller möglichen Provider
   111 
   121 
   112         '''
   122         '''
   113         return ""
   123         return ""
   114         
   124         
   115     @with_user
   125     @validate(kwd="typ", func=vTyp)
       
   126     @vUser
   116     def defaultRoute(self, user, typ):
   127     def defaultRoute(self, user, typ):
   117         '''Gibt den Standardprovider zurück.
   128         '''Gibt den Standardprovider zurück.
   118  
   129  
   119         Keywords:
   130         Keywords:
   120         apikey[string]: Der API Key
   131         apikey[string]: Der API Key
   126 
   137 
   127 
   138 
   128         '''
   139         '''
   129         return ""
   140         return ""
   130 
   141 
   131     @with_user
   142     @vUser
   132     def statistic(self, user):
   143     def statistic(self, user):
   133         '''Gibt eine Statik zurück über die versendendeten Nachrichten und des Preises.
   144         '''Gibt eine Statik zurück über die versendendeten Nachrichten und des Preises.
   134 
   145 
   135         Keywords:
   146         Keywords:
   136         apikey[string]: Der API Key
   147         apikey[string]: Der API Key