Skip to content
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

Implement real-time contact collaboration and notification #143

Conversation

sweep-ai[bot]
Copy link
Contributor

@sweep-ai sweep-ai bot commented Sep 29, 2024

This pull request was created by Sweep to resolve the following request by @curtisdelicata:

Original Request

Description:

Implement real-time updates using Livewire for seamless collaboration on contact information, notes, and activities among team members.
Tasks:

Develop real-time communication channels for updating contact information in real-time.
Integrate Livewire components to enable instant updates without page refresh.
Test collaboration features across different user roles and scenarios.
Acceptance Criteria:

Team members can collaborate effectively on contact details and activities in real-time using Liberu CRM.

Implement Real-Time Updates for Contact Collaboration Using Livewire

Definition of Complete

  • Real-time updates are implemented for contact information, notes, and activities.
  • Team members can see changes made by others without refreshing the page.
  • Livewire components are integrated for seamless updates.
  • Collaboration features are tested across different user roles and scenarios.

What Should be Done

  1. Update the Contact model in `a...

Continue chatting at https://sweep-chat-demo.vercel.app/c/fceb8097-57d6-4f01-8968-d2dfad09c787.

Purpose

This pull request aims to implement real-time contact collaboration and notification functionality in the CRM application.

Description

The changes in this pull request include:

  1. Added a new ContactUpdated event that is dispatched whenever a contact is updated.
  2. Implemented a ContactCollaboration Livewire component that allows users to update contact information in real-time.
  3. Added a NotifyTeamMembers listener that sends a notification to all team members when a contact is updated.
  4. Updated the ContactResource to trigger the ContactUpdated event whenever a contact is updated.
  5. Added a team relationship to the Contact model and updated the ContactPolicy to handle authorization based on the team.
  6. Updated the Pusher configuration to include client options for the Guzzle HTTP client.
  7. Added a new view for the ContactCollaboration component.
  8. Implemented feature tests to ensure the real-time contact collaboration and notification functionality works as expected.

Summary

The key changes in this pull request include:

  • app/Events/ContactUpdated.php: New event class for contact updates
  • app/Http/Livewire/ContactCollaboration.php: Livewire component for real-time contact collaboration
  • app/Listeners/NotifyTeamMembers.php: Listener for the ContactUpdated event
  • app/Models/Contact.php: Added team relationship and touches property
  • app/Policies/ContactPolicy.php: Updated authorization policies for contacts
  • app/Providers/EventServiceProvider.php: Registered the ContactUpdated event listener
  • config/broadcasting.php: Updated Pusher configuration with client options
  • resources/views/livewire/contact-collaboration.blade.php: View for the ContactCollaboration component
  • tests/Feature/ContactCollaborationTest.php: Feature tests for the contact collaboration functionality

@curtisdelicata curtisdelicata merged commit bce70b7 into main Sep 29, 2024
1 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant