45 lines
1.2 KiB
Python
45 lines
1.2 KiB
Python
import pika
|
|
import sys
|
|
import os
|
|
import json
|
|
import datetime
|
|
import re
|
|
import config
|
|
from pymongo import MongoClient
|
|
from msg import msg
|
|
import requests
|
|
import time
|
|
|
|
def main():
|
|
connection = pika.BlockingConnection(pika.ConnectionParameters(
|
|
"192.168.0.20", 5672, "mkt", pika.PlainCredentials(
|
|
"rabbit", "mrl2X0jwnYuCCiKFTshG7WKyOAhfDo")
|
|
))
|
|
channel = connection.channel()
|
|
|
|
def callback(ch, method, properties, body: bytearray):
|
|
srcJson = json.loads(str(body.decode('utf-8')).replace("\'", "\""))
|
|
# if srcJson['state'] == 'HANGUP' and srcJson['direction'] == 'incoming' and srcJson['from'] == '89135853246':
|
|
try:
|
|
if srcJson['callstatus'] != 'ANSWER':
|
|
print(srcJson)
|
|
except:
|
|
pass
|
|
|
|
channel.basic_consume(
|
|
queue='incoming-dev', on_message_callback=callback, auto_ack=False)
|
|
|
|
print(' [*] Waiting for messages. To exit press CTRL+C')
|
|
channel.start_consuming()
|
|
|
|
|
|
if __name__ == '__main__':
|
|
try:
|
|
main()
|
|
except KeyboardInterrupt:
|
|
print('Interrupted')
|
|
try:
|
|
sys.exit(0)
|
|
except SystemExit:
|
|
os._exit(0)
|