11from whatsapp_api_client_python .response import Response
22from datetime import datetime
3+ import json
34from enum import Enum
45
56
@@ -36,62 +37,68 @@ def startReceivingNotifications(self) -> bool:
3637 def stopReceivingNotifications (self ) -> bool :
3738 self .started = False
3839
39- def onIncomingMessageReceived (body ):
40+ def onIncomingMessageReceived (self , body ):
4041 idMessage = body ['idMessage' ]
4142 eventDate = datetime .fromtimestamp (body ['timestamp' ])
4243 senderData = body ['senderData' ]
4344 messageData = body ['messageData' ]
4445 print (idMessage + ': '
45- + 'At ' + eventDate + 'Incoming from ' \
46- + senderData + ' message = ' + messageData )
46+ + 'At ' + str (eventDate ) + ' Incoming from ' \
47+ + json .dumps (senderData , ensure_ascii = False ) \
48+ + ' message = ' + json .dumps (messageData , ensure_ascii = False ))
4749
48- def onIncomingCall (body ):
50+ def onIncomingCall (self , body ):
4951 idMessage = body ['idMessage' ]
5052 eventDate = datetime .fromtimestamp (body ['timestamp' ])
5153 fromWho = body ['from' ]
5254 print (idMessage + ': '
5355 + 'Call from ' + fromWho
5456 + ' at ' + str (eventDate ))
5557
56- def onDeviceInfo (body ):
58+ def onDeviceInfo (self , body ):
5759 eventDate = datetime .fromtimestamp (body ['timestamp' ])
5860 deviceData = body ['deviceData' ]
59- print ('At ' + eventDate + ': ' + deviceData )
61+ print ('At ' + str (eventDate ) + ': ' \
62+ + json .dumps (deviceData , ensure_ascii = False ))
6063
61- def onOutgoingMessageReceived (body ):
64+ def onOutgoingMessageReceived (self , body ):
6265 idMessage = body ['idMessage' ]
6366 eventDate = datetime .fromtimestamp (body ['timestamp' ])
6467 senderData = body ['senderData' ]
6568 messageData = body ['messageData' ]
6669 print (idMessage + ': '
67- + 'At ' + eventDate + 'Outgoing from ' \
68- + senderData + ' message = ' + messageData )
70+ + 'At ' + str (eventDate ) + ' Outgoing from ' \
71+ + json .dumps (senderData , ensure_ascii = False ) \
72+ + ' message = ' + json .dumps (messageData , ensure_ascii = False ))
6973
70- def onOutgoingAPIMessageReceived (body ):
74+ def onOutgoingAPIMessageReceived (self , body ):
7175 idMessage = body ['idMessage' ]
7276 eventDate = datetime .fromtimestamp (body ['timestamp' ])
7377 senderData = body ['senderData' ]
7478 messageData = body ['messageData' ]
7579 print (idMessage + ': '
76- + 'At ' + eventDate + ' API outgoing from ' + senderData + \
77- ' message = ' + messageData )
80+ + 'At ' + str (eventDate ) + ' API outgoing from ' \
81+ + json .dumps (senderData , ensure_ascii = False ) + \
82+ ' message = ' + json .dumps (messageData , ensure_ascii = False ))
7883
79- def onOutgoingMessageStatus (body ):
84+ def onOutgoingMessageStatus (self , body ):
8085 idMessage = body ['idMessage' ]
8186 status = body ['status' ]
8287 eventDate = datetime .fromtimestamp (body ['timestamp' ])
8388 print (idMessage + ': '
84- + 'At ' + eventDate + ' status = ' + status )
89+ + 'At ' + str ( eventDate ) + ' status = ' + status )
8590
86- def onStateInstanceChanged (body ):
91+ def onStateInstanceChanged (self , body ):
8792 eventDate = datetime .fromtimestamp (body ['timestamp' ])
8893 stateInstance = body ['stateInstance' ]
89- print ('At ' + eventDate + ' state instance = ' + stateInstance )
94+ print ('At ' + str (eventDate ) + ' state instance = ' \
95+ + json .dumps (stateInstance , ensure_ascii = False ))
9096
91- def onStatusInstanceChanged (body ):
97+ def onStatusInstanceChanged (self , body ):
9298 eventDate = datetime .fromtimestamp (body ['timestamp' ])
9399 statusInstance = body ['statusInstance' ]
94- print ('At ' + eventDate + ' status instance = ' + statusInstance )
100+ print ('At ' + str (eventDate ) + ' status instance = ' \
101+ + json .dumps (statusInstance , ensure_ascii = False ))
95102
96103 def job (self ) -> None :
97104 print ('Incoming notifications are being received. ' \
@@ -106,27 +113,27 @@ def job(self) -> None:
106113 continue
107114 body = resultReceive .data ['body' ]
108115 typeWebhook = body ['typeWebhook' ]
109- if typeWebhook == TypeWebhook .INCOMING_MESSAGE_RECEIVED :
116+ if typeWebhook == TypeWebhook .INCOMING_MESSAGE_RECEIVED . value :
110117 self .onIncomingMessageReceived (body )
111- elif typeWebhook == TypeWebhook .DEVICE_INFO :
118+ elif typeWebhook == TypeWebhook .DEVICE_INFO . value :
112119 self .onDeviceInfo (body )
113- elif typeWebhook == TypeWebhook .INCOMING_CALL :
120+ elif typeWebhook == TypeWebhook .INCOMING_CALL . value :
114121 self .onIncomingCall (body )
115- elif typeWebhook == TypeWebhook .INCOMING_MESSAGE_RECEIVED :
122+ elif typeWebhook == TypeWebhook .INCOMING_MESSAGE_RECEIVED . value :
116123 self .onIncomingMessageReceived (body )
117- elif typeWebhook == TypeWebhook .OUTGOING_API_MESSAGE_RECEIVED :
124+ elif typeWebhook == TypeWebhook .OUTGOING_API_MESSAGE_RECEIVED . value :
118125 self .onOutgoingAPIMessageReceived (body )
119- elif typeWebhook == TypeWebhook .OUTGOING_MESSAGE_RECEIVED :
126+ elif typeWebhook == TypeWebhook .OUTGOING_MESSAGE_RECEIVED . value :
120127 self .onOutgoingMessageReceived (body )
121- elif typeWebhook == TypeWebhook .OUTGOING_MESSAGE_STATUS :
128+ elif typeWebhook == TypeWebhook .OUTGOING_MESSAGE_STATUS . value :
122129 self .onOutgoingMessageStatus (body )
123- elif typeWebhook == TypeWebhook .STATE_INSTANCE_CHANGED :
130+ elif typeWebhook == TypeWebhook .STATE_INSTANCE_CHANGED . value :
124131 self .onStateInstanceChanged (body )
125- elif typeWebhook == TypeWebhook .STATUS_INSTANCE_CHANGED :
132+ elif typeWebhook == TypeWebhook .STATUS_INSTANCE_CHANGED . value :
126133 self .onStatusInstanceChanged (body )
127134 self .restApi .receiving .deleteNotification (
128135 resultReceive .data ['receiptId' ])
129136 print ('End receiving' )
130137 except KeyboardInterrupt :
131138 print ('End receiving' )
132- pass
139+ pass
0 commit comments