11from datetime import datetime
22import json
33
4- import whatsapp_api_webhook_server_python .webhooksHandler as webhooksHandler
4+ import whatsapp_api_webhook_server_python .webhooksHandler as handler
55
66
7- def onEvent (webhookHandler : webhooksHandler , typeWebhook : str , body ):
7+ def onEvent (webhookHandler : handler . WebhooksHandler , typeWebhook : str , body ):
88 if typeWebhook == 'incomingMessageReceived' :
99 onIncomingMessageReceived (webhookHandler , body )
1010 elif typeWebhook == 'deviceInfo' :
@@ -24,7 +24,7 @@ def onEvent(webhookHandler: webhooksHandler, typeWebhook: str, body):
2424 elif typeWebhook == 'statusInstanceChanged' :
2525 onStatusInstanceChanged (webhookHandler , body )
2626
27- def onIncomingMessageReceived (webhookHandler : webhooksHandler , body : object ):
27+ def onIncomingMessageReceived (webhookHandler : handler . WebhooksHandler , body : object ):
2828 idMessage = body ['idMessage' ]
2929 eventDate = datetime .fromtimestamp (body ['timestamp' ])
3030 senderData = body ['senderData' ]
@@ -33,28 +33,31 @@ def onIncomingMessageReceived(webhookHandler: webhooksHandler, body: object):
3333 + 'At ' + str (eventDate ) + ' Incoming from ' \
3434 + json .dumps (senderData , ensure_ascii = False ) \
3535 + ' message = ' + json .dumps (messageData , ensure_ascii = False )
36- webhookHandler .wfile .write ((50 * '-' + '\n ' ).encode ("utf-8" ))
37- webhookHandler .wfile .write (TextOut .encode ("utf-8" ))
36+ webhookHandler .set_status (200 )
37+ webhookHandler .write ((50 * '-' + '\n ' ).encode ("utf-8" ))
38+ webhookHandler .write (TextOut .encode ("utf-8" ))
3839
39- def onIncomingCall (webhookHandler : webhooksHandler , body ):
40+ def onIncomingCall (webhookHandler : handler . WebhooksHandler , body ):
4041 idMessage = body ['idMessage' ]
4142 eventDate = datetime .fromtimestamp (body ['timestamp' ])
4243 fromWho = body ['from' ]
4344 TextOut = idMessage + ': ' \
4445 + 'Call from ' + fromWho \
4546 + ' at ' + str (eventDate )
46- webhookHandler .wfile .write ((50 * '-' + '\n ' ).encode ("utf-8" ))
47- webhookHandler .wfile .write (TextOut .encode ("utf-8" ))
47+ webhookHandler .set_status (200 )
48+ webhookHandler .write ((50 * '-' + '\n ' ).encode ("utf-8" ))
49+ webhookHandler .write (TextOut .encode ("utf-8" ))
4850
49- def onDeviceInfo (webhookHandler : webhooksHandler , body ):
51+ def onDeviceInfo (webhookHandler : handler . WebhooksHandler , body ):
5052 eventDate = datetime .fromtimestamp (body ['timestamp' ])
5153 deviceData = body ['deviceData' ]
5254 TextOut = 'At ' + str (eventDate ) + ': ' \
5355 + json .dumps (deviceData , ensure_ascii = False )
54- webhookHandler .wfile .write ((50 * '-' + '\n ' ).encode ("utf-8" ))
55- webhookHandler .wfile .write (TextOut .encode ("utf-8" ))
56+ webhookHandler .set_status (200 )
57+ webhookHandler .write ((50 * '-' + '\n ' ).encode ("utf-8" ))
58+ webhookHandler .write (TextOut .encode ("utf-8" ))
5659
57- def onOutgoingMessageReceived (webhookHandler : webhooksHandler , body ):
60+ def onOutgoingMessageReceived (webhookHandler : handler . WebhooksHandler , body ):
5861 idMessage = body ['idMessage' ]
5962 eventDate = datetime .fromtimestamp (body ['timestamp' ])
6063 senderData = body ['senderData' ]
@@ -63,10 +66,11 @@ def onOutgoingMessageReceived(webhookHandler: webhooksHandler, body):
6366 + 'At ' + str (eventDate ) + ' Outgoing from ' \
6467 + json .dumps (senderData , ensure_ascii = False ) \
6568 + ' message = ' + json .dumps (messageData , ensure_ascii = False )
66- webhookHandler .wfile .write ((50 * '-' + '\n ' ).encode ("utf-8" ))
67- webhookHandler .wfile .write (TextOut .encode ("utf-8" ))
69+ webhookHandler .set_status (200 )
70+ webhookHandler .write ((50 * '-' + '\n ' ).encode ("utf-8" ))
71+ webhookHandler .write (TextOut .encode ("utf-8" ))
6872
69- def onOutgoingAPIMessageReceived (webhookHandler : webhooksHandler , body ):
73+ def onOutgoingAPIMessageReceived (webhookHandler : handler . WebhooksHandler , body ):
7074 idMessage = body ['idMessage' ]
7175 eventDate = datetime .fromtimestamp (body ['timestamp' ])
7276 senderData = body ['senderData' ]
@@ -75,35 +79,39 @@ def onOutgoingAPIMessageReceived(webhookHandler: webhooksHandler, body):
7579 + 'At ' + str (eventDate ) + ' API outgoing from ' \
7680 + json .dumps (senderData , ensure_ascii = False ) + \
7781 ' message = ' + json .dumps (messageData , ensure_ascii = False )
78- webhookHandler .wfile .write ((50 * '-' + '\n ' ).encode ("utf-8" ))
79- webhookHandler .wfile .write (TextOut .encode ("utf-8" ))
82+ webhookHandler .set_status (200 )
83+ webhookHandler .write ((50 * '-' + '\n ' ).encode ("utf-8" ))
84+ webhookHandler .write (TextOut .encode ("utf-8" ))
8085
81- def onOutgoingMessageStatus (webhookHandler : webhooksHandler , body ):
86+ def onOutgoingMessageStatus (webhookHandler : handler . WebhooksHandler , body ):
8287 idMessage = body ['idMessage' ]
8388 status = body ['status' ]
8489 eventDate = datetime .fromtimestamp (body ['timestamp' ])
8590 TextOut = idMessage + ': ' + str (eventDate ) + ' status = ' + status
86- webhookHandler .wfile .write ((50 * '-' + '\n ' ).encode ("utf-8" ))
87- webhookHandler .wfile .write (TextOut .encode ("utf-8" ))
91+ webhookHandler .set_status (200 )
92+ webhookHandler .write ((50 * '-' + '\n ' ).encode ("utf-8" ))
93+ webhookHandler .write (TextOut .encode ("utf-8" ))
8894
89- def onStateInstanceChanged (webhookHandler : webhooksHandler , body ):
95+ def onStateInstanceChanged (webhookHandler : handler . WebhooksHandler , body ):
9096 eventDate = datetime .fromtimestamp (body ['timestamp' ])
9197 stateInstance = body ['stateInstance' ]
9298 TextOut = 'At ' + str (eventDate ) + ' state instance = ' \
9399 + json .dumps (stateInstance , ensure_ascii = False )
94- webhookHandler .wfile .write ((50 * '-' + '\n ' ).encode ("utf-8" ))
95- webhookHandler .wfile .write (TextOut .encode ("utf-8" ))
100+ webhookHandler .set_status (200 )
101+ webhookHandler .write ((50 * '-' + '\n ' ).encode ("utf-8" ))
102+ webhookHandler .write (TextOut .encode ("utf-8" ))
96103
97- def onStatusInstanceChanged (webhookHandler : webhooksHandler , body ):
104+ def onStatusInstanceChanged (webhookHandler : handler . WebhooksHandler , body ):
98105 eventDate = datetime .fromtimestamp (body ['timestamp' ])
99106 statusInstance = body ['statusInstance' ]
100107 TextOut = 'At ' + str (eventDate ) + ' status instance = ' \
101108 + json .dumps (statusInstance , ensure_ascii = False )
102- webhookHandler .wfile .write ((50 * '-' + '\n ' ).encode ("utf-8" ))
103- webhookHandler .wfile .write (TextOut .encode ("utf-8" ))
109+ webhookHandler .set_status (200 )
110+ webhookHandler .write ((50 * '-' + '\n ' ).encode ("utf-8" ))
111+ webhookHandler .write (TextOut .encode ("utf-8" ))
104112
105113def main ():
106- webhooksHandler .startServer ('127.0.0.1' , 8000 , onEvent )
114+ handler .startServer ('127.0.0.1' , 8000 , onEvent )
107115
108116if __name__ == "__main__" :
109117 main ()
0 commit comments