-
Notifications
You must be signed in to change notification settings - Fork 26
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Zendesk to replit #52
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the response should start with letting the user know that this is an automated reply from our technical support bot and if they are not happy with the response they should contact support@wandb.com (or do something in Discourse, whatever Support Team would like the user to do).
You should also figure out a better way to handle longer responses, its not good if the response is curtailed as the answer might be in the curtailed bit. maybe post as a second comment?
Query timing
When looping through a ticket I'd like to see a limit to the number of async requests being made to the wandbot api so that other users aren't impacted. Maybe somewhere in the region of 5 per minute? You can use asyncio.semaphore
to set the max number of async calls:
![Screenshot 2023-12-05 at 11 07 37](https://private-user-images.githubusercontent.com/20516801/288018512-4d60f04d-3f45-4c46-92e2-bb40ab860524.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjAxNzE2NDksIm5iZiI6MTcyMDE3MTM0OSwicGF0aCI6Ii8yMDUxNjgwMS8yODgwMTg1MTItNGQ2MGYwNGQtM2Y0NS00YzQ2LTkyZTItYmI0MGFiODYwNTI0LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MDUlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzA1VDA5MjIyOVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTY3MDljNTBhOTI4YjQxOTE3MzJkNzUyOGRlZGJkY2VhOTllMmZhODA0ZTRjNWMxMDJjMWQzMzhjM2Q3YTY5MDUmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.dtMg2oTRFJorVf9dxl_cNyLZ5cqgP8XcaWGIjR7gwqU)
Thanks, is #46 still needed or should it be closed? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, 1 comment. Also can you update the description to share how this was tested? thanks!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Naming needs be be adjusted, see the style guide here: https://cheatography.com/sunnyphiladelphia/cheat-sheets/google-style-for-python/
Changes:
zendesk
directoryextract_by_type.py
which has different question extraction methods depending on what type of ticket it is.Tested by:
Creating multiple dummy tickets in Zendesk with dummy questions, then having the script pull them up, process them and reply to the dummy questions.
Was tested with zd tickets with different tags such as
forum
- which is usually used for discourse tickets andzopim_offline_message
- these tickets are sent to us when the chat is down during the night time. Making sure tagging worked was essential to get the script to answer specific tickets - Discourse and Offline Chat Tickets.Tested on different numbers of tickets at the same time, anywhere from 1 to 12 including real free-user tickets and the dummy tickets that would be answered at the same time.
After Semaphore was added to limit 5 api calls per minute, tested to make sure the script works with more and less than 5 tickets which are needed to be answered. This was done by create multiple dummy tickets along with the tickets that already have been answered and made the zd script answer those tickets in the count of 5s every minute.
Have been running the script in github workspaces without an issue.