-
Notifications
You must be signed in to change notification settings - Fork 490
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
Feature: Appointment Scheduling #1124
Comments
@kamesh95 Especially think of repeating weekly/monthly appointments because when setting their availability/work schedule Employees would usually like to enter something like "Ever Monday 9am to 5pm" or "Every Tuesday 10am to 4pm". I would suggest you first understand the requirements nicely, check existing appointment scheduling tools & then think about how the implementation would work. |
@kamesh95 yes, so of course in order to build this Epic features, you need to carefully research how it's done in similar software but also research related features in Gauzy itself. The thing is: Gauzy is more integrated software compared to most of the appointment schedule software in the market. I.e. in Gauzy, such a feature should be well integrated with other features (calendars, days off, tasks, projects, clients, etc). Let's consider existed software features:
In Gauzy, it's just one of the features we need, because all employees of some company get access to Gauzy, some company clients also get access, we have teams who can have own calendars, employees may indicate days off (holidays, we have that separate feature) and so on. So we can say that most of the software in the market which "dedicated" to schedule appointments has features that are "necessary" in Gauzy, but they are not "sufficient". We need more features that will allow employees to see other employees' availability and book a time if needed ("Transparency" feature of Gauzy). But of course, we should start with some side of that and iteratively add more features to it. The public page which allows booking meeting for a specific employee(s) or organization is a great start and yes, we can use organization public page for such appointments requests like @rmagon suggested above. |
@rmagon @evereq Makes sense to me. So I will add a public page to shared module where we display scheduled appointments for Employees as well as Teams level with a tab for each of them. Also user can schedule meetings there, so we have internal appointments booking in http://localhost:4200/#/pages/employees/appointments while the public user bookings in the shared module. Also, I am indeed exploring out the existing tools out there and following the above feature list one by one to add in our appointment scheduling page. |
@kamesh95 That's great! |
@rmagon @evereq For the recurring appointments, I have a few thoughts:
If we go with 2.1 or 2.2, we can easily integrate days off feature as well to see if the next appointment date falls on a day when the employee is available. Also, do we need to allow the user to change the schedule for one of the events in future from his recurrence appointments? If yes, then we will have to store it as a normal appointment and skip that date in our recurrence appointment. Let me know your thoughts. |
@rmagon what is your opinion, how we should store recurring appointments? Meanwhile, you @kamesh95 can still continue working on the feature to get parameters from the user about such recurring appointments (e.g. frequency, hours, etc). Also, I would say recurring appointments have a lower priority compared to making one time appointments completely working. Ideally, we want to have a pages for all employees where it's possible to book 1:1 appointments as soon as possible and add more functionality after that. |
More relevant information:
Users can create other types, e.g. “3 hours” or “Install VS Code on your PC” event types with some custom description but specific length (in minutes, hours, or even days I think). Later we will need to support multiple employees who share the same booking page (e.g. http://localhost:4200/#/share/employees/GUID (replace GUID with randomly generated UUID) or teams page http://localhost:4200/#/share/team/backend-team or even organization page http://localhost:4200/#/share/organization/myorg etc.
Note: if it’s a registered employee who registers meeting with another employee, such a meeting should be displayed on his own appointment calendar too! I.e multiple employees of the same organization in Gauzy should be able to create 1:1 meetings with this feature and BOTH sides should see them in calendars etc.
Yes, we need, but mostly that needed for the case when both users are employees in some org in Gauzy. If one of them is an unknown person, in such case she/he can cancel the meeting using some Link and also probably we can build a public page which will allow such person to edit meeting (e.g. time) using a link with some secure token (such links can be sent to the user when he creates appointment) |
@kamesh95 can you record some video that demo all that is done in this Epic so far (Loom)? |
@evereq @rmagon This is the link of the video https://www.loom.com/share/1ad5ade0a26d44be93438459182f00e4 Some things that are yet to be covered:
|
@kamesh95 ok, so can you work for now on 1 (Appointment edit page). For 2, I think when we book a meeting for current employees when we add other employees in the form, we should verify if other employees are available and if they are not, we should display some kind of message/notification about that or something like that. Alternative (a bit more complex), would be to also display information about each employee in terms of his available time in the same date as this:
We will create more tasks related to this Epic soon |
@kamesh95 I reviewed current functionality, it's all great, but we need more improvements to be done. Here is a list of things I notice (after testing and reading again all info above):
I would say priority of this is: 2, 3, 6, 7, 1, 4, 5, 8, 9. I probably missed LOTs of things which we still need to be done, but it feels like above is already a good start for you :) |
@evereq With point 7 Email Types, can you elaborate a bit more? Like Event types, I should create a new module Email types? And after appointment booking, user can select the email type or something to send alert for appointment? |
Features
We need the following features:
Overview
We want to allow contacts/leads/clients/customers/partners to schedule appointments via the Gauzy Platform with one or more Employees or Teams (can be mixed, but it’s important is that scheduling happens with some Employees or Teams, not Users!)
We should also integrate this feature with the “Days Off” feature where employees can select days when they are not available (in case, it should not be possible to book a meeting for such a date!)
Essentially, when Employee login to Gauzy on some page she/he should see calendar (or list) with appointments booked / free time and other “events” (not a part of appointments, but the feature which related).
Next, for each employee or team, there is a public page where it’s possible to book a meeting with her/him or with the whole team. It can be booked by another employee(s) or by someone who has a contact record already (e.g. Leads or Clients or Customers) or by someone who did not register in Gauzy (e.g. someone who just visited a public page and booked an appointment there).
Same way, it should be possible to create a separate public page (link) where other people can book an appointment with selected employees/teams (in this case, we are talking about some employees and/or teams who decided to accept bookings for meetings. For example, Employee A and Employee B may decide to make such a page to allow the prospect to talk with both of them.
We need also to think about how to integrate this feature with Time Tracking features, with Tasks feature etc
The text was updated successfully, but these errors were encountered: