feat: Enable direct navigation to specific message conversations via URL parameters and initiate new conversations from the network page.

This commit is contained in:
pradeepkumar
2026-03-15 01:03:44 +05:30
parent 50640a5828
commit 65d3d6c9dc
4 changed files with 40 additions and 5 deletions

View File

@@ -1,11 +1,15 @@
'use client';
import { useSearchParams } from 'next/navigation';
import { MessagingPage } from '@/components/message';
export default function AgentMessagePage() {
const searchParams = useSearchParams();
const conversationId = searchParams.get('conversationId');
return (
<div className="max-w-7xl mx-auto px-4 lg:px-8 py-6">
<MessagingPage />
<MessagingPage initialConversationId={conversationId} />
</div>
);
}

View File

@@ -7,6 +7,7 @@ import { NetworkSidebar } from './component/NetworkSidebar';
import { InvitationCard } from './component/InvitationCard';
import { ConnectionCard } from './component/ConnectionCard';
import { connectionRequestsService, ConnectionRequest, ConnectionRequestCounts } from '@/services/connection-requests.service';
import { messagesService } from '@/services/messages.service';
export default function NetworkPage() {
const router = useRouter();
@@ -100,8 +101,20 @@ export default function NetworkPage() {
}
};
const handleMessage = (userId: string) => {
router.push('/agent/message');
const [messagingUserId, setMessagingUserId] = useState<string | null>(null);
const handleMessage = async (userId: string) => {
if (messagingUserId) return;
setMessagingUserId(userId);
try {
const conversation = await messagesService.startConversation({ userId });
router.push(`/agent/message?conversationId=${conversation.id}`);
} catch (err) {
console.error('Failed to start conversation:', err);
router.push('/agent/message');
} finally {
setMessagingUserId(null);
}
};
return (