Здравствуйте, Николай.
В этой ситуации действительно понадобятся сокеты, я реализовывал подобное на Yii2 через Ajax, используя два параметра, id - пользователя и его токен, токен у каждого пользователя индивидуальный, поэтому с его помощью можно создавать много разных парных диалогов, а потом по этому токену находить диалоги, и выводить на странице. В случае уникальных айдишников и токенов нет риска, что перепутаются миллионы других диалогов, да и с помощью токена можно сортировать переписку так, чтобы последнее сообщение было внизу, и через javascript скролить окно всё время вниз, чтобы пользователь видел что ему написали, без прокрутки вручную.
Мой метод может быть и костыльный, для кого-то, но я сам его придумал так, до сох пор работает и не подводит. Пробуйте, успехов вам.