| author | Sandro Knauß <knauss@netzguerilla.net> |
| Sat, 31 Oct 2009 03:10:44 +0100 | |
| changeset 9 | 4c5f1cf088f6 |
| parent 0 | a3b6e531f0d2 |
| child 20 | 0d7ffb9b2c7f |
| permissions | -rw-r--r-- |
|
0
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
1 |
# -*- coding: utf-8 -*- |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
2 |
#Copyright (C) 2009 Sandro Knauß <bugs@sandroknauss.de> |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
3 |
|
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
4 |
#This program is free software; you can redistribute it and/or modify it under the terms |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
5 |
#of the GNU General Public License as published by the Free Software Foundation; |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
6 |
#either version 3 of the License, or any later version. |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
7 |
#This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
8 |
#without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
9 |
#See the GNU General Public License for more details. |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
10 |
|
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
11 |
#You should have received a copy of the GNU General Public License |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
12 |
#along with this program; if not, see <http://www.gnu.org/licenses/>. |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
13 |
|
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
14 |
|
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
15 |
from anbieter import anbieter |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
16 |
from telnumber import telnumber, NotATelNumber |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
17 |
import ConfigParser |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
18 |
import xmlrpclib |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
19 |
import base64 |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
20 |
|
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
21 |
class NoValidStatusCode(Exception): |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
22 |
pass |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
23 |
|
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
24 |
class sipgate(anbieter): |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
25 |
""" |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
26 |
s. auch http://www.tuxad.com/sipgate.html |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
27 |
und http://lists.sipgate.net/pipermail/sipgate-developers/2007-September/000016.html |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
28 |
""" |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
29 |
section="sipgate" |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
30 |
url="https://%s:%s@samurai.sipgate.net/RPC2" |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
31 |
def __init__(self,user="",password=""): |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
32 |
self.user=user |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
33 |
self.password=password |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
34 |
|
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
35 |
def read_basic_config(self,filename): |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
36 |
"""Read basic options from the config file""" |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
37 |
cp = ConfigParser.ConfigParser() |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
38 |
cp.read([filename]) |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
39 |
self.user=cp.get(self.section, 'user') |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
40 |
self.password=cp.get(self.section, 'password') |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
41 |
|
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
42 |
def sendSMS(self,sms,recipients): |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
43 |
"""send SMS with $sms to $recipients""" |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
44 |
args={ |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
45 |
"TOS" : "text", |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
46 |
"Content" : sms.content |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
47 |
} |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
48 |
self.__send(args,recipients) |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
49 |
|
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
50 |
def sendFAX(self,fax,recipients): |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
51 |
"""send the PDF file $fax to $recipients""" |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
52 |
pdf=open(fax.attachments[0],"rb") |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
53 |
args={ |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
54 |
"TOS" : "fax", |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
55 |
"Content" : base64.encodestring(pdf.read()) |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
56 |
} |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
57 |
pdf.close() |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
58 |
self.__send(args,recipients) |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
59 |
|
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
60 |
def __connect(self): |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
61 |
"""connect to sipgate XMLRPC Server""" |
| 9 | 62 |
|
|
0
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
63 |
self.samurai=xmlrpclib.Server(self.url%(self.user,self.password)).samurai |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
64 |
args_identify = { |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
65 |
"ClientName" : "anbieter.py", |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
66 |
"ClientVersion" : "V1.0", |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
67 |
"ClientVendor" : "Sandro Knauss" |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
68 |
} |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
69 |
|
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
70 |
self.__send_method(self.samurai.ClientIdentify, args_identify) |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
71 |
|
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
72 |
def __send_method(self, func, args=None): |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
73 |
"""execute $func and test weather if the func ran successfully or not""" |
| 9 | 74 |
|
|
0
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
75 |
if args==None: |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
76 |
xmlrpc_result = func() |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
77 |
else: |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
78 |
xmlrpc_result = func(args) |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
79 |
if xmlrpc_result['StatusCode'] != 200: |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
80 |
raise NoValidStatusCode("There was an error during identification to the server! %d %s"% (xmlrpc_result['StatusCode'], xmlrpc_result['StatusString'])) |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
81 |
|
| 9 | 82 |
|
|
0
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
83 |
return xmlrpc_result |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
84 |
|
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
85 |
def __send(self,args,recipients): |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
86 |
"""main sending method - sending the args to $recipients""" |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
87 |
sended=[] |
| 9 | 88 |
|
|
0
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
89 |
self.__connect() |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
90 |
for recipient in recipients: |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
91 |
try: |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
92 |
tel = telnumber(recipient) |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
93 |
|
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
94 |
if tel in sended: #only send message once per recipient |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
95 |
continue |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
96 |
sended.append(tel) |
| 9 | 97 |
|
|
0
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
98 |
args["RemoteUri"]="sip:%s%s@sipgate.net"%(tel.land,tel.number) |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
99 |
xmlrpc_result = self.__send_method(self.samurai.SessionInitiate, args) |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
100 |
self.updateStatus(arranged=recipient) |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
101 |
except NotATelNumber,NoValidStatusCode : |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
102 |
self.updateStatus(failed=recipient) |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
103 |
|
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
104 |
self.__disconnect() |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
105 |
|
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
106 |
def updateStatus(self, arranged=None, failed=None): |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
107 |
"""is a function that is called, if a new SMS/FAX was send |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
108 |
-arranged is non None, if SMS/FAX was sended successfully |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
109 |
-failed is non None, if SMS/FAX sending failed |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
110 |
the content will be the recipent""" |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
111 |
pass |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
112 |
|
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
113 |
def BalanceGet(self): |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
114 |
"""get the balance of sipgate""" |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
115 |
self.__connect() |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
116 |
ret = self.__send_method(self.samurai.BalanceGet ) |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
117 |
self.__disconnect() |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
118 |
return ret['CurrentBalance'] |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
119 |
|
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
120 |
def getNewMessages(self): |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
121 |
"""get new messages from inbox""" |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
122 |
self.__connect() |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
123 |
tmp = self.__send_method(self.samurai.UmSummaryGet) |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
124 |
self.__disconnect() |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
125 |
tmp=tmp['UmSummary'] |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
126 |
ret={} |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
127 |
for entry in tmp: |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
128 |
ret[entry['TOS']]={'read':entry["Read"],'unread':entry["Unread"]} |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
129 |
return ret |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
130 |
|
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
131 |
def getRecommendedInterval(self,methods): |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
132 |
"""how often you can call one $methods""" |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
133 |
self.__connect() |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
134 |
args = {"MethodList" : methods } |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
135 |
tmp = self.__send_method(self.samurai.RecommendedIntervalGet, args) |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
136 |
self. __disconnect() |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
137 |
ret={} |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
138 |
for entry in tmp['IntervalList']: |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
139 |
ret[entry['MethodName']]=entry['RecommendedInterval'] |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
140 |
return ret |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
141 |
|
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
142 |
def __disconnect(self): |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
143 |
"""disconnect xmlrpc client""" |
|
a3b6e531f0d2
[svn r93] creating iro package branch
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff
changeset
|
144 |
self.xmlrpc=None |