integrations: Update example screenshot for JotForm.

This commit updates the screenshot for the JotForm
integration to better demonstrate its utility
in enhancing business workflows for Zulip users.
This commit is contained in:
Varun-Kolanu
2025-04-06 10:03:10 +05:30
committed by Tim Abbott
parent e8364d8edd
commit 4f8263cd7f
4 changed files with 110 additions and 1 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 172 KiB

View File

@@ -764,7 +764,7 @@ DOC_SCREENSHOT_CONFIG: dict[str, list[BaseScreenshotConfig]] = {
"insping": [ScreenshotConfig("website_state_available.json")],
"intercom": [ScreenshotConfig("conversation_admin_replied.json")],
"jira": [ScreenshotConfig("created_v1.json")],
"jotform": [ScreenshotConfig("response.multipart")],
"jotform": [ScreenshotConfig("screenshot_response.multipart")],
"json": [ScreenshotConfig("json_github_push__1_commit.json")],
"librato": [ScreenshotConfig("three_conditions_alert.json", payload_as_query_param=True)],
"lidarr": [ScreenshotConfig("lidarr_album_grabbed.json")],

View File

@@ -0,0 +1,93 @@
--------------------------1WSA91c0mNqsH82UlEp0qj
Content-Disposition: form-data; name="action"
--------------------------1WSA91c0mNqsH82UlEp0qj
Content-Disposition: form-data; name="webhookURL"
https://959c-103-151-209-117.ngrok-free.app/api/v1/external/jotform?api_key=3BKWHdX6ZZpvIkzts68PKE30Dw8871kS&stream=22&topic=Feedback+Form
--------------------------1WSA91c0mNqsH82UlEp0qj
Content-Disposition: form-data; name="username"
kolanuvarun739
--------------------------1WSA91c0mNqsH82UlEp0qj
Content-Disposition: form-data; name="formID"
243615086540051
--------------------------1WSA91c0mNqsH82UlEp0qj
Content-Disposition: form-data; name="type"
WEB
--------------------------1WSA91c0mNqsH82UlEp0qj
Content-Disposition: form-data; name="customParams"
--------------------------1WSA91c0mNqsH82UlEp0qj
Content-Disposition: form-data; name="product"
--------------------------1WSA91c0mNqsH82UlEp0qj
Content-Disposition: form-data; name="formTitle"
Feedback Form
--------------------------1WSA91c0mNqsH82UlEp0qj
Content-Disposition: form-data; name="customTitle"
--------------------------1WSA91c0mNqsH82UlEp0qj
Content-Disposition: form-data; name="submissionID"
6114090137116205381
--------------------------1WSA91c0mNqsH82UlEp0qj
Content-Disposition: form-data; name="event"
--------------------------1WSA91c0mNqsH82UlEp0qj
Content-Disposition: form-data; name="documentID"
--------------------------1WSA91c0mNqsH82UlEp0qj
Content-Disposition: form-data; name="teamID"
--------------------------1WSA91c0mNqsH82UlEp0qj
Content-Disposition: form-data; name="subject"
--------------------------1WSA91c0mNqsH82UlEp0qj
Content-Disposition: form-data; name="isSilent"
--------------------------1WSA91c0mNqsH82UlEp0qj
Content-Disposition: form-data; name="customBody"
--------------------------1WSA91c0mNqsH82UlEp0qj
Content-Disposition: form-data; name="rawRequest"
{"slug":"submit\/243615086540051","jsExecutionTracker":"build-date-1735597456482=>init-started:1735597457312=>validator-called:1735597457313=>validator-mounted-false:1735597457313=>init-complete:1735597457316=>interval-complete:1735597478103=>onsubmit-fired:1735598288656=>observerSubmitHandler_received-submit-event:1735598288656=>submit-validation-passed:1735598288659=>observerSubmitHandler_validation-passed-submitting-form:1735598288668=>init-started:1735598444979=>validator-called:1735598444980=>validator-mounted-false:1735598444980=>init-complete:1735598444983=>init-started:1735598447982=>validator-called:1735598447983=>validator-mounted-false:1735598447983=>init-complete:1735598447985=>interval-complete:1735598469193=>onsubmit-fired:1735598480950=>observerSubmitHandler_received-submit-event:1735598480950=>submit-validation-passed:1735598480954=>observerSubmitHandler_validation-passed-submitting-form:1735598480962=>init-started:1735598975826=>validator-called:1735598975828=>validator-mounted-false:1735598975828=>init-complete:1735598975836=>interval-complete:1735598996957=>onsubmit-fired:1735599067954=>observerSubmitHandler_received-submit-event:1735599067954=>submit-validation-passed:1735599067956=>observerSubmitHandler_validation-passed-submitting-form:1735599067962=>init-started:1735599159857=>validator-called:1735599159859=>validator-mounted-false:1735599159859=>init-complete:1735599159861=>interval-complete:1735599181032=>onsubmit-fired:1735599182145=>observerSubmitHandler_received-submit-event:1735599182145=>submit-validation-passed:1735599182149=>observerSubmitHandler_validation-passed-submitting-form:1735599182155=>init-started:1735599251872=>validator-called:1735599251873=>validator-mounted-false:1735599251873=>init-complete:1735599251877=>interval-complete:1735599272970=>onsubmit-fired:1735599584836=>observerSubmitHandler_received-submit-event:1735599584836=>submit-validation-passed:1735599584840=>observerSubmitHandler_validation-passed-submitting-form:1735599584847=>init-started:1735599791882=>validator-called:1735599791884=>validator-mounted-false:1735599791884=>init-complete:1735599791885=>interval-complete:1735599813033=>onsubmit-fired:1735599813327=>observerSubmitHandler_received-submit-event:1735599813327=>submit-validation-passed:1735599813330=>observerSubmitHandler_validation-passed-submitting-form:1735599813338","submitSource":"form","buildDate":"1735598447069","uploadServerUrl":"https:\/\/upload.jotform.com\/upload","eventObserver":"1","q3_howOften":"Daily","q4_howLikely":"9","q7_feedback":"The new personalized recommendations feature is great!","event_id":"1735599791882_243615086540051_ZWbBbs3","timeToSubmit":"20","temp_upload":{"q9_filesRelated":["frontend setup.jpg#jotformfs-e4f4ece4d0a90#019419cf-4a02-7e71-a373-8a2d40622c3d","workflow.png#jotformfs-e4f4ece4d0a90#019419cf-4b57-7881-82a8-ab02b2cde277"]},"file_server":"jotformfs-e4f4ece4d0a90#019419cf-6b35-79cf-86c7-880b6c4343ca","validatedNewRequiredFieldIDs":"{\"new\":1}","path":"\/submit\/243615086540051","filesRelated":["https:\/\/www.jotform.com\/uploads\/kolanuvarun739\/243615086540051\/6114090137116205381\/frontend%20setup.jpg","https:\/\/www.jotform.com\/uploads\/kolanuvarun739\/243615086540051\/6114090137116205381\/workflow.png"]}
--------------------------1WSA91c0mNqsH82UlEp0qj
Content-Disposition: form-data; name="fromTable"
--------------------------1WSA91c0mNqsH82UlEp0qj
Content-Disposition: form-data; name="appID"
--------------------------1WSA91c0mNqsH82UlEp0qj
Content-Disposition: form-data; name="pretty"
How often do you use the application?:Daily, How likely are you to recommend it to a friend on a scale of 0-10?:9, Feedback:The new personalized recommendations feature is great!, Upload images of your customized setup to get featured!:frontend setup.jpg workflow.png
--------------------------1WSA91c0mNqsH82UlEp0qj
Content-Disposition: form-data; name="unread"
--------------------------1WSA91c0mNqsH82UlEp0qj
Content-Disposition: form-data; name="parent"
--------------------------1WSA91c0mNqsH82UlEp0qj
Content-Disposition: form-data; name="ip"
103.151.209.117
--------------------------1WSA91c0mNqsH82UlEp0qj--

View File

@@ -29,6 +29,22 @@ class JotformHookTests(WebhookTestCase):
content_type="multipart/form-data",
)
def test_screenshot_response(self) -> None:
expected_title = "Feedback Form"
expected_message = """
* **How often do you use the application?** Daily
* **How likely are you to recommend it to a friend on a scale of 0-10?** 9
* **Feedback**: The new personalized recommendations feature is great!
* **Upload images of your customized setup to get featured!**: [frontend setup.jpg](https://www.jotform.com/uploads/kolanuvarun739/243615086540051/6114090137116205381/frontend%20setup.jpg), [workflow.png](https://www.jotform.com/uploads/kolanuvarun739/243615086540051/6114090137116205381/workflow.png)""".strip()
self.check_webhook(
"screenshot_response",
expected_title,
expected_message,
content_type="multipart/form-data",
)
def test_bad_payload(self) -> None:
with self.assertRaisesRegex(AssertionError, "Unable to handle Jotform payload"):
self.check_webhook("response")