Wajahat698 commited on
Commit
6a2b8c0
·
verified ·
1 Parent(s): 712e9a8

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +11 -27
app.py CHANGED
@@ -17,9 +17,7 @@ CW_CLIENT_ID = "e45cf35f-24a8-4f5f-b47a-19376cafce64"
17
 
18
  BASE_URL = "https://api-na.myconnectwise.net/v4_6_release/apis/3.0"
19
 
20
- # ==========================
21
- # AUTH HEADER FOR CONNECTWISE
22
- # ==========================
23
  auth = f"{CW_COMPANY_ID}+{CW_PUBLIC_KEY}:{CW_PRIVATE_KEY}"
24
  encoded_auth = base64.b64encode(auth.encode()).decode()
25
 
@@ -30,17 +28,11 @@ headers = {
30
  }
31
 
32
 
33
- # ==========================
34
- # HEALTH CHECK
35
- # ==========================
36
  @app.route("/")
37
  def home():
38
  return "Slack → ConnectWise Bot Running"
39
 
40
 
41
- # ==========================
42
- # CREATE CONNECTWISE TICKET
43
- # ==========================
44
  def create_ticket(issue):
45
 
46
  ticket = {
@@ -51,31 +43,24 @@ def create_ticket(issue):
51
  "priority": {"id": 2}
52
  }
53
 
54
- try:
55
- r = requests.post(
56
- f"{BASE_URL}/service/tickets",
57
- headers=headers,
58
- json=ticket
59
- )
60
-
61
- if r.status_code in [200, 201]:
62
- return r.json().get("id")
63
 
64
- return f"Error {r.status_code}"
 
65
 
66
- except Exception as e:
67
- return f"Error creating ticket: {str(e)}"
68
 
69
 
70
- # ==========================
71
- # SLACK EVENT WEBHOOK
72
- # ==========================
73
  @app.route("/slack/events", methods=["POST"])
74
  def slack_events():
75
 
76
  data = request.json
 
77
 
78
- # Slack verification
79
  if data.get("type") == "url_verification":
80
  return jsonify({"challenge": data.get("challenge")})
81
 
@@ -92,7 +77,6 @@ def slack_events():
92
 
93
  ticket_id = create_ticket(issue)
94
 
95
- # Send response back to Slack
96
  requests.post(
97
  "https://slack.com/api/chat.postMessage",
98
  headers={
@@ -101,7 +85,7 @@ def slack_events():
101
  },
102
  json={
103
  "channel": channel,
104
- "text": f"🎫 Support ticket created\nTicket ID: {ticket_id}"
105
  }
106
  )
107
 
 
17
 
18
  BASE_URL = "https://api-na.myconnectwise.net/v4_6_release/apis/3.0"
19
 
20
+
 
 
21
  auth = f"{CW_COMPANY_ID}+{CW_PUBLIC_KEY}:{CW_PRIVATE_KEY}"
22
  encoded_auth = base64.b64encode(auth.encode()).decode()
23
 
 
28
  }
29
 
30
 
 
 
 
31
  @app.route("/")
32
  def home():
33
  return "Slack → ConnectWise Bot Running"
34
 
35
 
 
 
 
36
  def create_ticket(issue):
37
 
38
  ticket = {
 
43
  "priority": {"id": 2}
44
  }
45
 
46
+ r = requests.post(
47
+ f"{BASE_URL}/service/tickets",
48
+ headers=headers,
49
+ json=ticket
50
+ )
 
 
 
 
51
 
52
+ if r.status_code in [200, 201]:
53
+ return r.json().get("id")
54
 
55
+ return "error"
 
56
 
57
 
 
 
 
58
  @app.route("/slack/events", methods=["POST"])
59
  def slack_events():
60
 
61
  data = request.json
62
+ print(data) # DEBUG: shows Slack payload in logs
63
 
 
64
  if data.get("type") == "url_verification":
65
  return jsonify({"challenge": data.get("challenge")})
66
 
 
77
 
78
  ticket_id = create_ticket(issue)
79
 
 
80
  requests.post(
81
  "https://slack.com/api/chat.postMessage",
82
  headers={
 
85
  },
86
  json={
87
  "channel": channel,
88
+ "text": f"🎫 Ticket created\nID: {ticket_id}"
89
  }
90
  )
91