@ -4419,6 +4419,8 @@ class MySimpleXMLRPCRequestHandler(SimpleXMLRPCRequestHandler):
data + = ' ]} '
return data
elif method == ' getInboxMessagesByAddress ' :
if len ( params ) == 0 :
return ' API Error 0000: I need parameters! '
toAddress = params [ 0 ]
v = ( toAddress , )
shared . sqlLock . acquire ( )
@ -4454,6 +4456,26 @@ class MySimpleXMLRPCRequestHandler(SimpleXMLRPCRequestHandler):
data + = json . dumps ( { ' msgid ' : msgid . encode ( ' hex ' ) , ' toAddress ' : toAddress , ' fromAddress ' : fromAddress , ' subject ' : subject . encode ( ' base64 ' ) , ' message ' : message . encode ( ' base64 ' ) , ' encodingType ' : encodingtype , ' lastActionTime ' : lastactiontime , ' status ' : status , ' ackData ' : ackdata . encode ( ' hex ' ) } , indent = 4 , separators = ( ' , ' , ' : ' ) )
data + = ' ]} '
return data
elif method == ' getSentMessagesByAddress ' :
if len ( params ) == 0 :
return ' API Error 0000: I need parameters! '
fromAddress = params [ 0 ]
v = ( fromAddress , )
shared . sqlLock . acquire ( )
shared . sqlSubmitQueue . put ( ''' SELECT msgid, toaddress, fromaddress, subject, lastactiontime, message, encodingtype, status, ackdata FROM sent WHERE folder= ' sent ' AND fromAddress=? ORDER BY lastactiontime ''' )
shared . sqlSubmitQueue . put ( v )
queryreturn = shared . sqlReturnQueue . get ( )
shared . sqlLock . release ( )
data = ' { " sentMessages " :[ '
for row in queryreturn :
msgid , toAddress , fromAddress , subject , lastactiontime , message , encodingtype , status , ackdata = row
subject = shared . fixPotentiallyInvalidUTF8Data ( subject )
message = shared . fixPotentiallyInvalidUTF8Data ( message )
if len ( data ) > 25 :
data + = ' , '
data + = json . dumps ( { ' msgid ' : msgid . encode ( ' hex ' ) , ' toAddress ' : toAddress , ' fromAddress ' : fromAddress , ' subject ' : subject . encode ( ' base64 ' ) , ' message ' : message . encode ( ' base64 ' ) , ' encodingType ' : encodingtype , ' lastActionTime ' : lastactiontime , ' status ' : status , ' ackData ' : ackdata . encode ( ' hex ' ) } , indent = 4 , separators = ( ' , ' , ' : ' ) )
data + = ' ]} '
return data
elif method == ' getSentMessageByAckData ' :
if len ( params ) == 0 :
return ' API Error 0000: I need parameters! '