Framework: Not required
Web Page: Required
Plan A: Send customer feedback investigation message by SMS, 1 way
Need implement a PHP interface by HTTP (POST or REST), to trigger the process to send customer feedback investigation by bulk SMS, one time invoke may be trigger to send to one user.
SMS Provider: [url removed, login to view]
The SMS message includes a URL, to tell user complete the investigation in a website by browser.
The URL should be unique, and once user submit the investigation form then the URL become invalid.
All the investigate result should be saved in MySQL database:
2. Unique URL (UUID)
3. Status (New, Done)
4. User Phone ID (provided by HTTP invoke)
5. MSG ID (for SMS tracking, depending on SMS provider)
6. Investigation Form Revision (e.g., v1, v2, v3, v4)
7. Investigation ID: (e.g, v2-136476, means form v2 table, ID: 136476)
8. Country (from the Phone Number rule, e.g., 91 means india)
9. Service Recorder (provided by HTTP invoke)
10. Create Time (the record created when HTTP invoked)
11. Feedback Time (user submit the investigate form)
Form Table (multiple: v1, v2, v3, v4)
2. Answer for #1 question: A1
3. Answer for #2 question: A2
List all the investigation result with filter (only one form revision select)
List the investigate question of the form revision
Filter: Phone Number, Service Order|
|ID|Phone Number|Status|Update Time|A1|A2|A3|A4|A5|...|
Based on Plan A, but 2 way SMS, it means get customer's feedback by SMS instead of Web form.
This is additional inform to help freelancer to understand the requirement more clearly.
Actually, this requirement is a part for a large project, a CRM/SCM system. I want this requirement to be an independent module of the project. So in other module (e.g., a routine process) will invoke the PHP interface (URL) with the necessary parameters (e.g., phone number, msg body, schedule, form reversion, etc).￼ So no need to think when to invoke the interface to send the SMS.
Emphasis: SMS Provider is specified: https://www.twilio.com/docs/quickstart/php/sms
About the customer feedback investigation form: the content of the feedback investigation is not fixed. So my idea is to add an additional web page: to create more than one feedback form, e.g., form_v1, form_v2, form_v3, When I invoke the PHP interface I can specify the feedback form version.
Another goal is to avoid the abuse of the URL in the SMS because it might make the investigate result not real. So my idea is that every customer get the SMS, and it includes a unique URL(UUID). After user complete the investigate form and click the submit button, the URL can't be reopen again, a warning message "Invalid URL" pop up.
List the interfaces and examples:
1. Function: send SMS message
Return: 0 Success or 1 Fail with the failure message
This interface is to send a SMS message to the PhoneNumber. The SMS message include a unique URL generated automatically, all the info save into the database "User Table". Please note : when end user get the SMS and click the URL, the corresponding feedback form (v2 for the example above) show to user. The unique URL became invalid when when complete the feedback form and click the "submit" button.
2. Function: List the existing Feedback form
This interface is to list all the feedback form available. A "New Form" button is used to add new form.
3. Function: Add new Feedback from
4. Function: List all the items in the "User Table"
Need add filters drop-boxes to filter the result by "Status", "FeedbackFormVersion", "CreateTime" (start - end), "FeedbackTime" (start-end)
5. Function: Show the feedback result:
Hello sir,, i have read the project carefully and i understood the work but sir i have few things that i want to ask you related to the project .please talk to me and give me a chance. thanks.