---
# System prepended metadata

title: Agenda/videoconferencia project

---

# Agenda/videoconferencia project
## Proposito: mejorar la interaccion-comunicacion de los reclutadores con los candidatos.
### Fleeting Ideas(se pueden poner ideas por locas que sean a cualquier momento del dia):
* Juanjo:  
1. agendar la cita (no tanto videconference). La videconference dentro de TK. Calendar sync. Thrid libs -> faster.
idea from Indeed: [schedule + messages flow ](https://share.getcloudapp.com/wbumG5oE) Ref: [Full Post](https://www.indeed.com/hire/c/info/how-indeed-can-support-a-digital-hiring-process) 
Alerts of the scheduled dates (email and sms)
2. la lista de postulantes puede ser muy extensa. therefore un buscador o algo para poder filtrar de manera rapida.
3. la lista mas corta solo con los items principales. un click y se abre un ficha individual del candidato(cv,
    preguntas, notas, agendas .....).
4. los recruiters ya tienen un *calendario externo*
5. importante considerar que los reclutadores manejan más de un candidato/entrevista a la vez
* Carlitos, cual es el proposito?:
1. que gente se encuentre.
2. en los emails se ve que se ponen de acuerdo (fordwarding). Piden en CV (ping).
3. no mas canales.
4. un espacio en TK para agendar citas(horario).
5. listado mis candidatos y quiero una cita con este postulante y al hacer click(*btn reservar entrevista*) y que salga la
    agenda(calendario) (del candidato).El recruiter propone varias opciones. Nosotros enviamos por email las ofertas del recruiter
6. cuando sea la cita, TK envia el recordatorio. en el email tiene el link para hacer la entrevista.
* David: 
1. en la parte de recordatorio, mandar un *msg al telefono* (porque email no se revisa often). a las dos partes. como *hubspot*. poner un tiempo de la
    reunion.
2. en la base de candidatos: si hay alguna forma de organizar los candidatos. en un pesta;a los que pasan el primer
    filtro y otra con los que pasan a una entrevista.
3. generar ics para que los recruiter puedan usar un calendar externo.
4. intentar mandar la invitation no solo por email (las opciones) (por sms los recordatorios pagados!!!!)(notificaciones web - push notifications en mobile. Al aplicar hacer que enable the push notifications para que los recruiter les puedan contactar)(commet msg in real time)

* Pato:
1. muy similar al enfoque de Carlitos.
2. en la lista de postulantes tiene el boton entrevistar. *un msg preescrito*. 2 - 3 opciones max (una optional).
3. mandar un whatss. el tiempo de respuesta de candidato es importante. por email tenia menos respuestas. Un msg de saludo si responde se empieza lo de ponerse de acuerdo. Viendo mi propio calendar(??) (recruiter) yo selecciono en mi calendar y mandar 3 opciones. El candidato recibe el msg y las ofertas para poder hacer la cita. Y al final se envia el link de videconference.
4. en la invitation que ya incluya el link de la videconference.
5. notas en la lista de postulantes.
6. en vez de descargar el CV seria mucho mejor poder revisarlo en la misma lista de postulantes*. En un modal??
7. P1 -> slots libres del calendar del recruiter.

* Frank:
1. creo que debemos personalizar un poco más tanto el home de reclutadores cómo el de candidatos (ya hemos hablado al respecto)
2. en reclutadores que tenga etapas de sus ofertas en sentido general y cuándo des clic en una oferta, entres a un home personalizado solo para esa oferta, con un calendario general para entrevistas de esa oferta y su correspondiente listado de postulantes con su estatus igual por etapas, y puedas poner notas y demás.
3. en el caso de los candidatos, mostraría por etapas sus pustulaciones y su respectivo progreso en cada uno de ellos y si ya tiene fecha de entrevista confirmada que ahí mismo se muestre
4. en el caso de las notificaciones, que solo lleguen cómo push al celular o por whatssap las de solicitud de entrevista, porque si llegan muchas a la vez no le paran bola y pasan de ellas, así solo le llegarían las de entrevista y confirmación de entrevista con el enlace de la videollamada

# Final/consolidated Ideas: 
## Push notifications:
* al finalizar la aplicacion sugierir a los candidatos a que habiliten las push notifications para que los reclutadores se puedan comunicar con ellos. 
    * research enable/disable notifications about the push notifications in our notifications page.
    * create a test console about the push notification in our admin console.
* en la lista de postulantes podran enviar notificaciones que podran llegar por email pero ademas por push notifications si es que los candidatos habilitaron el servicio.
* si la comunicacion se inicia por push notifications es muy probable que tanto candidato como recruiter esten conectados al mismo tiempo. Por tanto se podria abrir un chat (directo)(investigar commet liftweb) entre el reclutador y candidato para que se puedan poder de acuerdo para un fecha de entrevista.
* los msg del chat son temporales.
* alternativamente si el chat no es factible (o requiere mucho tiempo y se deja la implementacion para una segunda etapa) el push notification solo enviaria un link a una landing page en donde estaria las opciones de reunion propuestas por el reclutador.
* el candidato recibiria este msg (push notification/email) y si esta logueado (magic link) podria selecionar la opcion que mejor le conviene.
* al seleccionar una opcion por parte del candidato, el reclutador recibe la confirmacion y procede a enviar otro msg con el link de conferencia (ellos tienen que generar externamente este link ya sea en hangout, zoom...).
* posteriormente se procede a generar un archivo .ics (calendar) en donde esta la info de la fecha y el link de la conferencia (investigar si se puede incluir links en estos archivos) y se le da la opcion al reclutador de descargar este archivo ics. El mismo archivo ics se envia al candidato por email o por push notification.
* estos archivos ics se puede importar en calendarios.
* p.d. los reclutatores tambien podrian habilitar los push notifications para que puedan recibir las notificaciones.
* y los recordatorios??
* landing page in which candidates can select the date. this can be with apm email similar to doodle example/ normal landing page.
* the landing page for the recruiter:
    * agendar entrevista: sale pop-up (o se usa un landing aparte) con un msg preescrito y que pueda escoger las tres opciones y se envia la notificacion (email/push notification/sms).
    * in a modal or in a external page?
    * picker date?
    * si el candidato confirma en la lista de postulantes ya debe salir la confirmacion 
    * la landing se carga con la info de las fechas seleccionadas. si el candidato ya confirma en esta landing ya no puede modificar.
    * empezar con la seleccion de una sola opcion de fecha y que se pueda modificar. 
* problems:
    * the push notification would only work after the implementation. (it not a immediately solution) 
    * notas
    
#### Fase 1:
* habilitar los push notifications para los candidatos cuando terminen la applicacion.
* revisar doodle y hubspot para un posible dise;o.
* para empezar permitir a los reclutadores solo seleccionar una opcion, similar a [hubspot](https://listatree.slack.com/files/U03M8D352/F011F4TRRV3/screen_shot_2020-04-06_at_12.44.00_pm.png) 
* se debe incluir un popover con un custom template en donde se encuentre un calendario, la duracion de la llamada y la hora de la reunion.

## Chat ideas:
1. only the recruiter can start a chat conversation.
2. if the candidates are logged in, maybe there is way to register the session (commet?) info in redis. Afterwards if the recruiter load the postulantes page in a async matter there would a function that will request the session_id (commet?) of those candidates and the recruiter can see them as connected an start a conversation.
3. All the msg will save in the localstorage of the recruiters browser. (they would use the same browser)
4. if the candidate is not connected the recruiter will send a notification (push notification/email).
5. the candidate will recibe that msg and eventually will go to TK and his/her info will be registered in redis.
6. when the recruiter send a notification also and he will be subscribed to the event that will broadcast when the candidates is connected and a notification would be triggered (commet). And if the recruiter is not connect likewise send a notification (push notification/email) about the status of the candidate.
### Ref:
1. https://groups.google.com/forum/#!topic/liftweb/xwTFKLal1ko
2. https://www.oreilly.com/library/view/lift-cookbook/9781449365042/ch10.html 
3. https://fmpwizard.telegr.am/blog/distributed-comet-chat-lift
4. https://blog.fmpwizard.com/2011/09/10/lift-comet-actor-per-tab-library/
5. http://www.ontheserverside.com/blog/2016/05/09/communication-between-lift-comets/
## Filtro de candidatos:
### opcion 1:
  * en la lista de postulantes los reclutadores marcan a los candidatos (en grupo o uno x uno?) y estos pasan a otra pestaña. 
  * en este segunda pestaña es donde aparece la parte de notas y el btn de agendar entrevistas.
  * si agendan una entrevista, estos candidatos pasan a una tercera pestaña.
  * como side effecting tambien tenemos el status de la contratacion que se puede presentar la info a los candidatos.
### opcion 2:
* en la misma lista de postulantes marcar cada card.
* poner unos filtros dropdown para mostrar solo los candidatos que por paso. 
## cv modal:
* Objetivo: no descargar el cv si no que se muestre inline.
## add recruiters notes about the candidate :
* Objetivo: guardar notas sobre el candidato para tener informacion. Informacion privada. Y las notas salen en diferentes aplicaciones.
* dise;o???
* podria tener info de en que proceso esta como referencia para el reclutador.
* una collection aparte que carga las notas async
		
# Tasks Fernando:
- [ ] Como se podrian implementar las ideas sugeridas???? (estimar esfuerzo, las tareas se pueden implementar por fases)
- [x] Investigar comet lift: 
- [ ] Investigar ics links.
- [ ] revisar doodle.
- [ ] revisar hubspot.
- [ ] revisar la integracion del calendar de google 

